Run Released Package
Use this flow when you want to execute the most recent published build of mercury instead of the checked-out source tree.
This is a different workflow from local development with uv run mercury or pip install -e ..
Local source installs are intended to work without private index configuration. Private index setup is only for consuming CI-built release artifacts.
Why Index Configuration Matters
There is already a public PyPI package named mercury. This project must resolve the private Forgejo package first or you risk dependency confusion and the wrong executable.
Preferred Fish Workflow
If your shell has the devpi helper function installed, enable the private indexes:
devpi onThat sets:
UV_INDEXto the Forgejo Packages simple indexUV_DEFAULT_INDEXto the devpi pull-through cachePIP_INDEX_URLfor legacy pip compatibility
It also clears UV_INDEX_URL so the modern uv configuration wins cleanly.
Equivalent Manual Configuration
export UV_INDEX="forgejo=https://forge.eblu.me/api/packages/eblume/pypi/simple/"
export UV_DEFAULT_INDEX="https://pypi.ops.eblu.me/root/pypi/+simple/"UV_INDEX is checked first. UV_DEFAULT_INDEX is the fallback.
Run the Latest Release
uvx mercury --version
uvx mercury < input.jsonYou can also install it into an environment:
uv pip install mercuryTurn the Private Indexes Back Off
devpi offThat removes the custom uv and pip index variables and returns the shell to public-index defaults.
Related
- develop-locally — use the checked-out source tree instead of a published release
- build-release-pipeline — how releases are published
- python-package-contract — what the package currently exposes