Skip to content

Biotite 0.37.0

Compare
Choose a tag to compare
@padix-key padix-key released this 13 May 13:17
· 150 commits to master since this release
7fc6a2e

Changelog

Additions

  • Added PubChem database interface with database.pubchem (#472)
    • Analogous to the other database subpackages, it supports, search() and fetch()
    • fetch_property() can be used to quickly obtain a wide range of properties for a given list of compound IDs
    • Automatic throttle control ensures that the PubChem usage control is obeyed
  • Extended functionality for database.rcsb.search() and database.rcsb.count() (#466):
    • Added support for computational structures (e.g. from Alphafold DB) via the content_types parameter
    • Added support for grouping via the new group_by and return_groups parameters
      • the type of grouping is selected via Grouping subclasses
    • Added support for ascending sorting with the Sorting class
  • database.entrez.search() now also accepts the common database name in addition to the E-utility database name (#471)
    • This is now consistent with the behavior in database.entrez.fetch()
  • Added structure.io.pdb.PDBFile.get_b_factor() analogous to structure.io.pdb.PDBFile.get_coord() (#469)
  • Added structure.io.pdbx.get_component() and set_component() (#468)
    • Allows getting/setting chemical components from/to PDBx files via their chem_comp group of categories instead of atom_site

Changes

  • Deprecate atom_mask parameter in structure.connect_via_residue_names() and structure.connect_via_distances() (#474)
    • It has no effect anymore
  • In structure.BondList.merge() the BondList given as parameter takes precedence, if both BondLists contain the same bond with different BondType (#473)
    • Previously it was the other way round
  • The BondList returned by structure.io.pdb.PDBFile.get_structure() (if include_bonds is True) gives appropriate BondTypes, if they can be determined using the CCD (#473)
    • Otherwise the BondType is BondType.ANY
    • Previously it was BondType.ANY for all bonds
  • Refactored structure.remove_pbc()(#460)
    • PCB removal is conducted for each molecule separately
    • Not the first atom but the centroid of a molecule is placed within the box
    • The selection can only be a boolean matrix

Fixes

  • Fixed a bug in structure.connect_via_distances() and structure.connect_via_residue_names() that allowed unexpected bonds between polymer and non-polymer residues (#473)