Support executable wrappers in `uv_toolchain`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- python
- Ambito
- build-system, tooling
Direzione di ricerca
The issue points to uv_toolchain.bzl and lock.bzl. Start by reading those files to understand how the uv executable is currently handled. Look for the uv_toolchain rule definition and the lock rule's action generation. The goal is to modify the toolchain to accept wrappers with multiple outputs and ensure runfiles are preserved. Check how the downloaded uv binary is exposed and how runfiles are collected in Bazel actions. A test involving a wrapper script with credentials would verify the changes.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
🚀 feature request
Relevant Rules
uv_toolchain and lock.
Description
I want to use a custom uv wrapper with the lock rule. In my case, the wrapper would obtain credentials and set index authentication variables before calling the pinned uv binary.
There are a couple of issues right now. First, uv_toolchain rejects executable targets with multiple output files. Second, lock forwards the executable without preserving its runfiles, which limits wrappers that depend on runtime files or symlinks.
Describe the solution you'd like
Allow uv_toolchain to accept executable wrappers with multiple output files. Preserve their runfiles, including ordinary symlinks and root symlinks, in both lock build actions and .run targets.
Export the downloaded uv binary with public visibility so wrappers can declare it as a runtime dependency.
I'll open a PR for this in a bit.
Describe alternatives you've considered
Patching rules_python.
- Lingua principale
- Starlark
- Stelle
- 690
- Fork
- 722
- Merge medio
- 1g 55m
- PR unite (30g)
- 38
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di bazel-contrib/rules_python
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
bazel-contrib/rules_python#4179 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
bazel-contrib/rules_python#4164 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
bazel-contrib/rules_python#3821 ·
-
Release 2.4.0 Apertatype: release
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
bazel-contrib/rules_python#4175 · 3 commenti ·
-
Release 2.3.4 Apertatype: release
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
bazel-contrib/rules_python#4173 · 2 commenti ·
Tutte le issue di bazel-contrib/rules_python
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
CS0162 "Unreachable code detected" warning from a MSBuildTemp .tmp file in every game project Apertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
-
area:engineering priority:p2 type:bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
jejjohnson/pyrox#234 ·
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
ros2/ros2_tracing#266 · 1 commento ·