Skip to main content

GIS utility package

Project description

pyramids — GIS utilities for rasters, vectors & datacubes, built on GDAL/OGR

Documentations Python Versions License: GPL v3 pre-commit GitHub last commit GitHub Repo stars codecov Codacy Badge

GitHub commits since latest release (by SemVer including pre-releases)

pages-build-deployment

Current release info

Name Downloads Version Platforms
Conda Recipe Conda Downloads Downloads Downloads Downloads PyPI - Downloads Conda Version PyPI version Conda Platforms

conda-forge feedstock

Conda-forge feedstock

pyramids - GIS utility package

pyramids is a GIS utility package built on top of GDAL/OGR for working with raster data (GeoTIFF, NetCDF), vector data (shapefiles, GeoJSON), and multi-temporal datacubes.

pyramids at a glance — every GDAL format, none of the boilerplate

pyramids-gis is licensed under GPLv3 (see LICENSE.md). The platform wheels published on PyPI bundle GDAL and its native dependencies (PROJ, GEOS, libtiff, NetCDF-C, HDF5, libcurl, …) — each under its own MIT, BSD, LGPL, or Apache license. The full attribution list and shipped license texts are documented in THIRD_PARTY_LICENSES.md; if you use pyramids-gis in publications please also cite GDAL itself per gdal.org/cite_gdal.html.

graph LR
    GeoTIFF & NetCDF & Shapefile & UGRID -->|read| pyramids
    subgraph pyramids
        direction TB
        Dataset
        NetCDF_class[NetCDF]
        UgridDataset
        DatasetCollection
        FeatureCollection
        subgraph Engines["Dataset engines (ds.io · ds.spatial · ds.bands · ds.analysis · ds.cell · ds.vectorize · ds.cog)"]
        end
        subgraph Plotting["Plotting layer — _plot_helpers.render_array · mesh_render · NetCDFPlot · Selectors / ColourOpts / FacetSpec · basemap"]
        end
    end
    Dataset -->|crop · reproject · align| Dataset
    Dataset --- Engines
    FeatureCollection -->|rasterize| Dataset
    UgridDataset -->|interpolate| Dataset
    Dataset -->|vectorize| FeatureCollection
    DatasetCollection -->|lazy temporal stack| Dataset
    NetCDF_class -->|extends| Dataset
    Dataset & NetCDF_class & DatasetCollection & UgridDataset -->|plot| Plotting
    Plotting -->|delegates| cleopatra(["cleopatra<br/>ArrayGlyph · MeshGlyph · tiles"])

For the class relationships, internal layers, and detailed architecture diagrams, see docs/overview/architecture.md.

Main Features

  • Dataset - Read, write, crop, reproject, and align single-band and multi-band rasters (GeoTIFF) with full no-data handling and coordinate reference system support. Public API is organized into seven engine collaborators (ds.io, ds.spatial, ds.bands, ds.analysis, ds.cell, ds.vectorize, ds.cog); same-named facade methods on the Dataset itself keep the short form working — ds.crop(mask) and ds.spatial.crop(mask) are equivalent.
  • NetCDF - Extends Dataset for NetCDF files with time/variable dimensions and CF conventions metadata. Optional xarray interoperability. NetCDF.plot exposes an xarray-aligned plotting API (variable= + grouped Selectors / ColourOpts / FacetSpec dataclasses, curvilinear coords=, kind=, animate=, lazy chunks=).
  • UgridDataset - Read and visualize UGRID-1.0 unstructured meshes (triangles, quads, mixed). Supports mesh-to-raster interpolation and mesh-to-vector export.
  • DatasetCollection - Manage time-series of co-registered rasters as a lazy temporal stack (per-timestep gdal handles open on demand; the full cube is never materialised in RAM) with optional dask-backed reductions and groupby.
  • FeatureCollection - Work with vector data (shapefiles, GeoJSON) through a unified GeoDataFrame and OGR DataSource interface, including rasterization and geometry operations.
  • Plotting - Dataset / NetCDF / DatasetCollection / UgridDataset all expose a plot method backed by cleopatra (the [viz] extra), routed through a shared pyramids.dataset._plot_helpers core. Optional web-tile basemap underlays via pyramids.basemap.add_basemap (a thin wrapper over cleopatra.tiles.add_tiles).
  • Cloud-Optimized GeoTIFF (COG) - First-class read/write/validate support via ds.to_cog, ds.is_cog, and ds.validate_cog.
  • Spatial operations - Align rasters to a reference grid, reproject between coordinate systems, crop to vector boundaries, and convert between raster, NetCDF, and vector formats.

