Skip to main content

PyGLM

OpenGL Mathematics (GLM) library for Python

GLSL + Optional features + Python = PyGLM
A mathematics library for graphics programming.

PyGLM is a Python extension written in C++.
By using GLM by G-Truc under the hood, it manages to bring glm's features to Python.  
Some features are unsupported (such as most unstable extensions) - Please see Unsupported Functions below.
If you encounter any issues or want to request a feature, please create an issue on the issue tracker.

For a (barely) complete reference, please take a look at the wiki.

Tiny Documentation

Why PyGLM?

Besides the obvious - being mostly compatible with GLM - PyGLM offers a variety of features for vector and matrix manipulation.
It has a lot of possible use cases, including 3D-Graphics (OpenGL, DirectX, ...), Physics and more.

At the same time, it has great performance, being between 2x and 15x as fast as numpy! (see end of page)
(depending on the individual function)

Installation

PyGLM supports Windows, Linux, MacOS and other operating systems with either x86 (32-bit) or x64 (64-bit) architecture,
running Python 3.5 or higher. (Prior versions of Python - such as Python 2 - were supported up to PyGLM version 0.4.8b1)

It can be installed from the PyPI using pip:

pip install PyGLM
# please make sure to install "PyGLM" and not "glm", which is a different module

And finally imported and used:

import glm

Using PyGLM

PyGLM's syntax is very similar to the original GLM's syntax.
There is no need to import anything but glm, as it already contains the entire package.

License requirements

Please make sure to include the license for GLM in your project when you use PyGLM!
(this also includes binary distributions, e.g. *.exe)

