Skip to main content

Gravel

Fast road network fragility analysis at scale.

License: Apache 2.0 Python 3.10+ C++20

Gravel is a C++ library (with Python bindings) for computing how vulnerable road networks are to edge failures. Given a graph, it answers questions like:

  • "How isolated does this location become when 10% of its roads fail?"
  • "Which counties are most dependent on a single critical route?"
  • "What's the composite fragility score for every US county?"

The library is built around contraction hierarchies for fast shortest-path queries, and a Dijkstra + incremental SSSP pipeline for edge-removal analysis. On a 200K-node county graph, it computes isolation fragility in ~2 seconds.

Installation

pip

pip install gravel-fragility

Binary wheels for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (AMD64) × Python 3.10–3.13. OSM loading (gravel.datasets.osm.load, OSMConfig, SpeedProfile) ships enabled on every wheel from v2.2.2 onward — no extra system dependencies required.

conda-forge

Not currently available. The conda-forge feedstock is out of date and does not track recent releases — install via pip (above) for the current version. (If the feedstock is revived, a conda install path will return here.)

From source

git clone https://github.com/rhoekstr/gravel.git
cd gravel
cmake -B build -DGRAVEL_BUILD_PYTHON=ON
cmake --build build -j

The default GRAVEL_USE_OSMIUM=AUTO enables OSM loaders when libosmium is present on the system and disables them gracefully when it isn't. CMake prints a clear status message either way. To hard-require libosmium (fail configure if missing), pass -DGRAVEL_USE_OSMIUM=ON. To opt out entirely, -DGRAVEL_USE_OSMIUM=OFF.

Install libosmium with:

  • macOS: brew install libosmium protozero
  • Debian/Ubuntu: sudo apt install libosmium2-dev
  • conda: conda install -c conda-forge libosmium
  • vcpkg (Windows): vcpkg install libosmium protozero

Checking OSM availability at runtime

import gravel
if gravel.HAS_OSM:
    graph = gravel.datasets.osm.load("county.osm.pbf")
else:
    # Running on a build without OSM support (e.g., source build without libosmium).
    raise RuntimeError("gravel was built without OSM support")

Quick Start

Python

import gravel

# Load a road network (from OSM PBF)
graph = gravel.datasets.osm.load("county.osm.pbf")

# Build contraction hierarchy (one-time cost)
ch = gravel.build_ch(graph)

# Compute isolation fragility for a location
cfg = gravel.LocationFragilityConfig()
cfg.center = gravel.Coord(35.43, -83.45)  # Bryson City, NC
cfg.radius_meters = 30000  # 30km
cfg.monte_carlo_runs = 20

result = gravel.location_fragility(graph, ch, cfg)
print(f"Isolation risk: {result.isolation_risk:.3f}")
print(f"Reachable nodes: {result.reachable_nodes}")
print(f"Directional coverage: {result.directional_coverage:.2f}")

Datasets (2.7.0)

import gravel

# Browse the catalog of supported datasets
gravel.datasets.list()          # -> list[Dataset]
print(gravel.datasets.summary())  # prints (and returns) a feature matrix

# Load a road network via the OSM submodule
graph = gravel.datasets.osm.load("county.osm.pbf")

# Fetch a hazard footprint (needs the gravel[datasets] extra)
gdf, provenance = gravel.datasets.nfhl.fetch(bbox=(-83.6, 35.3, -83.3, 35.6))
print(provenance.summary())  # {dataset_id, endpoint, resolved_version, pulled_at}

The hazard fetchers (nfhl, shakemap, usdm, nri) require the gravel[datasets] extra (geopandas + shapely + pyproj); their edge_probabilities(...) output feeds stochastic_fragility.

Network substrates (2.7.0)

Beyond roads, gravel.datasets onboards five infrastructure networks — power grids, internet router topology, air routes, and transit — each load(...) returning (Graph, capacity) where capacity is a per-edge numpy array (empty when the source has no native capacity). Fragility analyses consume these graphs and their capacity vector, and the (topological) cascade runs on the graph structure, exactly like a road graph.

import gravel

# Power grid (thermal limits in MVA; node coords)
graph, capacity = gravel.datasets.gridsfm.load("case.json")

# Air network via OpenFlights: fetch the raw tables, then load
(airports, routes), prov = gravel.datasets.openflights.fetch("data/")
graph, capacity = gravel.datasets.openflights.load(airports, routes, with_codes=False)

# ...or with IATA codes, to key-join a BTS T-100 seat-capacity overlay
graph, capacity, node_iata = gravel.datasets.openflights.load(airports, routes, with_codes=True)
seats = gravel.datasets.t100.load("t100_segment.csv", value_field="SEATS")
capacity = gravel.datasets.t100.edge_capacity(graph, node_iata, seats)

