Skip to main content

General-purpose finite element solver - pyfe3d

Github Actions status:

Actions Status

Coverage status:

Codecov Status

About pyfe3d

The pyfe3d module is a general-purpose finite element solver for structural analysis and optimization based on Python and Cython. The main principles guiding the development of pyfe3d are: simplicity, efficiency and compatibility. The aimed level of compatibility allows one to run this solver in any platform, including the Google Colab environment.

Citing this library

Saullo G. P. Castro. (2026). General-purpose finite element solver based on Python and Cython (Version 0.10.0). Zenodo. DOI: https://doi.org/10.5281/zenodo.6573489.

Documentation

The documentation is available on: https://saullocastro.github.io/pyfe3d.

Important features of this library

  • efficient and simple for linear and nonlinear analyses
  • importable and cimportable code
  • 6 degrees-of-freedom per node

Available finite elements

  • 'Quad4' - 4-node plate with linear interpolation, equivalent to Nastran's CQUAD4. The recommended quadrilateral plate element.

  • 'Quad4R' - 4-node plate with linear interpolation, equivalent to Abaqus' S4R. It has a not very robust hourglass control.

  • 'Tria3DSG' - 3-node plate with linear interpolation and a discrete shear gap transverse shear field, after Bletzinger, Bischoff and Ramm (2000). The recommended triangular plate element: it is free of shear locking by construction and needs no tuning parameter.

  • 'Tria3R' - 3-node plate with linear interpolation, equivalent to Abaqus' S3R or Nastran's CTRIA3. Its transverse shear is taken at the centroid and locks, and it relies on the alpha_shear_locking stabilisation to unlock. No single value of that parameter serves every problem class, so it has to be verified per problem, see the element documentation. Prefer Tria3DSG for new work.

  • 'BeamC' - 2-node Timoshenko beam element with consistent shape functions and analytical integration. The recommended beam element.

  • 'BeamLR' - 2-node Timoshenko beam element with linear interpolation and reduced integration.

  • 'Spring' - 2-node spring element with 6 stiffenesses defined in the element coordinate system.

  • 'Truss' - 2-node truss element with only axial and torsion stiffness. I recommend using the BeamLR instead, which is physically more consistent.

Development history

See CHANGELOG.md for the details of each version.

Main versions Changes
0.10.0 New Tria3DSG element with discrete shear gap transverse shear, the recommended triangle; physics-based drilling stiffness (Allman, Hughes-Brezzi) as the default, with the K6ROT penalty kept through drilling_model; fixed lost K6ROT coefficient; new pyfe3d.solver module for linear buckling and natural frequencies; speedup with Cython and compiler flags.
0.9.0 Shear correction factors as per Rohwer and Vlachoutsis.
0.8.0 KCNL matrix for all elements, with more accurate nonlinear analyses; fixed KC0 and KG for beams; fixed KC0 for Tria3R.
0.7.0 Drilling stiffness re-coupled with in-plane rotation using K6ROT; fixed drilling stiffness integration; restored missing pid attribute.
0.6.4 Internal force vectors (finte) for all elements; fixed drilling stiffness (K6ROT) scaling; added Python 3.14 and removed Python 3.8 support; Linux wheels limited to 64-bit; Exposed update_probe_finte to Python; new documentation examples.
0.5.2 New Quad4 element; K6ROT drilling stiffness; probe.update_BL; removed alg3dpy dependency; topology optimization tutorial
0.4.28 Piston theory aerodynamics for Quad4R; fixed array casting on some systems; Quad4R less sensitive to small element sizes; new pid attribute for elements; exposed element orientation vectors; Python 3.12 support; fixed build for Linux and macOS wheels.
0.3.24 New Tria3R element; fixed BeamC formulation; fixed beam torsion stiffness; fixed lamination parameters and added their gradients; fixed lumped mass for Tria3R; removed dependency on the NumPy C API; OpenMP build fixes; improved Zenodo metadata and documentation layout; Python 3.10 support.
0.2.8 Material coordinate systems for plate elements; Fixed Truss mass matrix; more aggressive Cython directives; license changed to 3-clause BSD; license info in README, author metadata updates.
0.1.16 New Spring element; Rotation matrices using direct rij terms instead of Euler angles; renamed update_xe to update_probe_xe; probe made a public attribute; KG with a given stress state; renamed update_ue to update_probe_ue
0.1.3 First release: Quad4R, BeamC, BeamLR and Truss elements; shell properties; linear buckling

Installing pyfe3d

First, you should try to install from the distributed binaries by simply doing:

python -m pip install pyfe3d

If a distribution could not be found, you can try to install from the source code using:

python -m pip install .

Another alternative is the following:

