Skip to main content

Sparse vector and matrix classes with fast operations for Disco simulations

Project description

🧮 sparse-array

Sparse vector and matrix classes with fast C++/NumPy-backed operations
for use in Disco simulation programs and other large-scale discrete event models.

PyPI License: MIT Build Tests


Overview

disco-sparse-array provides compact sparse vector and sparse matrix types that operate efficiently on large, structured numerical data.
The package is optimized for repeated arithmetic and transformation operations that occur during Monte Carlo and discrete-event simulations, as used in the Disco simulation framework.

It combines:

  • Lightweight Python classes for usability.
  • C++/pybind11 kernels for compute-intensive operations.
  • NumPy interoperability for zero-copy exchange of data.

✨ Features

  • Sparse Vector and Matrix classes with explicit indices and values.
  • Fast arithmetic:
    • a + b, a @ m, and in-place variants.
  • Change detection and subset validation (diff, changes).
  • Conversion utilities:
    • Sparse → dense arrays (to_dense).
    • Dense → sparse (via index filtering).
  • Consistent API and predictable semantics across all operations.
  • MIT-licensed, pure Python/C++ — no external runtime dependencies beyond NumPy.

🚀 Installation

pip install disco-sparse-array

Project details


Download files

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

Source Distribution

disco_sparse_array-0.1.1.tar.gz (14.2 kB view details)

Uploaded Source

Built Distributions

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

disco_sparse_array-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

