Recent Releases of modelcif

modelcif - python-modelcif 1.4 release

  • Revision information and information on how the data in the file can be used are now read from or written to mmCIF or BinaryCIF files. See System.revisions and System.data_usage respectively.
  • New classes have been added to modelcif.alignment, modelcif.qa_metric, and modelcif.protocol to support all sequence identity denominators (#47), QA metric types (#45), and protocol step types (#44) respectively, as defined in the ModelCIF dictionary.
  • The new modelcif.alignment.Local and modelcif.alignment.Multiple classes allow for both local alignments and multiple sequence alignments to be described (#43).
  • Bugfix: sequence identity and alignment score (identity and score arguments to modelcif.alignment.Pair) are now optional, to match the mmCIF dictionary (#49).
  • Bugfix: information in _ma_template_non_poly.details is now read from mmCIF or BinaryCIF files (#48).
  • Bugfix: files containing empty or missing _ma_qa_metric.description can now be read (#46).

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/1.3...1.4

- Python
Published by benmwebb 9 months ago

modelcif - python-modelcif 1.3 release

  • The new modelcif.CustomTemplate class allows for custom templates (that have not been deposited in a database such as PDB) to be referenced, together with their atomic coordinates (#1).
  • Model quality scores can now be defined that act on single features or pairs of features using the modelcif.qa_metric.Feature and modelcif.qa_metric.FeaturePairwise classes, respectively. Features can be defined as groups of atoms, residues, or asyms (#38).
  • The modelcif.associated.QAMetricsFile class should now be used to reference files that contain model quality scores. The old name (LocalPairwiseQAScoresFile) is deprecated. This allows for all types of QA scores, not just local pairwise scores, to be stored in a separate file.
  • Sanity checks when writing out a file can now be disabled if desired, using the new check argument to modelcif.dumper.write.
  • modelcif.reference.TargetReference now takes an is_primary argument which can be used to denote the most pertinent sequence database reference.
  • Information on model groups (modelcif.model.ModelGroup) is now written to the new ma_model_group and ma_model_group_link mmCIF tables, instead of ma_model_list, to match the latest ModelCIF dictionary. Old-style information in ma_model_list will still be used when reading a file if these new tables are missing.

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/1.2...1.3

- Python
Published by benmwebb about 1 year ago

modelcif - python-modelcif 1.2 release

  • Data that have been split over multiple mmCIF or BinaryCIF files can now be combined into a single modelcif.System object using the new add_to_system argument to modelcif.reader.read (#10).
  • A new example, associated.py, has been added to demonstrate reading in data that has been split into multiple "associated" mmCIF files using modelcif.associated.CIFFile.

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/1.1...1.2

- Python
Published by benmwebb over 1 year ago

modelcif - python-modelcif 1.1 release

  • The new class modelcif.model.NotModeledResidueRange allows for the annotation of residue ranges that were explicitly not modeled. Any residue marked as not-modeled in all models will be excluded from the pdbx_poly_seq_scheme table.
  • The util/make-mmcif.py script is now included in the installed package, so can be run if desired with python3 -m modelcif.util.make_mmcif.
  • The make_mmcif utility script will now automatically add any missing modelcif.model.NotModeledResidueRange objects for not-modeled residue ranges.

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/1.0...1.1

- Python
Published by benmwebb over 1 year ago

modelcif - python-modelcif 1.0 release

  • Reference information in the struct_ref mmCIF table is now supported in addition to the ModelCIF-specific tables such as ma_target_ref_db_details. modelcif.reference.TargetReference now inherits from ihm.reference.Sequence and allows for the full database sequence, plus any differences between it and the modeled sequence, to be recorded. The align_begin and align_end arguments are now deprecated (#34).

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/0.9...1.0

- Python
Published by benmwebb over 1 year ago

modelcif - python-modelcif 0.9 release

  • Bugfix: modelcif.SoftwareGroup now allows for parameters to be associated with each piece of software in the group, rather than with the group as a whole (#33).

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/0.7...0.8

- Python
Published by benmwebb over 2 years ago

modelcif - python-modelcif 0.8 release

  • modelcif.associated.File now takes an optional data argument to allow describing any modeling input/output that is stored in that file.
  • RPM packages are now provided for Fedora and RedHat Enterprise Linux.

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/0.7...0.8

- Python
Published by benmwebb over 2 years ago

modelcif - python-modelcif 0.7 release

  • More examples have been added to demonstrate interconversion between mmCIF and BinaryCIF, and to validate mmCIF files.
  • A utility script util/make-mmcif.py has been added which can add minimal ModelCIF-related tables to an mmCIF file, to add in deposition.
  • The reader is now more robust when handling files that are not ModelCIF compliant (#31).
  • The exptl table is no longer written to output mmCIF files, to conform with wwPDB's recommendation. Instead, the struct.pdbx_structure_determination_methodology data item denotes that the model is computational (#29).

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/0.6...0.7

- Python
Published by benmwebb about 3 years ago

modelcif - python-modelcif 0.6 release

  • ihm.ChemComp now allows for custom chemical components to be defined in a chemical component dictionary (CCD) outside of the wwPDB CCD, such as the ModelArchive CCD, or in the file itself using descriptors such as SMILES or InChI in the modelcif.descriptor module.
  • The ma_struct_assembly category is no longer written out to mmCIF files, as this is deprecated by ModelCIF (all models are required to have the same composition).
  • Templates can now be described in AlphaFoldDB or PubChem using new modelcif.reference.TemplateReference subclasses.
  • HHblits e-values can now be used as alignment scores, using modelcif.alignment.HHblitsEValue.
  • Bugfix: modelcif.associated.CIFFile now writes local files (if requested via categories or copy_categories) even if it is placed inside a modelcif.associated.ZipFile (#26).

Full Changelog: https://github.com/ihmwg/python-modelcif/compare/0.5...0.6

- Python
Published by benmwebb over 3 years ago

modelcif - python-modelcif 0.5 release

  • A new class modelcif.ReferenceDatabase allows describing collections of sequences that were used as part of the modeling protocol.
  • Lists of ints or floats can now be given as software parameters to the modelcif.SoftwareParameter class.

- Python
Published by benmwebb almost 4 years ago

modelcif - python-modelcif 0.4 release

  • Sequence information for templates is now only written to template-specific categories in the mmCIF/BinaryCIF, not to the entity, entity_poly etc. tables, to properly comply with the ModelCIF dictionary.
  • modelcif.Template now takes a entity_id argument which can be used to provide the entity ID (if known) of the template in its own mmCIF file.
  • External files (e.g. alignments, or quality scores) can now be referenced from the main file (using the modelcif.associated module). Selected CIF categories can automatically be written to these external files instead of the main file, in either mmCIF or BinaryCIF format (see modelcif.associated.CIFFile).
  • Non-polymer models can now be linked to their template using the modelcif.NonPolymerFromTemplate class.
  • Add classes for the PLDDT, PTM, and IpTM quality metrics.
  • modelcif.reference.TargetReference now supports the version and CRC64 checksum of the reference sequence.

- Python
Published by benmwebb almost 4 years ago

modelcif - python-modelcif 0.3 release

  • Add a package to conda-forge so the library can be installed using conda install -c conda-forge modelcif
  • modelcif.Template now takes a strand_id argument which can be used to provide the author-provided (e.g. PDB) chain ID.
  • Non-polymers can now be used as templates.

- Python
Published by benmwebb almost 4 years ago

modelcif - python-modelcif 0.2 release

  • Minor packaging and documentation improvements.
  • Add a basic "theoretical model" exptl category to output files.
  • Bugfix: fix output of alignments with an empty list of pairs.

- Python
Published by benmwebb about 4 years ago

modelcif - python-modelcif 0.1 release

First stable release. This provides support for single-chain single-template models using the ModelCIF extension dictionary, and will read and write mmCIF and BinaryCIF files that are compliant with the PDBx and ModelCIF dictionaries.

- Python
Published by benmwebb about 4 years ago