-
Notifications
You must be signed in to change notification settings - Fork 14
Modernize use of pyproject.toml to support uv #63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modernize use of pyproject.toml to support uv #63
Conversation
|
The |
I pushed a fix, if it works then we can pull it out into another standalone PR. |
45b882e to
4a2da8f
Compare
|
I've cleaned up the branch history so that there are just two meaningful PRs. I tend to squash-merge PR branches so would be happy to split this PR into two. |
|
My personal preference is for single-issue PRs as a gift to my future self (although it's a preference I frequently ignore, and every time I do, I later regret). Anyway, there is a fix in progress for the macos runner, so we may not need to do it ourselves, in which case we could just wait a few days. |
4a2da8f to
a2d282e
Compare
|
I created #64 and simplified this PR. |
b57d1a7 to
4bdcfd6
Compare
|
There's some light duplication in pyproject.toml now reading astral-sh/uv#9011, I think this is perhaps unavoidable unless we plan migrate away from the old-style optional dependencies. Keeping |
|
If we decide to use uv for CI and run tests with |
|
#69 should fix the cmake on MacOS issues. I'm happy to discuss how (and if) we want to proceed with this PR. Since folk recently re-ran the GitHub actions, I presume that there is some interest. |
5ae320b to
04c767e
Compare
That was me. @heiner has also proposed we move to uv, so yes, there is interest. |
I think this is what we should do. To keep both methods means maintaining that duplication, which looks wrong and un-pythonic to me. |
|
Closing stale PR. |
This PR modernizes the use of pyproject.toml, migrating options from setup.py so that the project can be installed with
uv syncand tests run withuv run pytest.uv is a modern python package manger that encapsulates the use of virtual environments ensuring fast isolated builds.
See https://docs.astral.sh/uv/
This PR removes the ability to set the package name with an environment variable as modern pyproject.toml requires a static name: https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#name