uv/uv.spec

58 lines
1.6 KiB
RPMSpec
Raw Permalink Normal View History

#
# spec file for package uv
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: uv
Accepting request 1189907 from home:uncomfyhalomacro:branches:devel:languages:python - Use upstream github sources in specfile. - Add zstd as build requirement. - Update to version 0.2.30. Changelog include since 0.1.47: * Infer missing `.exe` in Windows Python discovery * Make `--reinstall` imply `--refresh` * Add `--no-config` to replace `--isolated` * Cache metadata for source tree dependencies * Avoid canonicalizing executables on Windows * Set standard permissions for temporary files * Add `--ci` mode to `uv cache prune` * Display Python installation key for discovered interpreters * Allow symlinks to files in scripts directory * Always accept already-installed pre-releases * Validate successful metadata fetch for direct dependencies * Add warning to `--link-mode=symlink` documentation * Output stable ordering to `requirements.txt` in universal mode * Allow symlinks with `--find-links` * Add support for variations of `pythonw.exe` * Stylize `Requires-Python` consistently in CLI output * Add `--show-version-specifiers` to `tree` * Avoid always rebuilding dynamic metadata * Avoid URL parsing when deserializing wheels * Avoid cache prune failure due to removed interpreter * Avoid including empty extras in resolution * If multiple indices contain the same version, use the first index * Include URLs on graph edges * Match wheel tags against `Requires-Python` major-minor * Remove Simple API cache files for alternative indexes in `cache clean` * Remove extraneous `are` from wheel tag error messages * Allow conflicting prerelease strategies when forking * Use tag error rather than requires-python error for ABI filtering * Add GraalPy support * Add a `--verify-hashes` hash-checking mode * Discover all `python3.x` executables in the `PATH` * Support `--link-mode=symlink` * Warn about unconstrained direct deps in lowest resolution * Log origin of version selection * Key hash policy on version, rather than package * Make missing project table a tracing warning * Remove trailing period from user-facing messages * Make entrypoint writes atomic to avoid overwriting symlinks * Use `which`-retrieved path directly when spawning pager * Don't apply irrelevant constraints when validating site-packages * Respect local versions for all user requirements * Add `--no-progress` global option to hide all progress animations * Cache downloaded wheel when range requests aren't supported * Download wheel to disk when streaming unzip failed with HTTP streaming error * Filter out invalid wheels based on `requires-python` * Filter out none ABI wheels with mismatched Python versions * Lock Git cache on resolve * Change order of `pip compile` command checks to handle exact argument first * Document that `--universal` implies `--no-strip-markers` * Include PyPy-specific executables when creating virtual environments with `uv venv` * Add a custom error message for `--no-build-isolation` `torch` dependencies * Improve missing `wheel` error message with `--no-build-isolation` * Add `--no-pager` option in `help` command * Unhide `--isolated` global argument * Warn when unused `pyproject.toml` configuration is detected * Fall back to streaming wheel when `Content-Length` header is absent * Fix substring marker expression disjointness checks * Lock directories to synchronize wheel-install copies * Normalize out complementary == or != markers * Retry on permission errors when persisting extracted source distributions to the cache * Set absolute URLs prior to uploading to PyPI * Exclude `--upgrade-package` from the `pip compile` header * Exclude `--upgrade-package` when option and value are passed as a single argument * Add split to cover marker universe when existing splits are incomplete * Use correct `pyproject.toml` path in warnings * Fix `CONTRIBUTING.md` instructions to install multiple Python versions * Use versioned badges when uploading to PyPI * Add support for 'any' Python requests * Allow constraints to be provided in `--upgrade-package` * Add `manylinux_2_31` to supported `--python-platform` * Improve marker simplification * Display short help menu when `--help` is used * Allow `uv help` global options during `uv help` * Use paging for `uv help` display when available * Switch to single threaded async runtime * Avoid AND-ing multi-term specifiers in marker normalization * Avoid inferring package name for GitHub Archives * Retry on connection reset network errors * Apply extra to overrides and constraints * Allow `uv` crate to be used as a library * Update Windows trampoline binaries * Show user-facing warning when falling back to copy installs * Initialize all `--prefix` subdirectories * Respect `requires-python` when prefetching * Partially revert `Requires-Python` version narrowing * Add `--exclude-newer` to installer arguments * Bold durations in CLI messages * Drop crate description from the `uv` help menu * Update "about" in help menu * Add `UV_OVERRIDE` environment variable for `--override` * Always use release-only comparisons for `requires-python` * Avoid hangs before exiting CLI * Preserve verbatim URLs for `--find-links` * Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows * Differentiate `freeze` and `list` help text * Fix issue where the standalone installer failed due to a missing `uvx` binary * Indicate when we retried requests during network errors * Add `--disable-pip-version-check` to compatibility arguments * Allow `uv pip sync` to clear an environment with opt-in * Add `--invert` to `uv pip tree` * Omit `(*)` in `uv pip tree` for empty packages * Add `--package` to `uv pip tree` * Fix bug where git cache did not validate commits correctly * Narrow `requires-python` requirement in resolver forks * Fix bug when pruning the last package in `uv pip tree` * Make `--universal` and `--python-platform` mutually exclusive * Add `--depth` and `--prune` support to `pip tree` * Handle cycles when propagating markers * Ignore `py` not found errors during interpreter discovery * Merge markers when applying constraints * Retry on spurious failures when caching built wheels * Sort indexes during graph edge removal * Treat Python version as a lower bound in `--universal` * Fix the incorrect handling of markers in `pip tree` * Improve toolchain and environment missing error messages * Explicitly mention use of seed packages during `uv venv --seed` * Avoid enforcing extra-only constraints * Add a universal resolution mode to `uv pip compile` with `--universal` * Add support for `--no-strip-markers` in `uv pip compile` output * Add `--no-dedupe` support to `uv pip tree` * Enable more precise environment locking with `--prefix` * Allow local index references in `requirements.txt` files * Allow non-`file://` paths to serve as `--index-url` values * Make `.egg-info` filename parsing spec compliant * Gracefully handle non-existent packages in local indexes * Read content length from response rather than request * Read persistent configuration from non-workspace `pyproject.toml` * Avoid panic for invalid, non-base index URLs * Skip submodule update for fresh clones * Use shared client in Git fetch implementation * Add `--emit-build-options` flag to `uv pip compile` interface * Add `pythonw` support for gui scripts on Windows * Add `uv pip tree` * Adjust the docs for the pip CLI commands * Fix casing of `--no-compile` alias * Fix ordering of prefer-system toolchain preference * Respect index strategy in source distribution builds * Add documentation for using uv in a Docker image * Support toolchain requests with platform-tag style Python implementations and version * Use "Prepared" instead of "Downloaded" in logs * Treat mismatched directory and file urls as unsatisfied requirements * Add resolver tracing logs for when we filter requirements * Allow specific `--only-binary` and `--no-binary` packages to override `:all:` * Flatten ORs and ANDs in marker construction * Skip invalid interpreters when searching for requested interpreter executable name * Display keyring stderr during queries * Allow discovery of uv binary relative to package root * Use relative path for `lib64` symlink * Add uv version to debug output * Allow `--no-binary` with `uv pip compile` * Hide `--no-system` from the CLI * Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments * Add `UV_EXCLUDE_NEWER` environment variable * Allow normalization to completely eliminate markers * Avoid treating direct path archives as always dynamic * De-duplicate markers during normalization * Fix incorrect parsing of requested Python version as empty version specifiers * Suggest correct command to create a virtual environment when encountering externally managed interpreters * Use consistent order for extra groups in lockfile * Add `pip-compile` defaults to `PIP_COMPATIBILITY.md` * Expand on `pip-compile` default differences * Tweak copy on some command-line arguments * Move the preview changelog so the GitHub Release shows stable changes * Add support for local directories with `--index-url` * Add mTLS support * Allow version specifiers to be used in Python version requests * Always install as editable when duplicate dependencies are requested * Avoid crash with `XDG_CONFIG_HOME=/dev/null` * Improve handling of missing interpreters during discovery * Make missing `METADATA` file a recoverable error * Represent build tag as `u64` * Document Windows 10 requirement * Re-add `aarch64-unknown-linux-gnu` binary to release assets * Accept `file://` URLs for `requirements.txt` et all references * Add support for `--prefix` * Add `pyproject.toml` to CLI help * Drop "registry" prefix from request timeout log * Allow transitive URLs via recursive extras * Avoid pre-fetching for unbounded minimum versions * Avoid showing dev hints for Python requirements * Include non-standard ports in keyring host queries * Omit URL dependencies from pre-release hints * Improve static metadata extraction for Poetry projects * Document bytecode compilation in pip compatibility guide * Fix PEP 508 link in preview doc `specifying_dependencies` * Clarify role of `--system` flag * Respect existing `.egg-link` files in site packages * Avoid extra-only filtering for constraints * Add install link for specific version to README * Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment * Support `NO_COLOR` and `FORCE_COLOR` environment variables * Avoid building packages with dynamic versions * Avoid work-stealing in bytecode compilation * Avoid dropping `pip sync` requirements with markers * Bias towards local directories for bare editable requirements * Preserve fragments when applying verbatim redirects * Avoid 'are incompatible' for singular bounded versions * Support PEP 508 requirements for editables * Discard fragments when parsing unnamed URLs * Port all Git functionality to use Git CLI * Use statically linked C runtime on Windows * Disable concurrent progress bars in Jupyter Notebooks * Initialize multi-progress state before individual bars * Add missing `i686` alias for `x86` * Add missing `ppc64le` alias for `powerpc64le` * Fix reference to `--python-version` patch behavior * Avoid race condition in `OnceMap` * Add support for x86 Windows * Add support for `prepare_metadata_for_build_editable` hook * Add concurrent progress bars for downloads * Update bundled Python URLs and add `"arm"` architecture variant * Allow `--system` and `--python` to be passed together * Ignore `libc` on other platforms * Incorporate build tag into wheel prioritization * Avoid displaying log for satisfied editables if none are requested * Improve logging during interpreter discovery * Improve logging for environment locking * Improve logging of interpreter implementation * Remove extra details from interpreter query traces * Use colon more consistently in error messages * Add JSON alias for `unsafe-any-match` * Remove redundant dynamically linked Linux binary again (#3762)" * Remove `aarch64-unknown-linux-gnu` from list of expected binaries * Always include package names for Git and HTTPS dependencies * Fix interpreter cache collisions for relative virtualenv paths * Ignore unnamed requirements in preferences * Search for `python3` in unix virtual environments * Use a cross-platform representation for relative paths in `pip compile` * Report yanks for cached and resolved packages * Improve error message when default Python is not found * Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters * Re-added the dynamically-linked Linux binary * Rewrite Python interpreter discovery * Add support for requesting `pypy` interpreters by implementation name * Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736) * Add PEP 714 support for HTML API client * Add PEP 714 support for JSON API client * Write relative paths with unnamed requirement syntax * Allow relative Python executable paths in Windows trampoline * Add support for clang and msvc in missing header error * Allow `--constraint` files in `pip sync` * Allow `--config-file` to be passed before or after command name * Make `--offline` a global argument * Improve performance in complex resolutions by reducing cost of PubGrub package clones * Evaluate arbitrary markers to `false` * Improve `DirWithoutEntrypoint` error message * Improve display of root package in range errors * Propagate URL errors in verbatim parsing * Report yanked packages in `--dry-run` * Drop native `manylinux` wheel in favor of dual-tagged wheel * The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior * Add `--prefix` link to compatibility guide * Add `--only-binary` to compatibility guide * Add instructions for building and updating `uv-trampolines` * Add notes for testing on Windows * Parse and store extras on editable requirements * Allow local versions in wheel filenames * Create lib64 symlink for 64-bit, non-macOS, POSIX environments * Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS` * Add serialization and deserialization for `--find-links` * Apply combination logic to merge CLI and persistent configuration * Parallelize resolver * Reduce sensitivity of unknown option error to discard Python 2 interpreters * Respect installed packages in `uv run` * Separate cache construction from initialization * Add missing `"directory"` branch in source match * Fix source annotation in pip compile `annotation-style=line` output * Run cargo update to pull in h2 * URL-decode hashes in HTML fragments * Always print JSON output with `--format` json * Add `UV_CONFIG_FILE` environment variable to documentation * Explicitly mention `--user` in compatibility guide * Add musl ppc64le support * Retag musl aarch64 for manylinux2014 * Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g., > invalid peer certificate: BadSignature OBS-URL: https://build.opensuse.org/request/show/1189907 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/uv?expand=0&rev=3
2024-07-31 23:54:05 +02:00
Version: 0.2.30
Release: 0
Accepting request 1189907 from home:uncomfyhalomacro:branches:devel:languages:python - Use upstream github sources in specfile. - Add zstd as build requirement. - Update to version 0.2.30. Changelog include since 0.1.47: * Infer missing `.exe` in Windows Python discovery * Make `--reinstall` imply `--refresh` * Add `--no-config` to replace `--isolated` * Cache metadata for source tree dependencies * Avoid canonicalizing executables on Windows * Set standard permissions for temporary files * Add `--ci` mode to `uv cache prune` * Display Python installation key for discovered interpreters * Allow symlinks to files in scripts directory * Always accept already-installed pre-releases * Validate successful metadata fetch for direct dependencies * Add warning to `--link-mode=symlink` documentation * Output stable ordering to `requirements.txt` in universal mode * Allow symlinks with `--find-links` * Add support for variations of `pythonw.exe` * Stylize `Requires-Python` consistently in CLI output * Add `--show-version-specifiers` to `tree` * Avoid always rebuilding dynamic metadata * Avoid URL parsing when deserializing wheels * Avoid cache prune failure due to removed interpreter * Avoid including empty extras in resolution * If multiple indices contain the same version, use the first index * Include URLs on graph edges * Match wheel tags against `Requires-Python` major-minor * Remove Simple API cache files for alternative indexes in `cache clean` * Remove extraneous `are` from wheel tag error messages * Allow conflicting prerelease strategies when forking * Use tag error rather than requires-python error for ABI filtering * Add GraalPy support * Add a `--verify-hashes` hash-checking mode * Discover all `python3.x` executables in the `PATH` * Support `--link-mode=symlink` * Warn about unconstrained direct deps in lowest resolution * Log origin of version selection * Key hash policy on version, rather than package * Make missing project table a tracing warning * Remove trailing period from user-facing messages * Make entrypoint writes atomic to avoid overwriting symlinks * Use `which`-retrieved path directly when spawning pager * Don't apply irrelevant constraints when validating site-packages * Respect local versions for all user requirements * Add `--no-progress` global option to hide all progress animations * Cache downloaded wheel when range requests aren't supported * Download wheel to disk when streaming unzip failed with HTTP streaming error * Filter out invalid wheels based on `requires-python` * Filter out none ABI wheels with mismatched Python versions * Lock Git cache on resolve * Change order of `pip compile` command checks to handle exact argument first * Document that `--universal` implies `--no-strip-markers` * Include PyPy-specific executables when creating virtual environments with `uv venv` * Add a custom error message for `--no-build-isolation` `torch` dependencies * Improve missing `wheel` error message with `--no-build-isolation` * Add `--no-pager` option in `help` command * Unhide `--isolated` global argument * Warn when unused `pyproject.toml` configuration is detected * Fall back to streaming wheel when `Content-Length` header is absent * Fix substring marker expression disjointness checks * Lock directories to synchronize wheel-install copies * Normalize out complementary == or != markers * Retry on permission errors when persisting extracted source distributions to the cache * Set absolute URLs prior to uploading to PyPI * Exclude `--upgrade-package` from the `pip compile` header * Exclude `--upgrade-package` when option and value are passed as a single argument * Add split to cover marker universe when existing splits are incomplete * Use correct `pyproject.toml` path in warnings * Fix `CONTRIBUTING.md` instructions to install multiple Python versions * Use versioned badges when uploading to PyPI * Add support for 'any' Python requests * Allow constraints to be provided in `--upgrade-package` * Add `manylinux_2_31` to supported `--python-platform` * Improve marker simplification * Display short help menu when `--help` is used * Allow `uv help` global options during `uv help` * Use paging for `uv help` display when available * Switch to single threaded async runtime * Avoid AND-ing multi-term specifiers in marker normalization * Avoid inferring package name for GitHub Archives * Retry on connection reset network errors * Apply extra to overrides and constraints * Allow `uv` crate to be used as a library * Update Windows trampoline binaries * Show user-facing warning when falling back to copy installs * Initialize all `--prefix` subdirectories * Respect `requires-python` when prefetching * Partially revert `Requires-Python` version narrowing * Add `--exclude-newer` to installer arguments * Bold durations in CLI messages * Drop crate description from the `uv` help menu * Update "about" in help menu * Add `UV_OVERRIDE` environment variable for `--override` * Always use release-only comparisons for `requires-python` * Avoid hangs before exiting CLI * Preserve verbatim URLs for `--find-links` * Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows * Differentiate `freeze` and `list` help text * Fix issue where the standalone installer failed due to a missing `uvx` binary * Indicate when we retried requests during network errors * Add `--disable-pip-version-check` to compatibility arguments * Allow `uv pip sync` to clear an environment with opt-in * Add `--invert` to `uv pip tree` * Omit `(*)` in `uv pip tree` for empty packages * Add `--package` to `uv pip tree` * Fix bug where git cache did not validate commits correctly * Narrow `requires-python` requirement in resolver forks * Fix bug when pruning the last package in `uv pip tree` * Make `--universal` and `--python-platform` mutually exclusive * Add `--depth` and `--prune` support to `pip tree` * Handle cycles when propagating markers * Ignore `py` not found errors during interpreter discovery * Merge markers when applying constraints * Retry on spurious failures when caching built wheels * Sort indexes during graph edge removal * Treat Python version as a lower bound in `--universal` * Fix the incorrect handling of markers in `pip tree` * Improve toolchain and environment missing error messages * Explicitly mention use of seed packages during `uv venv --seed` * Avoid enforcing extra-only constraints * Add a universal resolution mode to `uv pip compile` with `--universal` * Add support for `--no-strip-markers` in `uv pip compile` output * Add `--no-dedupe` support to `uv pip tree` * Enable more precise environment locking with `--prefix` * Allow local index references in `requirements.txt` files * Allow non-`file://` paths to serve as `--index-url` values * Make `.egg-info` filename parsing spec compliant * Gracefully handle non-existent packages in local indexes * Read content length from response rather than request * Read persistent configuration from non-workspace `pyproject.toml` * Avoid panic for invalid, non-base index URLs * Skip submodule update for fresh clones * Use shared client in Git fetch implementation * Add `--emit-build-options` flag to `uv pip compile` interface * Add `pythonw` support for gui scripts on Windows * Add `uv pip tree` * Adjust the docs for the pip CLI commands * Fix casing of `--no-compile` alias * Fix ordering of prefer-system toolchain preference * Respect index strategy in source distribution builds * Add documentation for using uv in a Docker image * Support toolchain requests with platform-tag style Python implementations and version * Use "Prepared" instead of "Downloaded" in logs * Treat mismatched directory and file urls as unsatisfied requirements * Add resolver tracing logs for when we filter requirements * Allow specific `--only-binary` and `--no-binary` packages to override `:all:` * Flatten ORs and ANDs in marker construction * Skip invalid interpreters when searching for requested interpreter executable name * Display keyring stderr during queries * Allow discovery of uv binary relative to package root * Use relative path for `lib64` symlink * Add uv version to debug output * Allow `--no-binary` with `uv pip compile` * Hide `--no-system` from the CLI * Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments * Add `UV_EXCLUDE_NEWER` environment variable * Allow normalization to completely eliminate markers * Avoid treating direct path archives as always dynamic * De-duplicate markers during normalization * Fix incorrect parsing of requested Python version as empty version specifiers * Suggest correct command to create a virtual environment when encountering externally managed interpreters * Use consistent order for extra groups in lockfile * Add `pip-compile` defaults to `PIP_COMPATIBILITY.md` * Expand on `pip-compile` default differences * Tweak copy on some command-line arguments * Move the preview changelog so the GitHub Release shows stable changes * Add support for local directories with `--index-url` * Add mTLS support * Allow version specifiers to be used in Python version requests * Always install as editable when duplicate dependencies are requested * Avoid crash with `XDG_CONFIG_HOME=/dev/null` * Improve handling of missing interpreters during discovery * Make missing `METADATA` file a recoverable error * Represent build tag as `u64` * Document Windows 10 requirement * Re-add `aarch64-unknown-linux-gnu` binary to release assets * Accept `file://` URLs for `requirements.txt` et all references * Add support for `--prefix` * Add `pyproject.toml` to CLI help * Drop "registry" prefix from request timeout log * Allow transitive URLs via recursive extras * Avoid pre-fetching for unbounded minimum versions * Avoid showing dev hints for Python requirements * Include non-standard ports in keyring host queries * Omit URL dependencies from pre-release hints * Improve static metadata extraction for Poetry projects * Document bytecode compilation in pip compatibility guide * Fix PEP 508 link in preview doc `specifying_dependencies` * Clarify role of `--system` flag * Respect existing `.egg-link` files in site packages * Avoid extra-only filtering for constraints * Add install link for specific version to README * Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment * Support `NO_COLOR` and `FORCE_COLOR` environment variables * Avoid building packages with dynamic versions * Avoid work-stealing in bytecode compilation * Avoid dropping `pip sync` requirements with markers * Bias towards local directories for bare editable requirements * Preserve fragments when applying verbatim redirects * Avoid 'are incompatible' for singular bounded versions * Support PEP 508 requirements for editables * Discard fragments when parsing unnamed URLs * Port all Git functionality to use Git CLI * Use statically linked C runtime on Windows * Disable concurrent progress bars in Jupyter Notebooks * Initialize multi-progress state before individual bars * Add missing `i686` alias for `x86` * Add missing `ppc64le` alias for `powerpc64le` * Fix reference to `--python-version` patch behavior * Avoid race condition in `OnceMap` * Add support for x86 Windows * Add support for `prepare_metadata_for_build_editable` hook * Add concurrent progress bars for downloads * Update bundled Python URLs and add `"arm"` architecture variant * Allow `--system` and `--python` to be passed together * Ignore `libc` on other platforms * Incorporate build tag into wheel prioritization * Avoid displaying log for satisfied editables if none are requested * Improve logging during interpreter discovery * Improve logging for environment locking * Improve logging of interpreter implementation * Remove extra details from interpreter query traces * Use colon more consistently in error messages * Add JSON alias for `unsafe-any-match` * Remove redundant dynamically linked Linux binary again (#3762)" * Remove `aarch64-unknown-linux-gnu` from list of expected binaries * Always include package names for Git and HTTPS dependencies * Fix interpreter cache collisions for relative virtualenv paths * Ignore unnamed requirements in preferences * Search for `python3` in unix virtual environments * Use a cross-platform representation for relative paths in `pip compile` * Report yanks for cached and resolved packages * Improve error message when default Python is not found * Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters * Re-added the dynamically-linked Linux binary * Rewrite Python interpreter discovery * Add support for requesting `pypy` interpreters by implementation name * Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736) * Add PEP 714 support for HTML API client * Add PEP 714 support for JSON API client * Write relative paths with unnamed requirement syntax * Allow relative Python executable paths in Windows trampoline * Add support for clang and msvc in missing header error * Allow `--constraint` files in `pip sync` * Allow `--config-file` to be passed before or after command name * Make `--offline` a global argument * Improve performance in complex resolutions by reducing cost of PubGrub package clones * Evaluate arbitrary markers to `false` * Improve `DirWithoutEntrypoint` error message * Improve display of root package in range errors * Propagate URL errors in verbatim parsing * Report yanked packages in `--dry-run` * Drop native `manylinux` wheel in favor of dual-tagged wheel * The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior * Add `--prefix` link to compatibility guide * Add `--only-binary` to compatibility guide * Add instructions for building and updating `uv-trampolines` * Add notes for testing on Windows * Parse and store extras on editable requirements * Allow local versions in wheel filenames * Create lib64 symlink for 64-bit, non-macOS, POSIX environments * Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS` * Add serialization and deserialization for `--find-links` * Apply combination logic to merge CLI and persistent configuration * Parallelize resolver * Reduce sensitivity of unknown option error to discard Python 2 interpreters * Respect installed packages in `uv run` * Separate cache construction from initialization * Add missing `"directory"` branch in source match * Fix source annotation in pip compile `annotation-style=line` output * Run cargo update to pull in h2 * URL-decode hashes in HTML fragments * Always print JSON output with `--format` json * Add `UV_CONFIG_FILE` environment variable to documentation * Explicitly mention `--user` in compatibility guide * Add musl ppc64le support * Retag musl aarch64 for manylinux2014 * Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g., > invalid peer certificate: BadSignature OBS-URL: https://build.opensuse.org/request/show/1189907 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/uv?expand=0&rev=3
2024-07-31 23:54:05 +02:00
Summary: A Python package installer and resolver, written in Rust
License: Apache-2.0 OR MIT
URL: https://github.com/astral-sh/uv
Accepting request 1189907 from home:uncomfyhalomacro:branches:devel:languages:python - Use upstream github sources in specfile. - Add zstd as build requirement. - Update to version 0.2.30. Changelog include since 0.1.47: * Infer missing `.exe` in Windows Python discovery * Make `--reinstall` imply `--refresh` * Add `--no-config` to replace `--isolated` * Cache metadata for source tree dependencies * Avoid canonicalizing executables on Windows * Set standard permissions for temporary files * Add `--ci` mode to `uv cache prune` * Display Python installation key for discovered interpreters * Allow symlinks to files in scripts directory * Always accept already-installed pre-releases * Validate successful metadata fetch for direct dependencies * Add warning to `--link-mode=symlink` documentation * Output stable ordering to `requirements.txt` in universal mode * Allow symlinks with `--find-links` * Add support for variations of `pythonw.exe` * Stylize `Requires-Python` consistently in CLI output * Add `--show-version-specifiers` to `tree` * Avoid always rebuilding dynamic metadata * Avoid URL parsing when deserializing wheels * Avoid cache prune failure due to removed interpreter * Avoid including empty extras in resolution * If multiple indices contain the same version, use the first index * Include URLs on graph edges * Match wheel tags against `Requires-Python` major-minor * Remove Simple API cache files for alternative indexes in `cache clean` * Remove extraneous `are` from wheel tag error messages * Allow conflicting prerelease strategies when forking * Use tag error rather than requires-python error for ABI filtering * Add GraalPy support * Add a `--verify-hashes` hash-checking mode * Discover all `python3.x` executables in the `PATH` * Support `--link-mode=symlink` * Warn about unconstrained direct deps in lowest resolution * Log origin of version selection * Key hash policy on version, rather than package * Make missing project table a tracing warning * Remove trailing period from user-facing messages * Make entrypoint writes atomic to avoid overwriting symlinks * Use `which`-retrieved path directly when spawning pager * Don't apply irrelevant constraints when validating site-packages * Respect local versions for all user requirements * Add `--no-progress` global option to hide all progress animations * Cache downloaded wheel when range requests aren't supported * Download wheel to disk when streaming unzip failed with HTTP streaming error * Filter out invalid wheels based on `requires-python` * Filter out none ABI wheels with mismatched Python versions * Lock Git cache on resolve * Change order of `pip compile` command checks to handle exact argument first * Document that `--universal` implies `--no-strip-markers` * Include PyPy-specific executables when creating virtual environments with `uv venv` * Add a custom error message for `--no-build-isolation` `torch` dependencies * Improve missing `wheel` error message with `--no-build-isolation` * Add `--no-pager` option in `help` command * Unhide `--isolated` global argument * Warn when unused `pyproject.toml` configuration is detected * Fall back to streaming wheel when `Content-Length` header is absent * Fix substring marker expression disjointness checks * Lock directories to synchronize wheel-install copies * Normalize out complementary == or != markers * Retry on permission errors when persisting extracted source distributions to the cache * Set absolute URLs prior to uploading to PyPI * Exclude `--upgrade-package` from the `pip compile` header * Exclude `--upgrade-package` when option and value are passed as a single argument * Add split to cover marker universe when existing splits are incomplete * Use correct `pyproject.toml` path in warnings * Fix `CONTRIBUTING.md` instructions to install multiple Python versions * Use versioned badges when uploading to PyPI * Add support for 'any' Python requests * Allow constraints to be provided in `--upgrade-package` * Add `manylinux_2_31` to supported `--python-platform` * Improve marker simplification * Display short help menu when `--help` is used * Allow `uv help` global options during `uv help` * Use paging for `uv help` display when available * Switch to single threaded async runtime * Avoid AND-ing multi-term specifiers in marker normalization * Avoid inferring package name for GitHub Archives * Retry on connection reset network errors * Apply extra to overrides and constraints * Allow `uv` crate to be used as a library * Update Windows trampoline binaries * Show user-facing warning when falling back to copy installs * Initialize all `--prefix` subdirectories * Respect `requires-python` when prefetching * Partially revert `Requires-Python` version narrowing * Add `--exclude-newer` to installer arguments * Bold durations in CLI messages * Drop crate description from the `uv` help menu * Update "about" in help menu * Add `UV_OVERRIDE` environment variable for `--override` * Always use release-only comparisons for `requires-python` * Avoid hangs before exiting CLI * Preserve verbatim URLs for `--find-links` * Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows * Differentiate `freeze` and `list` help text * Fix issue where the standalone installer failed due to a missing `uvx` binary * Indicate when we retried requests during network errors * Add `--disable-pip-version-check` to compatibility arguments * Allow `uv pip sync` to clear an environment with opt-in * Add `--invert` to `uv pip tree` * Omit `(*)` in `uv pip tree` for empty packages * Add `--package` to `uv pip tree` * Fix bug where git cache did not validate commits correctly * Narrow `requires-python` requirement in resolver forks * Fix bug when pruning the last package in `uv pip tree` * Make `--universal` and `--python-platform` mutually exclusive * Add `--depth` and `--prune` support to `pip tree` * Handle cycles when propagating markers * Ignore `py` not found errors during interpreter discovery * Merge markers when applying constraints * Retry on spurious failures when caching built wheels * Sort indexes during graph edge removal * Treat Python version as a lower bound in `--universal` * Fix the incorrect handling of markers in `pip tree` * Improve toolchain and environment missing error messages * Explicitly mention use of seed packages during `uv venv --seed` * Avoid enforcing extra-only constraints * Add a universal resolution mode to `uv pip compile` with `--universal` * Add support for `--no-strip-markers` in `uv pip compile` output * Add `--no-dedupe` support to `uv pip tree` * Enable more precise environment locking with `--prefix` * Allow local index references in `requirements.txt` files * Allow non-`file://` paths to serve as `--index-url` values * Make `.egg-info` filename parsing spec compliant * Gracefully handle non-existent packages in local indexes * Read content length from response rather than request * Read persistent configuration from non-workspace `pyproject.toml` * Avoid panic for invalid, non-base index URLs * Skip submodule update for fresh clones * Use shared client in Git fetch implementation * Add `--emit-build-options` flag to `uv pip compile` interface * Add `pythonw` support for gui scripts on Windows * Add `uv pip tree` * Adjust the docs for the pip CLI commands * Fix casing of `--no-compile` alias * Fix ordering of prefer-system toolchain preference * Respect index strategy in source distribution builds * Add documentation for using uv in a Docker image * Support toolchain requests with platform-tag style Python implementations and version * Use "Prepared" instead of "Downloaded" in logs * Treat mismatched directory and file urls as unsatisfied requirements * Add resolver tracing logs for when we filter requirements * Allow specific `--only-binary` and `--no-binary` packages to override `:all:` * Flatten ORs and ANDs in marker construction * Skip invalid interpreters when searching for requested interpreter executable name * Display keyring stderr during queries * Allow discovery of uv binary relative to package root * Use relative path for `lib64` symlink * Add uv version to debug output * Allow `--no-binary` with `uv pip compile` * Hide `--no-system` from the CLI * Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments * Add `UV_EXCLUDE_NEWER` environment variable * Allow normalization to completely eliminate markers * Avoid treating direct path archives as always dynamic * De-duplicate markers during normalization * Fix incorrect parsing of requested Python version as empty version specifiers * Suggest correct command to create a virtual environment when encountering externally managed interpreters * Use consistent order for extra groups in lockfile * Add `pip-compile` defaults to `PIP_COMPATIBILITY.md` * Expand on `pip-compile` default differences * Tweak copy on some command-line arguments * Move the preview changelog so the GitHub Release shows stable changes * Add support for local directories with `--index-url` * Add mTLS support * Allow version specifiers to be used in Python version requests * Always install as editable when duplicate dependencies are requested * Avoid crash with `XDG_CONFIG_HOME=/dev/null` * Improve handling of missing interpreters during discovery * Make missing `METADATA` file a recoverable error * Represent build tag as `u64` * Document Windows 10 requirement * Re-add `aarch64-unknown-linux-gnu` binary to release assets * Accept `file://` URLs for `requirements.txt` et all references * Add support for `--prefix` * Add `pyproject.toml` to CLI help * Drop "registry" prefix from request timeout log * Allow transitive URLs via recursive extras * Avoid pre-fetching for unbounded minimum versions * Avoid showing dev hints for Python requirements * Include non-standard ports in keyring host queries * Omit URL dependencies from pre-release hints * Improve static metadata extraction for Poetry projects * Document bytecode compilation in pip compatibility guide * Fix PEP 508 link in preview doc `specifying_dependencies` * Clarify role of `--system` flag * Respect existing `.egg-link` files in site packages * Avoid extra-only filtering for constraints * Add install link for specific version to README * Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment * Support `NO_COLOR` and `FORCE_COLOR` environment variables * Avoid building packages with dynamic versions * Avoid work-stealing in bytecode compilation * Avoid dropping `pip sync` requirements with markers * Bias towards local directories for bare editable requirements * Preserve fragments when applying verbatim redirects * Avoid 'are incompatible' for singular bounded versions * Support PEP 508 requirements for editables * Discard fragments when parsing unnamed URLs * Port all Git functionality to use Git CLI * Use statically linked C runtime on Windows * Disable concurrent progress bars in Jupyter Notebooks * Initialize multi-progress state before individual bars * Add missing `i686` alias for `x86` * Add missing `ppc64le` alias for `powerpc64le` * Fix reference to `--python-version` patch behavior * Avoid race condition in `OnceMap` * Add support for x86 Windows * Add support for `prepare_metadata_for_build_editable` hook * Add concurrent progress bars for downloads * Update bundled Python URLs and add `"arm"` architecture variant * Allow `--system` and `--python` to be passed together * Ignore `libc` on other platforms * Incorporate build tag into wheel prioritization * Avoid displaying log for satisfied editables if none are requested * Improve logging during interpreter discovery * Improve logging for environment locking * Improve logging of interpreter implementation * Remove extra details from interpreter query traces * Use colon more consistently in error messages * Add JSON alias for `unsafe-any-match` * Remove redundant dynamically linked Linux binary again (#3762)" * Remove `aarch64-unknown-linux-gnu` from list of expected binaries * Always include package names for Git and HTTPS dependencies * Fix interpreter cache collisions for relative virtualenv paths * Ignore unnamed requirements in preferences * Search for `python3` in unix virtual environments * Use a cross-platform representation for relative paths in `pip compile` * Report yanks for cached and resolved packages * Improve error message when default Python is not found * Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters * Re-added the dynamically-linked Linux binary * Rewrite Python interpreter discovery * Add support for requesting `pypy` interpreters by implementation name * Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736) * Add PEP 714 support for HTML API client * Add PEP 714 support for JSON API client * Write relative paths with unnamed requirement syntax * Allow relative Python executable paths in Windows trampoline * Add support for clang and msvc in missing header error * Allow `--constraint` files in `pip sync` * Allow `--config-file` to be passed before or after command name * Make `--offline` a global argument * Improve performance in complex resolutions by reducing cost of PubGrub package clones * Evaluate arbitrary markers to `false` * Improve `DirWithoutEntrypoint` error message * Improve display of root package in range errors * Propagate URL errors in verbatim parsing * Report yanked packages in `--dry-run` * Drop native `manylinux` wheel in favor of dual-tagged wheel * The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior * Add `--prefix` link to compatibility guide * Add `--only-binary` to compatibility guide * Add instructions for building and updating `uv-trampolines` * Add notes for testing on Windows * Parse and store extras on editable requirements * Allow local versions in wheel filenames * Create lib64 symlink for 64-bit, non-macOS, POSIX environments * Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS` * Add serialization and deserialization for `--find-links` * Apply combination logic to merge CLI and persistent configuration * Parallelize resolver * Reduce sensitivity of unknown option error to discard Python 2 interpreters * Respect installed packages in `uv run` * Separate cache construction from initialization * Add missing `"directory"` branch in source match * Fix source annotation in pip compile `annotation-style=line` output * Run cargo update to pull in h2 * URL-decode hashes in HTML fragments * Always print JSON output with `--format` json * Add `UV_CONFIG_FILE` environment variable to documentation * Explicitly mention `--user` in compatibility guide * Add musl ppc64le support * Retag musl aarch64 for manylinux2014 * Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g., > invalid peer certificate: BadSignature OBS-URL: https://build.opensuse.org/request/show/1189907 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/uv?expand=0&rev=3
2024-07-31 23:54:05 +02:00
Source0: https://github.com/astral-sh/uv/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: vendor.tar.zst
BuildRequires: cargo-packaging
BuildRequires: cmake
BuildRequires: rust >= 1.77
Accepting request 1189907 from home:uncomfyhalomacro:branches:devel:languages:python - Use upstream github sources in specfile. - Add zstd as build requirement. - Update to version 0.2.30. Changelog include since 0.1.47: * Infer missing `.exe` in Windows Python discovery * Make `--reinstall` imply `--refresh` * Add `--no-config` to replace `--isolated` * Cache metadata for source tree dependencies * Avoid canonicalizing executables on Windows * Set standard permissions for temporary files * Add `--ci` mode to `uv cache prune` * Display Python installation key for discovered interpreters * Allow symlinks to files in scripts directory * Always accept already-installed pre-releases * Validate successful metadata fetch for direct dependencies * Add warning to `--link-mode=symlink` documentation * Output stable ordering to `requirements.txt` in universal mode * Allow symlinks with `--find-links` * Add support for variations of `pythonw.exe` * Stylize `Requires-Python` consistently in CLI output * Add `--show-version-specifiers` to `tree` * Avoid always rebuilding dynamic metadata * Avoid URL parsing when deserializing wheels * Avoid cache prune failure due to removed interpreter * Avoid including empty extras in resolution * If multiple indices contain the same version, use the first index * Include URLs on graph edges * Match wheel tags against `Requires-Python` major-minor * Remove Simple API cache files for alternative indexes in `cache clean` * Remove extraneous `are` from wheel tag error messages * Allow conflicting prerelease strategies when forking * Use tag error rather than requires-python error for ABI filtering * Add GraalPy support * Add a `--verify-hashes` hash-checking mode * Discover all `python3.x` executables in the `PATH` * Support `--link-mode=symlink` * Warn about unconstrained direct deps in lowest resolution * Log origin of version selection * Key hash policy on version, rather than package * Make missing project table a tracing warning * Remove trailing period from user-facing messages * Make entrypoint writes atomic to avoid overwriting symlinks * Use `which`-retrieved path directly when spawning pager * Don't apply irrelevant constraints when validating site-packages * Respect local versions for all user requirements * Add `--no-progress` global option to hide all progress animations * Cache downloaded wheel when range requests aren't supported * Download wheel to disk when streaming unzip failed with HTTP streaming error * Filter out invalid wheels based on `requires-python` * Filter out none ABI wheels with mismatched Python versions * Lock Git cache on resolve * Change order of `pip compile` command checks to handle exact argument first * Document that `--universal` implies `--no-strip-markers` * Include PyPy-specific executables when creating virtual environments with `uv venv` * Add a custom error message for `--no-build-isolation` `torch` dependencies * Improve missing `wheel` error message with `--no-build-isolation` * Add `--no-pager` option in `help` command * Unhide `--isolated` global argument * Warn when unused `pyproject.toml` configuration is detected * Fall back to streaming wheel when `Content-Length` header is absent * Fix substring marker expression disjointness checks * Lock directories to synchronize wheel-install copies * Normalize out complementary == or != markers * Retry on permission errors when persisting extracted source distributions to the cache * Set absolute URLs prior to uploading to PyPI * Exclude `--upgrade-package` from the `pip compile` header * Exclude `--upgrade-package` when option and value are passed as a single argument * Add split to cover marker universe when existing splits are incomplete * Use correct `pyproject.toml` path in warnings * Fix `CONTRIBUTING.md` instructions to install multiple Python versions * Use versioned badges when uploading to PyPI * Add support for 'any' Python requests * Allow constraints to be provided in `--upgrade-package` * Add `manylinux_2_31` to supported `--python-platform` * Improve marker simplification * Display short help menu when `--help` is used * Allow `uv help` global options during `uv help` * Use paging for `uv help` display when available * Switch to single threaded async runtime * Avoid AND-ing multi-term specifiers in marker normalization * Avoid inferring package name for GitHub Archives * Retry on connection reset network errors * Apply extra to overrides and constraints * Allow `uv` crate to be used as a library * Update Windows trampoline binaries * Show user-facing warning when falling back to copy installs * Initialize all `--prefix` subdirectories * Respect `requires-python` when prefetching * Partially revert `Requires-Python` version narrowing * Add `--exclude-newer` to installer arguments * Bold durations in CLI messages * Drop crate description from the `uv` help menu * Update "about" in help menu * Add `UV_OVERRIDE` environment variable for `--override` * Always use release-only comparisons for `requires-python` * Avoid hangs before exiting CLI * Preserve verbatim URLs for `--find-links` * Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows * Differentiate `freeze` and `list` help text * Fix issue where the standalone installer failed due to a missing `uvx` binary * Indicate when we retried requests during network errors * Add `--disable-pip-version-check` to compatibility arguments * Allow `uv pip sync` to clear an environment with opt-in * Add `--invert` to `uv pip tree` * Omit `(*)` in `uv pip tree` for empty packages * Add `--package` to `uv pip tree` * Fix bug where git cache did not validate commits correctly * Narrow `requires-python` requirement in resolver forks * Fix bug when pruning the last package in `uv pip tree` * Make `--universal` and `--python-platform` mutually exclusive * Add `--depth` and `--prune` support to `pip tree` * Handle cycles when propagating markers * Ignore `py` not found errors during interpreter discovery * Merge markers when applying constraints * Retry on spurious failures when caching built wheels * Sort indexes during graph edge removal * Treat Python version as a lower bound in `--universal` * Fix the incorrect handling of markers in `pip tree` * Improve toolchain and environment missing error messages * Explicitly mention use of seed packages during `uv venv --seed` * Avoid enforcing extra-only constraints * Add a universal resolution mode to `uv pip compile` with `--universal` * Add support for `--no-strip-markers` in `uv pip compile` output * Add `--no-dedupe` support to `uv pip tree` * Enable more precise environment locking with `--prefix` * Allow local index references in `requirements.txt` files * Allow non-`file://` paths to serve as `--index-url` values * Make `.egg-info` filename parsing spec compliant * Gracefully handle non-existent packages in local indexes * Read content length from response rather than request * Read persistent configuration from non-workspace `pyproject.toml` * Avoid panic for invalid, non-base index URLs * Skip submodule update for fresh clones * Use shared client in Git fetch implementation * Add `--emit-build-options` flag to `uv pip compile` interface * Add `pythonw` support for gui scripts on Windows * Add `uv pip tree` * Adjust the docs for the pip CLI commands * Fix casing of `--no-compile` alias * Fix ordering of prefer-system toolchain preference * Respect index strategy in source distribution builds * Add documentation for using uv in a Docker image * Support toolchain requests with platform-tag style Python implementations and version * Use "Prepared" instead of "Downloaded" in logs * Treat mismatched directory and file urls as unsatisfied requirements * Add resolver tracing logs for when we filter requirements * Allow specific `--only-binary` and `--no-binary` packages to override `:all:` * Flatten ORs and ANDs in marker construction * Skip invalid interpreters when searching for requested interpreter executable name * Display keyring stderr during queries * Allow discovery of uv binary relative to package root * Use relative path for `lib64` symlink * Add uv version to debug output * Allow `--no-binary` with `uv pip compile` * Hide `--no-system` from the CLI * Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments * Add `UV_EXCLUDE_NEWER` environment variable * Allow normalization to completely eliminate markers * Avoid treating direct path archives as always dynamic * De-duplicate markers during normalization * Fix incorrect parsing of requested Python version as empty version specifiers * Suggest correct command to create a virtual environment when encountering externally managed interpreters * Use consistent order for extra groups in lockfile * Add `pip-compile` defaults to `PIP_COMPATIBILITY.md` * Expand on `pip-compile` default differences * Tweak copy on some command-line arguments * Move the preview changelog so the GitHub Release shows stable changes * Add support for local directories with `--index-url` * Add mTLS support * Allow version specifiers to be used in Python version requests * Always install as editable when duplicate dependencies are requested * Avoid crash with `XDG_CONFIG_HOME=/dev/null` * Improve handling of missing interpreters during discovery * Make missing `METADATA` file a recoverable error * Represent build tag as `u64` * Document Windows 10 requirement * Re-add `aarch64-unknown-linux-gnu` binary to release assets * Accept `file://` URLs for `requirements.txt` et all references * Add support for `--prefix` * Add `pyproject.toml` to CLI help * Drop "registry" prefix from request timeout log * Allow transitive URLs via recursive extras * Avoid pre-fetching for unbounded minimum versions * Avoid showing dev hints for Python requirements * Include non-standard ports in keyring host queries * Omit URL dependencies from pre-release hints * Improve static metadata extraction for Poetry projects * Document bytecode compilation in pip compatibility guide * Fix PEP 508 link in preview doc `specifying_dependencies` * Clarify role of `--system` flag * Respect existing `.egg-link` files in site packages * Avoid extra-only filtering for constraints * Add install link for specific version to README * Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment * Support `NO_COLOR` and `FORCE_COLOR` environment variables * Avoid building packages with dynamic versions * Avoid work-stealing in bytecode compilation * Avoid dropping `pip sync` requirements with markers * Bias towards local directories for bare editable requirements * Preserve fragments when applying verbatim redirects * Avoid 'are incompatible' for singular bounded versions * Support PEP 508 requirements for editables * Discard fragments when parsing unnamed URLs * Port all Git functionality to use Git CLI * Use statically linked C runtime on Windows * Disable concurrent progress bars in Jupyter Notebooks * Initialize multi-progress state before individual bars * Add missing `i686` alias for `x86` * Add missing `ppc64le` alias for `powerpc64le` * Fix reference to `--python-version` patch behavior * Avoid race condition in `OnceMap` * Add support for x86 Windows * Add support for `prepare_metadata_for_build_editable` hook * Add concurrent progress bars for downloads * Update bundled Python URLs and add `"arm"` architecture variant * Allow `--system` and `--python` to be passed together * Ignore `libc` on other platforms * Incorporate build tag into wheel prioritization * Avoid displaying log for satisfied editables if none are requested * Improve logging during interpreter discovery * Improve logging for environment locking * Improve logging of interpreter implementation * Remove extra details from interpreter query traces * Use colon more consistently in error messages * Add JSON alias for `unsafe-any-match` * Remove redundant dynamically linked Linux binary again (#3762)" * Remove `aarch64-unknown-linux-gnu` from list of expected binaries * Always include package names for Git and HTTPS dependencies * Fix interpreter cache collisions for relative virtualenv paths * Ignore unnamed requirements in preferences * Search for `python3` in unix virtual environments * Use a cross-platform representation for relative paths in `pip compile` * Report yanks for cached and resolved packages * Improve error message when default Python is not found * Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters * Re-added the dynamically-linked Linux binary * Rewrite Python interpreter discovery * Add support for requesting `pypy` interpreters by implementation name * Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736) * Add PEP 714 support for HTML API client * Add PEP 714 support for JSON API client * Write relative paths with unnamed requirement syntax * Allow relative Python executable paths in Windows trampoline * Add support for clang and msvc in missing header error * Allow `--constraint` files in `pip sync` * Allow `--config-file` to be passed before or after command name * Make `--offline` a global argument * Improve performance in complex resolutions by reducing cost of PubGrub package clones * Evaluate arbitrary markers to `false` * Improve `DirWithoutEntrypoint` error message * Improve display of root package in range errors * Propagate URL errors in verbatim parsing * Report yanked packages in `--dry-run` * Drop native `manylinux` wheel in favor of dual-tagged wheel * The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior * Add `--prefix` link to compatibility guide * Add `--only-binary` to compatibility guide * Add instructions for building and updating `uv-trampolines` * Add notes for testing on Windows * Parse and store extras on editable requirements * Allow local versions in wheel filenames * Create lib64 symlink for 64-bit, non-macOS, POSIX environments * Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS` * Add serialization and deserialization for `--find-links` * Apply combination logic to merge CLI and persistent configuration * Parallelize resolver * Reduce sensitivity of unknown option error to discard Python 2 interpreters * Respect installed packages in `uv run` * Separate cache construction from initialization * Add missing `"directory"` branch in source match * Fix source annotation in pip compile `annotation-style=line` output * Run cargo update to pull in h2 * URL-decode hashes in HTML fragments * Always print JSON output with `--format` json * Add `UV_CONFIG_FILE` environment variable to documentation * Explicitly mention `--user` in compatibility guide * Add musl ppc64le support * Retag musl aarch64 for manylinux2014 * Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g., > invalid peer certificate: BadSignature OBS-URL: https://build.opensuse.org/request/show/1189907 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/uv?expand=0&rev=3
2024-07-31 23:54:05 +02:00
BuildRequires: zstd
Requires: python3
%description
uv is a Python package installer and resolver, written in Rust. Designed as a
drop-in replacement for common pip and pip-tools workflows.
%prep
%autosetup -p1 -a1
%build
%{cargo_build} --all
%install
install -D -d -m 0755 %{buildroot}%{_bindir}
Accepting request 1189907 from home:uncomfyhalomacro:branches:devel:languages:python - Use upstream github sources in specfile. - Add zstd as build requirement. - Update to version 0.2.30. Changelog include since 0.1.47: * Infer missing `.exe` in Windows Python discovery * Make `--reinstall` imply `--refresh` * Add `--no-config` to replace `--isolated` * Cache metadata for source tree dependencies * Avoid canonicalizing executables on Windows * Set standard permissions for temporary files * Add `--ci` mode to `uv cache prune` * Display Python installation key for discovered interpreters * Allow symlinks to files in scripts directory * Always accept already-installed pre-releases * Validate successful metadata fetch for direct dependencies * Add warning to `--link-mode=symlink` documentation * Output stable ordering to `requirements.txt` in universal mode * Allow symlinks with `--find-links` * Add support for variations of `pythonw.exe` * Stylize `Requires-Python` consistently in CLI output * Add `--show-version-specifiers` to `tree` * Avoid always rebuilding dynamic metadata * Avoid URL parsing when deserializing wheels * Avoid cache prune failure due to removed interpreter * Avoid including empty extras in resolution * If multiple indices contain the same version, use the first index * Include URLs on graph edges * Match wheel tags against `Requires-Python` major-minor * Remove Simple API cache files for alternative indexes in `cache clean` * Remove extraneous `are` from wheel tag error messages * Allow conflicting prerelease strategies when forking * Use tag error rather than requires-python error for ABI filtering * Add GraalPy support * Add a `--verify-hashes` hash-checking mode * Discover all `python3.x` executables in the `PATH` * Support `--link-mode=symlink` * Warn about unconstrained direct deps in lowest resolution * Log origin of version selection * Key hash policy on version, rather than package * Make missing project table a tracing warning * Remove trailing period from user-facing messages * Make entrypoint writes atomic to avoid overwriting symlinks * Use `which`-retrieved path directly when spawning pager * Don't apply irrelevant constraints when validating site-packages * Respect local versions for all user requirements * Add `--no-progress` global option to hide all progress animations * Cache downloaded wheel when range requests aren't supported * Download wheel to disk when streaming unzip failed with HTTP streaming error * Filter out invalid wheels based on `requires-python` * Filter out none ABI wheels with mismatched Python versions * Lock Git cache on resolve * Change order of `pip compile` command checks to handle exact argument first * Document that `--universal` implies `--no-strip-markers` * Include PyPy-specific executables when creating virtual environments with `uv venv` * Add a custom error message for `--no-build-isolation` `torch` dependencies * Improve missing `wheel` error message with `--no-build-isolation` * Add `--no-pager` option in `help` command * Unhide `--isolated` global argument * Warn when unused `pyproject.toml` configuration is detected * Fall back to streaming wheel when `Content-Length` header is absent * Fix substring marker expression disjointness checks * Lock directories to synchronize wheel-install copies * Normalize out complementary == or != markers * Retry on permission errors when persisting extracted source distributions to the cache * Set absolute URLs prior to uploading to PyPI * Exclude `--upgrade-package` from the `pip compile` header * Exclude `--upgrade-package` when option and value are passed as a single argument * Add split to cover marker universe when existing splits are incomplete * Use correct `pyproject.toml` path in warnings * Fix `CONTRIBUTING.md` instructions to install multiple Python versions * Use versioned badges when uploading to PyPI * Add support for 'any' Python requests * Allow constraints to be provided in `--upgrade-package` * Add `manylinux_2_31` to supported `--python-platform` * Improve marker simplification * Display short help menu when `--help` is used * Allow `uv help` global options during `uv help` * Use paging for `uv help` display when available * Switch to single threaded async runtime * Avoid AND-ing multi-term specifiers in marker normalization * Avoid inferring package name for GitHub Archives * Retry on connection reset network errors * Apply extra to overrides and constraints * Allow `uv` crate to be used as a library * Update Windows trampoline binaries * Show user-facing warning when falling back to copy installs * Initialize all `--prefix` subdirectories * Respect `requires-python` when prefetching * Partially revert `Requires-Python` version narrowing * Add `--exclude-newer` to installer arguments * Bold durations in CLI messages * Drop crate description from the `uv` help menu * Update "about" in help menu * Add `UV_OVERRIDE` environment variable for `--override` * Always use release-only comparisons for `requires-python` * Avoid hangs before exiting CLI * Preserve verbatim URLs for `--find-links` * Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows * Differentiate `freeze` and `list` help text * Fix issue where the standalone installer failed due to a missing `uvx` binary * Indicate when we retried requests during network errors * Add `--disable-pip-version-check` to compatibility arguments * Allow `uv pip sync` to clear an environment with opt-in * Add `--invert` to `uv pip tree` * Omit `(*)` in `uv pip tree` for empty packages * Add `--package` to `uv pip tree` * Fix bug where git cache did not validate commits correctly * Narrow `requires-python` requirement in resolver forks * Fix bug when pruning the last package in `uv pip tree` * Make `--universal` and `--python-platform` mutually exclusive * Add `--depth` and `--prune` support to `pip tree` * Handle cycles when propagating markers * Ignore `py` not found errors during interpreter discovery * Merge markers when applying constraints * Retry on spurious failures when caching built wheels * Sort indexes during graph edge removal * Treat Python version as a lower bound in `--universal` * Fix the incorrect handling of markers in `pip tree` * Improve toolchain and environment missing error messages * Explicitly mention use of seed packages during `uv venv --seed` * Avoid enforcing extra-only constraints * Add a universal resolution mode to `uv pip compile` with `--universal` * Add support for `--no-strip-markers` in `uv pip compile` output * Add `--no-dedupe` support to `uv pip tree` * Enable more precise environment locking with `--prefix` * Allow local index references in `requirements.txt` files * Allow non-`file://` paths to serve as `--index-url` values * Make `.egg-info` filename parsing spec compliant * Gracefully handle non-existent packages in local indexes * Read content length from response rather than request * Read persistent configuration from non-workspace `pyproject.toml` * Avoid panic for invalid, non-base index URLs * Skip submodule update for fresh clones * Use shared client in Git fetch implementation * Add `--emit-build-options` flag to `uv pip compile` interface * Add `pythonw` support for gui scripts on Windows * Add `uv pip tree` * Adjust the docs for the pip CLI commands * Fix casing of `--no-compile` alias * Fix ordering of prefer-system toolchain preference * Respect index strategy in source distribution builds * Add documentation for using uv in a Docker image * Support toolchain requests with platform-tag style Python implementations and version * Use "Prepared" instead of "Downloaded" in logs * Treat mismatched directory and file urls as unsatisfied requirements * Add resolver tracing logs for when we filter requirements * Allow specific `--only-binary` and `--no-binary` packages to override `:all:` * Flatten ORs and ANDs in marker construction * Skip invalid interpreters when searching for requested interpreter executable name * Display keyring stderr during queries * Allow discovery of uv binary relative to package root * Use relative path for `lib64` symlink * Add uv version to debug output * Allow `--no-binary` with `uv pip compile` * Hide `--no-system` from the CLI * Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments * Add `UV_EXCLUDE_NEWER` environment variable * Allow normalization to completely eliminate markers * Avoid treating direct path archives as always dynamic * De-duplicate markers during normalization * Fix incorrect parsing of requested Python version as empty version specifiers * Suggest correct command to create a virtual environment when encountering externally managed interpreters * Use consistent order for extra groups in lockfile * Add `pip-compile` defaults to `PIP_COMPATIBILITY.md` * Expand on `pip-compile` default differences * Tweak copy on some command-line arguments * Move the preview changelog so the GitHub Release shows stable changes * Add support for local directories with `--index-url` * Add mTLS support * Allow version specifiers to be used in Python version requests * Always install as editable when duplicate dependencies are requested * Avoid crash with `XDG_CONFIG_HOME=/dev/null` * Improve handling of missing interpreters during discovery * Make missing `METADATA` file a recoverable error * Represent build tag as `u64` * Document Windows 10 requirement * Re-add `aarch64-unknown-linux-gnu` binary to release assets * Accept `file://` URLs for `requirements.txt` et all references * Add support for `--prefix` * Add `pyproject.toml` to CLI help * Drop "registry" prefix from request timeout log * Allow transitive URLs via recursive extras * Avoid pre-fetching for unbounded minimum versions * Avoid showing dev hints for Python requirements * Include non-standard ports in keyring host queries * Omit URL dependencies from pre-release hints * Improve static metadata extraction for Poetry projects * Document bytecode compilation in pip compatibility guide * Fix PEP 508 link in preview doc `specifying_dependencies` * Clarify role of `--system` flag * Respect existing `.egg-link` files in site packages * Avoid extra-only filtering for constraints * Add install link for specific version to README * Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment * Support `NO_COLOR` and `FORCE_COLOR` environment variables * Avoid building packages with dynamic versions * Avoid work-stealing in bytecode compilation * Avoid dropping `pip sync` requirements with markers * Bias towards local directories for bare editable requirements * Preserve fragments when applying verbatim redirects * Avoid 'are incompatible' for singular bounded versions * Support PEP 508 requirements for editables * Discard fragments when parsing unnamed URLs * Port all Git functionality to use Git CLI * Use statically linked C runtime on Windows * Disable concurrent progress bars in Jupyter Notebooks * Initialize multi-progress state before individual bars * Add missing `i686` alias for `x86` * Add missing `ppc64le` alias for `powerpc64le` * Fix reference to `--python-version` patch behavior * Avoid race condition in `OnceMap` * Add support for x86 Windows * Add support for `prepare_metadata_for_build_editable` hook * Add concurrent progress bars for downloads * Update bundled Python URLs and add `"arm"` architecture variant * Allow `--system` and `--python` to be passed together * Ignore `libc` on other platforms * Incorporate build tag into wheel prioritization * Avoid displaying log for satisfied editables if none are requested * Improve logging during interpreter discovery * Improve logging for environment locking * Improve logging of interpreter implementation * Remove extra details from interpreter query traces * Use colon more consistently in error messages * Add JSON alias for `unsafe-any-match` * Remove redundant dynamically linked Linux binary again (#3762)" * Remove `aarch64-unknown-linux-gnu` from list of expected binaries * Always include package names for Git and HTTPS dependencies * Fix interpreter cache collisions for relative virtualenv paths * Ignore unnamed requirements in preferences * Search for `python3` in unix virtual environments * Use a cross-platform representation for relative paths in `pip compile` * Report yanks for cached and resolved packages * Improve error message when default Python is not found * Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters * Re-added the dynamically-linked Linux binary * Rewrite Python interpreter discovery * Add support for requesting `pypy` interpreters by implementation name * Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736) * Add PEP 714 support for HTML API client * Add PEP 714 support for JSON API client * Write relative paths with unnamed requirement syntax * Allow relative Python executable paths in Windows trampoline * Add support for clang and msvc in missing header error * Allow `--constraint` files in `pip sync` * Allow `--config-file` to be passed before or after command name * Make `--offline` a global argument * Improve performance in complex resolutions by reducing cost of PubGrub package clones * Evaluate arbitrary markers to `false` * Improve `DirWithoutEntrypoint` error message * Improve display of root package in range errors * Propagate URL errors in verbatim parsing * Report yanked packages in `--dry-run` * Drop native `manylinux` wheel in favor of dual-tagged wheel * The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior * Add `--prefix` link to compatibility guide * Add `--only-binary` to compatibility guide * Add instructions for building and updating `uv-trampolines` * Add notes for testing on Windows * Parse and store extras on editable requirements * Allow local versions in wheel filenames * Create lib64 symlink for 64-bit, non-macOS, POSIX environments * Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS` * Add serialization and deserialization for `--find-links` * Apply combination logic to merge CLI and persistent configuration * Parallelize resolver * Reduce sensitivity of unknown option error to discard Python 2 interpreters * Respect installed packages in `uv run` * Separate cache construction from initialization * Add missing `"directory"` branch in source match * Fix source annotation in pip compile `annotation-style=line` output * Run cargo update to pull in h2 * URL-decode hashes in HTML fragments * Always print JSON output with `--format` json * Add `UV_CONFIG_FILE` environment variable to documentation * Explicitly mention `--user` in compatibility guide * Add musl ppc64le support * Retag musl aarch64 for manylinux2014 * Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g., > invalid peer certificate: BadSignature OBS-URL: https://build.opensuse.org/request/show/1189907 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/uv?expand=0&rev=3
2024-07-31 23:54:05 +02:00
install -m 0755 -t %{buildroot}%{_bindir}/ %{_builddir}/%{name}-%{version}/target/release/uv{,-dev}
# Tests require network
#%%check
#%%cargo_test
%files
%license LICENSE-*
%doc README.md
%{_bindir}/uv
%{_bindir}/uv-dev
%changelog