python -m pip install -r requirements.txt
python setup.py install

If none of the above alternatives worked for you, this link shares some information on how to set up a C compiler on different operating systems:

https://cython2.readthedocs.io/en/latest/src/quickstart/install.html

License

Distrubuted under the 3-Clause BSD license (https://raw.github.com/saullocastro/pyfe3d/main/LICENSE):

Copyright (c) 2021-2026, Saullo G. P. Castro (S.G.P.Castro@tudelft.nl)
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Contacts:

Release files for pyfe3d 0.10.0

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

Source distribution (sdist)

Source distribution for pyfe3d 0.10.0
File Size Uploaded
pyfe3d-0.10.0.tar.gz 3.5 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyfe3d 0.10.0
File
pyfe3d-0.10.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pyfe3d-0.10.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
pyfe3d-0.10.0-cp314-cp314-macosx_10_15_universal2.whl CPython 3.14 CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64) Details
pyfe3d-0.10.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyfe3d-0.10.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyfe3d-0.10.0-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details
pyfe3d-0.10.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyfe3d-0.10.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
pyfe3d-0.10.0-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
pyfe3d-0.10.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyfe3d-0.10.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
pyfe3d-0.10.0-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
pyfe3d-0.10.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyfe3d-0.10.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyfe3d-0.10.0-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details
pyfe3d-0.10.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pyfe3d-0.10.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
pyfe3d-0.10.0-cp39-cp39-macosx_10_9_universal2.whl CPython 3.9 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 111.0 MB

Release files / pyfe3d-0.10.0.tar.gz

Download URL pyfe3d-0.10.0.tar.gz
Size 3.5 MB
Tags Source
SHA-256 checksum
How to use checksums
21da6b3cd4091c42e01ff88121d86c4ebdfc825eb5e8e02b35cc4d8ed79514e4
BLAKE2b-256 checksum
How to use checksums
02d6ba77e2b429a825c71f727ce7b9034ff211c3fd554fa79ed1274d5b3ef84e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp314-cp314-win_amd64.whl

Download URL pyfe3d-0.10.0-cp314-cp314-win_amd64.whl
Size 1.7 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
a15ee145b94a03315b50f7f9fe63e8d97f586dfe5c33f8d2d5c4c57c3b513751
BLAKE2b-256 checksum
How to use checksums
4961883c31689cc1c6a78bcc2137c8c32f5b0f9ce56aaabf20d6f255ffb20a7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 12.9 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
70f50aadf4b814f1063a6b4259d22199dbe8e29c5565770043db21e761893f16
BLAKE2b-256 checksum
How to use checksums
2da116449bdd44cd21bf618a176c720f9d497b5b93406b26b104360380a66b72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp314-cp314-macosx_10_15_universal2.whl

Download URL pyfe3d-0.10.0-cp314-cp314-macosx_10_15_universal2.whl
Size 3.3 MB
Tags CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
a44c4bfd63080fdd40273cf50751f8a7fe5debc4abbc68422a9c7c81c41b1673
BLAKE2b-256 checksum
How to use checksums
0325729229aba2df92ec1f37eb120aeccc1d433955dff4771e880ad4065f831c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp313-cp313-win_amd64.whl

Download URL pyfe3d-0.10.0-cp313-cp313-win_amd64.whl
Size 1.6 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
ede2ca33435d9bfc2718e659a9c1152dd42a42a598a9d303f53e5528625e4388
BLAKE2b-256 checksum
How to use checksums
26e9112483b4261433bf917e86fde289c8a6d2eae74cfa27cd079f03bf7ce3b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / pyfe3d-0.10.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 13.0 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ee3298fee3ba7e7fc146610f7521f09432ca07c39db7fe625cc4b20934c66822
BLAKE2b-256 checksum
How to use checksums
43930c177fa4f3135dad474a85f26dac6510d2a6f4954cb872e95dc63f479de1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp313-cp313-macosx_10_13_universal2.whl

Download URL pyfe3d-0.10.0-cp313-cp313-macosx_10_13_universal2.whl
Size 3.3 MB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
20d1ba86beef599dc71c301e34f5cefc98cdfe3afde1643c1e28cf234662563b
BLAKE2b-256 checksum
How to use checksums
ade410d59fd523405b0467df9a882cc2aa4b1cce2b391ab57c8475e20795a1f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / pyfe3d-0.10.0-cp312-cp312-win_amd64.whl

