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