Skip to main content
Pangolin: Plane Geometry Library

License

⚠️ Work in Progress: This library is still under construction and contains bugs and missing features. Use in production environments is not recommended.

Pangolin (or pgl) is a C++ library for computational geometry in the plane and pypgl is the official python binding for it. It is designed to be pleasant to use and always exact. Calculations are exact using rational numbers (floating point is not accepted).

import pypgl as pgl

p = pgl.Point(1, 0)
q = pgl.Point(4, '15/2')
s = pgl.Segment(p, q)
t = pgl.Segment(0, 8, '7/3', 1)
if s.intersects(t):
    print(s, "intersects", t)
# Output: (1,0)--(4,15/2) intersects (0,8)--(7/3,1)

Shapes and Predicates

Family Shapes
0-dimensional Point
1-dimensional Segment, OrientedSegment, Line, OrientedLine, Ray, Polyline, MonotoneChain
2-dimensional Halfplane, Triangle, Rectangle, Disk, Convex, Polygon

The following predicates are implemented as methods of all shapes.

  • contains(Shape) Does it contain the other shape?
  • boundaryContains(Shape) Does its boundary contain the other shape?
  • interiorContains(Shape) Does it contain the other shape in the interior?
  • intersects(Shape) Do the two shapes intersect?
  • interiorsIntersect(Shape) Do the interiors of the two shapes intersect?
  • separates(Shape) Does one shape cut the other into two (or more) components?
  • crosses(Shape) Do both shapes separate each other?
import pypgl as pgl

o = pgl.Point()      # Point (0,0)
d = pgl.Disk(o, 10)  # Disk of radius 10 centered at (0,0)
if d.contains(o):
    print("Disk contains", o)
diam = d.diameter()
if d.contains(diam):
    print("Disk contains the diameter")
if not d.interiorContains(diam):
    print("Disk's interior does not contain the diameter")
# Output:
# Disk contains (0,0)
# Disk contains the diameter
# Disk's interior does not contain the diameter

Other Methods

Several other methods are supported by the shapes.

import pypgl as pgl

c = pgl.Convex([pgl.Point(0, 0), pgl.Point(1, 0), pgl.Point(1, 2), pgl.Point(0, 1)])
s = c.diameter()
print("The diameter of", c,
      "is defined by", s,
      "and has length", s.length())
# Output: The diameter of Convex[(0,0),(1,0),(1,2),(0,1)] is defined by (0,0)--(1,2) and has length 2.23607

Distances come in the Euclidean (squaredDistance, exact and therefore squared), Manhattan (distanceL1) and Chebyshev (distanceLInf) flavors, each with a Hausdorff variant between shapes.

