Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

opengl_extrusions -- tessellation and extrusion library

Tubing, extrusion, lathing and polygon tessellation, producing NumPy arrays

This library provides loosely the same capabilities as the GLE Tubing and Extrusion library for use with modern core-profile rendering systems, i.e. those which expect arrays of points and indices rather than a GL call-list. It is used in the OpenGLContext project to replace the GLE based extrusions and GLU based tessellations, and its NURBS surface evaluator replaces the GLU NURBS tessellator, which is a GLU 1.3 feature that not every platform's GLU has.

The tessellator is a CDT tessellator which differs from the GLU library's tessellator which is often deprecated on newer platforms. The biggest observable change should be that the tessellations are less likely to have very narrow long triangles, which cause weird artefacts when rendering.

The library aims to be portable: NumPy is the only runtime dependency, and the one compiled component — the geometric predicates — is built by Cython at install time where a compiler is present, with a pure-Python fallback giving the same results where it is not.

Give it a 2D outline and a path, and it hands back the vertex arrays for the surface that outline sweeps out — positions, normals, texture coordinates, tangents and an index buffer, named the way glTF names them. No attempt is made to match the GLU or GLE APIs, as they don't cleanly map to modern rendering patterns.

from opengl_extrusions import extrude, circle

pipe = extrude(circle(radius=0.1, sides=16),
               path=[(0, 0, 0), (0, 0, 1), (1, 0, 2)])

pipe.primitives[0].positions      # (V, 3) float32, C-contiguous
pipe.primitives[0].indices        # (T*3,) uint32

The default frame orients the contour against a fixed up=(0, 1, 0), which has nothing to align to where the path runs straight up. For a path that may point anywhere — a vertical mast, a cable, a loop — ask for the rotation-minimizing frame instead:

mast = extrude(circle(radius=0.1, sides=16),
               path=[(0, 0, 0), (0, 1, 0), (0, 2, 0)],
               frames='rmf')

Swept shapes

Lathe, spiral, screw, toroid, polycylinder and polycone — generated here and drawn by OpenGLContext in a core profile.

API Highlights

Call Shape
extrude(contour, path) outline swept along any path
polycylinder(path, radius) a round tube of constant radius along a polyline
polycone(path, radii) a tube whose radius is given at every point
lathe(contour, …) swept about the z axis, contour plane staying radial
spiral(contour, …) swept along a helix, contour plane square to the path
screw(contour, …) extruded along z while turning
helicoid(…), toroid(…) the two above with a circular section
vrml97_extrusion(…) VRML97's Extrusion node, to its specification
tessellate(contours) 2D outlines into triangles using CDT tessellation

Sweeps take corners four ways (raw, angle, cut, round), shade three ways (facet, edge, path_edge), cap either end, close into a loop, taper, twist, take per-point colour, and follow splines sampled to a curvature tolerance.

The tessellator

tessellate() turns 2D outlines into triangles, and is usable without the rest of the library. It handles outlines that cross themselves, holes, coincident vertices and T-junctions, and the triangles it produces have the largest smallest angle the outline allows.

Tessellation

Holes, winding rules, and refinement to an area or an angle target — the white lines are the triangle edges.

from opengl_extrusions import tessellate

result = tessellate([outer_ring, hole_ring], winding='odd', min_angle=30.0)
result.points        # (V, 2)
result.triangles     # (T, 3), counter-clockwise

See docs/TESSELLATION.md.

Install

pip install opengl_extrusions

NumPy is the only runtime dependency. The code is Python and NumPy with one exception: the geometric predicates' inner loop is also built as a small Cython extension. Published wheels carry it. Building from source needs Cython, which pip installs for the build; where there is no C compiler the extension is skipped and the pure-Python implementation of the same predicates is used, and everything behaves identically — the two are required to produce the same triangles, and the test suite runs both on every supported Python. opengl_extrusions.predicates.ACCELERATED says which is in use; OPENGL_EXTRUSIONS_NO_ACCEL=1 forces the pure path.

The optional gle extra, which only the parity tests use, pins a pre-release of PyOpenGL, so it needs pip install --pre 'opengl_extrusions[gle]'.

Documentation

Design

