Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

uv lock(): support non-quiet output from the .run target

Abierto Apto para principiantes
#4,164 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
78/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
python
Área
build-system

Línea de trabajo

Comienza en @rules_python//python/uv:lock.bzl e inspecciona cómo la macro lock() construye el comando uv del destino .run. Añade el comportamiento quiet opcional descrito en el issue, conservando el valor predeterminado existente, y verifica que quiet = False permita la salida normal mientras que el valor predeterminado siga pasando --no-progress y --quiet.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Problem

The lock() macro in @rules_python//python/uv:lock.bzl generates a .run target whose shell script hardcodes --no-progress --quiet when invoked via bazel run:

exec '.../uv' 'lock' '--no-python-downloads' '--no-cache' '--project' '.' '--python' '...' '--no-progress' '--quiet' "$@"

This means all uv output is suppressed. Passing --verbose does not work — uv rejects --quiet and --verbose together with an error:

error: the argument '--quiet...' cannot be used with '--verbose...'

Use case

We call bazel run //:uv_lock.run -- --check from a just recipe to verify that uv.lock is consistent with pyproject.toml (a developer workflow check, not a CI test). With --quiet hardcoded, there is no feedback on success and no details on failure about what changed. We want uv's normal output (e.g. "Resolved 562 packages in 5.75s" on success, or the list of changed packages on failure).

Proposed solution

Add an optional quiet attribute to the lock() macro (defaulting to True to preserve existing behavior) that controls whether --quiet and --no-progress are passed to the .run script:

lock(
    name = "uv_lock",
    srcs = ["pyproject.toml", "uv.lock"],
    out = "uv.lock",
    quiet = False,  # show uv output when running bazel run //:uv_lock.run
)

Workaround

We currently work around this by adding a custom Starlark rule (uv_lock_check_run) that inherits the same runfiles as .run but finds the uv binary at runtime and calls it directly without --quiet. This wrapper exists solely because the attribute is not exposed.

Lenguaje dominante
Starlark
Estrellas
688
Forks
723
Merge medio
1 d 15 h
PR fusionados (30 d)
40

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de bazel-contrib/rules_python

Todos los issues de bazel-contrib/rules_python

Issues similares

Más issues de Build System

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.