Use case
I'd like to distribute a package that isn't published to PyPI as a standalone binary with uvbox's built-in auto-update. The package source is a git repository.
Real-world example
I currently use pycrucible to build standalone executables for a microservice called croupier. The runner app declares the package as a git dependency:
[tool.uv.sources]
croupier = { git = "https://github.com/PaketMutfak/croupier" }
To achieve auto-updates, I use pycrucible's delete_after_run = true option as a workaround — it forces fresh dependency resolution on every run:
[tool.pycrucible.options]
delete_after_run = true # Forces latest dependencies each run
I'd love to migrate to uvbox for its built-in auto-update and cross-compilation support, but the lack of git URL support for self update is a blocker.
Current behavior
uvbox pypi only accepts PyPI package names
uvbox wheel packages local wheels but self update can't fetch new versions from a remote source
- There's no way to specify a git URL as the package source
Desired behavior
Support git URLs (e.g., git+https://github.com/org/repo) as a package source, so that:
- The initial install resolves from the git repository
<app> self update fetches the latest version from the same git repository
- The
auto-update = true version check works with git-hosted packages
Technical context
uv tool install already supports git URLs natively via the --from flag:
uv tool install --from git+https://github.com/org/repo app-name
This works with branches, tags, and commits:
uv tool install --from git+https://github.com/org/repo@main app-name
uv tool install --from git+https://github.com/org/repo@v1.0.0 app-name
So this feature request is essentially about exposing that existing uv capability through uvbox's configuration — for example, a new [package.source] field or a uvbox git subcommand:
[package]
name = "my-app"
source = "git+https://github.com/org/repo"
[package.version]
dynamic = "https://raw.githubusercontent.com/org/repo/main/VERSION"
auto-update = true
This would make uvbox viable for teams that distribute internal tools from private/public git repositories without needing to publish to PyPI.
Use case
I'd like to distribute a package that isn't published to PyPI as a standalone binary with uvbox's built-in auto-update. The package source is a git repository.
Real-world example
I currently use pycrucible to build standalone executables for a microservice called croupier. The runner app declares the package as a git dependency:
To achieve auto-updates, I use pycrucible's
delete_after_run = trueoption as a workaround — it forces fresh dependency resolution on every run:I'd love to migrate to uvbox for its built-in auto-update and cross-compilation support, but the lack of git URL support for
self updateis a blocker.Current behavior
uvbox pypionly accepts PyPI package namesuvbox wheelpackages local wheels butself updatecan't fetch new versions from a remote sourceDesired behavior
Support git URLs (e.g.,
git+https://github.com/org/repo) as a package source, so that:<app> self updatefetches the latest version from the same git repositoryauto-update = trueversion check works with git-hosted packagesTechnical context
uv tool installalready supports git URLs natively via the--fromflag:This works with branches, tags, and commits:
So this feature request is essentially about exposing that existing
uvcapability through uvbox's configuration — for example, a new[package.source]field or auvbox gitsubcommand:This would make uvbox viable for teams that distribute internal tools from private/public git repositories without needing to publish to PyPI.