docs(readme): the package index is the range-pinning channel from 1.4.1
1.4.1 is published to the Forgejo package index (operator decision 2026-09-23), so README's install section stops promising the index as a future event. It now gives the index install line with a range, states which versions the index carries (1.1.0 and 1.4.1; 1.2.0-1.4.0 were never published there), and keeps the tag pin as the first option. Measured anonymously after the upload: the simple index lists 2 wheels, 1.1.0 and 1.4.1, and `pip install "llm-ingestion-guard>=1.4.1,<2"` from it resolves 1.4.1 in a clean venv.
This commit is contained in:
parent
57c91aeb11
commit
6702d7a569
1 changed files with 12 additions and 5 deletions
17
README.md
17
README.md
|
|
@ -61,6 +61,13 @@ Not on PyPI. The guard is distributed from its Forgejo origin — pin a release
|
||||||
pip install "llm-ingestion-guard @ git+https://git.fromaitochitta.com/open/llm-ingestion-pipeline-security.git@v1.4.1"
|
pip install "llm-ingestion-guard @ git+https://git.fromaitochitta.com/open/llm-ingestion-pipeline-security.git@v1.4.1"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or take a version range from the Forgejo package index, which carries `1.4.1`
|
||||||
|
(and `1.1.0`; `1.2.0`–`1.4.0` were never published there):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install --index-url https://git.fromaitochitta.com/api/packages/open/pypi/simple/ "llm-ingestion-guard>=1.4.1,<2"
|
||||||
|
```
|
||||||
|
|
||||||
The `open/` mirror is anonymously readable, so CI needs no deploy key, token, or
|
The `open/` mirror is anonymously readable, so CI needs no deploy key, token, or
|
||||||
other credential. The core is stdlib-only with zero dependencies, so nothing else
|
other credential. The core is stdlib-only with zero dependencies, so nothing else
|
||||||
resolves. Optional ML/judge detectors live behind extras (`[ml]`, `[judge]`) and
|
resolves. Optional ML/judge detectors live behind extras (`[ml]`, `[judge]`) and
|
||||||
|
|
@ -80,11 +87,11 @@ pip install -e ".[dev]" && pytest # the whole suite
|
||||||
Two consequences worth knowing before you depend on this:
|
Two consequences worth knowing before you depend on this:
|
||||||
|
|
||||||
- A git URL is a PEP 508 *direct reference*: it pins one exact tag, not a range
|
- A git URL is a PEP 508 *direct reference*: it pins one exact tag, not a range
|
||||||
like `>=1.0,<2.0`. Real range pinning — and therefore automatic pickup of patch
|
like `>=1.0,<2.0`. Range pinning — and therefore automatic pickup of patch
|
||||||
releases — arrives with a Forgejo PyPI registry, which becomes the durable
|
releases — comes from the Forgejo package index above, the durable channel
|
||||||
channel at the first patch release or the second downstream consumer, whichever
|
from `1.4.1` (the first `1.x` patch release) on. The distribution name
|
||||||
comes first. The distribution name (`llm-ingestion-guard`) and the version
|
(`llm-ingestion-guard`) and the version scheme are the same on both channels,
|
||||||
scheme are unchanged by that move, so pins written today keep their meaning.
|
so a tag pin written earlier keeps its meaning.
|
||||||
- **Vendoring the source into a consumer is not supported.** It severs the patch
|
- **Vendoring the source into a consumer is not supported.** It severs the patch
|
||||||
channel that a shared security dependency exists to provide: a copied guard
|
channel that a shared security dependency exists to provide: a copied guard
|
||||||
keeps running the vulnerabilities the original has already fixed.
|
keeps running the vulnerabilities the original has already fixed.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue