-
Notifications
You must be signed in to change notification settings - Fork 808
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
Support build constraints #5639
Conversation
----- stderr ----- | ||
Resolved 1 package in [TIME] | ||
Prepared 1 package in [TIME] | ||
Installed 1 package in [TIME] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't sure how to check if the built constraints were being respected for the compatible versions - this just check if the package gets resolved correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
isn't there anything via verbose flag?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's there in the verbose logs, but I don't know if we should use the verbose logs for snapshot tests.
0cd5905
to
6a53797
Compare
6a53797
to
523f417
Compare
Thanks! Will review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does uv pip compile
now include build dependencies in its output? Or do --build-constraints
files have to be generated separately (how?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't believe this PR adds any way to lock the build resolution, only to constrain it, but we want to add that to uv.lock
eventually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Related issue #5190
Not using For constraining build time dependencies:
|
Makes sense, good call @hauntsaninja. |
This overall looks good but I have to find a way to fix the stack size issues on Windows (nothing wrong with the PR specifically, it's an ongoing problem) -- and update the docs. |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [astral-sh/uv](https://github.com/astral-sh/uv) | patch | `0.2.33` -> `0.2.35` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>astral-sh/uv (astral-sh/uv)</summary> ### [`v0.2.35`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0235) [Compare Source](astral-sh/uv@0.2.34...0.2.35) ##### CLI - Deprecate `--system` and `--no-system` in `uv venv` ([#​5925](astral-sh/uv#5925)) - Make `--upgrade` imply `--refresh` ([#​5943](astral-sh/uv#5943)) - Warn when there are missing bounds on transitive dependencies with `--resolution-strategy lowest` ([#​5953](astral-sh/uv#5953)) ##### Configuration - Add support for `no-build-isolation-package` ([#​5894](astral-sh/uv#5894)) ##### Performance - Enable LTO optimizations in release builds to reduce binary size ([#​5904](astral-sh/uv#5904)) - Prefetch metadata in `--no-deps` mode ([#​5918](astral-sh/uv#5918)) ##### Bug fixes - Display portable paths in POSIX virtual environment activation commands ([#​5956](astral-sh/uv#5956)) - Respect subdirectories when locating Git workspaces ([#​5944](astral-sh/uv#5944)) ##### Documentation - Improve the `uv venv` CLI documentation ([#​5963](astral-sh/uv#5963)) ### [`v0.2.34`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0234) [Compare Source](astral-sh/uv@0.2.33...0.2.34) ##### Enhancements - Always strip in release mode ([#​5745](astral-sh/uv#5745)) - Assume `git+` prefix when URLs end in `.git` ([#​5868](astral-sh/uv#5868)) - Support build constraints ([#​5639](astral-sh/uv#5639)) ##### CLI - Create help sections for build, install, resolve, and index ([#​5693](astral-sh/uv#5693)) - Improve CLI documentation for global options ([#​5834](astral-sh/uv#5834)) - Improve `--python` CLI documentation ([#​5869](astral-sh/uv#5869)) - Improve display order of top-level commands ([#​5830](astral-sh/uv#5830)) ##### Bug fixes - Allow downloading wheels for metadata with `--no-binary` ([#​5707](astral-sh/uv#5707)) - Reject `pyproject.toml` in `--config-file` ([#​5842](astral-sh/uv#5842)) - Remove double-proxy nodes in error reporting ([#​5738](astral-sh/uv#5738)) - Respect pre-release preferences from input files ([#​5736](astral-sh/uv#5736)) - Support overlapping local and non-local requirements in forks ([#​5812](astral-sh/uv#5812)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Summary
Partially resolves #5561. Haven't added overrides support yet but I can add it tomorrow if the current approach for constraints is ok.
Test Plan
cargo test
Manually checked trace logs after changing the constraints.