glTF is the vocabulary, not the container. Attributes are called POSITION, NORMAL, TEXCOORD_0 and carry the types glTF gives them, but each is a plain NumPy array rather than an accessor into a blob, so reading a vertex is indexing rather than decoding. to_gltf() and to_glb() write the file form; to_glb() writes beside the path and renames over it, so a failed write leaves the file that was there.

The arrays are in the form a GL vertex buffer takes. C-contiguous float32 attributes and uint32 indices are what glBufferData wants, so no conversion step stands between a generated mesh and the GPU. It is also the arrangement OpenGLContext's PBRMesh holds, so a mesh from here can be handed to one without a copy:

from OpenGLContext.scenegraph.pbrmesh import PBRMesh
node = PBRMesh(**pipe.primitives[0].arrays())      # no copy: shares memory

The predicates return an exact sign. Orientation and in-circle tests decide every step of the tessellation, and a floating-point determinant near zero answers "collinear" for points that are not, which produces a triangulation that is not one.

Licence

MIT. See LICENSE.

This library was generated by a large language model under human direction, and jurisdictions differ on whether such material attracts copyright at all. Where it does not, the code may be used freely; where it does, the MIT terms govern it. The authorship note in LICENSE has the detail.

Metadata

Release files for opengl-extrusions 1.2.1a1

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

Source distribution (sdist)

Source distribution for opengl-extrusions 1.2.1a1
File Size Uploaded Provenance Actions
opengl_extrusions-1.2.1a1.tar.gz 223.1 kB With provenance Details for opengl_extrusions-1.2.1a1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for opengl-extrusions 1.2.1a1
File Actions
opengl_extrusions-1.2.1a1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for opengl_extrusions-1.2.1a1-cp314-cp314-win_amd64.whl
opengl_extrusions-1.2.1a1-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details for opengl_extrusions-1.2.1a1-cp314-cp314-win32.whl
opengl_extrusions-1.2.1a1-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details for opengl_extrusions-1.2.1a1-cp314-cp314-musllinux_1_2_x86_64.whl
opengl_extrusions-1.2.1a1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for opengl_extrusions-1.2.1a1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
opengl_extrusions-1.2.1a1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for opengl_extrusions-1.2.1a1-cp314-cp314-macosx_11_0_arm64.whl
opengl_extrusions-1.2.1a1-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details for opengl_extrusions-1.2.1a1-cp314-cp314-macosx_10_15_x86_64.whl
opengl_extrusions-1.2.1a1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for opengl_extrusions-1.2.1a1-cp313-cp313-win_amd64.whl
opengl_extrusions-1.2.1a1-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details for opengl_extrusions-1.2.1a1-cp313-cp313-win32.whl
opengl_extrusions-1.2.1a1-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for opengl_extrusions-1.2.1a1-cp313-cp313-musllinux_1_2_x86_64.whl
opengl_extrusions-1.2.1a1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for opengl_extrusions-1.2.1a1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
opengl_extrusions-1.2.1a1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for opengl_extrusions-1.2.1a1-cp313-cp313-macosx_11_0_arm64.whl
opengl_extrusions-1.2.1a1-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details for opengl_extrusions-1.2.1a1-cp313-cp313-macosx_10_13_x86_64.whl
opengl_extrusions-1.2.1a1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for opengl_extrusions-1.2.1a1-cp312-cp312-win_amd64.whl
opengl_extrusions-1.2.1a1-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details for opengl_extrusions-1.2.1a1-cp312-cp312-win32.whl
opengl_extrusions-1.2.1a1-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for opengl_extrusions-1.2.1a1-cp312-cp312-musllinux_1_2_x86_64.whl
opengl_extrusions-1.2.1a1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for opengl_extrusions-1.2.1a1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
opengl_extrusions-1.2.1a1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for opengl_extrusions-1.2.1a1-cp312-cp312-macosx_11_0_arm64.whl
opengl_extrusions-1.2.1a1-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details for opengl_extrusions-1.2.1a1-cp312-cp312-macosx_10_13_x86_64.whl
opengl_extrusions-1.2.1a1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for opengl_extrusions-1.2.1a1-cp311-cp311-win_amd64.whl
opengl_extrusions-1.2.1a1-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details for opengl_extrusions-1.2.1a1-cp311-cp311-win32.whl
opengl_extrusions-1.2.1a1-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details for opengl_extrusions-1.2.1a1-cp311-cp311-musllinux_1_2_x86_64.whl
opengl_extrusions-1.2.1a1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for opengl_extrusions-1.2.1a1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
opengl_extrusions-1.2.1a1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for opengl_extrusions-1.2.1a1-cp311-cp311-macosx_11_0_arm64.whl
opengl_extrusions-1.2.1a1-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details for opengl_extrusions-1.2.1a1-cp311-cp311-macosx_10_9_x86_64.whl
opengl_extrusions-1.2.1a1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for opengl_extrusions-1.2.1a1-cp310-cp310-win_amd64.whl
opengl_extrusions-1.2.1a1-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details for opengl_extrusions-1.2.1a1-cp310-cp310-win32.whl
opengl_extrusions-1.2.1a1-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details for opengl_extrusions-1.2.1a1-cp310-cp310-musllinux_1_2_x86_64.whl
opengl_extrusions-1.2.1a1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for opengl_extrusions-1.2.1a1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
opengl_extrusions-1.2.1a1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for opengl_extrusions-1.2.1a1-cp310-cp310-macosx_11_0_arm64.whl
opengl_extrusions-1.2.1a1-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details for opengl_extrusions-1.2.1a1-cp310-cp310-macosx_10_9_x86_64.whl

