Changelog¶
Changelog¶
All notable changes to this project are documented in this file. The format follows Keep a Changelog.
[Unreleased]¶
[1.5.3] - 2026-05-03¶
Fixed¶
PDBParser(PDBcode=...)legacy parameter silently swallowed by**kwargs; restored via explicit mapping tosource_id/source_db='rcsb'Eight bare
except:clauses narrowed to specific exception types throughoutBitwise
&=used as logical AND inBaseRecord.empty()replaced withall()str2int_sigraisedIndexErroron empty-string input; added guard before index access!= None/== Nonecomparisons replaced withis not None/is Nonethroughouttype(x) == Tidentity comparisons replaced withisinstance(x, T)throughoutelif type(p) == list:inparse_tokens()was unreachable; corrected toisinstance(p, PDBRecordList)Mutable default arguments
hold={}andhold=[]ingather_tokenandheader_checkreplaced withNone
Changed¶
Global hex-tripped flag in
hex.pyreplaced withAtomSerialParsercallable class; eachPDBParserinstance owns its own state, eliminating thread-safety hazard and cross-parse contaminationmappersdefault argument changed from a mutable dict literal toNone; default built inside__init__Resource YAML files now loaded via
importlib.resources.files()instead ofos.path.dirname(resources.__file__), ensuring correct behavior inside wheels and zip archivesresources/__init__.pyremoved;resources/is now a plain data directory, not a sub-packageMANIFEST.inremoved; hatchling auto-discovers package data from git-tracked filesPEP 8 spacing applied throughout all source files
parse_embedded()refactored:triggered/capturingboolean pair replaced with explicit_EmbedStateenum (SEARCHING,PRE_CAPTURE,CAPTURING); setup phase extracted into_setup_embed_context()
Added¶
CHANGELOG.mdwith full release historyscripts/release.shfor automated version rotation, tagging, and push[test]optional dependency group inpyproject.toml
[1.5.2] - 2025-09-16¶
Added¶
Capability to download structures from OPM and split DUM residues into a separate PDB file
[1.5.1] - 2025-09-15¶
Fixed¶
Minor fixes following 1.5.0
[1.5.0] - 2025-09-15¶
Added¶
Initial OPM support
[1.4.2] - 2025-08-11¶
Changed¶
Updated AlphaFold interface to current API
[1.4.1] - 2025-08-07¶
Fixed¶
Parsing bug in
PDBRecordList
[1.4.0] - 2025-07-29¶
Added¶
PDBRecordListandPDBRecordDictclasses
[1.3.3] - 2025-07-29¶
Fixed¶
Bugs where missing records were incorrectly assumed present during mmCIF parsing
[1.3.2] - 2025-07-25¶
Added¶
filepathparameter inPDBParser()for transparent reading of local files
[1.3.1] - 2025-07-25¶
Fixed¶
Minor fixes following 1.3.0
[1.3.0] - 2025-07-16¶
Changed¶
Streamlined class attribute usage throughout
Full API documentation published
[1.2.3] - 2025-03-06¶
Fixed¶
Negative residue sequence numbers now parsed correctly
[1.2.2] - 2025-03-04¶
Fixed¶
Minor fixes following 1.2.1
[1.2.1] - 2024-10-01¶
Fixed¶
Hexadecimal serial number parsing issues (again)
[1.2.0] - 2024-09-08¶
Fixed¶
Hexadecimal serial number parsing issues
[1.1.9] - 2024-08-08¶
Fixed¶
nanvalues and*filler characters in numeric fields now handled gracefully
[1.1.8] - 2024-07-15¶
Added¶
Unstructured REMARK records (e.g. from PACKMOL output) parsed as
REMARK.-1
[1.1.6] - 2024-07-11¶
Fixed¶
Hexadecimal atom serial detection when no
a-fcharacters are present, based on value exceeding 99999
[1.1.5] - 2024-07-11¶
Fixed¶
Hex-or-integer detection now restricted to atom serial number fields only
[1.1.4] - 2024-07-11¶
Added¶
Hexadecimal atom serial number support for files with more than 99999 atoms
[1.1.3] - 2024-03-21¶
Added¶
Ability to group records into models for multi-model PDB entries
[1.1.2] - 2024-02-28¶
Added¶
Ability to fetch structures from the AlphaFold database
[1.1.1] - 2023-09-19¶
Added¶
Version detection via
importlib.metadata
[1.0.9.1] - 2023-08-28¶
Added¶
Limited mmCIF parsing:
ATOM,HETATM,SSBOND,LINK,SEQADV,REMARK 350, andREMARK 465records
[1.0.8] - 2023-08-23¶
Fixed¶
Variations in how symmetry operation matrices are represented in PDB files
[1.0.7.7] - 2023-08-22¶
Changed¶
Cleaned up logging throughout
[1.0.7.6] - 2023-08-22¶
Fixed¶
Leading whitespace in
resNamefield ofResidue10record sometimes ignored
[1.0.7.5] - 2023-08-18¶
Added¶
Support for four-letter residue names
[1.0.7.4] - 2023-08-04¶
Added¶
Logging functionality
[1.0.7.3] - 2023-08-03¶
Changed¶
Improved parsing of BIOMT transforms
[1.0.7.2] - 2023-08-03¶
Added¶
Documentation stub on ReadTheDocs
[1.0.7.1] - 2023-08-03¶
Added¶
Support for split BIOMT tables and REMARK 280, 375, 650, and 700
[1.0.7] - 2023-08-01¶
Added¶
Pretty-print support for parsed records
[1.0] - 2023-07-01¶
Added¶
Initial release