Shapes are moved around with +/-/*//, and an arbitrary affine map is applied with a Transformation:

import pypgl as pgl

t = pgl.Transformation.rotation90() * pgl.Transformation.translation(2, 0)
print(t * pgl.Segment(0, 0, 5, 5))
# Output: (-5,7)--(0,2)

Visualization

A Canvas class is provided for visualization, exporting to SVG, PDF, or Ipe:

import pypgl as pgl

canvas = pgl.Canvas()
canvas.draw(pgl.Point(0, 0))

tri = pgl.Triangle(-1, -1, 0, 2, 1, -2)
canvas.stroke("green")
canvas.draw(tri)
canvas.stroke("blue")
canvas.draw(2*tri)
canvas.writeSVG("example2.svg")

Algorithms and Data Structures

PGL includes fundamental algorithms and data structures such as:

  • Convex hull: convexHull / convexHullExtended, computed with Graham scan.
  • Line segment intersection: sweep-line and brute-force pair enumeration plus detection predicates, all using rational numbers.
  • Sort points: in place by angle (sortAround) or Hilbert order (hilbertSort).
  • Polyomino enumeration: hole-free free polyominoes as Polygon objects.
  • ShapeTree: a kd-tree for points, generalized to a mix of any bounded shapes, answering range and nearest-neighbor queries.
  • Triangulation: including Delaunay and constrained Delaunay triangulations for points and polygons, with traversal queries and incremental insertion.

Installation

pypgl requires Python 3.9 or newer.

From PyPI

pip install pypgl

Pre-built wheels are published for CPython 3.9–3.13 on Linux (manylinux_2_28, x86_64), macOS (Apple Silicon), and Windows, so most users need no compiler.

From source

Installing from a source tree or directly from GitHub builds the extension locally and therefore needs a C++20 compiler (GCC 12+, Clang 15+, or, on Windows, the LLVM/ClangCL toolset). The header-only pgl library is fetched automatically by CMake — nothing else to install.

pip install git+https://github.com/gfonsecabr/pypgl.git

Development install

Work on the bindings from a checkout with an editable, in-place build:

git clone https://github.com/gfonsecabr/pypgl.git
cd pypgl
python3 -m venv .venv
.venv/bin/pip install scikit-build-core nanobind pytest
.venv/bin/pip install -e . --no-build-isolation
.venv/bin/python -m pytest tests/ -q

--no-build-isolation lets CMake find the venv's nanobind. Re-run the pip install -e . step after editing any src/*.cpp, since the editable install is what rebuilds the extension. To build against a local pgl checkout instead of the pinned upstream commit:

.venv/bin/pip install -e . --no-build-isolation \
  -C cmake.define.PGL_INCLUDE_DIR=/path/to/pgl/include

More Information

  • For a brief description, check the documents at the doc folder.
  • Runnable scripts live in the examples folder, ported one for one from pgl's own — predicates, canvas styling, a shape gallery, ShapeTree queries and constrained triangulation.
  • Shapes and canvases render inline in a Jupyter notebook — see canvas.md.
  • Check the C++ version.

Download files

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

Source Distribution

pypgl-0.5.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

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

pypgl-0.5.1-cp314-cp314-win_amd64.whl (1.7 MB view details)

Uploaded CPython 3.14Windows x86-64

pypgl-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp314-cp314-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pypgl-0.5.1-cp313-cp313-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.13Windows x86-64

pypgl-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp313-cp313-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pypgl-0.5.1-cp312-cp312-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.12Windows x86-64

pypgl-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp312-cp312-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pypgl-0.5.1-cp311-cp311-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.11Windows x86-64

pypgl-0.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp311-cp311-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pypgl-0.5.1-cp310-cp310-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.10Windows x86-64

pypgl-0.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp310-cp310-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pypgl-0.5.1-cp39-cp39-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.9Windows x86-64

pypgl-0.5.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pypgl-0.5.1-cp39-cp39-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file pypgl-0.5.1.tar.gz.

File metadata

  • Download URL: pypgl-0.5.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1.tar.gz
Algorithm Hash digest
SHA256 d3f51d67512aebdff540fad1175ebeee7ff69f6338895b434b79174ab9f8b933
MD5 a853fab7a295664f927bf1183808c4ec
BLAKE2b-256 8e67dc41fe9aae48a1a4dccb492c64fd0cf30a48566ffa072c1ce294d7382f7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1.tar.gz:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 2ce3e79a3e8d9b74e41fb01d472e7303c0ecd1ae3a52552b4a865dcb95868725
MD5 b165a24760ef0910d2465195516f9824
BLAKE2b-256 324a46ebd5b8b4d857b459921fc89dbbe20dc5e99c9befe9d861e47e50dc5682

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp314-cp314-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4bcaf0dca499c877b44a99ce95752f90b6075e3a49e57ddfc8e9fa02c1383a30
MD5 b52dae1fb03a8e0f4c55c82cf6b92500
BLAKE2b-256 1c4e85352e9918e1a0fca11b552e0cea80cc9f6c0680e490e4f56decd4dbf1d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b06a91e67fc903cd5c98657ff6709f66178e9b5caaa48efbd7fb8edfaa4ed399
MD5 fcd9f4d69fa5b4fcbfc70f76285f2a50
BLAKE2b-256 f91379848fdb1d89a9bc395030ce828c568710b8348bfc620668925ae3197297

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 051be48f47d868b5112f67768028216a64030e74dbf3efebb609080636816435
MD5 e1a00996f01f0a23a5e02b442eba6e76
BLAKE2b-256 635aa18e1c991454ca54a3152b118f23619d0ca2f3918f7558a5396b4f2093ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 724c433e2dc877b76d38d27c17b6b7863773bffc83aa18e114a88ea8467ffe7d
MD5 80d5fdf15e82c6eda71fbc780ca645c9
BLAKE2b-256 88c4060b51e81f3a5bb52cd985710804016bc1016a0064cade9c836a43cccbbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c2dddf282344b8b3cb0983759a25572c6f0f4a9c7c94647491d8152faceca06
MD5 64788956f65155d7e8ff2f7f47392646
BLAKE2b-256 731682bb631b64ee98b1be71b68b985fa02b120c09e675ccfa3ee5f8441e3129

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b66baf7e3a6f7c1c2d28dafa5f29a3ef95e7fd4f8cbb4a343680b8a2ba23efe0
MD5 7340957ac4e18a319118b32ef1dc81ce
BLAKE2b-256 3f1e506cd4b79b9fb478fbf989621cead7bdddbd53156409899177f5d6c95cc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bde9664e94b601cda5f9efe461509a213dbc70914c74a14f6ea5c7e640682fc0
MD5 8644715368301e7d8869f368c9150a93
BLAKE2b-256 16c64ecb3590c270b4cef8282bcb20a066083e1fb49e21b9f80764c38a52127a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e59caec2e17b8f2707f9bc8a40222819511d4ca58947fecf1e25d8999f550c67
MD5 e9106940f85a0a4fffd8dd338678401b
BLAKE2b-256 f63a7de6555083043ebaee459bb4df260d531840c0a80d75dd411ed70af40912

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 998882778c75820ba3731f40b2ba83fa77403809b5dceec35d09a81bc07c1b23
MD5 31152fb8f953cc20b2a188bd8c66fe68
BLAKE2b-256 4ec1c87f8dceb8ac4f12755c75cd9dbee0904cc3990697d5e3eebf2a3ce14974

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3a94155163920b2799d80a7bf596adf1f03c75cb0e02c2cb3d3bb7af14840ef2
MD5 5835ebd5962bdb91cb6c32d108031264
BLAKE2b-256 71c29cd778fc1a4935effd79c30ae55ef12b1ef7e9cba4a89ca3c276ec46fac0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c02c997adc6234316569921d5546fe10ec823640148770b62c7f26dba8d36a26
MD5 00934362fa6e71545ecc78c3defeea88
BLAKE2b-256 2c60a672188ac34b56bc3da3ec6210ff363bd64f21741dc259be776c4bfdbff7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6539f1569e7d27701b05b6205b7edb2c8b7b82645c638f03d8b92909cf065cac
MD5 e723ed529ac59e2197f5ff06d56eb90d
BLAKE2b-256 3cac3a922eb207bebda996f06e62a7fc5e072c59d09d5c363041ec4925556772

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a48638ed8da3f241246feed00fafc718d660cc553d4ed9e4c4048e514178996f
MD5 1fddad5f53baaae79f759e503fede6bb
BLAKE2b-256 73ffe6ab11945f940c7617b808ef29e65f196f540d25bc9cb5b1ef368b679cc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8955eecde259e368007d579752d4a7e445a4454ac5b4c59b8736ba79bf990933
MD5 28906d3d22abcdbc2319d8d78a7c3e8e
BLAKE2b-256 180e2ba1536324b584fbcce54902197301f59c814896b2823ea790a1cf75198e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 883abbf74e1d657c6eb34e4c0a67de79de934d5a452c502cda36b4c2675b8f7d
MD5 5272fd8ffe64cd50b2d105ab8bb97069
BLAKE2b-256 837414340a7fd3625b89980f2b0141d6295ebcb6016709a93536ff8bf75902fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pypgl-0.5.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c3c42e79f06454f6b1a830ae831c7281c3e057fda10163b93f6001b789662f1b
MD5 fbfa14bf59528ec64a0c32d23138ddec
BLAKE2b-256 4fb7d408f57cbdd579070412ace0b61f04d06f111c21f088e9116d95fc04204b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

File details

Details for the file pypgl-0.5.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pypgl-0.5.1-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pypgl-0.5.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c9d9b03cbae315ef7b8d61f21de1e963855fd6fe9a012bc936dfc3865b6b1f4d
MD5 a541890505837bf04697a50e0e7e2680
BLAKE2b-256 20071c32a2957a1a366cdc73461b5b2911573a34066d2e74591aa317eacc7f95

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypgl-0.5.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: wheels.yml on gfonsecabr/pypgl

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

Supported by

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