Skip to content

Releases: Jhsmit/PyHDX

PyHDX version 0.4.0 beta3

16 Sep 14:43
Compare
Choose a tag to compare
Pre-release

Changes:

  • Refactored config; moved config files, refactored cluster to scheduler_address where applicable (#220)
  • Changed Lagrangian squared error reduction from 'total' to 'mean' (affecting regularization values) (#221)
  • Regularization components are treated separately and stored in losses dataframe (#222)
  • Internal time units are now in seconds (73c387c)
  • Added optimization loop callbacks and checkpoint (#222)
  • Allow for saving of HDXMeasurementSet objects to .csv/.txt file (9cca09f)
  • Allow for reading of 'HDXMeasurementSet` objects from .csv/.txt file (4e9fcac)
  • Implemented __str__ for HDXMeassurement objects (5122d23)
  • Updated yaml batch formatting format (7d94411, 7c71847)

PyHDX version 0.4.0 beta2

29 Jul 14:09
03b017b
Compare
Choose a tag to compare
Pre-release

Changes:

  • Added additional fit feedback panels; MSE per peptide, D-uptake curves + fit and losses/epoch #212
  • Documentation and docstrings (#210, #213, #214)
  • Updated pdf module, now requires proplot and generates figure subplots per page instead of per subplot

Fixes:

  • Fixed mse and losses for single fits
  • Extension for table export (#218 )

PyHDX 0.4.0 first beta release

18 Jul 18:21
9e75276
Compare
Choose a tag to compare
Pre-release

Big changes in the new 0.4.0 version!
Major changes include an overhaul of the web interface and refactoring of major parts in the code.
Thanks for all contributions @sebaztiano @sajetan

Major changes:

Web interface

  • Users can add multiple datasets ('state') at the same time and perform analysis in batch on these datasets. The datasets, operations on these datasets and the resulting views show in the web interface are now all based on lumen objects (Source, Filter, Transform, View) #188
  • NGL viewer was implemented as a custom bokeh extension #201
  • Classification control panel can now also apply matplotlib/colorcet colormaps

Refactoring of the PyHDX API

  • Fitting API is now functional instead of object oriented; fit_gibbs_global(..), fit_gibbs_global_batch(..) #199
  • KineticsSeries object was refactored to HDXMeasurement
  • Added HDXMeasurementSet object
  • The scores attribute (percentage D-uptake) was refactored to rfu (relative fractional uptake, 0-1)
  • Updated fileIO functions, enable saving of kwargs to reload the file as well as saving metadata #205
  • Allow saving and loading of fit results (#208) and HDXMeasurement objects #205

Minor changes:

  • Versioning by versioneer instead of pbr (#207)
  • Added k_obs as output variable of the fit (ce4f583)
  • Added console script entry point to run the web interface (pyhdx serve) #191
  • Export of all peptide uptake graphs + fitted curves in pdf format #209

Bugfixes:

  • Alignment of exchanges and k_int (8301686)

Bugfix release 0.3.2

03 May 20:15
a6bff5b
Compare
Choose a tag to compare

Minor release fixing a bug in requirements.txt

PyHDX version 0.3.1

03 May 18:56
b4da31d
Compare
Choose a tag to compare

Major changes:

  • Estimate errors in ΔG fit from covariances obtained from the Hessian
  • Allow fitting of multiple 'states' (conditions) in batch
  • Allow fitting of 2 aligned (homologous) protein conditions in batch
  • Added console entry script such that the pyhdx server can be started with pyhdx serve (#191)

Minor changes:

  • Input/output data table formats are now in comma separated values (.csv) format
  • Updated support for reloading and fitting data in batch from .yaml files
  • Updated rgb_to_hex function to work on arrays (vectorized)
  • Added a colorbar to plotting of peptides (in plot.py)
  • Refactored k_series to series in KineticsFitting objects
  • Refactored cov to coverage in KineticsSeries objects
  • Updates to docstrings
  • Protein full sequences can optionally be added to Protein objects
  • Moved fitting loop to separate function outside of main fitting object
  • Protein objects now more closely mimic pandas' dataframes

Web application updates:

  • 'Scores' (RFU) can be obtained as a table from the GUI
  • User feedback on relative contribution of regularizer to fit result
  • Control sidebar is now formatted as accordions where only one can be opened at a time
  • Panel requirement bumped to >= 0.11, fixing scrolling issues in sidebar
  • Added config file, currently lists default Dask cluster address to use
  • Various bug fixes!

Thanks to @sajetan for contributing (#191, #181)

PyHDX version 0.3.0

15 Jan 11:47
Compare
Choose a tag to compare
v0.3.0

capitalized PyHDX name

bioRxiv and bugfixes

01 Oct 14:52
Compare
Choose a tag to compare

This release accompanies submission to bioRxiv as well as various bugfixes.

  • Updates to documentation (available as pdf)
  • Refactored how the apps are created in apps.py
  • Added all sub-controllers in controllers.py and main controllers in main_controllers.py

Bugfixes:

  • Fixed bug where linking the x range of panels would cause an error (610d985)
  • Removed unused .data attribute (#108)
  • Fixed updates of figures, now via callback (#117)
  • Fixed protein view not updating without switching between datasets (#114)

Protein Viewer and Themes

24 Sep 14:19
Compare
Choose a tag to compare

This release features an embedded Protein Viewer and implementation of Panel Themes / Templates.

Main features:

  • NGL Protein viewer
  • Streamlined layouts with Elvis (https://github.com/LeonvanKouwen/elvis) with Panel Templates (panel >0.10.0)
  • Color protein by custom continuous color map (36e7070)
  • Added Dark/Light themes
  • Separate app for loading single state fitting results and applying classification (coloring)
  • Separate app for comparing two protein states

Other changes:

  • Added DataSource object which is now used for 'publishing' data
  • Control and Figure panels are now supplied to controller as their `class`` rather than a string
  • Added setup_hooks() method to couple Figures to Controllers
  • Added a Logging panel
  • Fixed ignoring prolines to always be True

Fixes:

  • read_to_np can read files with two comment lines and with hex color codes (#000000)
  • Fixed datapoints without coverage showing up (#89)
  • Fixed coverage intervals (#91)
  • Various bugfixes
  • Improved documentation

GUI updates

04 Aug 13:26
Compare
Choose a tag to compare

This release mostly features updates in the GUI:

  • Added publish_data functionality which allows pushing data sources to client graphs
  • Linking x-range of coverage and rates/protection factor figures is working again
  • Coverage and rates/protection figures are now aligned by introducing left border space
  • Different color maps for the coverage figure can be selected
  • A color bar was added to the coverage control panel

Other changes:

  • Added tests for the GUI
  • Removed old code and comments, specifically RateFigureOld and CoverageFigureOld
  • Added a script to run a cluster locally
  • Added a new function for obtaining initial guesses (needs to be added to GUI)

Fixes

  • Fixed thresholding values bug (#86)
  • Fixed fit1 in initial guesses by default (#87)
  • Fixed classification not working after second iteration of fitting (#71)
  • Fixed not re-applying thresholds when threshold values are set (#88)
  • Fixed mouse-over hovertools (#73)

Full protein tensorflow fit

22 Jul 10:57
Compare
Choose a tag to compare

The main new feature of this beta release is the change to fitting of the whole protein in one go rather than splitting it into sections and fitting one by one.

Advantages include:

  • Significant speed increase
  • Regularizer can propagate across gaps of no coverage
  • Regularizer now propagates across prolines

Changelog:

  • Default value for l1 regularizer is now 2000 because it was changed to average rather than sum
  • Default value of epochs from 10000 to 100000
  • Added method for getting intersections of KineticSeries
  • Added method to get k_int structured array, k_int for prolines and no coverage is now 0.
  • Updated internal intervals to [start, end) rather than [start, end]
  • Added TFCoverage object to allow fitting over the whole protein, to be merged in future releases
  • Added a 'uptake_corrected' field which is absolute D uptake but corrected by FD control
  • Added 'half life' initial guesses to GUI
  • Added full protein fit to GUI (replaced old fitting procedure)