Releases: douweschulte/pdbtbx
Releases · douweschulte/pdbtbx
v0.12.0
- Added unified file read logic, see
ReadOptions
(Thanks to y1zhou and OWisset)- This deprecates the original read functions
open_gz
(still around for ease of updating) andopen_raw
(fully removed in this update)
- This deprecates the original read functions
- Added
unique_conformer_names
for aPDB
(Thanks to rvhonorato) - Added
chains_in_contact
for aPDB
(Thanks to rvhonorato)
v0.11.0
- Added support for zipped (
.gz
) files (Thanks to OWisset) - Does not automatically convert chain names to uppercase anymore (Thanks to OWisset)
v0.10.2
v0.10.1
- Added more amino acids for
is_amino_acid
- Implemented Display for
StrictnessLevel
v0.10.0 Enumerated Elements
- Moved from string based elements to enums see
Element
, this means that theAtom::set_element
,Atom::element
, andTerm::element
have changed - Deprecated the following functions
Atom::atom_number
,Atom::atomic_radius
,Atom::covalent_bond_radii
,
andAtom::vanderwaals_radius
the radius functions are replaced withElement::atomic_radius
which contains
all these measures in the structAtomicRadius
- Added
Element::weight
andElement::electro_negativity
data - Implemented
Extend
for all levels in the PDB hierarchy - Implemented
FromIterator
for thePDB
struct - Removed requirement for
atom_site.pdbx_formal_charge
,atom_site.group_PDB
,atom_site.occupancy
, andatom_site.B_iso_or_equiv
for mmCIF files (thanks to #93) - Added support for SCALE, ORIGX, and MTRIX in mmCIF files (open and save)
- Fixed ignoring some of the
auth_*
series of mmCIF columns, by giving them precedence over thelabel_*
columns inseq_id
andasym_id
(thanks to #95) - Fixed remark-type-number 400 missing from the valid number list (thanks to #96)
- Fixed a small bug in saving MtriX records (thanks to #96)
v0.9.2
v0.9.1
- Added more search terms
- Added angle and dihedral angle calculations on atoms (Thanks to DocKDE)
- Added extra examples (Thanks to DocKDE)
- Added support for DBREF1/2
- Improved PDB parsing performance (Thanks to DocKDE)
- Improved error message styling and merged common errors
- Additional code and documentation improvements
v0.9.0 Structured search
- Added
find
method on all levels in the PDB, this should allow for human friendly atom(s) searching.
pdb.find(Term::ConformerName("ALA".to_string()) + Term::AtomName("CA".to_string()))
- Added
bounding_box
to the PDB struct. - Added
atom.overlaps_bound()
which uses covalent bond radii instead of unbound radii. (Thanks to raised issue) - Extended
atomic_number
to take the first character of the name if this is one of "CHONS" and the element is unset and the name is not an element name. - Updated covalent bond radii to work in Å as well (was picometers).
- Respecified the dependencies versions to allow cargo to more often reuse dependencies in complex projects.
v0.8.0 All the hierarchy
- Added support for residue serial numbers over 9999 and atom serial numbers over 99999 for PDB files. (Thanks to DocKDE)
- Changed argument type of
save_pdb
fromPDB
to&PDB
. (Thanks to DocKDE) - Allow lack of chain name in PDB files. (Thanks to DocKDE)
- Added mutable structs to extend the use of
AtomWithHierarchy
alongside a refactor which created a struct for every hierarchy level. See the docs for more information. - Removed
Atom.pos_array()
and moved therstar::rtree
to use(f64, f64, f64)
instead of[f64; 3]
. This was made possible by the adoption of tuples as points in rstar.
v0.7.0 Ecosystem integration
- Added parallel iterators based on Rayon (Thanks to DocKDE)
- Added support for generating r*trees from Rstar, this has to be opted in by using the feature
rstar
- Added support for serialization using Serde, this has to be opted in using the feature
serde
- Added a new struct
AtomWithHierarchy
to have access to the containing layers of an atom in an easy way and added functions to generate and work with this struct - Added
binary_find_atom
to all hierarchies to find atoms in less time - Added more names for amino acids and backbone atoms (Thanks to DocKDE)
- Added support for bonds (can only read Disulfide bonds from PDBs for now)
- And many more small fixes and docs updates