Skip to content

Conversation

@njzjz
Copy link
Member

@njzjz njzjz commented Jan 12, 2026

Reverts #837

Both issues have been fixed

Summary by CodeRabbit

  • Chores
    • Removed version constraints on dependencies in CI/CD workflows, allowing installation of the latest available versions of rdkit and related packages for improved compatibility with newer releases.

✏️ Tip: You can customize this high-level summary in your review settings.

Copilot AI review requested due to automatic review settings January 12, 2026 16:12
@dosubot dosubot bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jan 12, 2026
@codspeed-hq
Copy link

codspeed-hq bot commented Jan 12, 2026

Merging this PR will not alter performance

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

✅ 2 untouched benchmarks
⏩ 2 skipped benchmarks1


Comparing revert-837-fix-parmed-import (307eb67) with devel (2fa782d)

Open in CodSpeed

Footnotes

  1. 2 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR reverts a previous change (PR #837) that added temporary version constraints for numpy (<2.3) and rdkit (<2025.3.3) in CI workflows. According to the PR description, the underlying compatibility issues that necessitated these pins have now been resolved.

Changes:

  • Remove numpy and rdkit version constraints from the test workflow
  • Remove rdkit version constraint from the pyright workflow

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/test.yml Removes 'numpy<2.3' and 'rdkit<2025.3.3' version pins from CI dependencies
.github/workflows/pyright.yml Removes 'rdkit<2025.3.3' version pin from type checking workflow dependencies

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@dosubot dosubot bot added the github_actions Pull requests that update GitHub Actions code label Jan 12, 2026
@njzjz njzjz marked this pull request as draft January 12, 2026 16:15
@njzjz
Copy link
Member Author

njzjz commented Jan 12, 2026

parmed released v4.3.1 but didn't upload it to pypi.

@coderabbitai
Copy link

coderabbitai bot commented Jan 12, 2026

📝 Walkthrough

Walkthrough

This PR removes version constraints for rdkit and numpy dependencies in GitHub Actions workflow files. The changes replace pinned versions (rdkit<2025.3.3, numpy<2.3) with unconstrained package specifications across two workflow configurations.

Changes

Cohort / File(s) Summary
GitHub Actions Workflows
\.github/workflows/pyright\.yml, \.github/workflows/test\.yml
Removes version constraints from rdkit (previously <2025.3.3) and numpy (previously <2.3) in pip install commands, allowing installation of any available version

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

Suggested reviewers

  • wanghan-iapcm
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change—reverting CI version pins for numpy and rdkit—which is directly supported by the raw_summary showing removal of version constraints from workflow files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch revert-837-fix-parmed-import

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @.github/workflows/pyright.yml:
- Line 16: The rdkit package was unpinned in the workflow command (the run step
installing packages), but RDKit 2025.03.3 is incompatible with NumPy 2.x;
restore a version constraint (e.g., rdkit<2025.3.3) in the install command used
in the run step to prevent installing the problematic release, keep the rest of
the packages unchanged, and add a brief inline comment referencing RDKit issue
#7477 so the pin is not removed until NumPy 2.0 compatibility is confirmed.
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2fa782d and 307eb67.

📒 Files selected for processing (2)
  • .github/workflows/pyright.yml
  • .github/workflows/test.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Upload results
🔇 Additional comments (1)
.github/workflows/test.yml (1)

29-29: LGTM - version constraints for rdkit and numpy removed.

The change removes both rdkit<2025.3.3 and numpy<2.3 pins as intended by this revert. Since the matrix tests against both Python 3.8 and 3.12, ensure that the upstream compatibility fixes work across both Python versions.

Verify the CI passes after this change, as the PR relies on upstream fixes being in place for both rdkit and numpy.

python-version: '3.12'
- run: pip install uv
- run: uv pip install --system -e .[amber,ase,pymatgen] 'rdkit<2025.3.3' openbabel-wheel
- run: uv pip install --system -e .[amber,ase,pymatgen] rdkit openbabel-wheel
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🌐 Web query:

rdkit 2025.3.3 numpy compatibility issues

💡 Result:

Short answer: RDKit 2025.03.3 (and nearby 2025.x releases) can break with NumPy 2.x because its compiled Python extensions (and some downstream dependencies) must be built against the NumPy‑2 ABI; if they were built against NumPy‑1.x they will fail at import. See the upstream discussion and Debian build failures. [1][2][3]

What that means and options

  • Cause: NumPy 2.0 is an ABI‑breaking release; wheels built with NumPy 1.x won’t run with NumPy 2.x unless rebuilt against NumPy 2.0. RDKit/its binary wheels or dependencies may still be built against NumPy‑1.x. [2][4]
  • Evidence: RDKit GitHub issue tracking NumPy‑2 support (opened May 31, 2024) and Debian FTBFS report for NumPy‑2 (Jan 30, 2025). [2][3]
  • Quick workarounds:
    1. Use numpy<2 (pip/conda): pip install "numpy<2" (or conda install numpy<2) to restore compatibility immediately. [3][4]
    2. Install an RDKit build/wheel explicitly built against NumPy‑2 (if/when available) or rebuild RDKit from source in an environment with NumPy‑2 installed so extensions are compiled against NumPy‑2. The NumPy docs explain that wheels built with NumPy‑2.0 will work for 1.xx as well. [4][1]
    3. Use conda-forge/conda packages if those builders have published NumPy‑2‑compatible RDKit wheels (check the package build notes). [1]
  • Diagnostic error you may see: “A module that was compiled using NumPy 1.x cannot be run in NumPy 2.x …” — that’s the signature of this ABI mismatch. [3]

If you want, tell me:

  • how you installed RDKit (pip, conda, system package), and
  • your Python and numpy versions (python -V; python -c "import numpy as np; print(np.version)")
    and I’ll give exact commands to fix or rebuild for your setup.

Sources
[1] RDKit install docs (2025.03.x).
[2] RDKit GitHub issue “Support NumPy 2.0” (opened May 31, 2024).
[3] Debian/Debichem report: rdkit FTBFS with numpy 2.x (Jan 30, 2025).
[4] NumPy guidance on supporting NumPy 2.0 (build-time ABI notes).


🏁 Script executed:

# Search for context about the rdkit version pin in git history
cd /tmp && git -C . 2>/dev/null || echo "no git context available"
# Try to find any references to rdkit version constraints or issues in the codebase
rg "rdkit" --type py --type yml -A 2 -B 2 | head -50

Repository: deepmodeling/dpdata

Length of output: 2293


🏁 Script executed:

# Search for rdkit references in the codebase
rg "rdkit" -t python -t yaml --type-list | head -20

# Specifically look for pyright workflow and rdkit references
cat .github/workflows/pyright.yml 2>/dev/null || echo "File not found in current context"

# Search for any issue references or comments about rdkit compatibility
rg "rdkit.*2025|2025.*rdkit" -A 3 -B 3

# Check git history for when the rdkit constraint was added
git log --oneline --all -S "rdkit<2025" 2>/dev/null | head -10 || echo "Git history unavailable"

Repository: deepmodeling/dpdata

Length of output: 149


🌐 Web query:

rdkit 2025.03 numpy 2.0 fix resolved 2025

💡 Result:

Short answer: RDKit tracked NumPy 2.0 support in Issue #7477 (opened May 31, 2024), but the 2025.03 release notes do not explicitly state "NumPy 2.0 support" or a dedicated fix; you should confirm by checking the specific RDKit wheel/build you plan to use (wheels must be built against NumPy 2 to be ABI-compatible). [1][2]

Sources:

  • RDKit GitHub issue "Support NumPy 2.0" (opened May 31, 2024). [1]
  • RDKit 2025.03.x release notes / releases listing. [2]

Would you like me to check a specific RDKit wheel (PyPI/conda) or your environment (python, rdkit and numpy versions) to confirm compatibility?


Do not remove the rdkit version constraint without resolving NumPy 2.0 compatibility.

The rdkit<2025.3.3 pin cannot be safely removed. RDKit 2025.03.3 has a known NumPy 2.0 ABI incompatibility—its wheels are built against NumPy 1.x and will fail at import with NumPy 2.x. This issue (RDKit #7477, opened May 31, 2024) remains unresolved as of the latest release notes, with Debian build failures still reported as recently as January 2025. Removing the constraint without confirmed NumPy 2.0 support will break the workflow.

🤖 Prompt for AI Agents
In @.github/workflows/pyright.yml at line 16, The rdkit package was unpinned in
the workflow command (the run step installing packages), but RDKit 2025.03.3 is
incompatible with NumPy 2.x; restore a version constraint (e.g., rdkit<2025.3.3)
in the install command used in the run step to prevent installing the
problematic release, keep the rest of the packages unchanged, and add a brief
inline comment referencing RDKit issue #7477 so the pin is not removed until
NumPy 2.0 compatibility is confirmed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github_actions Pull requests that update GitHub Actions code size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants