Recent Releases of proteusPy

proteusPy - proteusPy V0.99.35 is released!

Release Notes

This release introduces the DisulfideEnergy class, designed to analyze the contributions of each dihedral to the overall energy of a disulfide bond. Inspired by the energy function from Hogg et al.'s Allosteric Disulfide Bond paper, this class provides an alternative to the standard energy function used in proteusPy. The implementation allows for a comparative analysis between the two approaches. For detailed information, refer to the API documentation.

Added

  • DisulfideEnergy Class: A new class to decompose disulfide torsional strain calculations. It supports both the standard proteusPy calculation and the energy equation from Hogg et al.'s Allosteric Disulfide Bond paper.
    Note: Future refactoring is planned to integrate this class into the Disulfide class, replacing the current built-in energy functions.
  • Example Notebooks: Relocated several Jupyter notebooks to the examples/ directory for better organization and accessibility.

Changed

  • Enhanced Logging: Integrated rich text formatting into logging functions, resulting in visually appealing and readable log messages.
  • Improved Logger Configuration: Streamlined global logging and file handling in logger_config.py for better maintainability.
  • Better Summary Output: Upgraded the DisulfideLoader.summary() function to improve readability and presentation of output.

Fixed

  • Logger Bug: Resolved a low-level issue with the global logger that caused duplicate log messages.
  • Visualization Improvement: Enabled translation to the center of mass for disulfide visualizations, ensuring each disulfide is properly centered.

Scientific Software - Peer-reviewed - Python
Published by suchanek about 1 year ago

proteusPy - proteusPy v0.99.34 is Released~

There are a number of significant additions to proteusPy in this release, including:

  1. DisulfideClassGenerator - manages creation of disulfide ensembles based on their consensus class structures.
  2. Lots of plotting functions and refactoring of code.
  3. Squashing bugs via testing.

See the CHANGELOG for more details.

Scientific Software - Peer-reviewed - Python
Published by suchanek about 1 year ago

proteusPy - V0.99.33 is released

Minor release to fix some pytest testing issues.

Scientific Software - Peer-reviewed - Python
Published by suchanek about 1 year ago

proteusPy - proteusPy v0.99.32 is released!

proteusPy v0.99.32 includes some internal fixes as well as schematic disulfide rendering via the proteusPy.render_schematic_disulfides endpoint. See the CHANGELOG for more details.

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] about 1 year ago

proteusPy - proteusPy v0.99.3 is Released!

[v0.99.3] - 2024-2-22

Added

  • Stronger type checking
  • Additional error checking for DisulfideList slicing.
  • Several new UnitTests

Changed

  • Refactored both Disufulfide and DisulfideList and moved plotting and statistics into new classes DisulfideVisualization and DisulfideStats.
  • Simplification and unification of accessing Disulfides via class strings
  • Generalized Disulfide class creation, can create up to 26-fold classes now.

Fixed

  • DisulfideList.AverageConformation now uses a circular mean function to correctly handle the nature of -180 - 180 degree dihedral angle averaging.

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] over 1 year ago

proteusPy - https://github.com/suchanek/proteusPy/releases/tag/0.99.1.dev3

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] over 1 year ago

proteusPy - v0.98.6.dev0 release

This quick release adds auto-theme detection at initialization. Added new logic to use it within Disulfide.py

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] over 1 year ago

proteusPy - proteusPy v0.98.5 is released!

Added

  • static method DisufideClass_Constructor.class_string_from_dihedral() - return the binary or octant class string for a single or array of dihedrals.
  • properties Disulfide.binary_class_string and Disulfide.octant_class_string
  • DisulfideLoader.sslist_from_class() - now uses the index value for a specific disulfide that matches the classID from the TorsionDF dataframe. This allows for direct access to the DisulfideList containing the Disulfides via loader[index], which is significantly faster than looking up via loader[disulfide_name].

Changed

  • vectorized binary and octant class string construction
  • added binary and octant class strings to the master loader.TorsionDF DataFrame.
  • Rewrote programs/DisulfideClass_Extractor.py to use the index-based address scheme described above. This resulted in about a 20x speedup in the program!

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] over 1 year ago

proteusPy - https://github.com/suchanek/proteusPy/releases/tag/0.98.5.dev4

Scientific Software - Peer-reviewed - Python
Published by github-actions[bot] over 1 year ago

