Skip to content

Enforce Python 3.12 in named Python environments - #20

Merged
gaow merged 2 commits into
StatFunGen:mainfrom
jaempawi:enforce-python-312
Sep 9, 2026
Merged

gaow merged 2 commits into
StatFunGen:mainfrom
jaempawi:enforce-python-312

Conversation

@jaempawi

@jaempawi jaempawi commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add python=3.12 to the named Python environment in both minimal and full package lists
  • keep the existing setuptools<82 compatibility constraint

Why

The global package list pins Python 3.12, but reinstalls can still resolve the separately injected python environment with Python 3.14. SoS 0.25.1 then fails with file_target object has no attribute _flavour. Applying the version constraint inside each [python] section makes the named environment deterministic.

Validation

  • git diff --check
  • bash -n pixi-setup.sh init.sh pixi-install.sh
  • reproduced the affected SoS workflow after resolving Python 3.14.7, then confirmed it succeeds after Python 3.12.14 is applied

Apply the Python version constraint inside the named Python environment so fresh installs and reinstalls cannot resolve Python 3.14, which is incompatible with SoS 0.25.1.
Apply the same named-environment constraint to the full package list.
@gaow
gaow merged commit 51a5a3b into StatFunGen:main Sep 9, 2026
0 of 3 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.

2 participants