Skip to content

release: AtomWorks 3.0.0 - #116

Merged
nscorley merged 108 commits into
productionfrom
release/atomworks-3-0
Oct 5, 2026
Merged

nscorley merged 108 commits into
productionfrom
release/atomworks-3-0

Conversation

@nscorley

@nscorley nscorley commented Oct 5, 2026 •

Copy link
Copy Markdown
Collaborator

AtomWorks 3.0.0

Changes

  • ParseConfig and PrepareConfig for parser and AtomArray preparation settings.
  • Corrections to covalent bonds, leaving atoms, charges, and hydrogen counts; validation of unsupported chemistry.
  • Seeded alternate-conformer selection for CIF inputs, including clash-aware selection.
  • CIF round trips for custom component chemistry and registered StandardAnnotations.
  • Experimental protonation API with separate hydrogen assignment and coordinate placement.
  • Arrow-backed metadata, ASE/materials and LMDB loading, and updated ML encodings and conditions.
  • MSA CLI documentation and a ColabFold Python API for remote generation, pairing, and templates.

Migration from 2.x

  • Parser outputs can change. Compare bonds, charges, hydrogen counts, and model predictions before replacing existing preprocessing; rebuild or separate parser caches.
  • Move parser options into configuration objects. Bare keywords and filename= are deprecated. fix_formal_charges, fix_bond_types, and hydrogen_policy="infer" are removed.
  • Check model encodings: the vocabulary adds a gap token, DNA/RNA slots include OP3, and conditions store target values rather than only masks.
  • Requires Python 3.11+, Biotite 1.6.0, and PyArrow 23.0.1+. Install the ml extra for ML/MSA tools.

Short migration guide · Detailed migration guide · MSA documentation


Maintainer notes

  • Confirm release CI and the final production commit before tagging.
  • Verify PyPI Trusted Publishing (release_and_docs.yaml, environment pypi) and that version 3.0.0 is unused.
  • Tag the approved production commit v3.0.0 to publish the package, GitHub release, and versioned docs. Merging alone does not publish.
  • Keep the existing branch-based Pages setup on gh-pages.

The failed legacy Ruff run 37257995594 checked old production commit fcf7af8c through pull_request_target, not the release candidate. This PR removes that workflow; use the current CI and release workflow to validate the candidate.

kierandidi and others added 30 commits December 1, 2025 13:53
docs(lmdb): clarify ASE atom array loading
…ut 'data' attribute, such as the ASELMDBDataset
Take upstream 2.1.1 and hatch packages layout; local hatch wheel.targets change is superseded.
Adding a 'cookbook' reference for commonly used atomworks functions. Originally created by Rocco Moretti.

Updated the io_utils.py file to include the PDB buffer and string converter to the list of API functions.
Keep future release switchers on the repository's current Pages host instead of the retired atomworks-dev URL.
Prevent non-release production pushes from overwriting the latest immutable version directory.
In _map_to_closest_canonical_residue we use a template canonical residue
to check if an unwanted residue might be substituted for a canonical.
The template canonical residue includes leaving groups, causing it to
always fail for residues in a polymer when checking if it subsets the
atoms of the residue to be substituted. This fix removes leaving groups
from the comparison logic when required and adds regression tests
demonstrating both the in-chain and chain-terminus cases.
docs: finish MSA CLI and preprocessing documentation for 3.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.