The network loaders need only numpy; fetchers use stdlib urllib (gridsfm optionally huggingface_hub; gtfs needs a free Transitland API key). caida (internet) and t100 are bring-your-own-data — no fetcher — per their source licenses.

C++

#include <gravel/gravel.h>

auto graph = gravel::load_osm_graph({"county.osm.pbf", gravel::SpeedProfile::car()});
auto ch = gravel::build_ch(*graph);

gravel::LocationFragilityConfig cfg;
cfg.center = {35.43, -83.45};
cfg.radius_meters = 30000;
cfg.monte_carlo_runs = 20;

auto result = gravel::location_fragility(*graph, ch, cfg);
std::cout << "Isolation risk: " << result.isolation_risk << "\n";

Key Features

Sub-library architecture

Seven independent libraries with a strict dependency DAG — link only what you need:

Library Purpose Dependencies
gravel-core Graph representation, basic routing stdlib, OpenMP
gravel-ch Contraction hierarchy + blocked queries gravel-core
gravel-simplify Graph simplification, bridges + gravel-ch
gravel-fragility All fragility analysis (Eigen/Spectra) + gravel-simplify
gravel-geo Regions, snapping, point-in-polygon + gravel-simplify
gravel-datasets Dataset onboarding: OSM/TIGER loaders + catalog (libosmium) + gravel-core, gravel-simplify, gravel-geo
gravel-us US TIGER/Census specializations + gravel-geo, gravel-datasets

Analysis modules

  • Route fragility — per-edge replacement path analysis
  • Location fragility — isolation risk for a geographic point (new Dijkstra+IncrementalSSSP)
  • County fragility — composite index combining bridges, connectivity, accessibility, fragility
  • Scenario fragility — event-conditional analysis (hazard footprints)
  • Progressive elimination — degradation curve with Monte Carlo / greedy strategies
  • Tiled analysis — spatial fragility fields for visualization
  • Region assignment — node-to-polygon mapping (point-in-polygon)
  • Graph coarsening — collapse regions into meta-nodes
  • Research depth (2.4.0) — capacity-aware importance (HCM PCE from OSM tags), stochastic fragility (Monte Carlo over per-edge failure probabilities, e.g. floodplain / FEMA-NFHL hazards), and experimental Motter–Lai cascading failure — all as disclosed, sweepable inputs
  • Visualization (2.5.0) — real per-edge road geometry plus static (plot_fragility), interactive (interactive_map), and animated (animate_failure, self-contained deck.gl HTML) maps via gravel-fragility[viz]
  • Dataset onboarding (2.6.0) — a unified gravel.datasets layer: a queryable catalog (list()/info()/summary()) plus per-dataset submodules with a consistent interface — osm and tiger loaders, and nfhl/shakemap/usdm/nri hazard overlays whose fetch(...) returns (GeoDataFrame, Provenance) and whose edge_probabilities(...) feeds stochastic_fragility. Hazard fetchers need the gravel[datasets] extra (geopandas + shapely + pyproj)
  • Network substrates (2.7.0) — five non-road infrastructure networks in gravel.datasets, each load(...) returning (Graph, capacity): gridsfm and opfdata (power grids, capacity in MVA), caida (internet router topology), openflights (air routes), and gtfs (transit, persons/hour capacity), plus the t100 BTS seat-capacity overlay for air graphs. Fragility analyses run on these graphs and their per-edge capacity, and the topological cascade on the graph structure, exactly like a road graph. The catalog now spans 12 datasets; loaders need only numpy
  • Flow layer (3.0.0, experimental)gravel.flow, a demand-driven traffic-assignment layer on top of the topological core: stochastic User Equilibrium (BPR congestion + logit route choice), flow_fragility for the region-wide delay cost of a failure (ΔTSTT + stranded demand), and a θ-calibration harness against real closure-induced slowdowns. The solver is exact (Sioux Falls) and recovers a known θ synthetically, but real θ does not identify at corridor scale — it ships experimental, with the gap and the regional-ODME path documented in docs/FLOW_LAYER.md. The gravel.datasets.chicago_traffic adapter and example 10 walk the real-data study. Breaking: the 2.6 deprecation shims (gravel.hazards, top-level load_osm_graph/load_tiger_*) are removed — use gravel.datasets.*

Performance

Measured on an Apple M-series laptop, 10 cores, Release build (2026-07-01; see bench/baselines/routing_performance.md):

Operation 200K-node graph (Swain Co.) 593K-node graph (Buncombe Co.)
OSM PBF load 0.43s 0.96s
CH build 0.78s 3.81s
CH distance query 3.5 µs 7.8 µs
CH route (with path unpacking) 80.5 µs 112.8 µs
Distance matrix cell (OpenMP, 10 threads) 0.6 µs 1.3 µs
Route fragility (per path edge, OpenMP) ~13 ms ~28 ms
Location fragility (MC=20, 50-mi radius) 0.11 s 1.0 s