disco_sparse_array-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (103.5 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

disco_sparse_array-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl (83.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

disco_sparse_array-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl (89.6 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

disco_sparse_array-0.1.1-cp314-cp314-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

disco_sparse_array-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (101.2 kB view details)

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

disco_sparse_array-0.1.1-cp314-cp314-macosx_11_0_arm64.whl (81.0 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

disco_sparse_array-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl (86.9 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

disco_sparse_array-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

disco_sparse_array-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (101.1 kB view details)

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

disco_sparse_array-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (80.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

disco_sparse_array-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl (86.6 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

disco_sparse_array-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

disco_sparse_array-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (100.2 kB view details)

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

disco_sparse_array-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (80.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

disco_sparse_array-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl (86.5 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

disco_sparse_array-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

disco_sparse_array-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (98.3 kB view details)

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

disco_sparse_array-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (80.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

disco_sparse_array-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl (85.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file disco_sparse_array-0.1.1.tar.gz.

File metadata

  • Download URL: disco_sparse_array-0.1.1.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for disco_sparse_array-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7f0c206f6c5ee0ba16b013198f3410e04fcf07896705fc27ae271fef32da5e9c
MD5 134b94bef8abb24e9892e600af4da58d
BLAKE2b-256 eaed6e33a50ffe087dd17cda6389aeb69046adb0ea8148726fc9b290acfde177

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1.tar.gz:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f6e69bded6859e1d4495caad066a44c4526ef5e7894d9f0501998f686101f8c3
MD5 1e36d92d38276d26dc8d2cde52dea1c8
BLAKE2b-256 68b74733d16e9b99a1498d068c63fa941cf4bf1e369e066b52ff1ad85a39507c

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2728f7cd8afb28036be68377fdb60ad58bdf0522e159f126e7d983bf85dc072c
MD5 419917368b1740557e9f03a610375725
BLAKE2b-256 75322fe8896fcc8e505daf79248ce78d4a0728521f038558cb82878eb44d9f78

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 40b9fad157f66ab22622efe06c26f71a5b5495931157f2e2a439ed883e29b1de
MD5 153e717bce21daec0820d9889d5d4a1d
BLAKE2b-256 11ccd0e12ef3a31d947dd925741efa98fe8189380e0cbdd23bdd7e4cc4864fcc

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 5860dbdef1a3c2609a3878edeb4701e1c65cdf7ca49b3cfb99d62304ad3d0911
MD5 ee0b910f4c57b25eee7d24b6576032c8
BLAKE2b-256 9caf173907accee7382576ea727c41233c73106275a3c452c582280b43e75401

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7421089ac619e70cf39939ee44843c6536f53cc8a4df7d71f790f4cf35666620
MD5 fee94deaac6d77f7e3ef84861f6d3724
BLAKE2b-256 3e5b9117e1dcd967184fe5d0800101b59b65fff9df19930ec35d7e02eb4e5211

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d99864b01ff1bc330d9fc31b904518ec8988af3d8b5fb0a3bcfaf6ab621a42bc
MD5 4d0af9aa0f8f034a809284b8af713c5c
BLAKE2b-256 b18afb2fd2e1c7879d0d97ff372f446758b72113e3cd38207e5876f7e5ca7c24

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 303ee9c1a2fc76999c3eb9719ad951a7fa70182f30f31da856f0b9d0b331680d
MD5 97180ecc4f9461d473c412f3eb88b4e6
BLAKE2b-256 872d12fb88bfb7866d66568707957dd5ae7e874e2fc8570bb44470a8d0c27dbc

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f15ce85f52e4a94bc1fcd2cbbedba43d4c4c69bf6f53f8ebe3cd6a427bd3e475
MD5 4ac4837845ec9bdf515256a2931f7010
BLAKE2b-256 f213b00f978ccf89ed2ba4569c1084da37a7eff459112b1ed50c623535c4ed23

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 07575464936f1878bfbb79c1b94be03778cc205c64479aaec8096981539b495d
MD5 d3523d81426a9b0f5a858e9cbc519ad2
BLAKE2b-256 5f4bbaac1881605d888a5a2d52c7b3aedb2187431041f47883acc9ab2ed67722

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 011ac5f932e8ba13c7e8d3d6b18d35614525b816ea85beae1bebc97420ea5424
MD5 4b8cd3c8e6142732799fa502bd33ba88
BLAKE2b-256 ac4f57d95ad66a1e7d149b68741f89963141ca847a884ec3e21c354eec9858ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b0541bba1193400f740c83236a5a0aa588f5f7a78ea38eb2eef65bb577b6024
MD5 80681e817e7216e8e4e69062539d8952
BLAKE2b-256 092dc2174dad30fa9e252e5db9d29b0d492013077eb5bc254c70de39bd7543a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e62622f01e15aac9ee541510e5b592914e400afa814a01919f8fbaef429270a0
MD5 cb8c12da743b3fe68e27e065b259f767
BLAKE2b-256 fe2f4961360ce77dc1b37ef974e2761dda2cc8c854a8809a251f835446bb2d03

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cdaec164c30b07dfcce3172aa142212aad15a80cf098d2f2ee3fb4bae6a718c9
MD5 2adb91c282eab0f5a2178350ab0cde9b
BLAKE2b-256 e35f2757bf6ec329e69c4fa0ee0c96c4e0fae2ebe9f3695441fc03f774ebf25c

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c77cb303335165c57abb0b6db96f63bc81b322d20086b2efdd1b3aa6bf517c8
MD5 7f18d144d1da763728fa2c865af5f350
BLAKE2b-256 79013539016df5c8cf0657014ca5fb99c80eae55f643c436ff51fa9dc453c63b

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d231dc47c8fcdd96dacf4837fb765779c81e705bb33e3b4a0b276acb3bc54315
MD5 44e5e9efd70e1f7a429831bb1ed28943
BLAKE2b-256 cbffdafc2f7d5a26b4ddec02376637696bcc91d2ef290b1a74864b520887bc7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 89dc318d2185f06cbdd4791f17f004b5eaa4990a9e34045eeb71c2325cd4d305
MD5 0a94c16d84e96fe42377a6a683b2eae5
BLAKE2b-256 d6185a6599aa5f6532c4b7b8b404d62002bf96e598a4b83f76220a647cc43399

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 587a83fa014739e6d4fa958a175bd755ab97a0188abcd9795b484b89d526cbd9
MD5 5eb6e8730c33398eed800fb25df32f54
BLAKE2b-256 bad6a52da72f090e420bad36eca17db21a4d44d629b93851aff34d6a53e160b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 435a0ac2bc13b3d321da9ebf7667299df86e6b9f37f366e0e61d80fe4fcda982
MD5 6cb098745a5f4a8847fa737d8bfad6de
BLAKE2b-256 35dbfada5e0f2b317ab5b9585f4788c507bf814a3d205abc19b2a835d6347eec

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8f5dc8dce544fcb42876e822de62e9fdd08508b83f5f972d3cc201a184e250f4
MD5 d79bdb47a69a801513b0a810cdd8f157
BLAKE2b-256 46c1cdfa189203e75dfcb0d62f1719de16364a804bddab1e35a651430ee3cd9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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

File details

Details for the file disco_sparse_array-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for disco_sparse_array-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9baf2138dfcbd5dca4d291433404610264a1bcf692fbc9ae9de9a1fecd3a427b
MD5 deb77008aef75661925cf388df826503
BLAKE2b-256 cd97449982d62aaa3558df8bab585a8e0ceb8c1ceca00aee6bd7385dcd41c550

See more details on using hashes here.

Provenance

The following attestation bundles were made for disco_sparse_array-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release-publish.yml on michielmj/disco-sparse-array

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 Pingdom Monitoring Sentry Error logging StatusPage Status page