Skip to content

Update charmcraft.yaml build tools #213

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

Merged
merged 1 commit into from
Mar 4, 2025

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 7, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence Update
poetry (changelog) 2.0.1 -> 2.1.1 age adoption passing confidence minor
rust-lang/rust 1.84.0 -> 1.85.0 age adoption passing confidence minor
uv (source, changelog) 0.5.20 -> 0.6.4 age adoption passing confidence minor

Release Notes

python-poetry/poetry (poetry)

v2.1.1

Compare Source

Fixed
  • Fix an issue where poetry env use python does not choose the Python from the PATH (#​10187).
poetry-core (2.1.1)
  • Fix an issue where simplifying a python_version marker resulted in an invalid marker (#​838).

v2.1.0

Compare Source

Added
Changed
Fixed
  • Fix an issue where global options were not handled correctly when positioned after command options (#​10021,
    #​10067,
    #​10128).
  • Fix an issue where building a dependency from source failed because of a conflict between build-system dependencies that were not required for the target environment (#​10048).
  • Fix an issue where poetry init was not able to find a package on PyPI while adding dependencies interactively (#​10055).
  • Fix an issue where the @latest descriptor was incorrectly passed to the core requirement parser (#​10069).
  • Fix an issue where Boolean environment variables set to True (in contrast to true) were interpreted as false (#​10080).
  • Fix an issue where poetry env activate reported a misleading error message (#​10087).
  • Fix an issue where adding an optional dependency with poetry add --optional would not correctly update the lock file (#​10076).
  • Fix an issue where pip was not installed/updated before other dependencies resulting in a race condition (#​10102).
  • Fix an issue where Poetry freezes when multiple threads attempt to unlock the keyring simultaneously (#​10062).
  • Fix an issue where markers with extras were not locked correctly (#​10119).
  • Fix an issue where self-referential extras were not resolved correctly (#​10106).
  • Fix an issue where Poetry could not be run from a zipapp (#​10074).
  • Fix an issue where installation failed with a permission error when using the system environment as a user without write access to system site packages (#​9014).
  • Fix an issue where a version of a dependency that is not compatible with the project's python constraint was locked. (#​10141).
  • Fix an issue where Poetry wrongly reported that the current project's supported Python range is not compatible with some of the required packages Python requirement (#​10157).
  • Fix an issue where the requested extras of a dependency were ignored if the same dependency (with same extras) was specified in multiple groups (#​10158).
Docs
  • Sort commands by name in the CLI reference (#​10035).
  • Add missing documentation for env commands (#​10027).
  • Clarify that the name and version fields are always required if the project section is specified (#​10033).
  • Add a note about restarting the shell for tab completion changes to take effect (#​10070).
  • Fix the example for project.gui-scripts #​10121.
  • Explain how to include files as scripts in the project configuration (#​9572,
    #​10133).
  • Add additional information on specifying required python versions (#​10104).
poetry-core (2.1.0)
  • Fix an issue where inclusive ordering with post releases was inconsistent with PEP 440 (#​379).
  • Fix an issue where invalid URI tokens in PEP 508 requirement strings were silently discarded (#​817).
  • Fix an issue where wrong markers were calculated when removing parts covered by the project's python constraint (#​824).
  • Fix an issue where optional dependencies that are not part of an extra were included in the wheel metadata (#​830).
  • Fix an issue where the __pycache__ directory and *.pyc files were included in sdists and wheels (#​835).
rust-lang/rust (rust-lang/rust)

v1.85.0

Compare Source

==========================

Language

Compiler

Platform Support

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

Libraries

Stabilized APIs

These APIs are now stable in const contexts:

Cargo

Rustdoc

Compatibility Notes

Internal Changes

These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.

v1.84.1

Compare Source

==========================

astral-sh/uv (uv)

v0.6.4

Compare Source

Enhancements
  • Upgrade pypy3.10 to v7.3.19 (#​11814)
  • Allow configuring log verbosity from the CLI (i.e., -vvv) (#​11758)
  • Warn when duplicate index names found in single file (#​11824)
Bug fixes
  • Always store registry index on resolution packages (#​11815)
  • Avoid error on relative paths in uv tool uninstall (#​11889)
  • Avoid silently dropping errors in directory enumeration (#​11890)
  • Disable interactive git terminal prompts during fetches (#​11744)
  • Discover Windows registry (PEP 514) Python versions across 32/64-bit (#​11801)
  • Don't panic on Ctrl-C in confirm prompt (#​11706)
  • Fix non-directory in workspace on Windows (#​11833)
  • Make interpreter caching robust to OS upgrades (#​11875)
  • Respect include-system-site-packages in layered environments (#​11873)
  • Suggest uv tool update-shell in PowerShell (#​11846)
  • Update code page to 65001 before setting environment variables in virtual environments (#​11831)
  • Use hash instead of full wheel name in wheels bucket (#​11738)
  • Fix version string truncation while generating cache_key (#​11830)
  • Explicitly handle ctrl-c in confirmation prompt instead of using a signal handler (#​11897)
Performance
  • Avoid cloning to string when creating cache path (#​11772)
  • Avoid redundant clones in version containment check (#​11767)
  • Avoid string allocation when enumerating tool names (#​11910)
  • Avoid using owned String for package name constructors (#​11768)
  • Avoid using owned String in deserializers (#​11764)
  • Migrate to zlib-rs (again) (#​11894)
  • Remove unnecessary clones when adding package names (#​11771)
  • Skip unquote allocation for non-quoted strings (#​11813)
  • Use SmallString for filenames and URLs (#​11765)
  • Use a Boxed slice for version specifiers (#​11766)
  • Use matches over contains for extra value parsing (#​11770)
Documentation
  • Avoid fallback to PyPI in mixed CPU/CUDA example (#​11115)
  • Docs: Clarify that setting cache-keys overrides defaults (#​11895)
  • Document our MSRV policy (#​11898)
  • Fix reference to macOS cache path (#​11845)
  • Fix typo in no_default_groups documentation and changelog (#​11928)
  • Update the "Locking and syncing" page (#​11647)
  • Update alternative indexes documentation to use new interface (#​10826)

v0.6.3

Compare Source

Enhancements
  • Allow quotes around command-line options in requirement.txt files (#​11644)
  • Initialize PEP 723 script in uv lock --script (#​11717)
Configuration
  • Accept multiple .env files in UV_ENV_FILE (#​11665)
Performance
  • Reduce overhead in converting resolutions (#​11660)
  • Use SmallString on Hashes (#​11756)
  • Use a Box for Yanked on File (#​11755)
  • Use a SmallString for the Yanked enum (#​11715)
  • Use boxed slices for hash vector (#​11714)
  • Use install concurrency for bytecode compilation too (#​11615)
Bug fixes
  • Avoid installing duplicate dependencies across conflicting groups (#​11653)
  • Check subdirectory existence after cache heal (#​11719)
  • Include uppercase platforms for Windows wheels (#​11681)
  • Respect existing PEP 723 script settings in uv add (#​11716)
  • Reuse refined interpreter to create tool environment (#​11680)
  • Skip removed directories during bytecode compilation (#​11633)
  • Support conflict markers in uv export (#​11643)
  • Treat lockfile as outdated if (empty) extras are added (#​11702)
  • Display path separators as backslashes on Windows (#​11667)
  • Display the built file name instead of the canonicalized name in uv build (#​11593)
  • Fix message when there are no buildable packages (#​11722)
  • Re-allow HTTP schemes for Git dependencies (#​11687)
Documentation
  • Add anchor links to arguments and options in the CLI reference (#​11754)
  • Add link to environment marker specification (#​11748)
  • Fix missing a closing bracket in the cache-keys setting (#​11669)
  • Remove the last edited date from documentation pages (#​11753)
  • Fix readme typo (#​11742)

v0.6.2

Compare Source

Enhancements
  • Add support for constraining build dependencies with tool.uv.build-constraint-dependencies (#​11585)
  • Sort dependency group keys when adding new group (#​11591)
Performance
Bug fixes
  • Allow use of x86-64 Python on ARM Windows (#​11625)
  • Fix an issue where conflict markers could instigate a very large lock file (#​11293)
  • Fix duplicate packages with multiple conflicting extras declared (#​11513)
  • Respect color settings for log messages (#​11604)
  • Eagerly reject unsupported Git schemes (#​11514)
Documentation
  • Add documentation for specifying Python versions in tool commands (#​11598)

v0.6.1

Compare Source

Enhancements
  • Allow users to mark platforms as "required" for wheel coverage (#​10067)
  • Warn for builds in non-build and workspace root pyproject.toml (#​11394)
Bug fixes
  • Add --all to uvx --reinstall message (#​11535)
  • Fallback to GET on HTTP 400 when attempting to use range requests for wheel download (#​11539)
  • Prefer local variants in preference selection (#​11546)
  • Respect verbatim executable name in uvx (#​11524)
Documentation
  • Add documentation for required environments (#​11542)
  • Note that main.py used to be hello.py (#​11519)

v0.6.0

Compare Source

There have been 31 releases and 1135 pull requests since 0.5.0, our last release with breaking changes. As before, we've accumulated various changes that improve correctness and user experience, but could break some workflows. This release contains those changes; many have been marked as breaking out of an abundance of caution. We expect most users to be able to upgrade without making changes.

Breaking changes
  • Create main.py instead of hello.py in uv init (#​10369)

    Previously, uv init created a hello.py sample file. Now, uv init will create main.py instead — which aligns with expectations from user feedback. The --bare option can be used to avoid creating the file altogether.

  • Respect UV_PYTHON in uv python install (#​11487)

    Previously, uv python install did not read this environment variable; now it does. We believe this matches user expectations, however, this will take priority over .python-version files which could be considered breaking.

  • Set UV to the uv executable path (#​11326)

    When uv spawns a subprocess, it will now have the UV environment variable set to the uv binary path. This change is breaking if you are setting the UV environment variable yourself, as we will overwrite its value.

    Additionally, this change requires marking the uv Rust entrypoint (uv::main) as unsafe to avoid unsoundness — this is only relevant if you are invoking uv using Rust. See the Rust documentation for details about the safety of updating a process' environment.

  • Error on non-existent extras, e.g., in uv sync (#​11426)

    Previously, uv would silently ignore non-existent extras requested on the command-line (e.g., via uv sync --extra foo). This is generally correct behavior when resolving requests for package extras, because an extra may be present on one compatible version of a package but not another. However, this flexibility doesn't need to apply to the local project and it's less surprising to error here.

  • Error on missing dependency groups when --frozen is provided (#​11499)

    Previously, uv would not validate that the requested dependency groups were present in the lockfile when the --frozen flag was used. Now, an error will be raised if a requested dependency group is not present.

  • Change -p to a --python alias in uv pip compile (#​11486)

    In uv pip compile, -p was an alias for --python-version while everywhere else in uv's interface it is an alias for --python. Additionally, uv pip compile did not respect the UV_PYTHON environment variable. Now, the semantics of this flag have been updated for parity with the rest of the CLI.

    However, --python-version is unique: if we cannot find an interpreter with the given version, we will not fail. Instead, we'll use an alternative interpreter and override its version tags with the requested version during package resolution. This behavior is retained here for backwards compatibility, --python <version> / -p <version> will not fail if the version cannot be found. However, if a specific interpreter is requested, e.g., with --python <path> or --python pypy, and cannot be found — uv will exit with an error.

    The breaking changes here are that UV_PYTHON is respected and --python <version> will no longer fail if the version cannot be found.

  • Bump alpine default tag to 3.21 for derived Docker images (#​11157)

    Alpine 3.21 was released in Dec 2024 and is used in the official Alpine-based Python images. Our uv:python3.x-alpine images have been using 3.21 since uv v0.5.8. However, now the the uv:alpine image will use 3.21 instead of 3.20 and uv:alpine3.20 will no longer be updated.

  • Use files instead of junctions on Windows (#​11269)

    Previously, we used junctions for atomic replacement of cache entries on Windows. Now, we use a file with a pointer to the cache entry instead. This resolves various edge-case behaviors with junctions. These files are only intended to be consumed by uv and the cache version has been bumped. We do not think this change will affect workflows.

Stabilizations
  • uv publish is no longer in preview (#​11032)

    This does not come with any behavior changes. You will no longer see an experimental warning when using uv publish. See the linked pull request for a report on the stabilization.

Enhancements
  • Support --active for PEP 723 script environments (#​11433)
  • Add revision to the lockfile to allow backwards-compatible metadata changes (#​11500)
Bug fixes
  • Avoid reading metadata from .egg-info files (#​11395)
  • Include archive bucket version in archive pointers (#​11306)
  • Omit lockfile version when additional fields are dynamic (#​11468)
  • Respect executable name in uvx --from tool@latest (#​11465)
Documentation
  • The CHANGELOG.md is now split into separate files for each "major" version to fix rendering (#​11510)

v0.5.31

Compare Source

Release Notes

Enhancements
  • Add uv sync --script (#​11361)
  • Allow PEP 508 requirements in tool requests (#​11337)
  • Allow source distributions to produce wheels with +local suffixes (#​11429)
  • Bring parity to uvx and uv tool install requests (#​11345)
  • Use a stable directory for local, remote, and stdin script virtual environments (#​11347, #​11364)
  • Detect infinite recursion in uv run (#​11386)
Python

The managed Python distributions have been updated, including:

See the python-build-standalone release notes for more details.

Bug fixes
  • Fix cross-drive script installation (#​11167)
  • Add indexes in priority order (#​11451)
  • Allow --python <dir> requests to match existing environments if sys.executable is the same file (#​11290)
  • Avoid comparing to system site packages in --dry-run mode (#​11427)
  • Prefer running executables in the environment with <name> over <name>/__main__.py (#​11431)
  • Retry local clones without hardlinks if they fail (#​11421)
Documentation
  • Update alternative-indexes.md to use UV_INDEX instead of UV_EXTRA_INDEX_URL (#​11381)
  • Update scripts guide to include using package indexes (#​11443)

Install uv 0.5.31

Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.5.31/uv-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/uv/releases/download/0.5.31/uv-installer.ps1 | iex"

Download uv 0.5.31

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

v0.5.30

Compare Source

Release Notes

Python

The managed PyPy distributions have been updated for PyPy v7.3.18, which includes:

  • PyPy3.10, which updates the standard library from Python 3.10.14 to 3.10.19
  • PyPy3.11, which adds beta support for Python 3.11.11

See the PyPy release for more details.

Enhancements
  • Add uv sync --dry-run (#​11299)
  • Ignore #egg fragment in HTML Simple API response (#​11340)
Configuration
  • Add NO_BINARY and NO_BINARY_PACKAGE environment variables (#​11399)
Performance
  • Avoid re-cloning name when populating ambiguous set (#​11401)
  • Optimize flattening in large workspaces (#​11313)
Bug fixes
  • Allow dynamic packages to be overloaded (#​11400)
  • Fix credential caching for index roots when URL ends in simple/ (#​11336)
  • Fix marker merging for requirements.txt for psycopg (#​11298)
  • Set 777 permissions on locked files (#​11328)
  • Support extras in @ requests for tools (#​11335)
  • Upgrade astral-tokio-tar to v0.5.1 (#​11359)
  • Avoid missing logging for no-op upgrade events (#​11301)
  • Use refined specifiers when logging narrowed Python range (#​11334)
  • Don't use popup-generating eprintln in trampoline warnings (#​11295)
  • Patch pkg-config files to be relocatable (#​11291)
  • Fix a case of duplicate torch packages when using conflicting extras (#​11323)
Documentation
  • Add docs for uv tool install --editable (#​11280)
  • Fix broken anchors in README and docs index (#​11338)

Install uv 0.5.30

Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.5.30/uv-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/uv/releases/download/0.5.30/uv-installer.ps1 | iex"

Download uv 0.5.30

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

v0.5.29

Compare Source

Release Notes

Enhancements
  • Add --bare option to uv init (#​11192)
  • Add support for respecting VIRTUAL_ENV in project commands via --active (#​11189)
  • Allow the project VIRTUAL_ENV warning to be silenced with --no-active (#​11251)
Python

The managed Python distributions have been updated, including:

  • CPython 3.12.9
  • CPython 3.13.2
  • pkg-config files are now relocatable

See the python-build-standalone release notes for more details.

Bug fixes
  • Always use base Python discovery logic for cached environments (#​11254)
  • Use a flock to avoid concurrent initialization of project environments (#​11259)
  • Fix handling of --all-groups and --no-default-groups flags (#​11224)
Documentation
  • Minor touchups to the Docker provenance docs (#​11252)
  • Move content from the mkdocs.public.yml into the template (#​11246)

Install uv 0.5.29

Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.5.29/uv-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/uv/releases/download/0.5.29/uv-installer.ps1 | iex"

Download uv 0.5.29

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
[uv-armv7-

@renovate renovate bot requested review from a team, paulomach, taurus-forever, shayancanonical, carlcsaposs-canonical and sinclert-canonical and removed request for a team February 7, 2025 02:58
@renovate renovate bot force-pushed the renovate/charmcraft.yaml-build-tools branch from 55ee9b8 to 878e471 Compare February 11, 2025 01:48
@renovate renovate bot changed the title Update dependency uv to v0.5.29 Update charmcraft.yaml build tools Feb 11, 2025
@renovate renovate bot force-pushed the renovate/charmcraft.yaml-build-tools branch from 878e471 to 0385cc6 Compare February 13, 2025 02:04
@renovate renovate bot added the not bug or enhancement PR is not 'bug' or 'enhancement'. For release notes label Feb 14, 2025
@renovate renovate bot force-pushed the renovate/charmcraft.yaml-build-tools branch 3 times, most recently from 8b4d903 to 35f0183 Compare February 20, 2025 02:11
@renovate renovate bot force-pushed the renovate/charmcraft.yaml-build-tools branch 2 times, most recently from 1e5e458 to 4aa8cd1 Compare February 25, 2025 01:35
@renovate renovate bot force-pushed the renovate/charmcraft.yaml-build-tools branch from 4aa8cd1 to ba6242c Compare March 4, 2025 02:12
@carlcsaposs-canonical carlcsaposs-canonical merged commit 7b1800b into main Mar 4, 2025
57 of 58 checks passed
@carlcsaposs-canonical carlcsaposs-canonical deleted the renovate/charmcraft.yaml-build-tools branch March 4, 2025 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Libraries: Out of sync not bug or enhancement PR is not 'bug' or 'enhancement'. For release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants