Provide centrally pinned Python CLI tools through uv without requiring a container or Bazel
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Bereich
- build-system, developer-experience, tooling
Rechercherichtung
Start by locating the shared tool catalog and tracing how the existing container and Bazel delivery paths consume it. Then assess how a Python package invoked through uv could use those same definitions while preserving the single version authority; done means the uv path works for a pinned DevContainer release and the existing delivery paths remain intact.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Use case
As a repository maintainer, I want local development and CI to use the same centrally maintained tool versions without requiring developers or lightweight CI jobs to run a DevContainer or install Bazel. For example, our shared PR workflow runs pre-commit through uvx pre-commit, while developers use the version installed in the DevContainer. This recently meant that CI used pre-commit 4.7.0 while local checks used 4.5.1, allowing an incompatible hook configuration to pass locally and fail in CI.
I want to select one DevContainer release and run its pre-commit version through uv. I should not have to copy individual tool pins into every consuming repository or maintain another requirements file independently of the existing tool catalog.
Proposed solution
Provide a Python package in this repository that can be run through uvx from a pinned Git release, without requiring publication to PyPI. The package should expose a runner for the Python CLI tools defined in the shared catalog, resolve the selected tool to its centrally pinned package version and entrypoint, and execute it in an isolated uv-managed environment. Consumers supply the DevContainer release reference, tool name, and arguments; uv handles installation and caching. A compatible uv installation is a prerequisite and is not bootstrapped or version-pinned by this runner.
The DevContainer repository must remain the central version authority for all three delivery paths: container, uv, and Bazel. Package the existing catalog with the runner and have every delivery path consume the same tool definitions. Do not introduce separately maintained tool versions in Python package metadata, generated consumer wrappers, or downstream repositories. Existing container and Bazel delivery should continue alongside the new uv path. This initial scope covers Python CLI tools such as pre-commit; it does not require uv delivery for every native tool in the catalog.
- Vorherrschende Sprache
- Shell
- Sterne
- 5
- Forks
- 10
- Ø Merge
- 23 Std. 5 Min.
- Gemergte PRs (30 T.)
- 29
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Kein Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus eclipse-score/devcontainer
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
eclipse-score/devcontainer#213 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 30/100
eclipse-score/devcontainer#190 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug: github releases without devcontainer releasesEvtl. vergeben @vibhoraggarwal hat das vor 39 Tagen übernommen. Offenbug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
eclipse-score/devcontainer#162 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Versioning messOffen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
eclipse-score/devcontainer#155 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 52/100
eclipse-score/devcontainer#115 · 6 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in eclipse-score/devcontainer
Ähnliche Issues
-
status: ready
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
melodic-software/claude-code-plugins#15008 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 60/100
-
low-priority
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
nxtg-ai/forge-orchestrator#105 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug CLI
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
openai/codex#60494 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag