Skip to main content

Fast IP prefix lookup library with Rust backend

Project description

Pattrie

Fast IP prefix trie for Python with a Rust backend. Supports longest-prefix match (LPM) lookups on IPv4 and IPv6 networks.

Built with PyO3 and the prefix-trie crate. Inspired by pytricia.

Installation

pip install pattrie

Usage

import pattrie

t = pattrie.Pattrie()
t["10.0.0.0/8"] = "rfc1918"
t["10.1.0.0/16"] = "internal"

t["10.1.2.3"]          # "internal"      (LPM)
t["10.2.0.1"]          # "rfc1918"       (LPM)
"10.1.2.3" in t        # True
t.get_key("10.1.2.3")  # "10.1.0.0/16"
t.get("192.0.2.1")     # None

Keys can be strings, ipaddress.IPv4Address, IPv4Network, IPv6Address, or IPv6Network. Keys may also be raw address bytes — a bytes/bytearray/memoryview of length 4 (IPv4) or 16 (IPv6), or a (bytes, prefixlen) tuple — useful for packet processing where the address is already in bytes.

IPv6

import socket
import pattrie

t = pattrie.Pattrie(128, socket.AF_INET6)
t["2001:db8::/32"] = "documentation"
t["fe80::/10"] = "link-local"

t["fe80::1"]  # "link-local"

Concurrent reads with freeze()

After freeze(), read operations release the GIL, allowing true parallel lookups from multiple threads:

t = pattrie.Pattrie()
# ... populate ...
t.freeze()  # trie becomes read-only; reads release the GIL

# Safe to call from many threads simultaneously
value = t["10.1.2.3"]

t.thaw()    # restore mutability

API

class Pattrie:
    def __init__(self, maxbits: int = 32, family: int = socket.AF_INET) -> None: ...

    # Insert
    def insert(self, prefix: str | IPv4Network | IPv6Network, value: object) -> None: ...
    def insert(self, addr: str | IPv4Address | IPv6Address, prefixlen: int, value: object) -> None: ...
    def __setitem__(self, key: str | IPv4Network | IPv6Network, value: object) -> None: ...

    # Lookup (LPM)
    def __getitem__(self, key: str | IPv4Address | IPv6Address | IPv4Network | IPv6Network) -> object: ...
    def get(self, key, default=None) -> object: ...
    def get_key(self, key) -> str | None: ...
    def __contains__(self, key) -> bool: ...

    # Exact match
    def has_key(self, key: str | IPv4Network | IPv6Network) -> bool: ...

    # Set-style (value-less)
    def add(self, key: str | IPv4Network | IPv6Network) -> None: ...
    def discard(self, key: str | IPv4Network | IPv6Network) -> None: ...

    # Delete
    def __delitem__(self, key: str | IPv4Network | IPv6Network) -> None: ...
    def delete(self, key: str | IPv4Network | IPv6Network) -> None: ...

    # Iteration
    def __iter__(self) -> Iterator[str]: ...
    def keys(self) -> list[str]: ...
    def __len__(self) -> int: ...

    # Concurrency
    def freeze(self) -> None: ...
    def thaw(self) -> None: ...

Performance

See benches/README.md for methodology and numbers.

License

MIT — see LICENSE.

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

pattrie-0.5.1.tar.gz (82.0 kB view details)

Uploaded Source

Built Distributions

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

pattrie-0.5.1-cp314-cp314-win_amd64.whl (226.6 kB view details)

Uploaded CPython 3.14Windows x86-64