You can do so by copying the COPYING file (or it's contents) to your project.

Differences to glm

Instead of using double colons (::) for namespaces, periods (.) are used, so
glm::vec2 becomes glm.vec2.

PyGLM supports the buffer protocol, meaning its compitible to other objects that support the buffer protocol,
such as bytes or numpy.array
(for example you can convert a glm matrix to a numpy array and vice versa).
PyGLM is also capable of interpreting iterables (such as tuples) as vectors, so e.g. the following equasion is possible:

result = glm.vec2(1) * (2, 3)

Note: This feature might not or only partially be available in PyGLM versions prior to 2.0.0

PyGLM doesn't support precision qualifiers. All types use the default precision (packed_highp).

If a glm function normally accepts float and double arguments, the higher precision (double) is used.

There is no way to set preprocessor definitions (macros).
If - for example - you need to use the left handed coordinate system, you have to use *LH, so
glm.perspective becomes glm.perspectiveLH.

All types are initialized by default to avoid memory access violations.
(i.e. the macro GLM_FORCE_CTOR_INIT is defined)

In case you need the size of a PyGLM datatype, you can use

glm.sizeof(<type>)

The function glm.identity requires a matrix type as it's argument.

The function glm.frexp(x, exp) returns a tuple (m, e), if the input arguments are numerical.
This function may issue a UserWarning. You can silence this warning using glm.silence(1).

The function glm.value_ptr(x) returns a ctypes pointer of the respective type.
I.e. if the datatype of x is float, then a c_float pointer will be returned.
Likewise the reverse-functions (such as make_vec2(ptr)) will take a ctypes pointer as their argument
and return (in this case) a 2 component vector of the pointers underlying type.

glm.silence(ID) can be used to silence specific warnings.
Supplying an id of 0 will silence all warnings.

Unsupported functions

Aside from most of the unstable extensions,
PyGLM doesn't support the following extensions and methods, due to compatability issues:
The GLM_GTC_bitfield extension,
glm::log2 from GLM_GTC_integer.
glm::packUnorm and glm::packSnorm from GLM_GTC_packing.

Example

>>> import glm
>>> v = glm.vec3()
>>> v.x = 7
>>> print(v.xxy)
vec3(            7,            7,            0 )

>>> m = glm.mat4()
>>> print(m)
[            1 |            0 |            0 |            0 ]
[            0 |            1 |            0 |            0 ]
[            0 |            0 |            1 |            0 ]
[            0 |            0 |            0 |            1 ]

>>> v = glm.vec4(1, 2, 3, 4)
>>> print(v + (8, 7, 6, 5))
vec4(            9,            9,            9,            9 )

Speed comparison to numpy

How PyGLM's performance roughly compares to NumPy's performance:
instruction     | np speed (%)  | glm speed (%)
import          |   4.76        |  100.00
mat4()          |   9.76        |  100.00
dot(vec3, vec3) |  28.92        |  100.00
transpose(mat4) |  25.64        |  100.00
vec4 * vec4     |  27.89        |  100.00
mat4 * vec4     |  17.68        |  100.00
mat4[0]         |  49.99        |  100.00

Metadata

Release files for pyglm 1.99.2

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

Built distributions (wheels)

Table of built distributions (wheels) for pyglm 1.99.2
File
PyGLM-1.99.2-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
PyGLM-1.99.2-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
PyGLM-1.99.2-cp38-cp38-manylinux1_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-64 Details
PyGLM-1.99.2-cp38-cp38-manylinux1_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-32 Details
PyGLM-1.99.2-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
PyGLM-1.99.2-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
PyGLM-1.99.2-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
PyGLM-1.99.2-cp37-cp37m-manylinux1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64 Details
PyGLM-1.99.2-cp37-cp37m-manylinux1_i686.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32 Details
PyGLM-1.99.2-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details
PyGLM-1.99.2-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
PyGLM-1.99.2-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
PyGLM-1.99.2-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details
PyGLM-1.99.2-cp36-cp36m-manylinux1_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32 Details
PyGLM-1.99.2-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details
PyGLM-1.99.2-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
PyGLM-1.99.2-cp35-cp35m-win32.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-32 Details
PyGLM-1.99.2-cp35-cp35m-manylinux1_x86_64.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 Details
PyGLM-1.99.2-cp35-cp35m-manylinux1_i686.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-32 Details
PyGLM-1.99.2-cp35-cp35m-macosx_10_9_x86_64.whl CPython 3.5 CPython 3.5 pymalloc macOS 10.9+ x86-64 Details

Total release size: 66.4 MB

Release files / PyGLM-1.99.2-cp38-cp38-win_amd64.whl

Download URL PyGLM-1.99.2-cp38-cp38-win_amd64.whl
Size 1.3 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
722e2a1f57a8ed983c516fd3f69b9407fdfb8c1467c93fa2e820e468850e7e63
BLAKE2b-256 checksum
How to use checksums
bb42de74fee7791e09879a9a059b9a78efa4243ec153ecfcdd6574fdf8c4fff0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp38-cp38-win32.whl

Download URL PyGLM-1.99.2-cp38-cp38-win32.whl
Size 1.0 MB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
544b6d51290beb4ed5a30786e1393b94d167a268dc3c0f05e742b69ec8299270
BLAKE2b-256 checksum
How to use checksums
d5ce0207e641f95afa80865a005e7f8416592cab664dbde0bf2d08c59bdc597d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp38-cp38-manylinux1_x86_64.whl

Download URL PyGLM-1.99.2-cp38-cp38-manylinux1_x86_64.whl
Size 7.0 MB
Tags CPython 3.8 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
60d45242d80392aac4dc0bcccef8d8febd85d7af1e2b557ac83e08c878e49519
BLAKE2b-256 checksum
How to use checksums
1bf48b9faf994f932a2254ba674a14a8ffefb0f8201a9eb3e5dbcb2165167fcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp38-cp38-manylinux1_i686.whl

Download URL PyGLM-1.99.2-cp38-cp38-manylinux1_i686.whl
Size 6.1 MB
Tags CPython 3.8 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
84f2f574cf0dcbfc70c61a8aa6b44887cd04ddbaff380b4a404f99f49267f56d
BLAKE2b-256 checksum
How to use checksums
c51419241a3bba215740e2d75a904a20c0103c1d3bb7d298a41f1b028af02345
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp38-cp38-macosx_10_9_x86_64.whl

Download URL PyGLM-1.99.2-cp38-cp38-macosx_10_9_x86_64.whl
Size 1.3 MB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
6c35776d22a28626b396df6cb5acdcf55644d317dc7624d8c800e0e7ce0f6b4a
BLAKE2b-256 checksum
How to use checksums
a02585af73a16fdc461e3373dc7f90b38206ff27624dd2853194d0f0d1054109
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

Release files / PyGLM-1.99.2-cp37-cp37m-win_amd64.whl

Download URL PyGLM-1.99.2-cp37-cp37m-win_amd64.whl
Size 1.3 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
e8a20e114cf9aef1aaf2bb450107a141429c08aca9ba57ad15075acf39726dd7
BLAKE2b-256 checksum
How to use checksums
873e3f5dfef964957f90fa1683dbcdcd539411376fe8d338a2ba3aea2f55cd6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp37-cp37m-win32.whl

Download URL PyGLM-1.99.2-cp37-cp37m-win32.whl
Size 1.0 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
063df5c2afb9032e774b2eae322a978a51719ff7afe89e82b047a67b9c0540f8
BLAKE2b-256 checksum
How to use checksums
0da08f02e472ffcffca76e5ebf7db9c08fc08d86ffd66d12559f0d9c0f71dd15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp37-cp37m-manylinux1_x86_64.whl

Download URL PyGLM-1.99.2-cp37-cp37m-manylinux1_x86_64.whl
Size 7.0 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
efbe9bf06ef9336c500eb901822da2d346e8afa3f1bc36cdea8dd5c986e23dd5
BLAKE2b-256 checksum
How to use checksums
77d8fe7e174c276c25a0285947624431a0c0505a82d7b89abd1ebe356c04f855
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp37-cp37m-manylinux1_i686.whl

Download URL PyGLM-1.99.2-cp37-cp37m-manylinux1_i686.whl
Size 6.0 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
4706fe926492f7ec11bcf957dcb4b498c951f848a0c6501e6c881f5385046a86
BLAKE2b-256 checksum
How to use checksums
3e995bfe651c78b08a8c8d6b05dd33c56ae3b23382460fdc2fb4212d19cff9cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL PyGLM-1.99.2-cp37-cp37m-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9b38a6996e12a22e35c751d80714f585e0f2f23db9dd718179a5f5b390063b34
BLAKE2b-256 checksum
How to use checksums
86c82781797c8203db639c663f50589ad343227081d48e9b6a572fb68918ac9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

Release files / PyGLM-1.99.2-cp36-cp36m-win_amd64.whl

Download URL PyGLM-1.99.2-cp36-cp36m-win_amd64.whl
Size 1.3 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
48ca2185a2a60b9197a9359c7ff678b590efbd2ace460673abb7e2baa2967eaf
BLAKE2b-256 checksum
How to use checksums
3b3373b74068c0493d4081536eb0ecc117e06fd9634185b2e93cda29e103b919
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp36-cp36m-win32.whl

Download URL PyGLM-1.99.2-cp36-cp36m-win32.whl
Size 1.0 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
00776de0b932c46d38b239a825dbb542d6fc0044847c77767f0dd1cb7ab4a2e2
BLAKE2b-256 checksum
How to use checksums
138b471d3bcc082229185f31f79daf3d675332a1e6dc2e4a79d9790309751927
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp36-cp36m-manylinux1_x86_64.whl

Download URL PyGLM-1.99.2-cp36-cp36m-manylinux1_x86_64.whl
Size 6.9 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
dfc82efe04426cdbba6a1dcf307d3640faf2639f0f02071aca4331208a67fe7b
BLAKE2b-256 checksum
How to use checksums
b88148c0e8b4efa0cadbe4ac967cbff91b90ccfc2c854d6da34c693dd73c21ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp36-cp36m-manylinux1_i686.whl

Download URL PyGLM-1.99.2-cp36-cp36m-manylinux1_i686.whl
Size 6.0 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
cc022f1753860c9b44d85cfae336830897c659c4f77799cfa22e542293a9e6bf
BLAKE2b-256 checksum
How to use checksums
a1359a1f14ebf34fcb0c0d4ec41fc1956c4d2f6fdf8ce402c47823f26fcf32df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL PyGLM-1.99.2-cp36-cp36m-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
b9d6e5baed1a85c75bbe7a43ab613e8067b0b49d58d8d94fb9ef62b3dac45397
BLAKE2b-256 checksum
How to use checksums
f7891ff2b40f98d29332e0131cca6a8b1150a711d046699efb465cc994331851
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

Release files / PyGLM-1.99.2-cp35-cp35m-win_amd64.whl

Download URL PyGLM-1.99.2-cp35-cp35m-win_amd64.whl
Size 1.3 MB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
5e673ce50d02577eebf6ab02d8ff485db8a8eb8cd72c39e5daf5c7bf570a35a0
BLAKE2b-256 checksum
How to use checksums
1a4e2c12f2a28476e161e218c8264449b46cf2e196256562d4540a9c5f143687
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp35-cp35m-win32.whl

Download URL PyGLM-1.99.2-cp35-cp35m-win32.whl
Size 1.0 MB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
c28a710c36bbdcf477ba5b27c5ea6c1baea20f02daee99fb1cedda11c1c6b61d
BLAKE2b-256 checksum
How to use checksums
779f20dd12489e8d2c674a919b6969c62c6528449242cef2ff3eb4d188355ce9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0

Release files / PyGLM-1.99.2-cp35-cp35m-manylinux1_x86_64.whl

Download URL PyGLM-1.99.2-cp35-cp35m-manylinux1_x86_64.whl
Size 6.9 MB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
eebf6fcf01a32b77cfb36384c186e1778605603bcfee674876100f1747e831e4
BLAKE2b-256 checksum
How to use checksums
4d533504f0c93d4e06f5693f77c6b1d392782bb62d6b1c0c85a084a9ac378e83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp35-cp35m-manylinux1_i686.whl

Download URL PyGLM-1.99.2-cp35-cp35m-manylinux1_i686.whl
Size 6.0 MB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
ba1d483726c067edf8666231a540036a36dbba39d0031f6292d92816f9388d9e
BLAKE2b-256 checksum
How to use checksums
07062709df97d66e82d44935b6fab06b7944c5f07c472dac85388e7f12e1fac6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.5.6

Release files / PyGLM-1.99.2-cp35-cp35m-macosx_10_9_x86_64.whl

Download URL PyGLM-1.99.2-cp35-cp35m-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.5 CPython 3.5 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
666fdcfefde402a40de17bb738dd51167bb5cb776f3a91875eb218a379c2343f
BLAKE2b-256 checksum
How to use checksums
4437e18324deaf91468e6b8623f619fe572efa54c12196dfc9f60db52a2dc1d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

Release history Release notifications | RSS feed

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