Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

Valhalla Python bindings

| [pyvalhalla version] | [pyvalhalla-weekly version] |

This folder contains the Python bindings to Valhalla routing engine.

[!NOTE] pyvalhalla(-weekly) packages are currently only published for:

  • linux-x86_x64
  • win-amd64
  • macos-arm64

On top of the (very) high-level Python bindings, we package some data-building Valhalla executables to ease the process of graph creation or run Valhalla as a service, see below.

Installation

We distribute all currently maintained CPython versions as binary wheels for Win64, MacOS (arm64) and Linux (x86_64) distributions with glibc>=2.28. We do not offer a source distribution on PyPI.

pip install pyvalhalla to install the most recent Valhalla release.
pip install pyvalhalla-weekly to install the weekly published Valhalla master commit.

Usage

Bindings

Find a more extended notebook in ./examples, e.g. how to use the actor.

Before using the Python bindings you need to have access to a routable Valhalla graph. Either install Valhalla from source and built the graph from OSM compatible data or use our Valhalla docker image for a painless experience, e.g. this will build the routing graph for Andorra in ./custom_files:

docker run --rm --name valhalla -p 8002:8002 -v $PWD/custom_files:/custom_files -e tile_urls=https://download.geofabrik.de/europe/andorra-latest.osm.pbf ghcr.io/valhalla/valhalla-scripted:latest

Once you have created a graph locally, you can use it like this:

from valhalla import Actor, get_config, get_help

# generate configuration
config = get_config(tile_extract='./custom_files/valhalla_tiles.tar', verbose=True)

# print the help for specific config items (has the same structure as the output of get_config()
print(get_help()["service_limits"]["auto"]["max_distance"])

# instantiate Actor to load graph and call actions
actor = Actor(config)
route = actor.route({"locations": [...]})

Valhalla executables (linux-x86_x64 only)

To access the C++ (native) executables, there are 2 options:

  • (recommended) execute the module, e.g. python -m valhalla valhalla_build_tiles -h
  • execute the Python wrapper scripts directly, e.g. valhalla_build_tiles -h

[!NOTE] For the latter option to work, the Python environment's bin/ folder has to be in the $PATH. Inside virtual environments, that's always the case.

Executing the scripts directly might also not work properly if there's a system-wide Valhalla installation, unless the Python environment's bin/ folder has higher priority than system folders in $PATH. The module execution uses an explicit Python executable which should be preferred.

There are also some additional commands we added:

  • --help: print the help for python -m valhalla explicitly
  • --quiet: redirect stdout of the C++ executables to /dev/null; can be added once anywhere in the command, will not be forwarded to a C++ executable
  • print_bin_path: simply prints the absolute path to the package-internal bin/ directory where the C++ executables are; useful if the executables should be accessed directly in some script

To find out which Valhalla executables are currently included, run python -m valhalla --help. We limit the number of executables to control the wheel size. However, we're open to include any other executable if there's a good reason.

Building from source

Linux

To package arch-dependent Linux bindings we use a manylinux fork, where we install all dependencies into the manylinux_2_28 image, based on AlmaLinux 8. This is necessary to have a broad glibc compatibility with many semi-recent Linux distros.

Either pull the manylinux image, or build it locally for testing:

docker pull ghcr.io/valhalla/manylinux:2_28_valhalla_python

# or pull the image from ghcr.io
git clone https://github.com/valhalla/manylinux
cd manylinux
POLICY=manylinux_2_28 PLATFORM=x86_64 COMMIT_SHA=$(git rev-parse --verify HEAD) BUILDX_BUILDER=builder-docker-container ./build.sh
docker tag quay.io/pypa/manylinux_2_28_x86_64:$(git rev-parse --verify HEAD) ghcr.io/valhalla/manylinux:2_28_valhalla_python

Once built, start a container to actually build Valhalla using AlmaLinux 8:

cd valhalla
docker run -dt -v $PWD:/valhalla-py --name valhalla-py --workdir /valhalla-py ghcr.io/valhalla/manylinux:2_28_valhalla_python
docker exec -t valhalla-py /valhalla-py/src/bindings/python/scripts/build_manylinux.sh build_manylinux 3.13

This will also build & install libvalhalla before building the bindings. At this point there should be a wheelhouse folder with the fixed python wheel, ready to be installed or distributed to arbitrary python 3.12 installations.

cibuildwheel

On our CI, this orchestrates the packaging of all pyvalhalla wheels for every supported, minor Python version and every platform. It can also be run locally (obviously only being able to build wheels for your platform), e.g.

python -m pip install cibuildwheel
cibuildwheel --print-build-identifiers
cibuildwheel --only cp313-manylinux_x86_64

# for windows you'll have to set an env var to the vcpkg win root
VCPKG_ARCH_ROOT="build/vcpkg_installed/custom-x64-windows" cibuildwheel --only cp313-manylinux_x86_64

On Linux, this might download the manylinux docker image. In the end, you'll find the wheel in ./wheelhouse.

Testing (linux-x86_x64 only)

We have a small test script which makes sure that all the executables are working properly. If run locally for some reason, install a pyvalhalla wheel first. We run this in CI in a fresh Docker container with no dependencies installed, mostly to verify dynamic linking of the vendored dependencies.

Metadata

Release files for pyvalhalla-weekly 3.5.1.post1.dev179

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for pyvalhalla-weekly 3.5.1.post1.dev179
File
pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64 Details
pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-macosx_14_0_arm64.whl CPython 3.9 CPython 3.9 macOS 14.0+ ARM64 Details

