deps: resolve lilith packages from Forgejo PyPI registry
Replaces local-path sources with explicit Forgejo index so uv sync works on any host with credentials to http://forge.nasty.sh/api/packages/lilith/pypi/. Published all 5 transitive lilith packages as a prerequisite: - lilith-pipeline-framework 1.0.0 - lilith-service-fastapi-bootstrap 4.2.0 - lilith-queue-cli 0.1.3 - lilith-service-addresses 1.1.2 - lilith-model-boss 4.0.0 Credentials required at install time: UV_INDEX_FORGEJO_USERNAME and UV_INDEX_FORGEJO_PASSWORD env vars (or equivalent uv.toml / .netrc entry). The public pypi.black.local redirect only proxies pypi.org, not Forgejo, so the explicit index config in this file is load-bearing. Verified: rm -rf .venv && uv sync --extra dev produces a working install with the new rebase-recovery code importing cleanly. commits.service restarted successfully on the fresh venv.
This commit is contained in:
parent
a5729ff2b4
commit
f503fcd8b0
2 changed files with 40 additions and 84 deletions
|
|
@ -47,12 +47,19 @@ packages = ["src/auto_commit_service"]
|
|||
asyncio_mode = "auto"
|
||||
testpaths = ["tests"]
|
||||
|
||||
# Resolve workspace Python packages from local source checkouts. This makes
|
||||
# `uv sync` work without needing the packages on a PyPI registry — each
|
||||
# referenced path points at the in-repo source of the library.
|
||||
# Lilith packages are hosted on the Forgejo PyPI registry (http://forge.nasty.sh).
|
||||
# Requires credentials — set UV_INDEX_FORGEJO_USERNAME / UV_INDEX_FORGEJO_PASSWORD
|
||||
# in the shell (or uv.toml / ~/.netrc). Public deps fall through to PyPI.
|
||||
# For local dev against uncommitted package changes, add a [tool.uv.sources]
|
||||
# block here with { path = "...", editable = true } entries.
|
||||
[[tool.uv.index]]
|
||||
name = "forgejo"
|
||||
url = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/"
|
||||
explicit = true
|
||||
|
||||
[tool.uv.sources]
|
||||
lilith-pipeline-framework = { path = "../../../@packages/@py/pipeline-framework", editable = true }
|
||||
lilith-service-fastapi-bootstrap = { path = "../../../@packages/@py/service-fastapi-bootstrap", editable = true }
|
||||
lilith-model-boss = { path = "../../@model-boss/packages/core-py", editable = true }
|
||||
lilith-queue-cli = { path = "../../../@packages/@py/queue", editable = true }
|
||||
lilith-service-addresses = { path = "../../../@packages/@py/service-addresses", editable = true }
|
||||
lilith-pipeline-framework = { index = "forgejo" }
|
||||
lilith-service-fastapi-bootstrap = { index = "forgejo" }
|
||||
lilith-model-boss = { index = "forgejo" }
|
||||
lilith-queue-cli = { index = "forgejo" }
|
||||
lilith-service-addresses = { index = "forgejo" }
|
||||
|
|
|
|||
101
uv.lock
generated
101
uv.lock
generated
|
|
@ -84,11 +84,11 @@ tray = [
|
|||
requires-dist = [
|
||||
{ name = "aiosqlite", specifier = ">=0.19.0" },
|
||||
{ name = "httpx", specifier = ">=0.27.0" },
|
||||
{ name = "lilith-model-boss", editable = "../../@model-boss/packages/core-py" },
|
||||
{ name = "lilith-pipeline-framework", editable = "../../../@packages/@py/pipeline-framework" },
|
||||
{ name = "lilith-queue-cli", editable = "../../../@packages/@py/queue" },
|
||||
{ name = "lilith-service-addresses", editable = "../../../@packages/@py/service-addresses" },
|
||||
{ name = "lilith-service-fastapi-bootstrap", editable = "../../../@packages/@py/service-fastapi-bootstrap" },
|
||||
{ name = "lilith-model-boss", specifier = ">=4.0.0", index = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" },
|
||||
{ name = "lilith-pipeline-framework", specifier = ">=1.0.0", index = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" },
|
||||
{ name = "lilith-queue-cli", specifier = ">=0.1.0", index = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" },
|
||||
{ name = "lilith-service-addresses", specifier = ">=1.0.0", index = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" },
|
||||
{ name = "lilith-service-fastapi-bootstrap", specifier = ">=4.0.0", index = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" },
|
||||
{ name = "pydantic", specifier = ">=2.0" },
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=8.0" },
|
||||
{ name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.23" },
|
||||
|
|
@ -597,7 +597,7 @@ wheels = [
|
|||
[[package]]
|
||||
name = "lilith-model-boss"
|
||||
version = "4.0.0"
|
||||
source = { editable = "../../@model-boss/packages/core-py" }
|
||||
source = { registry = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" }
|
||||
dependencies = [
|
||||
{ name = "click" },
|
||||
{ name = "httpx" },
|
||||
|
|
@ -609,48 +609,27 @@ dependencies = [
|
|||
{ name = "redis" },
|
||||
{ name = "rich" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "click", specifier = ">=8.0.0" },
|
||||
{ name = "httpx", specifier = ">=0.27.0" },
|
||||
{ name = "lilith-queue-cli", specifier = ">=0.1.0" },
|
||||
{ name = "lilith-service-addresses", specifier = ">=1.0.0" },
|
||||
{ name = "psutil", specifier = ">=5.9.0" },
|
||||
{ name = "pydantic", specifier = ">=2.0.0" },
|
||||
{ name = "pydantic-settings", specifier = ">=2.0.0" },
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=8.0.0" },
|
||||
{ name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.23.0" },
|
||||
{ name = "pytest-cov", marker = "extra == 'dev'", specifier = ">=4.1.0" },
|
||||
{ name = "redis", specifier = ">=5.0.0" },
|
||||
{ name = "rich", specifier = ">=13.0.0" },
|
||||
{ name = "ruff", marker = "extra == 'dev'", specifier = ">=0.1.0" },
|
||||
sdist = { url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-model-boss/4.0.0/lilith_model_boss-4.0.0.tar.gz", hash = "sha256:352a6fd0b523a5c06f16deb2fa75a4601965abf0040ca117261d6b70891c3279" }
|
||||
wheels = [
|
||||
{ url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-model-boss/4.0.0/lilith_model_boss-4.0.0-py3-none-any.whl", hash = "sha256:f18c9093d16267929cfebf20d126a2300a17fadc45db2683703278b6d2efb693" },
|
||||
]
|
||||
provides-extras = ["dev"]
|
||||
|
||||
[[package]]
|
||||
name = "lilith-pipeline-framework"
|
||||
version = "1.0.0"
|
||||
source = { editable = "../../../@packages/@py/pipeline-framework" }
|
||||
source = { registry = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" }
|
||||
dependencies = [
|
||||
{ name = "pydantic" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "lilith-pipeline-framework", extras = ["redis"], marker = "extra == 'all'" },
|
||||
{ name = "mypy", marker = "extra == 'dev'", specifier = ">=1.0" },
|
||||
{ name = "pydantic", specifier = ">=2.0.0" },
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=7.0" },
|
||||
{ name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.21" },
|
||||
{ name = "redis", marker = "extra == 'redis'", specifier = ">=5.0.0" },
|
||||
sdist = { url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-pipeline-framework/1.0.0/lilith_pipeline_framework-1.0.0.tar.gz", hash = "sha256:25c28551e2335eafa75a392e11643daaa94070a4c6bca59aaedfc9c5eb5b10db" }
|
||||
wheels = [
|
||||
{ url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-pipeline-framework/1.0.0/lilith_pipeline_framework-1.0.0-py3-none-any.whl", hash = "sha256:d695b35aa48ec49bcad7e8db1acd42a83ec195ea4b0d70a18849d10e516e1b8d" },
|
||||
]
|
||||
provides-extras = ["redis", "all", "dev"]
|
||||
|
||||
[[package]]
|
||||
name = "lilith-queue-cli"
|
||||
version = "0.1.3"
|
||||
source = { editable = "../../../@packages/@py/queue" }
|
||||
source = { registry = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" }
|
||||
dependencies = [
|
||||
{ name = "build" },
|
||||
{ name = "bullmq" },
|
||||
|
|
@ -660,67 +639,37 @@ dependencies = [
|
|||
{ name = "rich" },
|
||||
{ name = "twine" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "build", specifier = ">=1.0.0" },
|
||||
{ name = "bullmq", specifier = ">=2.19.0" },
|
||||
{ name = "click", specifier = ">=8.0.0" },
|
||||
{ name = "redis", specifier = ">=5.0.0" },
|
||||
{ name = "requests", specifier = ">=2.31.0" },
|
||||
{ name = "rich", specifier = ">=13.0.0" },
|
||||
{ name = "twine", specifier = ">=5.0.0" },
|
||||
sdist = { url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-queue-cli/0.1.3/lilith_queue_cli-0.1.3.tar.gz", hash = "sha256:0be3926a6b0d5d41970cadfabeb2dff10127b4c3e1c8f61a0ee1fdcec3b31dd9" }
|
||||
wheels = [
|
||||
{ url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-queue-cli/0.1.3/lilith_queue_cli-0.1.3-py3-none-any.whl", hash = "sha256:361b655d225994faff10f3528d3a1394a1713ae0eee72f6e00fd65de53ca3a86" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lilith-service-addresses"
|
||||
version = "1.1.2"
|
||||
source = { editable = "../../../@packages/@py/service-addresses" }
|
||||
source = { registry = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" }
|
||||
dependencies = [
|
||||
{ name = "pydantic" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "lilith-service-addresses", extras = ["yaml"], marker = "extra == 'all'" },
|
||||
{ name = "mypy", marker = "extra == 'dev'", specifier = ">=1.0" },
|
||||
{ name = "pydantic", specifier = ">=2.10.0" },
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=8.0" },
|
||||
{ name = "pytest-cov", marker = "extra == 'dev'", specifier = ">=4.0" },
|
||||
{ name = "pyyaml", marker = "extra == 'yaml'", specifier = ">=6.0" },
|
||||
{ name = "ruff", marker = "extra == 'dev'", specifier = ">=0.1.0" },
|
||||
sdist = { url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-service-addresses/1.1.2/lilith_service_addresses-1.1.2.tar.gz", hash = "sha256:7a24e120d80118ed41336f1ec318b0efcc93f7cfc3f759460b063939c46a5915" }
|
||||
wheels = [
|
||||
{ url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-service-addresses/1.1.2/lilith_service_addresses-1.1.2-py3-none-any.whl", hash = "sha256:57911232969420da3a9e585bd43c2ffeeaa77b92e13bb153267c6e7cc7459989" },
|
||||
]
|
||||
provides-extras = ["yaml", "all", "dev"]
|
||||
|
||||
[[package]]
|
||||
name = "lilith-service-fastapi-bootstrap"
|
||||
version = "4.2.0"
|
||||
source = { editable = "../../../@packages/@py/service-fastapi-bootstrap" }
|
||||
source = { registry = "http://forge.nasty.sh/api/packages/lilith/pypi/simple/" }
|
||||
dependencies = [
|
||||
{ name = "fastapi" },
|
||||
{ name = "pydantic" },
|
||||
{ name = "pydantic-settings" },
|
||||
{ name = "uvicorn", extra = ["standard"] },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "asyncpg", marker = "extra == 'database'", specifier = ">=0.29.0" },
|
||||
{ name = "fastapi", specifier = ">=0.115.0" },
|
||||
{ name = "httpx", marker = "extra == 'dev'", specifier = ">=0.25.0" },
|
||||
{ name = "lilith-model-boss", marker = "extra == 'ml'", specifier = ">=4.0.0" },
|
||||
{ name = "lilith-model-boss-loaders", marker = "extra == 'ml'", specifier = ">=1.0.0" },
|
||||
{ name = "lilith-service-addresses", marker = "extra == 'service-addresses'", specifier = ">=1.0.0" },
|
||||
{ name = "lilith-service-fastapi-bootstrap", extras = ["redis", "database", "ml", "service-addresses"], marker = "extra == 'all'" },
|
||||
{ name = "pydantic", specifier = ">=2.10.0" },
|
||||
{ name = "pydantic-settings", specifier = ">=2.6.0" },
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=7.0" },
|
||||
{ name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.21" },
|
||||
{ name = "redis", marker = "extra == 'redis'", specifier = ">=5.0.0" },
|
||||
{ name = "sqlalchemy", marker = "extra == 'database'", specifier = ">=2.0.0" },
|
||||
{ name = "uvicorn", extras = ["standard"], specifier = ">=0.32.0" },
|
||||
sdist = { url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-service-fastapi-bootstrap/4.2.0/lilith_service_fastapi_bootstrap-4.2.0.tar.gz", hash = "sha256:5e081eba46d1ddfcf146a7a55bd070d1463546b9b302aed3258213ca34e1683f" }
|
||||
wheels = [
|
||||
{ url = "http://forge.black.local/api/packages/lilith/pypi/files/lilith-service-fastapi-bootstrap/4.2.0/lilith_service_fastapi_bootstrap-4.2.0-py3-none-any.whl", hash = "sha256:b85af98847dde5f87e8f22b4861a68cfb667de60310c28b64b64d83594e2cb15" },
|
||||
]
|
||||
provides-extras = ["redis", "database", "ml", "service-addresses", "all", "dev"]
|
||||
|
||||
[[package]]
|
||||
name = "markdown-it-py"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue