← Back to issue list

feat: Add `UV_LINK_MODE=copy`

View original Github issue

Metadata

Project
craft-parts
Number
#1452
Type
pull request
State
open
Author
carlcsaposs-canonical
Labels
Created
Updated
Closed

Current evaluation

Adds UV_LINK_MODE=copy to avoid hardlinking warnings when cache dir is mounted from LXD host. Approved by 4 reviewers with recent activity; 1 unresolved review comment and some failing CI tests remain.

Suggested action: needs review

Reason: The PR has 4 approvals and recent activity (author rebased and addressed the changelog/docs request on 2026-02-18), but there is 1 unresolved review comment and several failing CI tests (test-common / Slow tests on ubuntu-22.04, noble/s390x, noble/ppc64el) that need to be addressed before merging.

Impact: 45 Quick Win: 38.25 Staleness: 25 Complexity: 15 Confidence: 80

Issue body

Companion to https://github.com/canonical/craft-providers/pull/900 When the cache dir is mounted from the LXD host, hardlinking from the global cache (uv's default behavior) is not possible e.g. ``` :: warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance. :: If the cache and target directories are on different filesystems, hardlinking may not be supported. :: If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning. ```

Evaluation history

Date Model Scores Action Summary
qwen3.6-35b-a3b-mtp-q6
Impact: 45
Quick Win: 38.25
Staleness: 25
Complexity: 15
Confidence: 80
needs review Adds UV_LINK_MODE=copy to avoid hardlinking warnings when cache dir is mounted from LXD host. Approved by 4 reviewers with recent activity; 1 unresolved review comment and some failing CI tests remain.
qwen/qwen3.8-27b
Impact: 35
Quick Win: 30.8
Staleness: 8
Complexity: 12
Confidence: 85
needs review Adds UV_LINK_MODE=copy to the uv plugin build environment to suppress uv's hardlink warning when the cache dir is mounted from the LXD host. Small +15/-0 change across 3 files; in changes_requested review, author just added changelog/docs and rebased.
qwen/qwen3.6-35b-a3b
Staleness: 65
Complexity: 10
Confidence: 90
needs review Sets UV_LINK_MODE=copy to resolve LXD cache hardlinking warnings. Currently in changes_requested state with seven unresolved review comments and passing CI, but inactive for nearly five months.
qwen3.6-35b-a3b-mtp-q6
Staleness: 55
Complexity: 15
Confidence: 70
needs review Adds UV_LINK_MODE=copy to suppress hardlink warnings when the cache directory is mounted from an LXD host. Author addressed feedback and rebased, but PR has been inactive for 135 days pending maintainer review.
qwen3.6-35b-a3b-mtp-q6
Staleness: 55
Complexity: 15
Confidence: 90
needs review Configures UV_LINK_MODE=copy to avoid hardlinking warnings when the cache directory is mounted from an LXD host. Changelog and docs were updated per review. The branch is rebased on main and awaiting merge.

Update history

Date Change
updated
updated

Related work

  • Related To: canonical/craft-providers#900 (confidence 95%)

    PR body explicitly states this is a companion to craft-providers#900, which likely introduced the LXD cache mount behavior requiring UV_LINK_MODE=copy.

Related issues

Issue Project State Summary Similarity
#1451 Add `UV_LINK_MODE=copy` craft-parts closed Added UV_LINK_MODE=copy to resolve LXD cache hardlinking warnings. Closed and abandoned by the author, superseded by PR #1452 to correct the title format for conventional commits.
83%