Skip to content

Test with Pint 0.26 - #207

Merged
mattwthompson merged 8 commits into
mainfrom
pint-0.26
Nov 8, 2026
Merged

mattwthompson merged 8 commits into
mainfrom
pint-0.26

Conversation

@mattwthompson

@mattwthompson mattwthompson commented Nov 3, 2026 •

Copy link
Copy Markdown
Member

Description

Closes #206

Todos

  • Test with Pint 0.26
  • Update dependencies
  • Update code snippets in docs
  • Run doctest on docs

AI disclosure

  • Agentic tools or LLMs were used in this contribution - don't recall using any in writing, will be used in review

@codecov-commenter

codecov-commenter commented Nov 3, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.37%. Comparing base (49dd75d) to head (8978a71).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #207   +/-   ##
=======================================
  Coverage   91.37%   91.37%           
=======================================
  Files           6        6           
  Lines         232      232           
=======================================
  Hits          212      212           
  Misses         20       20           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Copilot was unable to complete this review at the selected tier due to model policy or plan restrictions.

🟡 Changes recommended

Approval is blocked because the review evidence identifies unresolved compatibility and maintenance issues, including incomplete Pint-version coverage in CI and dependency range mismatches (unconstrained Pint in pixi.toml) alongside brittle doctests tied to exact repr output.

3 open issues
What changed in this PR

Updates dependency metadata, Pixi environments/lockfile, CI workflows, and doctest expectations to validate compatibility with Pint 0.26 (Closes #206).

Changes:

  • Broaden Pint support in package metadata to include 0.26 (pint>=0.25,<0.27) and refresh Pixi lock data.
  • Update Pixi environment definitions and CI matrices to run Pint 0.26-focused jobs.
  • Adjust OpenMM-related doctest expected outputs to match Pint’s updated display behavior.

Key review notes to address before approval:

  • CI coverage: restore at least one non-OpenMM Pixi environment run in .github/workflows/ci.yaml (OpenMM is optional).
  • Lower-bound testing: either add Pint 0.25 to .github/workflows/ci_pypi.yaml or bump the declared lower bound if 0.25 is no longer supported.
  • Doctest robustness: avoid asserting exact repr() for Quantity in openff/units/openmm.py (noted at lines ~165 and ~299); prefer explicit magnitude/unit assertions.
  • Pixi dependency alignment: constrain pint in pixi.toml to the supported range (currently unconstrained as "*").
File Summary
pyproject.toml Updates declared Pint compatibility range to include 0.26 (>=0.25,<0.27).
pixi.toml Updates Pixi environments/features for Pint 0.26; needs Pint version constraint aligned with pyproject.toml (currently "*").
pixi.lock Regenerates lockfile to resolve against Pint 0.26.x and related dependency updates.
openff/​units/​openmm.py Updates doctest expected outputs; needs less brittle doctests than exact repr() matching (noted at ~165 and ~299).
.github/​workflows/​ci.yaml Updates Pixi CI matrix to Pint 0.26 OpenMM environments; needs at least one non-OpenMM Pixi job retained.
.github/​workflows/​ci_pypi.yaml Updates PyPI-install CI to Pint 0.26; needs Pint 0.25 coverage or a lower-bound bump to 0.26.

This pull request requires changes.

Review effort: Balanced

Comment thread .github/workflows/ci_pypi.yaml Resolved
Comment thread pixi.toml Resolved
Comment thread openff/units/openmm.py Resolved
@mattwthompson
mattwthompson marked this pull request as ready for review November 3, 2026 18:39

@j-wags j-wags left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @mattwthompson - This looks good. I left one blocking and two nonblocking comments.

(not blocking) My claude review points out:

  3. The reprs in docs/index.md are now out of date. The PR updates the two doctests in openmm.py to
  Pint 0.26's new repr, Quantity(9.0, "angstrom"). But docs/index.md still shows <Quantity(...)> at
  lines 38, 95, 111, 120 and 153, and the docs environment now builds with pint26. Users on 0.26 will
  see output that doesn't match the docs.

Comment thread .github/workflows/ci_pypi.yaml Resolved
Comment thread pixi.toml
Comment on lines +21 to +23
[pypi-options.dependency-overrides]
pint = ">=0.25,<0.27"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(not blocking) Just checking whether this section is needed - it seems to be a verbatim copy of the pint dep above

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is, because the conda packages have a different pin

I will confirm this before merging

@mattwthompson
mattwthompson merged commit a3a8dfa into main Nov 8, 2026
125 of 128 checks passed
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.

Support Pint 0.26

4 participants