Total release size: 7.1 MB

Release files / opengl_extrusions-1.2.1a1.tar.gz

Download URL opengl_extrusions-1.2.1a1.tar.gz
Size 223.1 kB
Tags Source
SHA-256 checksum
How to use checksums
affc172cd29fcf3a1e420f0d208b1668ce821176be9a6b120d501cb33f0d2dd0
BLAKE2b-256 checksum
How to use checksums
8d3c5a0c1c4b864eadaea819ccf429445f7e36ebbb947fda08bfcdc08ee6a450
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-win_amd64.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-win_amd64.whl
Size 197.2 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
6f9219625ba681025ec1f2c3a5a3fbd20d8fb6eb719b646b33958bad670ae26c
BLAKE2b-256 checksum
How to use checksums
3679efa46446e91a0c67917fdb5f9a34a882f30340bcd04c4212ff5da1e1988f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-win32.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-win32.whl
Size 195.7 kB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
5e115eb9b6ba0af698335011862e0b7f2e1638030337b6e52073439980915849
BLAKE2b-256 checksum
How to use checksums
0e56a536b0d427db51304ffb5675c7688121b709ef54ecec572025e8652608e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-musllinux_1_2_x86_64.whl
Size 300.9 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0a2076112ec2a9cc858db2e8f1872acb4089800bd7751657bc4cc07f311dda0c
BLAKE2b-256 checksum
How to use checksums
03b0be8518daac3bdbd0d5ce584e0c9feb06c12a4268d661bbddcfb5aaa787d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 300.2 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
2058deaf605edbed149cba2f7dfecb3781132ebfdd87d5697037cb8932a8d926
BLAKE2b-256 checksum
How to use checksums
837a0f4037ce231820b0d582b75378064c7ee36729a5589ab2cc0ce7be69dfff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-macosx_11_0_arm64.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-macosx_11_0_arm64.whl
Size 196.9 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c25a41202ec518268f4d2c097fc396d238a4d7c337961d7390be59bf5bda8868
BLAKE2b-256 checksum
How to use checksums
92b67b032fcccf8c69b70648d3502135fa0fb4046fda0dbd3b69ec3b7c3deb76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp314-cp314-macosx_10_15_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp314-cp314-macosx_10_15_x86_64.whl
Size 196.1 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
92f5f462bfa9dfd144db90c7c5132761275685878cad3cf43a428ffe8157b85b
BLAKE2b-256 checksum
How to use checksums
6af2672bcd1e60df3a89b6b1eb4c32ad0e833c060255a0b5e617ad79fefd785e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-win_amd64.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-win_amd64.whl
Size 196.3 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
1fcb6329bcc9b93385db6ff1072762eb2ac535a31dbd40302074a66220cb4e12
BLAKE2b-256 checksum
How to use checksums
961a111623e055ae1ef3ce8eaeaae92c9362f99edefede8fb392d10ae901e903
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-win32.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-win32.whl
Size 194.8 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
e1ba5d55829c449dcb6e8ec585dbc2fab0df2472628a4d28f7ff2bd66624e4bf
BLAKE2b-256 checksum
How to use checksums
fba8ac0cfc2c21686d55f084eb53e133128a3ce9de2dae261dcda435784e85f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-musllinux_1_2_x86_64.whl
Size 302.2 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
eac6ad0283f6b2dc7262dfd25e43fb97630faf12678ce731e5c1ed25b8925699
BLAKE2b-256 checksum
How to use checksums
270f7c0f1d223a23eec069e69fe7df5fd3a2e5effc10c2e57aeb5a380ac9a5c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 301.9 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
e9a97feccd8fc2ab744d399efeed718983f691def8686f775e514d38b0ecd698
BLAKE2b-256 checksum
How to use checksums
9bd1467ce168a117e3ded11b2cbce542fac9db50a80581483b5379ffcf43de11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-macosx_11_0_arm64.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-macosx_11_0_arm64.whl
Size 196.7 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
365215691bce07d1d9924c5f332516d204281ca5422caf4adb7587585040095d
BLAKE2b-256 checksum
How to use checksums
78aaed7558293377ed58ece7d61f93eefaf39529b425d32eeb3908920de8d538
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp313-cp313-macosx_10_13_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp313-cp313-macosx_10_13_x86_64.whl
Size 196.1 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
abcfe611d3c14651f739ddbf97fb15e29aa4a9e01ddd0397dc01b8a7aadc8079
BLAKE2b-256 checksum
How to use checksums
d48eeb3d328ed203345632c5f673eee1ae168ada8577d1273d013b1a411fb3df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-win_amd64.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-win_amd64.whl
Size 196.4 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
24a26f2dad84a585ee5724f47b95c6df0a0529f22bc4258c8115ece76b382be8
BLAKE2b-256 checksum
How to use checksums
f1f980b557a6a6ab5a6a96eaa01b7b5250775da2e504bee911f470aba4135c78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-win32.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-win32.whl
Size 194.9 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
d7be07c702c20339568d4e61a5a60b8517f9b40aeaf19a550b2b6206e7c0ef5d
BLAKE2b-256 checksum
How to use checksums
33e1cc3afe2f3c80f6c6d95fe7798ee94056fdd0ec5e4b5e41c2fffc1374b92e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-musllinux_1_2_x86_64.whl
Size 300.8 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5975bde1da1dae0b593076d91721b0aed13659706be09beaee6be272ef0e03cb
BLAKE2b-256 checksum
How to use checksums
e458337a10ffc148d02925b2ee96c3031f31cb959c7e302a66bf4342d49d7bf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 300.8 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
929f1ac78d0681a8c2789c25d30ac5281bc8bc49fb4ef3e70fdfb09f171760a1
BLAKE2b-256 checksum
How to use checksums
88c2177f70750b3c0b254cfa8e9696427d7aacfa61a8d0aa8af98e4a8a2febc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-macosx_11_0_arm64.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-macosx_11_0_arm64.whl
Size 196.9 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bff8214968a97926fc0fa2be86c093a4da2c6bbb20290c2e5566fa4556bf6b5f
BLAKE2b-256 checksum
How to use checksums
e2b6314c251e2dead399d6e1aa56de96f032ae2d4484edf353516102d19ad2da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp312-cp312-macosx_10_13_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp312-cp312-macosx_10_13_x86_64.whl
Size 196.2 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
136d74018a237297b6600d5f318ceb96d85fe3adbff82523739aae9db0784552
BLAKE2b-256 checksum
How to use checksums
95f7cae23aa79d2478a707928021d64656a0eea0e65bd8150d720c719301572c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-win_amd64.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-win_amd64.whl
Size 196.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
e81a9db17467df524dcb6b72ec1376aee529330facc1daa3a456ec7472e57a65
BLAKE2b-256 checksum
How to use checksums
d9cba790403f1e2edaffe7d879bd5bd8d75c5ae9160f1739a619f2b8d521d785
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-win32.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-win32.whl
Size 194.4 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
27f5d3de0247c6ffd954cd68f8655b26b761d941239ebb9b42d85da947419eef
BLAKE2b-256 checksum
How to use checksums
88657ccb1ed3306acdd8340dbfebc3f4d0fb1c7b0a6854484904c7d997cbd5e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-musllinux_1_2_x86_64.whl
Size 293.9 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
cc9f0d26e25e722ae050f50ae7760f3592feacf654bd258eb2602aac7e8ae226
BLAKE2b-256 checksum
How to use checksums
cd233d6989f06f948f3b6b0bc53292e77094a085c97673dfa48b1b71ca7a4f62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 293.4 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
adf55cfb9082087ba93a4c461fa0ccb493dcd69c355c9661b46a6638a93bbdf6
BLAKE2b-256 checksum
How to use checksums
e7623d7edd62a7f9985e4dbcd9c81b9d6b60c25864d90e441d2f2a30ae7f5a58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-macosx_11_0_arm64.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-macosx_11_0_arm64.whl
Size 196.2 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8c11cbb7b07975fb973ee9b183fd4101b33622bd4339fb64ff4ff045d0ad031f
BLAKE2b-256 checksum
How to use checksums
17aa3a3c4a334ae5aac0767f81bb83c5d72ae921343f220cb04b2abc37748f29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp311-cp311-macosx_10_9_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp311-cp311-macosx_10_9_x86_64.whl
Size 195.3 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9f26ebf3b72d50c64c78d564f3c51dbf020a48dd974fefbe984a09517cd97556
BLAKE2b-256 checksum
How to use checksums
97c678839895e3083284b1f490f9bec49c8a6eef1dd80790abb32f1e300c4480
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-win_amd64.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-win_amd64.whl
Size 196.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
3839559c623917148a94ed05e67ceb5865754cdc3dcacb7831dcb077dcabad09
BLAKE2b-256 checksum
How to use checksums
472136ed22f4ce01f33b92dffbf3fbabec337bc19d5aad7346bbcad666b224f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-win32.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-win32.whl
Size 194.7 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
100e786a7ce7c44539a11e2b0d4f1f83c771a1c79a7d452b9f68bd050942045d
BLAKE2b-256 checksum
How to use checksums
cf47cc020e80d3d8860bd402e71ca44b8bda5045570d6434ae43849cc3a5ce40
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-musllinux_1_2_x86_64.whl
Size 291.3 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e42a12c941eed032ab58e03dc4669f2e7272eba6bb90b744a69fbb44b28f0a65
BLAKE2b-256 checksum
How to use checksums
a9db36e7bb3f669e80d4cc62dd6f965b6d002ea5423145bdf21ab78458311295
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 290.8 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
b9cf30bf30bb7bb0f756881b139a8c1c86001a03f54bf9a1c4ae1df63a37bda1
BLAKE2b-256 checksum
How to use checksums
9615a7ce4f217d5f643a450536999c7cb4dc6998c115315a8cb3296d4ffb7368
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-macosx_11_0_arm64.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-macosx_11_0_arm64.whl
Size 196.9 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7cf10a3ffbdd2fef0db35c755886b9c76c3fff247c9aa9f6f8a9c25de31936a1
BLAKE2b-256 checksum
How to use checksums
7f78d385d51cd7fb4765bb523a3eb04981b30b948ce7c4b9571c8df9da46793e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Release files / opengl_extrusions-1.2.1a1-cp310-cp310-macosx_10_9_x86_64.whl

Download URL opengl_extrusions-1.2.1a1-cp310-cp310-macosx_10_9_x86_64.whl
Size 195.8 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
858fc3ca301474405a5188d61cfa8ccd619a568fe12caf61f06366d37a7dd0b5
BLAKE2b-256 checksum
How to use checksums
da15398f4c03b66917782323fe05d67442c7a38ebcbe2bdc2255713bc778e525
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 18, 2026.

Transparency log

Security for opengl-extrusions 1.2.1a1

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.

Full provenance

All 31 files in this release have been uploaded with provenance metadata.

Select from 31 files

Attestation for opengl_extrusions-1.2.1a1.tar.gz

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 Oct 18, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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