diff --git a/.github/workflows/build-binaries.yml b/.github/workflows/build-binaries.yml index 819dfa95721c..e1b0d58c6ad1 100644 --- a/.github/workflows/build-binaries.yml +++ b/.github/workflows/build-binaries.yml @@ -577,6 +577,7 @@ jobs: - target: powerpc64le-unknown-linux-musl arch: ppc64le toolchain: nightly + fail-fast: false steps: - uses: actions/checkout@v4 @@ -592,7 +593,7 @@ jobs: with: target: ${{ matrix.platform.target }} manylinux: musllinux_1_1 - args: --release --locked --out dist --features self-update ${{ matrix.platform.arch == 'aarch64' && '--compatibility 2_17' || ''}} + args: ${{ matrix.platform.arch == 'ppc64le' && '--profile release-no-lto' || '--release'}} --locked --out dist --features self-update ${{ matrix.platform.arch == 'aarch64' && '--compatibility 2_17' || ''}} docker-options: ${{ matrix.platform.maturin_docker_options }} rust-toolchain: ${{ matrix.platform.toolchain || 'stable' }} - uses: uraimo/run-on-arch-action@v2 @@ -636,10 +637,11 @@ jobs: TARGET=${{ matrix.platform.target }} ARCHIVE_NAME=uv-$TARGET ARCHIVE_FILE=$ARCHIVE_NAME.tar.gz + PROFILE="${{ matrix.platform.arch == 'ppc64le' && 'release-no-lto' || 'release' }}" mkdir -p $ARCHIVE_NAME - cp target/$TARGET/release/uv $ARCHIVE_NAME/uv - cp target/$TARGET/release/uvx $ARCHIVE_NAME/uvx + cp target/$TARGET/$PROFILE/uv $ARCHIVE_NAME/uv + cp target/$TARGET/$PROFILE/uvx $ARCHIVE_NAME/uvx tar czvf $ARCHIVE_FILE $ARCHIVE_NAME shasum -a 256 $ARCHIVE_FILE > $ARCHIVE_FILE.sha256 - name: "Upload binary" diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f6b5c6de620..c0c8c8bd99a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,33 @@ # Changelog +## 0.2.35 + +### Enhancements + +### CLI + +- Deprecate `--system` and `--no-system` in `uv venv` ([#5925](https://github.com/astral-sh/uv/pull/5925)) +- Make `--upgrade` imply `--refresh` ([#5943](https://github.com/astral-sh/uv/pull/5943)) +- Warn when there are missing bounds on transitive dependencies with `--resolution-strategy lowest` ([#5953](https://github.com/astral-sh/uv/pull/5953)) + +### Configuration + +- Add support for `no-build-isolation-package` ([#5894](https://github.com/astral-sh/uv/pull/5894)) + +### Performance + +- Enable LTO optimizations in release builds to reduce binary size ([#5904](https://github.com/astral-sh/uv/pull/5904)) +- Prefetch metadata in `--no-deps` mode ([#5918](https://github.com/astral-sh/uv/pull/5918)) + +### Bug fixes + +- Display portable paths in POSIX virtual environment activation commands ([#5956](https://github.com/astral-sh/uv/pull/5956)) +- Respect subdirectories when locating Git workspaces ([#5944](https://github.com/astral-sh/uv/pull/5944)) + +### Documentation + +- Improve the `uv venv` CLI documentation ([#5963](https://github.com/astral-sh/uv/pull/5963)) + ## 0.2.34 ### Enhancements @@ -1779,3 +1807,4 @@ pass the `--native-tls` command-line flag to enable this behavior. - Fix diagram alignment ([#1354](https://github.com/astral-sh/uv/pull/1354)) - Grammar nit ([#1345](https://github.com/astral-sh/uv/pull/1345)) + diff --git a/Cargo.lock b/Cargo.lock index 9423dbd38261..5c9e779c207e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4464,7 +4464,7 @@ checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" [[package]] name = "uv" -version = "0.2.34" +version = "0.2.35" dependencies = [ "anstream", "anyhow", @@ -5206,7 +5206,7 @@ dependencies = [ [[package]] name = "uv-version" -version = "0.2.34" +version = "0.2.35" [[package]] name = "uv-virtualenv" diff --git a/Cargo.toml b/Cargo.toml index 1da88e1e21fe..87d43c895785 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -210,6 +210,11 @@ rest_pat_in_fully_bound_structs = "warn" strip = true lto = "fat" +# This profile disables LTO and is used for ppc64le musl cross builds which fail otherwise +[profile.release-no-lto] +inherits = "release" +lto = false + # This profile is meant to mimic the `release` profile as closely as # possible, but using settings that are more beneficial for iterative # development. That is, the `release` profile is intended for actually diff --git a/PREVIEW-CHANGELOG.md b/PREVIEW-CHANGELOG.md index 2bba03b405b7..0adc3b0208c3 100644 --- a/PREVIEW-CHANGELOG.md +++ b/PREVIEW-CHANGELOG.md @@ -1,5 +1,42 @@ # Changelog +## 0.2.35 + +### Preview features + +- Add CLI flags to reference documentation ([#5926](https://github.com/astral-sh/uv/pull/5926)) +- Add `update` alias for `uv tool upgrade` ([#5948](https://github.com/astral-sh/uv/pull/5948)) +- Add caveat about pip interface name ([#5940](https://github.com/astral-sh/uv/pull/5940)) +- Add hint for long help to `uvx` ([#5971](https://github.com/astral-sh/uv/pull/5971)) +- Avoid requires-python warning in virtual-only workspace ([#5895](https://github.com/astral-sh/uv/pull/5895)) +- Discard forks when using `--upgrade` ([#5905](https://github.com/astral-sh/uv/pull/5905)) +- Document the `tool upgrade` command ([#5947](https://github.com/astral-sh/uv/pull/5947)) +- Document virtual environment discovery ([#5965](https://github.com/astral-sh/uv/pull/5965)) +- Enable mirror for `python-build-standalone` downloads ([#5719](https://github.com/astral-sh/uv/pull/5719)) +- Fix reuse of Git commits in lockfile ([#5908](https://github.com/astral-sh/uv/pull/5908)) +- Ignore local configuration in tool commands ([#5923](https://github.com/astral-sh/uv/pull/5923)) +- Improve the CLI documentation for `uv add` ([#5914](https://github.com/astral-sh/uv/pull/5914)) +- Improve the CLI documentation for `uv remove` ([#5916](https://github.com/astral-sh/uv/pull/5916)) +- Improve the `uv lock` CLI documentation ([#5932](https://github.com/astral-sh/uv/pull/5932)) +- Improve the `uv python` CLI documentation ([#5961](https://github.com/astral-sh/uv/pull/5961)) +- Improve the `uv sync` CLI documentation ([#5930](https://github.com/astral-sh/uv/pull/5930)) +- Improve the `uv tree` CLI documentation ([#5917](https://github.com/astral-sh/uv/pull/5917)) +- Fix link to tools concept page ([#5906](https://github.com/astral-sh/uv/pull/5906)) +- Add `uv tool upgrade` command ([#5197](https://github.com/astral-sh/uv/pull/5197)) +- Implement marker trees using algebraic decision diagrams ([#5898](https://github.com/astral-sh/uv/pull/5898)) +- Make repeated `uv add` operations simpler ([#5922](https://github.com/astral-sh/uv/pull/5922)) +- Move some documents to relevant sections ([#5968](https://github.com/astral-sh/uv/pull/5968)) +- Rename `distribution` to `packages` in lockfile ([#5861](https://github.com/astral-sh/uv/pull/5861)) +- Respect `--upgrade-package` in tool install ([#5941](https://github.com/astral-sh/uv/pull/5941)) +- Respect `--upgrade-package` when resolving from lockfile ([#5907](https://github.com/astral-sh/uv/pull/5907)) +- Retain and respect settings in tool upgrades ([#5937](https://github.com/astral-sh/uv/pull/5937)) +- Search beyond workspace root when discovering configuration ([#5931](https://github.com/astral-sh/uv/pull/5931)) +- Show build and install summaries in `uv run` and `uv tool run` ([#5899](https://github.com/astral-sh/uv/pull/5899)) +- Support relative path wheels ([#5969](https://github.com/astral-sh/uv/pull/5969)) +- Update the interface for declaring Python download preferences ([#5936](https://github.com/astral-sh/uv/pull/5936)) +- Use cached environments for `--with` layers ([#5897](https://github.com/astral-sh/uv/pull/5897)) +- Warn when project-specific settings are passed to non-project `uv run` commands ([#5977](https://github.com/astral-sh/uv/pull/5977)) + ## 0.2.34 ### Preview features diff --git a/README.md b/README.md index 8709d82b21aa..baf293c551d1 100644 --- a/README.md +++ b/README.md @@ -54,8 +54,8 @@ curl -LsSf https://astral.sh/uv/install.sh | sh powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # For a specific version. -curl -LsSf https://astral.sh/uv/0.2.34/install.sh | sh -powershell -c "irm https://astral.sh/uv/0.2.34/install.ps1 | iex" +curl -LsSf https://astral.sh/uv/0.2.35/install.sh | sh +powershell -c "irm https://astral.sh/uv/0.2.35/install.ps1 | iex" # With pip. pip install uv diff --git a/crates/uv-version/Cargo.toml b/crates/uv-version/Cargo.toml index 335d17fc7bea..a6c4035c86cb 100644 --- a/crates/uv-version/Cargo.toml +++ b/crates/uv-version/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "uv-version" -version = "0.2.34" +version = "0.2.35" edition = { workspace = true } rust-version = { workspace = true } homepage = { workspace = true } diff --git a/crates/uv/Cargo.toml b/crates/uv/Cargo.toml index a2858c454386..fc20c539bb12 100644 --- a/crates/uv/Cargo.toml +++ b/crates/uv/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "uv" -version = "0.2.34" +version = "0.2.35" edition = { workspace = true } rust-version = { workspace = true } homepage = { workspace = true } diff --git a/docs/guides/integration/pre-commit.md b/docs/guides/integration/pre-commit.md index e92eb2dab560..77c3cfe85e7d 100644 --- a/docs/guides/integration/pre-commit.md +++ b/docs/guides/integration/pre-commit.md @@ -8,7 +8,7 @@ To compile requirements via pre-commit, add the following to the `.pre-commit-co ```yaml title=".pre-commit-config.yaml" - repo: https://github.com/astral-sh/uv-pre-commit # uv version. - rev: 0.2.34 + rev: 0.2.35 hooks: # Compile requirements - id: pip-compile @@ -20,7 +20,7 @@ To compile alternative files, modify `args` and `files`: ```yaml title=".pre-commit-config.yaml" - repo: https://github.com/astral-sh/uv-pre-commit # uv version. - rev: 0.2.34 + rev: 0.2.35 hooks: # Compile requirements - id: pip-compile @@ -33,7 +33,7 @@ To run the hook over multiple files at the same time: ```yaml title=".pre-commit-config.yaml" - repo: https://github.com/astral-sh/uv-pre-commit # uv version. - rev: 0.2.34 + rev: 0.2.35 hooks: # Compile requirements - id: pip-compile diff --git a/pyproject.toml b/pyproject.toml index 7b603f0cfdf3..50025b21ee27 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "uv" -version = "0.2.34" +version = "0.2.35" description = "An extremely fast Python package installer and resolver, written in Rust." authors = [{ name = "Astral Software Inc.", email = "hey@astral.sh" }] requires-python = ">=3.8"