proteusPy - proteusPy v0.98.4 is released!

  • Added distance and deviation plotting to DisufideList
  • Added binary and octant class indexing via DisulfideLoader

See the Changelog for more information.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.98.3 Related

What's Changed

Added

  • DisulfideExtractor_mp.py moved into the package as a callable module.

proteusPy.DisulfideExtractor from command line will launch the program

  • Incorporated consensus structures into the DisulfideClass_Constructor object. This presumes these have been generated. The consensus structures are created through the program DisulfideClass_Analysis.py.

Changed

  • Corrected an error in DisulfideLoader that failed to initialize the torsion dataframe properly after filtering.
  • Change to setup.py - 2q7q_seqsim.csv was not being included

Fixed

  • Sgdistance was not being calculated with ``Disulfide.buildyourself()``
  • phi and psi were not correctly populating in the torsion dataframe.
  • There was a subtle error in the DisulfideLoader initialization that led to internal database inconsistencies after filtering. This has been corrected.

Full Changelog: https://github.com/suchanek/proteusPy/compare/0.98.2...V0.98.3

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.98.2 is released!

This version of proteusPy includes the following changes:

  1. Python upgraded to v3.12
  2. Incorporation of a pyqt5-based disulfide viewer into the package. See the README for more details.
  3. Continuing work on the Panel-based Disulfide browser rcsbviewer.py_, available via command line or Docker images.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.17 is Released

This is release has small changes to the Makefile and the viewer. The core is essentially stable at this point. The major issue in the viewer is the inability to clear the window titles on the list view.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.16 is released!

This is an incremental release that simplifies the Disulfide viewer layout and use. The viewer is in the viewer subdirectory, named rcsb_viewer.py. It can be launched from within the proteusPy environment at command-line. If you have Docker installed it can be pulled from the DockerHub or ghcr.io. See the README for specifics.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.15 is released!

This release unifies the disulfide database viewer under a single program rcsb_viewer.py. It lives in both the /viewer and /programs directory. The Docker image is built from this source. See the README for instructions on how to launch each version.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.14 Released!

This release improves the programs/DBViewer.py panel-based Disulfide viewer as well as the Docker image which is stored on Dockerhub at: egsuchanek/rcsb_viewer:latest.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.10 Released!

v097.10 includes refinements to the viewer.py viewer and additional code optimizations for speed and efficiency.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy V0.97.9 Released!

Significant Addition

  • Created a Disulfide viewer using pyQt5 library. This program is under programs/viewer.py. It's basic, but provides an easy way to visualize disulfides within the database. The single checkbox toggles between individual disulfide, or overlaid. The latter shows all of the disulfides for the given protein entry, overlaid onto a common coordinate system.
  • I continue to tweak the code, but the core is stable.

Full Changelog: https://github.com/suchanek/proteusPy/compare/V0.97.8...v0.97.9

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy v0.97.8 Released!

proteusPy v0.97.8

There have been many internal changes to the package since the official release. I list the most relevant below: - Completely re-wrote the PDB parser, removing the dependency on my Biopython fork. This has led to great improvements in the overall Disulfide extraction process. - Implemented multi-processing for the Disulfide_Extractor program. It's possible to extract disulfides from over 37,000 PDB files in under 3 minutes on my 2024 M3 Max MacBook Pro, using 14 cores. This process initially took over 1.5 hours! - Implemented Octant (8-fold) class construction. - Implemented bond angle and bond distance ideality calculations in order to intelligently extract high-quality disulfides from the database.

- Implemented dynamic DisulfideLoader creation from the master SS list extracted by the extractor.

Scientific Software - Peer-reviewed - Python
Published by suchanek over 1 year ago

proteusPy - proteusPy: A Python Package for Protein Structure and Disulfide Bond Modeling and Analysis

Official release of proteusPy corresponding to the JOSS paper.

Scientific Software - Peer-reviewed - Python
Published by suchanek almost 2 years ago

proteusPy - proteusPy: A Python Package for Protein Structure and Disulfide Bond Modeling and Analysis

This is the latest release of the proteusPy package corresponding to the publication of the paper in JOSS.

Scientific Software - Peer-reviewed - Python
Published by suchanek almost 2 years ago

proteusPy - First Public Release

This is the first official release of proteusPy.

Scientific Software - Peer-reviewed - Python
Published by suchanek about 2 years ago