Skip to content

fix for modern version of Python - #1552

Merged
BoPeng merged 2 commits into
vatlab:masterfrom
danielnachun:support_new_deps
Sep 9, 2026
Merged

BoPeng merged 2 commits into
vatlab:masterfrom
danielnachun:support_new_deps

Conversation

@danielnachun

Copy link
Copy Markdown
Contributor

This PR should allow SoS to work with the newest versions of Python and all the packages it depends on. Currently SoS is stuck using an old version of setuptools and cannot use a version of Python new than 3.12.

I've also noticed the CI system could benefit a lot from some modernization, but I haven't included those changes here yet and they may make more sense for a future PR.

Comment thread pyproject.toml
# [tool.hatch.metadata]
# allow-direct-references = true

[tool.uv]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I vaguely remember this was deprecated. What is the modern equivalence?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I double checked this and noticed I could reorganize it to fully follow PEP 735 which is very explicit about how to group dependencies:

  • [project.dependencies] is for dependencies that must be present for the project to run
  • [project.optional-dependencies] is for dependencies that can enhance the user experience but are not needed
  • [dependency-groups] are for development-only tools (linters, formatters, unit testing, etc.)

Now if the use wants the development tools,pip install -e . --group dev will pull in all of them, and if uv is used, it will automatically install the dev dependency group. The optional packages are still installed the usual way `pip install -e ".[dot]", etc.

@bo-unitysvc bo-unitysvc left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Thanks. The PR looks fine. I had only one comment.

@BoPeng
BoPeng merged commit 70b13b6 into vatlab:master Sep 9, 2026
@danielnachun

danielnachun commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @BoPeng! When you have a change if you can make a new tag, that should trigger a new build on the conda-forge feedstock which I will then take care of since I'm a maintainer there.

@BoPeng

BoPeng commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Thanks. I just released v0.25.2. conda-forge would be an separate issue.

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.

3 participants