pattrie-0.5.1-cp314-cp314-musllinux_1_2_x86_64.whl (315.1 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pattrie-0.5.1-cp314-cp314-musllinux_1_2_aarch64.whl (304.7 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

pattrie-0.5.1-cp314-cp314-manylinux_2_28_aarch64.whl (306.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

pattrie-0.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (336.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

pattrie-0.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (641.9 kB view details)

Uploaded CPython 3.14macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

pattrie-0.5.1-cp313-cp313-win_amd64.whl (222.9 kB view details)

Uploaded CPython 3.13Windows x86-64

pattrie-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl (313.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pattrie-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl (302.5 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pattrie-0.5.1-cp313-cp313-manylinux_2_28_aarch64.whl (303.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

pattrie-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (334.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pattrie-0.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (634.3 kB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

pattrie-0.5.1-cp312-cp312-win_amd64.whl (223.1 kB view details)

Uploaded CPython 3.12Windows x86-64

pattrie-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl (313.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pattrie-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl (302.8 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pattrie-0.5.1-cp312-cp312-manylinux_2_28_aarch64.whl (304.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

pattrie-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (335.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pattrie-0.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (635.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: pattrie-0.5.1.tar.gz
  • Upload date:
  • Size: 82.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pattrie-0.5.1.tar.gz
Algorithm Hash digest
SHA256 ba34116214ba00d45f503a6343a57f50af0144be3efcb2fd188e5861bf089daa
MD5 806c08a2e48972d2871e4cd4c56f61b5
BLAKE2b-256 56f1333dd9c693eec2b2050bdaa4d7f9a103c815ef4c8c05586872940d8eeaa8

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

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

File metadata

  • Download URL: pattrie-0.5.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 226.6 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e117eaafe2aa875f831f310b3cf8ba07140a190233c8f90911d2dfd11c455ae5
MD5 d8c1627fe084fdb0405b84fb6a3a9175
BLAKE2b-256 b16cb79883cc0782dc8f1955c6a89860c72a9feaa03dc1eb141532c8e37cdb78

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 042d9b69f5b9288acb539858122ac7e8f45c00df07cddcefdfd933dd599ffb12
MD5 d59a4254f18c6596f73c4b513c0c3c04
BLAKE2b-256 5e13bf1dd2d3841ceaa6ccfcb806c76400d6da7360f68fa01c03558d5b975875

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 68e16e965069c4d676f0bd38a9c5c0f4707a8b17e72ac5a287a11bebd57dc801
MD5 fc2d4f79fbad98e318cb4afb816241fa
BLAKE2b-256 b6e3ccff982a857220fba31d6fb6b3c214a14dff95c66636c0311826b1658991

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a3d62315f79cfa2372d7762ab0a341e12a5e2f851e4ed4ca8871e180328f4f3b
MD5 36b0eefd08ebddf9a3514d63af4c385b
BLAKE2b-256 333df92085ca682e708f051863f574a778f5466cdf9adea2375d3b115532321e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 86e6ebab3ce562fbbae67466508ca3b971e709feea4a7d4e495898e2abf3d73e
MD5 d6cc548f058f5b1a003b344c08e6db5b
BLAKE2b-256 8cc861c9c67f2bd8e4156c89f3142e52283ee51ea342ea292545b0cf1b3a1202

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 1d551822ec49cd3f5891ed7c98ee0ba568daaf8f2bb0fe9635f56a85349a3973
MD5 36597cf6db261e462d1e276752b852cf
BLAKE2b-256 cf64cd86f85190476c04f214f2e2d8cfcb07f4afff60486bf9f13ed3d4c94628

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

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

File metadata

  • Download URL: pattrie-0.5.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 222.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5d44725d886b9458ef74137d94d1318e205a007b9ad21379cb16397046c37e59
MD5 c732fe784fb1ada9a7755955c5e189a2
BLAKE2b-256 0b1d17771a02f191473d90fc99164ee7e0daa52eb67ce868e2be2217c466f107

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fd49eb964be1a490b23769aa93ab2cbd1b6f862d7557fa7491b4a22a8b7ba8ab
MD5 c20169eacbca3ca9c78ec41019afe915
BLAKE2b-256 7070174c613f18fa11d8fbedab4c3ece7c9d464aedfff9ee6a4836f5a4b8ac21

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 24e0daa8c3dcf200534cbef6596d6cb0e5faf33ab78d3a3c4b7a215099547512
MD5 69074e0cc5bc0ced5a340b768b2ef009
BLAKE2b-256 436c1612764354b8fc1366a00daabd4c07cda921193177c57cf71888a534ef60

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 01a8be5d262f4f98aea69674440068596ff034c1de482bce9a0592922dd623ae
MD5 a9a8acc264808daa8342fcc185635621
BLAKE2b-256 05a97a3fa3df1d6f8f39dbd4c046d274548cc797dc0aafe75e55990065590a8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b680642045ea8095c71cf2ca412ce836ffd090a6fc4fcdd4551575f5ef678e3e
MD5 81845e51b11574c7c75ea01da0b21958
BLAKE2b-256 2f843ec2863a43b574e0bf4d9b7b2e2962cc739ec7dd74b5158e50eba547d76b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 105167c6b98eeb50786372fb6f5aa439629696068f2ed74d3bf9b39048289dc4
MD5 24ea6b5e76b70de47b45a7a45d0d91b7
BLAKE2b-256 f04e7197570fb1e267c10337b516ae8d99b943220d28515a86214ff5e44dc358

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

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

File metadata

  • Download URL: pattrie-0.5.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 223.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 48349ec05c71e29022c4c648ab6af4624cad05f526a1abef8b3e49cd03e637c0
MD5 f10c42982871ce43839bf98aeec9ffeb
BLAKE2b-256 791f362ee8616d7ab519ce4fec96724c6173f8b5aaae7f70b614dc4a78457b9f

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ebd56eaf5fc9e5bd1038f4dbbd6df0472937fae47653977bba32ef91dba4c7bc
MD5 4bec2b2d1c2d871e5b1e235cdac32fd8
BLAKE2b-256 32355818e9afe15bb18963c2d462b9f0fc7dbec868405589cc71cf2037840c59

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 791a0794cf5057aeebd1b55b3391a5cf4acca5d719e9c9d4df157bf4eb26f174
MD5 a7107c0e759a92b321b24caa0138f4d3
BLAKE2b-256 5433bcc9d7ccdc16837088f28025dd3b50c2126e87da746c0ec180a76a31d97f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 12534212c29329bf8624b619c4ba670ff3035f72cbdb7b22a9d04ba61c3e6265
MD5 b69b9dbc0ef952a41d62a7c3edc9b669
BLAKE2b-256 fb38f781fc48a83970a8737115db07fd329248e306ee64d32a73f30c7f96f64b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fc533e1c476c3457ba4e8374dc746e77a32f80f46e1dc4b5b2be9a0022513489
MD5 018885ff8cfdd28ebe1f4df4d639ff58
BLAKE2b-256 76921023e512a6f1b89cc65304b6f28876149474f2065469489904245a47aefa

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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

File details

Details for the file pattrie-0.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for pattrie-0.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 07e08ffe2487422a7133cdcd5ee4b4fdc1398cc92c905b11de240b80fcf50cc2
MD5 95ea5728345edd956ee640b1d0a0eaf3
BLAKE2b-256 4996cad53417e8eaeca1bbae0e1c383db6ae432a18f1edf7b438a17c096f627b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pattrie-0.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: publish.yml on dogukancagatay/pattrie

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