Installing pyramids

Installing pyramids from the conda-forge channel can be achieved by:

conda install -c conda-forge pyramids

It is possible to list all the versions of pyramids available on your platform with:

conda search pyramids --channel conda-forge

Install from GitHub (development)

To install the latest development version, you can install the library from GitHub:

pip install git+https://github.com/serapeum-org/pyramids

Note: installing from GitHub uses the sdist and requires a pre-installed system GDAL. See the full installation guide and troubleshooting for details.

pip

To install the latest release from PyPI:

pip install pyramids-gis

Linux + pixi: no glibc pin needed anymore

pyramids-gis ships its Linux wheels tagged manylinux_2_28 (GDAL and its native stack are compiled from source with the manylinux toolchain). pixi's default Linux baseline is glibc 2.28 (it tracks conda-forge's floor), so the wheel resolves out of the box — no [tool.pixi.system-requirements] entry required (verified with pixi 0.65 defaults; newer versions, including the 0.68.1 this repo pins in CI, share the same baseline).

Two cases still need a pin in the consuming project's pyproject.toml / pixi.toml:

[tool.pixi.system-requirements]
libc = "2.39"    # only for the older releases that shipped manylinux_2_39 wheels (0.2x-0.39.x)

or libc = "2.28" if you run a pixi version old enough that its default baseline is still below 2.28. On Linux with glibc < 2.28, install from conda-forge instead. See the full installation guide and troubleshooting for the other cases.

Optional extras

pip install pyramids-gis[viz]      # cleopatra plotting support
pip install xarray                 # to_xarray / from_xarray / to_netcdf interop (peer dep, not an extra)

Quick start

from pyramids.dataset import Dataset

# Open a raster file
src = Dataset.read_file("path/to/raster.tif")
print(src.epsg)        # coordinate reference system EPSG code
print(src.cell_size)   # pixel resolution
print(src.shape)       # (bands, rows, columns)

# Read the raster data as a NumPy array
arr = src.read_array()                  # all bands
band0 = src.read_array(band=0)          # one band

# Spatial ops route through the spatial engine; the facade stays short
reprojected = src.to_crs(to_epsg=3857)  # same as src.spatial.to_crs(...)
from pyramids.netcdf import NetCDF
from pyramids import Selectors, ColourOpts, FacetSpec   # grouped plot options

# Open a NetCDF file
nc = NetCDF.read_file("path/to/data.nc")
print(nc.variables)

# xarray-aligned plotting (needs the [viz] extra)
nc.plot("t2m", selectors=Selectors(time="2020-07-01", level=850),
        colour=ColourOpts(cmap="coolwarm", robust=True))
nc.plot("t2m", facet=FacetSpec(col="time", col_wrap=4))   # small multiples
nc.plot("t2m", animate="time", chunks={"time": 1})        # lazy per-frame animation
from pyramids.feature import FeatureCollection

# Open a vector file
vector = FeatureCollection.read_file("path/to/shapefile.shp")
print(vector.epsg)            # CRS EPSG code
print(vector.total_bounds)    # (minx, miny, maxx, maxy)
from pyramids.dataset import DatasetCollection

# Build a lazy stack of co-registered rasters (no pixels read yet)
cube = DatasetCollection.from_files(["a.tif", "b.tif", "c.tif"])
print(cube.time_length, cube.shape)

# Reductions over the time axis use dask under the hood
mean = cube.mean()                       # nan-aware by default

Testing

This project uses pixi as the environment and task manager.

# Install dependencies and create dev environment
pixi install -e dev

# Run all tests (excluding plot tests)
pixi run -e dev main

# Run plot tests only
pixi run -e dev plot

# Run a specific test file
pixi run -e dev pytest tests/netcdf/test_dimensions.py -v

# Run a single test by node id
pixi run -e dev pytest tests/netcdf/test_dimensions.py::TestStripBraces::test_with_braces -q

