- Python 3.10 or newer (abi3 wheel target)
- Released wheel: only a pip-compatible environment
- From source: Rust (stable), maturin ≥ 1.4 (per
pyproject.tomlbuild backend)
When the package is published:
pip install oxyrouteOptional development and test dependencies (Granian, pytest, httpx, oxyjwt):
pip install "oxyroute[dev]"Use a virtual environment to avoid clashing with system Python (especially on PEP 668 / “externally managed” distros).
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -U pip maturin
maturin developmaturin develop compiles the Rust extension and installs the oxyroute package in editable form.
Alternatives:
pip install . # build + install
maturin build --release
pip install target/wheels/oxyroute-*.whlpatchelfwarning (Linux): Maturin may log that settingrpathfailed ifpatchelfis missing. For local development the extension often still loads; for minimal wheels, installpatchelforpip install patchelfas suggested in the Maturin message.- Import errors after editing Rust: Re-run
maturin develop(or your chosen build) sooxyroute._oxyroutematchessrc/. - Tests import the wrong package: Run pytest from a different directory than the repository root or install a wheel, so that
import oxyrouteresolves to the installed package (see development.md).