-
Notifications
You must be signed in to change notification settings - Fork 732
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
in a workspace local package A cannot depend on local package B as a build-system requirement #7147
Comments
## Summary We weren't respecting `tool.uv.sources` for `build-requires`. Closes #7147.
Hey @charliermarsh @konstin just to followup on this. I'm super excited that this was merged and it does work if I specify
However This is good enough for me, in this case I'm only interested in building wheels. I just want to be clear that it's a gotcha. I think it's quite related to what @konstin was getting at with their comment here: #7172 (comment) The output of both is below using uv 0.4.22:
|
Ahh right. That's a good catch -- that may be what @konstin was getting at (but I misunderstood). I think that's actually good behavior, but it should be documented. |
@charliermarsh When I tried to bump uv to
It works if I run |
@kaxil -- You're seeing this with |
Yeah sry, I am seeing the issue with We have the following in Airflow's ...
[tool.uv]
dev-dependencies = [
"local-providers",
"apache-airflow-task-sdk"
]
[tool.uv.sources]
# These names must match the names as defined in the pyproject.toml of the workspace items,
# *not* the workspace folder paths
local-providers = { workspace = true }
apache-airflow-task-sdk = { workspace = true }
[tool.uv.workspace]
members = ["providers", "task_sdk"] |
And it fails when installing from a |
Correct.
Thanks |
@kaxil -- How can I reproduce it? |
apache_airflow-3.0.0.dev0.tar.gz Uploaded the file for you to run |
Thank you, it's fixed here: #8235 |
This is the same issue as on astral-sh/rye#813 but I'm reproducing it here using uv's new workspace features to replace rye with uv.
Repro Structure
pyproject.toml
src/my-setuptools-extension/pyproject.toml
src/my-setuptools-extension/my_setuptools_ext.py
src/my-app/pyproject.toml
src/my-app/setup.py
This step is optional but here for completeness to prove you can use the extension.
Expected Result
No errors, build the packages and allow my-app to be installed.
Actual Result
uv is failing to find
my-setuptools-extension
which is defined in the workspace. This is only an issue when it's a build requirement.Version Info
Additional Info
In our current repo, we do this by running a specific build step on build-requirement packages into a wheelhouse and then install all of the other packages with a find-links to the wheelhouse.
The text was updated successfully, but these errors were encountered: