Skip to content

Conversation

@jan-janssen
Copy link
Member

@jan-janssen jan-janssen commented Jan 18, 2026

Summary by CodeRabbit

  • Chores
    • Updated SciPy dependency version to 1.17.0 across build and project configuration files.

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

@coderabbitai
Copy link

coderabbitai bot commented Jan 18, 2026

📝 Walkthrough

Walkthrough

SciPy dependency version updated from 1.16.3 to 1.17.0 across three configuration files (.ci_support/environment.yml, .ci_support/environment_mini.yml, and pyproject.toml). No other dependencies, code, or configuration modifications.

Changes

Cohort / File(s) Summary
Dependency Configuration
.ci_support/environment.yml, .ci_support/environment_mini.yml, pyproject.toml
Updated SciPy version from 1.16.3 to 1.17.0 across all three configuration files

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

Suggested labels

dependencies, patch

Poem

🐰 A little bump, from point-one-six,
To point-one-seven, what a mix!
SciPy springs forth with newfound grace,
Across three files we've set the pace!

🚥 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 PR title directly and accurately describes the main change: updating the scipy dependency from 1.16.3 to 1.17.0 across all configuration 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.


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: 2

🤖 Fix all issues with AI agents
In @.ci_support/environment_mini.yml:
- Line 7: The Python version constraint mismatch: update the requires-python
field in pyproject.toml to align with SciPy 1.17.0 by changing requires-python =
">=3.10, <3.14" to requires-python = ">=3.11, <3.14" (or alternatively downgrade
SciPy in .ci_support/environment_mini.yml to a 1.16.x release if you must keep
Python 3.10 support); modify the requires-python entry in pyproject.toml
accordingly so it matches the SciPy version declared in
.ci_support/environment_mini.yml.

In `@pyproject.toml`:
- Line 29: The pyproject.toml currently lists "scipy==1.17.0" which requires
Python 3.11–3.14 and therefore conflicts with the project's requires-python =
">=3.10, <3.14"; update the requires-python constraint to match SciPy (e.g.,
">=3.11, <3.14") and adjust the package classifiers (Python :: 3.11, etc.) to
reflect the new supported Python versions; alternatively, if you must keep
supporting 3.10, replace "scipy==1.17.0" with a SciPy release that supports 3.10
and update the lock accordingly.

- coverage
- numpy =2.3.5
- scipy =1.16.3
- scipy =1.17.0
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# Check Python version requirement in pyproject.toml
rg -n "requires-python" . --type toml -A 1 -B 1

# Check the full environment files
cat .ci_support/environment_mini.yml

# Search for Python version references in CI
rg -n "python" .ci_support/ --type yaml | head -20

# Check for other environment files
ls -la .ci_support/

Repository: pyiron/structuretoolkit

Length of output: 837


🌐 Web query:

SciPy 1.17.0 Python version requirement

💡 Result:

SciPy 1.17.0 requires Python 3.11–3.14 (and NumPy >= 1.26.4). [1][2]

Sources:
[1] SciPy 1.17.0 release notes. [2] SciPy 1.17.0 zenodo release metadata.


🏁 Script executed:

# Check other environment files for Python/SciPy versions
cat .ci_support/environment.yml
cat .ci_support/environment-old.yml

# Search for CI workflow files that might define Python versions
find . -name "*.yml" -o -name "*.yaml" | grep -E "(github|ci|workflow)" | head -10
fd -e yml -e yaml | grep -E "(github|\.github|workflow)" | head -20

Repository: pyiron/structuretoolkit

Length of output: 1019


🏁 Script executed:

# Check CI workflows for Python versions
cat .github/workflows/pipeline.yml | head -80

# Search for Python version matrix in workflows
rg -n "python" .github/workflows/ -A 2 -B 2 | head -50

Repository: pyiron/structuretoolkit

Length of output: 5163


Resolve Python version constraint mismatch with SciPy 1.17.0.

SciPy 1.17.0 requires Python 3.11–3.14, but pyproject.toml (line 14) specifies requires-python = ">=3.10, <3.14". Since CI testing only covers Python 3.11+, update the constraint to match:

Change requires-python = ">=3.10, <3.14" to requires-python = ">=3.11, <3.14"

Alternatively, if Python 3.10 support is needed, retain SciPy 1.16.x.

🤖 Prompt for AI Agents
In @.ci_support/environment_mini.yml at line 7, The Python version constraint
mismatch: update the requires-python field in pyproject.toml to align with SciPy
1.17.0 by changing requires-python = ">=3.10, <3.14" to requires-python =
">=3.11, <3.14" (or alternatively downgrade SciPy in
.ci_support/environment_mini.yml to a 1.16.x release if you must keep Python
3.10 support); modify the requires-python entry in pyproject.toml accordingly so
it matches the SciPy version declared in .ci_support/environment_mini.yml.

"ase==3.27.0",
"numpy==2.3.5",
"scipy==1.16.3",
"scipy==1.17.0",
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Python version constraint requires update.

SciPy 1.17.0 requires Python 3.11-3.14, which conflicts with Line 14's requires-python = ">=3.10, <3.14". Users on Python 3.10 will encounter installation failures when pip attempts to resolve this dependency.

Suggested fix: Update Python version requirement
-requires-python = ">=3.10, <3.14"
+requires-python = ">=3.11, <3.14"

Also update the classifiers accordingly:

-    "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",
     "Programming Language :: Python :: 3.13",
🤖 Prompt for AI Agents
In `@pyproject.toml` at line 29, The pyproject.toml currently lists
"scipy==1.17.0" which requires Python 3.11–3.14 and therefore conflicts with the
project's requires-python = ">=3.10, <3.14"; update the requires-python
constraint to match SciPy (e.g., ">=3.11, <3.14") and adjust the package
classifiers (Python :: 3.11, etc.) to reflect the new supported Python versions;
alternatively, if you must keep supporting 3.10, replace "scipy==1.17.0" with a
SciPy release that supports 3.10 and update the lock accordingly.

@jan-janssen
Copy link
Member Author

======================================================================
ERROR: test_C15 (test_compound.TestCompound.test_C15)
Tests based on Xie et al., JMR 2021 (DOI:10.1557/s43578-021-00237-y).
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/structuretoolkit/structuretoolkit/tests/test_compound.py", line 90, in test_C15
    csa = stk.analyse.get_centro_symmetry_descriptors(structure)[unique_ids]
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/Users/runner/miniconda3/envs/test/lib/python3.13/site-packages/structuretoolkit/analyse/pyscal.py", line 77, in get_centro_symmetry_descriptors
    sys = ase_to_pyscal(structure)
  File "/Users/runner/miniconda3/envs/test/lib/python3.13/site-packages/structuretoolkit/common/pyscal.py", line 15, in ase_to_pyscal
    import pyscal3 as pc
  File "/Users/runner/miniconda3/envs/test/lib/python3.13/site-packages/pyscal3/__init__.py", line 1, in <module>
    from pyscal3.core import System
  File "/Users/runner/miniconda3/envs/test/lib/python3.13/site-packages/pyscal3/core.py", line 15, in <module>
    from scipy.special import sph_harm
ImportError: cannot import name 'sph_harm' from 'scipy.special' (/Users/runner/miniconda3/envs/test/lib/python3.13/site-packages/scipy/special/__init__.py)

----------------------------------------------------------------------

@jan-janssen
Copy link
Member Author

Waiting for pyscal/pyscal3#59

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.

2 participants