The parallel kernels (distance matrix, route fragility) scale ~5× from 1→10 threads on this machine. macOS builds only gained working OpenMP in 2.3.0 (Apple Clang needs Homebrew libomp) and route_fragility was parallelized in the same release — so on macOS those two rows are roughly 5–9× faster than pre-2.3.0. Single-threaded operations (load, CH build, point queries) are unchanged. Numbers vary by CPU; the perf_baseline.json Google-Benchmark regression gate is refreshed separately via gravel_perf.

At-scale benchmarks:

  • National per-county isolation fragility (3,221 counties): 3.1 hours
  • National inter-county fragility (8,547 adjacent pairs incl. cross-state): ~22 hours

Documentation

  • REFERENCE.md — complete API reference (all functions, all types)
  • docs/PRD.md — product requirements and architecture
  • docs/ — full documentation site (also on GitHub Pages)
  • examples/ — Python notebooks and C++ sample programs

Example: National US County Analysis

# Run fragility analysis on all ~3,221 US counties
python scripts/national_fragility.py --output-dir output/

# Results are in output/county_isolation_fragility.csv
# Visualize with:
python scripts/visualize_results.py

Sample findings from the national run (April 2026):

Most vulnerable states Mean risk
New Hampshire 0.638
Maine 0.571
Rhode Island 0.570
Connecticut 0.563
Most resilient states Mean risk
Kansas 0.146
Nebraska 0.162
Iowa 0.163
North Dakota 0.165

The Great Plains grid-states score lowest — flat land with rectangular road networks have extensive redundancy. Mountain and coastal states score highest — constrained geography forces single-path corridors.

Requirements

Runtime:

  • C++20 compiler (GCC 11+, Clang 14+, MSVC 2022+)
  • CMake 3.24+
  • Python 3.10+ (for bindings)

Optional:

  • libosmium (for OSM PBF loading)
  • Apache Arrow (for Parquet output)

Bundled (via CMake FetchContent):

  • pybind11
  • Eigen + Spectra
  • nlohmann/json
  • Catch2 (tests)

Contributing

See CONTRIBUTING.md. Bug reports and feature requests welcome via GitHub Issues.

License

Apache 2.0 — see LICENSE. Free for commercial and research use.

Citation

If you use Gravel in academic work, please cite:

@software{gravel2026,
  author = {Hoekstra, Robert},
  title = {Gravel: Fast Road Network Fragility Analysis},
  year = {2026},
  url = {https://github.com/rhoekstr/gravel},
  version = {3.1.0}
}

About

Gravel is an Awry Labs project — see the Gravel project page for an overview. Also from Awry Labs: Kindling.

Built by Robert Hoekstra — more projects and writing at awrylabs.com.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gravel_fragility-3.1.0.tar.gz (1.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gravel_fragility-3.1.0-cp313-cp313-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.13Windows x86-64

gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

gravel_fragility-3.1.0-cp313-cp313-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

gravel_fragility-3.1.0-cp312-cp312-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.12Windows x86-64

gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

gravel_fragility-3.1.0-cp312-cp312-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

gravel_fragility-3.1.0-cp311-cp311-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11Windows x86-64

gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

gravel_fragility-3.1.0-cp311-cp311-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

gravel_fragility-3.1.0-cp310-cp310-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.10Windows x86-64

gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

gravel_fragility-3.1.0-cp310-cp310-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file gravel_fragility-3.1.0.tar.gz.

File metadata

  • Download URL: gravel_fragility-3.1.0.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gravel_fragility-3.1.0.tar.gz
Algorithm Hash digest
SHA256 6c5a12c5e7315c6cfe3cb5d734c2c0bc87032248fb6d467b7e92d1de75038bf5
MD5 efe4b4f126ffeebc58ffa26fe8441aec
BLAKE2b-256 00ce9917b017c2eaa3f2c2efc3a85f5368b5d1c8bf96b67b81350fe7247151af

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0.tar.gz:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 904b5829240f11dd5829557e6ed3bc969e17e38a4bf703707deddfb5709e8ba5
MD5 f7dcd33b792d512bb45bf63aee0e06a0
BLAKE2b-256 8e7188582036ec9e9829cea752621d20d0493e8405788a234914d657f3b7f979

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9638752249fb6273e10f0bacec0b5c1773519f3301d22a9315b88379f1818744
MD5 2325bade3dd6fed88224ba29f6783c89
BLAKE2b-256 2daae52a3080d3f22f3ce3bfaf61e653c1627f8fb085bd8fb692016d49549385

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9d4ead580236a08f015e9cd8be1654708ea5dcc88d4cbfabb53f5fd53db9c92a
MD5 3f269d18980502c138f4582216056ef0
BLAKE2b-256 a4992765ed8f20dd3a7216a876ba29028d9c89e0ca15c34cbc120a8340aaa013

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 66f687aa9e2a80374652edd753de794de019c69e06dea8459f22a2d75889c48c
MD5 e6892e34bc7b65e2d4b6222e64d7d256
BLAKE2b-256 fa85f7e9f63e114ed48092ac4fb9132235c87f8941109990a3f2ce76b01cca17

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 23bdd9a31de8a5d8ef85a02ee88f78eeada4e4c61694a876c8e0a00565e35433
MD5 2902e833be60bb5f83565b17d20609ae
BLAKE2b-256 8a8bc7c3903022b52fcdca9d4f5f8361ee384e42172498c800f5287ab4be4175

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9c7b52db7ea90abffe7281e77c668a45db55180d0f76be08de69cfeee7301f08
MD5 a118ca53c9d81675e3eae8ab8b31e8a1
BLAKE2b-256 4162e4aa79ae895f6e0109530d60c7ddd63c969d1a8834bcf9f86d7a7b378967

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9b7f6db791747c6061e7376e94fb09f5054294bf3a47ebd77f8d508b26147dff
MD5 e2fdbe37b5634c1e23396eac105bdbcd
BLAKE2b-256 3374dd1a2903fa1eea4af9cd7046e9991b0b036808c104f116ffc784d552573d

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 661674cfda39f23b2a2f2d721e1dee64cd2e2954b6ecc34fa810f640f6313529
MD5 00703e503bca6db771f013dd3780f07c
BLAKE2b-256 f8cc3976b96b53a7b468744230223864190752cf7af76f38ea2a67b983a1a0c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 53c7de9ec92f98e44c55165794ab18b583e11b031772640b4a70727bb4f23bac
MD5 bdf69b6b79ecea77615e106bbcac478e
BLAKE2b-256 f2d6350e96035e098228eeefcff6ad18b206a6e9119b20fb771a9553c2f9fb9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c2a5aa4c5b19f7891c8243f6144af3bdb6219878149d977da037dd072d0e44b
MD5 0cb8f843f7dcebc1a32e175315372237
BLAKE2b-256 94c5f68660a557250a670d711a7ec3f5b1c15d921e05279139fc7c6ad71a277a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 718c581ad8e32fc4d6a8211be0e9e531779126805c925107bd901bb4a6ffabd5
MD5 898fd796845924fc25f6d15f02063941
BLAKE2b-256 9c17b7caa8706f12a4107d142e30489812cd4f30ae2c0fe805db9e8ba8942953

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e84fdf7f19567cf85692bfde664d35718d93a4be53152b0ee4a98a11030e448
MD5 6453536fa95d30ef94a813f756e71ad0
BLAKE2b-256 6dadf38d5c370dc8edae2676889bdb4fcb289cabc8ccfb7d5f6d7c9dec893a3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1ac9249052bfc7a94ce4ed505cda859836271927f3bc12c58bd3ba2fb3c16d48
MD5 dc08e17f7e515a636a0ecb262009fccd
BLAKE2b-256 717099f96eb0bc3343eba1876f8c1a69852ccf89b4d41ad0ac20c39b8d3fdc5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8ce758dbdb2c05b006126bbfe9625a1d4e8093e65553fc3d25388fba8a38c2fb
MD5 fced5d30ee55e3bb899d5d792585f971
BLAKE2b-256 59d80c53e355cf309a039f81a7cc7f4246ab0b14a7b3eddd38fe43064b23464c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dc49a9eb14f84df1da921b0cb87fb47d4ed0d8359b79d903629f049f6a8e72d8
MD5 7e04d112163036d3b5b4bb629641c801
BLAKE2b-256 88308bcab56b3a918eae1a4024cef2d8dbbe971b1710b0020bb7b5949cf1df01

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gravel_fragility-3.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gravel_fragility-3.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 51c8dea38ee2538ca20fa89cb5c759559d6d4b66dda01f63c8ea5cd49da06830
MD5 2a0a24a00eea813a755a40aa0af1dfc4
BLAKE2b-256 2175d383329609a26dfa66ecbcc6269cd20acfac0b285e4c8c226d0f76e5e8f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for gravel_fragility-3.1.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheels.yml on rhoekstr/gravel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

3.1.0 This release

17 files

3.0.0

17 files

2.10.0

17 files

2.9.0

17 files

2.8.0

17 files

2.7.0

17 files

2.5.0

17 files

2.4.0

17 files

2.3.0

17 files

2.2.3

21 files

2.2.2

21 files

2.2.1

21 files

2.2.0

17 files

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