Docker

A Dockerfile is provided to run pyramids-gis in a controlled environment with the correct GDAL stack preinstalled via conda-forge. The image uses a multi-stage pixi build for a minimal production container.

Build the image:

docker build -t pyramids-gis:latest .

Run the container (mount your current folder as /workspace):

docker run --rm -it -v ${PWD}:/workspace pyramids-gis:latest bash

Inside the container you can verify the package is installed:

python -c "import pyramids; print('pyramids', pyramids.__version__)"

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pyramids_gis-0.40.0.tar.gz (712.3 kB view details)

Uploaded Source

Built Distributions

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

pyramids_gis-0.40.0-cp314-cp314-win_amd64.whl (37.6 MB view details)

Uploaded CPython 3.14Windows x86-64

pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_x86_64.whl (47.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ x86-64

pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_arm64.whl (41.6 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pyramids_gis-0.40.0-cp313-cp313-win_amd64.whl (36.5 MB view details)

Uploaded CPython 3.13Windows x86-64

pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_x86_64.whl (47.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_arm64.whl (41.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyramids_gis-0.40.0-cp312-cp312-win_amd64.whl (36.5 MB view details)

Uploaded CPython 3.12Windows x86-64

pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_x86_64.whl (47.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_arm64.whl (41.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyramids_gis-0.40.0-cp311-cp311-win_amd64.whl (36.5 MB view details)

Uploaded CPython 3.11Windows x86-64

pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_x86_64.whl (47.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_arm64.whl (41.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file pyramids_gis-0.40.0.tar.gz.

File metadata

  • Download URL: pyramids_gis-0.40.0.tar.gz
  • Upload date:
  • Size: 712.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyramids_gis-0.40.0.tar.gz
Algorithm Hash digest
SHA256 877e938fa513c4a46842e68e37795b0883f0171304a364da754d49a8920a5dec
MD5 902cf66d12e593397a292715a65129ae
BLAKE2b-256 29ad9405e33b46f65d7e2b76dbf90cbcfef4edb8a359336e893423a654cd5b62

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 b58950d10fc50097645e450514a01f277079dfe5d9dff2a2bd50a88f0ace6bdb
MD5 113cd39cb36d0d6892a571d1d2a944aa
BLAKE2b-256 3438454f32e7ce3013462ee3195e671925e6c7d48ed8b82b4fe371da3176e629

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 95b57ff1fbd7dabf79fde2d161f22da337eeeb9763b4a21128178038804a0615
MD5 dc42c373c38b5ab3731c5b92ee13e8cf
BLAKE2b-256 64b26a1a01c9690942d3d82a48c638aa8d4c9b3cd4f0407d6d8487b26db1d83d

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 822a6ddfa169aabfe276bbe7e1c9ba24afe09c37e8f8f93603e15196fee48ecc
MD5 52d65d6619c524a45642d5bb752ae047
BLAKE2b-256 f9dd9a7185f4fde037a25f474702f32d29540540fc13b8940e907de05f590951

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 20009f2507b47d2ae4ebfe41c16e9baaf590a1136282d22fde555d5448d849c3
MD5 9ae34e1ae55d5c17a8ad7926eaba6bb3
BLAKE2b-256 6ed92098ea2022693c5ac802dc174b06071b05d56fb0a124e4a989c7bb558df4

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8db51d377877d98e8af231c58ceca4b1e0ac40f08a6cc0293df532c6ac5d2750
MD5 1e35b0775878f8babfc6277111ba7cec
BLAKE2b-256 10a25f90a8f3a9949dd87661c4ddc9b53563a171c2ac11afda342e480a93a043

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e12be190dcbe7129b1d7dd70f74b630e141cb00b29f92809745e6675fa4e12e7
MD5 b6b5014d15562a54bfea96c5ecd37191
BLAKE2b-256 9a5f6b7cb41833c27fb52767a75790ded7f4d599d2a048cff6c967b5d4c20a86

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5e6e68d9cfbec612122eac3e2c52ea9f0ba8bdbae826fc5db1a1e8ef79072efe
MD5 adf261869651f0959c7c68ad7b38cc94
BLAKE2b-256 76cb99db0fa05f2f0076ffa069d525a5edb348dad16aa322a95264c692315969

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 09977041d9fdd16c702467e6274a046fea3fe60cb45f2895fcc4aa44f651fd54
MD5 e124484a81192eb919f7b09f00317154
BLAKE2b-256 757c5238f490bba1179b2f343c9c6899721bcf8e61695c072324b0a73e6a8ad1

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 9788e6a8083c22c551eeb38001e3d056824b6e4e78ca807aed1048dfb2fabc0c
MD5 0dd07a6cc6784a28ba633d6637b13db9
BLAKE2b-256 8f7283d3ab07cc2641d581b664697f715f55b12527c6cebfa8f184aafdae9458

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 012c1e574561dbacc589d4121eee993df7c13e472487f6e2840efb3905306863
MD5 7948bd0d6392ecc1afadc9e743f81259
BLAKE2b-256 729da91f19a59b3a9464e356e9b4fab46d14b86e5b3db67c8b0b06f5a88ba9f6

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f84a0aed720cc801583d257b8690bf263e0b72b6dce4594257a795b0b8bb0bfa
MD5 072eee89c000803fab46e373d692ece5
BLAKE2b-256 c90435b3323230ba40a61e18531d57ed309ae29d0a597cd000f2e191f84a4f7f

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 da4446d13ab87fa678f7dbf003064e29ef6b3a4705e6a84cd03d2018034f4b3a
MD5 02ae5ad017cc2ddb9807890c5ea4fd1f
BLAKE2b-256 89885839e0d8aedf0b61474f01bb9d42205fb8bf60aada146e425e6792094031

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4cc9b38229bed34d22bb6cee9623d2e02bcfbe1e6a059f967bfed83961cda99f
MD5 7930476190008d0db3119484516a1253
BLAKE2b-256 62bd3bd71c9c28c576882c6fe7b19e3e461acfe67fdc0cd1f0226bd898f6a1e8

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 e66f01b0a44354a4837928cc5158bbd39e445b9034b6fa6f497d387b98a7b744
MD5 1c701f5379a2bed87e757dce4b16f0ba
BLAKE2b-256 2a19ca77341af2d45228e3c850aa4882cd05b17396cfe600445f118d07ae4195

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e979e5124a81c5b206412d418bfbf4c661859662a1ddd47d15dd786b28b61dbd
MD5 4cc6d6950011d9ccce85f512305770cc
BLAKE2b-256 4755ae7799adc5836c90f7b6cd73861b9244fbb5772e5d06840cacb1c8f35828

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 32b8b1cadd0a8752cc83f2dd350229efa7995fa0b1a78051c8d39824c071f3dc
MD5 0bfbabf51b8f490e8c30a0db9d783e7f
BLAKE2b-256 68efefb6d21e60093fb4387abc720d05eef6cddc243450956fdca2c520590666

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c59570302b3195805880ef3986baeaf9a7a1a369ee2ff426962b46c2700c5471
MD5 f73e5768edd02a7d9ac6bf64e27d8705
BLAKE2b-256 0fdd3661e5572a6aefe74d70519b2794ac6295efa78a8cfa1e5039f1f1f9900e

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0675d5b1f783e8b72f63d03e50b0c172b2e2fc8fa006e796add49665e5b6f56f
MD5 d6bf8f0e5b82c6e4b0678e283a825027
BLAKE2b-256 1dc8471f631ebe202dbf95ef21ebfa19bdce489890a6c6de6aaf4a2bcc1b8acf

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 d128405b05b69c4a5b15c377f55617c1b25a27d8984ff42f7304ee4a00ae3904
MD5 b6eaca9774d2d66eb60659c448212748
BLAKE2b-256 5b4dd9581518869ac399f7ce4b7c1af8ce2a1a0d4cc1547c65e72f26dd0aa25e

See more details on using hashes here.

File details

Details for the file pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyramids_gis-0.40.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cddf2dae878888088cfc3f90bdc78a989d4b74eb1c7d92619b2232715a0dc446
MD5 402aa6d243f0547128502dc4d9e0cdf2
BLAKE2b-256 936be158d18914f956c4b264076eeb9c0250014d8ea3494aefe4eafe11193553

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page