Download URL pyfe3d-0.10.0-cp312-cp312-win_amd64.whl
Size 1.6 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
7667bc98281e58ea9bdc7d8d5fca9aea8776e332981279cdbc34507163e8d9d7
BLAKE2b-256 checksum
How to use checksums
90bcdb3b0f64e13c8e1fc58bbb43dc701f6eca79cc2a8db30192c805fcea2b8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / pyfe3d-0.10.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 13.1 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
cf49216b5aa943f4744b9c67c76e142733e6ff8c88506a2bfbe8bd756421a3f3
BLAKE2b-256 checksum
How to use checksums
9ba40cb7de8b059cc86bf8319b4c1022fe57df80572b57ffc4571605e7cd6bac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp312-cp312-macosx_10_13_universal2.whl

Download URL pyfe3d-0.10.0-cp312-cp312-macosx_10_13_universal2.whl
Size 3.3 MB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
52a1b1234eb2c069d034d1089d6f9da7bca5856c52b5caaef45e8dc068e0c2bf
BLAKE2b-256 checksum
How to use checksums
720e7164a2a24a1504e02a657d673c03260833611dd3ca792e61df3a0569fd2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / pyfe3d-0.10.0-cp311-cp311-win_amd64.whl

Download URL pyfe3d-0.10.0-cp311-cp311-win_amd64.whl
Size 1.6 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
0b0c5996320c4b974b565ed60786b7bb1548cdeec569c99463509c960f4abdcf
BLAKE2b-256 checksum
How to use checksums
ec7fd8c253718849b622f023db490bb1d115ff7eabf11f2d9df4e3de9af9391d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / pyfe3d-0.10.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 13.1 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
bb9454d1b0c040d8e962dc453137570f37b3d77f29e28e8a3487405c45017a45
BLAKE2b-256 checksum
How to use checksums
d6c90b7c9a4793b6135c3f35471814363f94711d7955d838fe6eaf2d548793ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp311-cp311-macosx_10_9_universal2.whl

Download URL pyfe3d-0.10.0-cp311-cp311-macosx_10_9_universal2.whl
Size 3.3 MB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
f1d6b8d4b46ba8f3c158fac2e3fa47a0650d36c8ac884b2b1c830da902d99ad1
BLAKE2b-256 checksum
How to use checksums
2c9a6a90dafb1ff3d45fd2a75782a4767d4345b8e35b9cb6f5cb244584f5d373
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / pyfe3d-0.10.0-cp310-cp310-win_amd64.whl

Download URL pyfe3d-0.10.0-cp310-cp310-win_amd64.whl
Size 1.6 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9301ee31cfc8c9eb29cd4e2df28df78c1217b3f17686522ae6ea232d9ac8bd7e
BLAKE2b-256 checksum
How to use checksums
a72febcfc647b44a2f0db90c85a9087e97bcdc12f356e37b2f02b681a834bf03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Release files / pyfe3d-0.10.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
693ca2bc229481ac730d14ffa3a378f25347a57b4ccc496481ba8eafa4708907
BLAKE2b-256 checksum
How to use checksums
05d57cd6a19e84b92d1db1aebf60092bcd60a08cea901d9656e7dc08425bb386
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp310-cp310-macosx_10_9_universal2.whl

Download URL pyfe3d-0.10.0-cp310-cp310-macosx_10_9_universal2.whl
Size 3.3 MB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
3fb29ed9f60e5eb72b51ea6de8a59a9fdec203cf95960b48a179b67d2eb5c782
BLAKE2b-256 checksum
How to use checksums
11d76af23b8af84c2c8810ab71ee2e6aea48acf70ab65396d05cabbb48117559
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Release files / pyfe3d-0.10.0-cp39-cp39-win_amd64.whl

Download URL pyfe3d-0.10.0-cp39-cp39-win_amd64.whl
Size 1.6 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
415210c0c4db0eb3a6329ea55b386c3f29be34934d9cc8dade8162f9f7109a70
BLAKE2b-256 checksum
How to use checksums
aefb6685ceb6fe56bfab662cb4bd2e3896e281ce46d0833b4c4f0042464fe376
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13

Release files / pyfe3d-0.10.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyfe3d-0.10.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 12.7 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
27b02cc01c6396b316971e4cf160a288b581695546d5f81e8c7c8014b0ff3339
BLAKE2b-256 checksum
How to use checksums
a82573306d7ff671738fcf7962bdf19cc0661fceffb4a67c43f7331a280e4a11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / pyfe3d-0.10.0-cp39-cp39-macosx_10_9_universal2.whl

Download URL pyfe3d-0.10.0-cp39-cp39-macosx_10_9_universal2.whl
Size 3.4 MB
Tags CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
6564e3b8efa5fb0b6b744bf725c3cfa80abd828fa0ed392a3529ed6e1bf646b6
BLAKE2b-256 checksum
How to use checksums
a0feae07736046edb5a09c43c3189ef09dafccab0ac4e0413be9cae23a229f09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13
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