Skip to content

Commit c0226d5

Browse files
Merge branch 'main' into codex/explain-dependency-bootstrapping-failures-offline
2 parents 5bb40ed + c50f7ab commit c0226d5

File tree

1 file changed

+21
-21
lines changed

1 file changed

+21
-21
lines changed

README.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -103,33 +103,33 @@ python -m pytest -q
103103

104104
## 🌐 Offline installation
105105

106-
The project now ships a tiny PEP 517 backend implemented in
107-
`kll_sketch._build_backend`. Because the backend only uses the Python standard
108-
library there are **no build-time dependencies** to stage.
106+
The source distribution relies on `setuptools` and `wheel` as build-backend
107+
dependencies. When you install in an isolated or air-gapped environment you
108+
must provide those wheels yourself; otherwise the build frontend cannot
109+
bootstrap the backend.
109110

110-
* Install a released wheel: `python -m pip install --no-index kll-sketch-*.whl`
111-
* Install from a source checkout: `python -m pip install --no-index .`
111+
1. On a machine with internet access, download the wheels you need:
112112

113-
Both commands work in air-gapped environments. The CI workflow exercises the
114-
second command on every commit to guarantee we do not regress offline support.
113+
```bash
114+
python -m pip download --only-binary=:all: --dest ./wheelhouse \
115+
setuptools>=68 wheel
116+
python -m pip download --only-binary=:all: --dest ./wheelhouse \
117+
kll-sketch
118+
```
115119

116-
See [docs/production-readiness.md](docs/production-readiness.md) for the
117-
validated platform matrix and operational guarantees.
120+
2. Transfer the `wheelhouse/` directory to the offline environment.
118121

119-
## 🖥️ Supported environments
122+
3. Install using only the local wheels:
120123

121-
| OS | Python |
122-
| ------- | ------ |
123-
| Linux | 3.9 – 3.12 |
124-
| macOS | 3.9 – 3.12 |
125-
| Windows | 3.9 – 3.12 |
124+
```bash
125+
python -m pip install --no-index --find-links ./wheelhouse \
126+
setuptools wheel kll-sketch
127+
```
126128

127-
---
128-
129-
## 📦 Release & validation
130-
131-
* [Production readiness status](docs/production-readiness.md)
132-
* [Signed release checklist](docs/release-checklist.md)
129+
If you build from a git checkout instead of a released wheel, vendor the
130+
backend wheels somewhere under version control (for example
131+
`tools/vendor/`) and point `PIP_FIND_LINKS` or your installer’s equivalent at
132+
that directory before running `pip install .`.
133133

134134
---
135135

0 commit comments

Comments
 (0)