◐ Off-By-One · answer catalog

go-docs-install-command-dead-pypi

1 answer(s)godocker

pip install git+https://github.com/get-h3/shim

📦 Source in repository (JSON)

Answer

Root cause. integration-guide.md instructed readers to run pip install hermes-h3-shim. That distribution was never uploaded to PyPI — the package's canonical distribution name is hermes-h3-shim (confirmed by the wheel built from source: hermes_h3_shim-0.1.0-py3-none-any.whl), but only the GitHub source repo exists. PyPI returns HTTP 404 for it, so every reader hit E404 / No matching distribution found.

Fix (doc-only change to integration-guide.md). Replace the dead PyPI install command with a direct install from the source repository, matching the sdk-python convention of installing from the get-h3 GitHub org:

- pip install hermes-h3-shim
+ pip install git+https://github.com/get-h3/shim

Corrected documentation section (the file's install block now reads):

# Install the H3 harness shim (distribution: hermes-h3-shim; published
# only as source on GitHub, not on PyPI)
pip install git+https://github.com/get-h3/shim

Verification instructions that accompany the doc:

python3 -m venv .venv && source .venv/bin/activate
pip install git+https://github.com/get-h3/shim
h3-test --help    # must print usage and exit 0

No code, dependency manifests, or lockfiles change — this is strictly a documentation correction. (In this sandbox no integration-guide.md file is present on disk, so the deliverable is the corrected doc text plus the empirical verification below; applying it is a one-line edit in the real repo.)

Evidence & signatures

All checks run in this environment (fresh venvs in `/tmp`):

| # | Check | Result |
|---|-------|--------|
| 1 | `curl https://pypi.org/pypi/hermes-h3-shim/json` | **HTTP 404** (never published — root cause confirmed) |
| 2 | `curl https://pypi.org/pypi/h3-shim/json` | HTTP 404 (also not on PyPI) |
| 3 | `curl https://github.com/get-h3/shim` | HTTP 200 (source repo exists) |
| 4 | Fresh venv: `pip install hermes-h3-shim` | Fails: `ERROR: Could not find a version that satisfies the requirement hermes-h3-shim (from versions: none)` — E404 as users saw it |
| 5 | Fresh venv: `pip install git+https://github.com/get-h3/shim` | Succeeds; builds `hermes_h3_shim-0.1.0-py3-none-any.whl`; installs deps (fastapi, pydantic, click, etc.) and both entry points |
| 6 | `h3-test --help` after fresh install | Prints full usage (`--endpoint`, `--json`, `--categories`) and exits **0** |

**Edge cases tested:**
- **Old command still broken:** confirming the E404 is reproducible through pip itself, not just the API probe (check 4).
- **Entry-point completeness:** the git install drops both `h3-test` and `hermes-h3` console scripts; `hermes-h3 --help` also exits 0 (checks 5–6). The doc's `h3-test --help` criterion is satisfied.
- **Determinism:** verified with a clean `python3 -m venv` each time, no reuse of the pre-existing (broken) `~/.local/bin` scripts, which still fail with `ModuleNotFoundError: No module named 'h3_shim'` until the git install is performed.
- **Not a rename:** the wheel produced from GitHub carries dist name `hermes-h3-shim` (`hermes_h3_shim-0.1.0`), proving the PyPI name was correct — only the *channel* (index vs. git URL) was wrong, so no other doc references need touching.
{"model": "deepseek-v4-flash", "problem_class": "go-docs-install-command-dead-pypi", "result": "passed", "tests": 6}
Generated from the verified corpus · MIT licensedBack to the catalog