Total release size: 917.4 MB

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-win_amd64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-win_amd64.whl
Size 27.4 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
656de8b5665b6cc154284afe4aef410c03fbffcd6baddc42a413b4fbf1daec2d
BLAKE2b-256 checksum
How to use checksums
fe459e8d3edf84b22f629ad25a9f0e28b1b1fb63021bcd38c041c6ec9f9a5bff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-manylinux_2_28_x86_64.whl
Size 85.5 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
12be3872bb6244e404dff2628f4e01a37eb16c92f491ac8832b7c84b199b8f17
BLAKE2b-256 checksum
How to use checksums
0d9284f97a650ba0e6102f3cd8aef1488f3faf97b9037ed259f29934ae77b1fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-macosx_14_0_arm64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp313-cp313-macosx_14_0_arm64.whl
Size 70.6 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
47396e59ca43c160d5a15070e0efd52df82376226f28605305065e65d5740074
BLAKE2b-256 checksum
How to use checksums
a52c4eb2c4f503df627f4664c04a5d20a91d1038ddf17e9ced5605de5ae23417
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-win_amd64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-win_amd64.whl
Size 27.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
0da46e4467aa33454baa6039e3ecee7f3f3725c44b03a9da30c4b03b0967de33
BLAKE2b-256 checksum
How to use checksums
163c54183e34e220d32181f860e7f7ba2478a0d009ed09de9e993ff4af0073c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-manylinux_2_28_x86_64.whl
Size 85.5 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a164a1544b2b61ef30b1b4f0079812e28cad813ba0929bf90abeb0ffddc5fda8
BLAKE2b-256 checksum
How to use checksums
17ed6c3e2aba1466572cf8c8173767186f5dd250245d697a69da41b2e5b32480
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-macosx_14_0_arm64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp312-cp312-macosx_14_0_arm64.whl
Size 70.6 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
625f4a8714e9c42e69a0a10634206a62f2121e6548d939d9eed195f1e7bd413b
BLAKE2b-256 checksum
How to use checksums
b0a30530b9e2e794b61f7ccfbb986db96e9b95c8afccca33504a3acf7a3636a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-win_amd64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-win_amd64.whl
Size 27.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
7ad3bc4d611e4624de486b5beb314732247ce6b6e8bd5d6745ee7c1516d64088
BLAKE2b-256 checksum
How to use checksums
8e1f8176323dc0c23bb51714cd19688d1375bbacdec7983e3737beb61aa58708
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-manylinux_2_28_x86_64.whl
Size 85.5 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9c95ba117b3bfcaa11cf7c46d407dc7f6725c4b3a6d10bfa29a2054fbadf39a8
BLAKE2b-256 checksum
How to use checksums
22c8379a0b87a5ca8f51a5e386b6588c3e3ead39b16033ab399aed4f602c40cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-macosx_14_0_arm64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp311-cp311-macosx_14_0_arm64.whl
Size 70.6 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
2c0161b5ea9e98558a5895482e4532ecd2fb421bde9914c3560f105c5aca55ed
BLAKE2b-256 checksum
How to use checksums
b70226f72dccde403010507f1fddf666019ff62da4fcea6c9597cb467cdd18f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-win_amd64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-win_amd64.whl
Size 27.4 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
aa13323078d43baa25006120da31e5bc33e59cea652d5ee081d725fcdc1a6b87
BLAKE2b-256 checksum
How to use checksums
aa3ed22225c9f31f4d70616877077732bcca97ce5e7e0887916f55618f140624
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-manylinux_2_28_x86_64.whl
Size 85.5 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
856f624b67a4b7442bafd572954a9a1d3c20816f2fe34f5614248145c706c3e9
BLAKE2b-256 checksum
How to use checksums
0b5eecf18638398e396fa3cb07a066347f8822807d8c47c16e7fe56d06662747
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-macosx_14_0_arm64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp310-cp310-macosx_14_0_arm64.whl
Size 70.6 MB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
1225f3e6cb4a43363b8a44f8b819c6cdc5ad14f235c232db281bd91a3111ec0b
BLAKE2b-256 checksum
How to use checksums
c37683a6fb1b0c7eb458670f6164043934be4019d4bd4a11706ce570f5287314
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-win_amd64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-win_amd64.whl
Size 27.4 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
4bd7a48591ff523e6dc21109b85456a6b270f5b748f1c785110bb6cd9c63995e
BLAKE2b-256 checksum
How to use checksums
54d02efbabe2b5ea4456541e750aae7fb108b5088a58fb86ab1445aa1ee48100
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-manylinux_2_28_x86_64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-manylinux_2_28_x86_64.whl
Size 85.5 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
57e0684f0fe34362d3d5aed8e1c075b1653c7efc9beed4e21b7b2f5291b42a36
BLAKE2b-256 checksum
How to use checksums
2626119c32aa66da816b7b564b1788967fffae7b968f99ac5b55f9591971b028
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log

Release files / pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-macosx_14_0_arm64.whl

Download URL pyvalhalla_weekly-3.5.1.post1.dev179-cp39-cp39-macosx_14_0_arm64.whl
Size 70.6 MB
Tags CPython 3.9 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
f08899b0c310edceeee007d3176755e4f769812c19bc39655cba6376cc017298
BLAKE2b-256 checksum
How to use checksums
827878c8728e84e8370dd91b463dd72cb973e3652c88ae3a5f5e5a3e28e7c8ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 23, 2025.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page