You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Changelog
Additions
Added type annotations to the entire code base, checked via pyright. (#904)
Added support for reading and writing ClustalW .aln alignment files via the new sequence.io.clustal subpackage. (#880)
Added structure.nucleotide_dihedral_backbone() and structure.nucleotide_dihedral_side_chain() for measuring dihedral angles of nucleic acid structures. (#886)
Added optional entity_id annotation to AtomArray, mirroring atom_site.label_entity_id from the mmCIF format. (#894)
Installation does not require a pre-existing Rust toolchain: puccinialin installs it temporarily if needed.
Replaced the Conda-based development setup with a pixi setup for a more ergonomic build and test workflow. (#901)
Dropped support for Python 3.11; the minimum supported version is now Python 3.12.
Fixes
structure.create_atom_names() now uses the element name for single-atom residues such as ions (e.g. CL instead of CL1). (#897)
structure.filter_monoatomic_ions() is now more rigorous in identifying ions. (#887)
structure.io.pdbx.set_structure() now emits a warning and writes a single bond as a fallback when intra-residue bonds are Bond.ANY or Bond.COORDINATION instead of raising. (#870)
structure.io.pdbx.get_structure() now always assigns continuous atom IDs to the atom_id annotation. (#861)
Fixed missing intra-residue bonds for 'unknown' residue types when reading PDBx files. (#891)
Fixed structure.get_residue_starts() and structure.get_chain_starts() missing the exclusive stop entry for empty atom arrays. (#889)
Fixed KeyError in structure.io.pdbx.get_structure() when the optional pdbx_PDB_ins_code column is missing. (#877)
Fixed database.rcsb.StructureQuery so that queries for assembly IDs work as expected. (#872)
structure.filter_polymer() now properly works with AtomArrayStack. (#866)
Fixed numeric altloc IDs being ignored when reading structure files. (#858)
Fixed UnboundLocalError raised in some AtomArray operations. (#857)
Fixed application.openmm.from_topology() not parsing atom_id. (#893)