Skip to main content

Fast Python bindings for AIS-catcher's NMEA-to-JSON AIS decoder

Project description

aiscat

A fast, complete Python library for decoding AIS NMEA into structured dicts. Built on the AIS-catcher decoder; messages come out compatible with the AIS-catcher JSON format.

Why

aiscat is built for fast, complete decoding of AIS NMEA from Python. Output dicts match the AIS-catcher JSON format field-for-field, so anything you've built around AIS-catcher's documented JSON output works the same when the source becomes a Python iterator.

Coverage is meant to be exhaustive: all standard message types (1–28), multi-part AIVDM reassembly, country-code resolution from MMSI prefix, lookup-table text fields (status_text, shiptype_text, …) populated from the same tables AIS-catcher uses, and decoding of binary application messages — type 6 and 8 ASMs across IMO, IALA, USA, and inland-waterway DAC/FID payloads (AtoN monitoring, meteo/hydro, route info, persons-on-board, and others).

For live decode of a single station (~50 msg/s) any decent AIS library is fast enough. aiscat earns its keep when throughput matters: replay of historical recordings, multi-receiver fan-in, batch analysis, and research workloads on millions to billions of messages.

Tradeoffs. aiscat is a C++ extension, so pip install either picks up a pre-built wheel for your platform or falls back to a source build that needs CMake and a C++11 compiler. The API is deliberately small — feed bytes, get dicts — without configuration knobs or custom output formats. And the licence is GPLv3 (inherited from AIS-catcher), so linking aiscat into a closed-source application makes that application GPL too; see the Licence section below for permissive alternatives.

Quickstart

pip install aiscat
import aiscat

dec = aiscat.Decoder()
dec.feed(b"!AIVDM,1,1,,A,15MgK45P3@G?fl0E`JbR0OwT0@MS,0*4E\r\n")
print(dec.next())
# {'type': 1, 'mmsi': 366730000, 'channel': 'A', 'rxuxtime': 1777739134.027,
#  'lat': 37.803802, 'lon': -122.392532, 'speed': 20.8, 'course': 51.3,
#  'status': 5, 'status_text': 'Moored', ...}

Benchmark

2,000,000 AIS messages (mixed types 1–4), Apple M-series, single thread:

Tool Time msg/s µs/msg vs fastest
AIS-catcher CLI (-r txt -o 5) 1.04s 1,922,000 0.52 1.00×
aiscat (this library) 1.05s 1,906,000 0.52 1.01×
gpsdecode (gpsd, BSD-2) — CLI 3.14s 636,000 1.57 3.02×
libais 0.17 (C, Apache 2.0) 5.33s 375,000 2.67 5.12×
pyais 3.0.0 (pure Python, MIT) 22.36s 89,000 11.18 21.49×

aiscat sits within 1% of the native AIS-catcher CLI despite producing rich Python dict objects (the CLI just stringifies JSON to stdout). It's 3× faster than gpsdecode, 5× faster than libais, and 21× faster than pyais.

The full benchmark — including the test-fixture generator — is in benchmarks/. Types 1–4 (single-line position reports / base station reports) are used because libais's stream API does not reassemble multi-part AIVDM groups; on a mixed corpus including type 5 (multi-part static data), libais silently drops every type-5 message. AIS-catcher, gpsdecode, and pyais handle multi-part correctly.

For perspective: a busy AIS shore station produces ~50 msg/s. Throughput matters when you're replaying recordings or aggregating dozens of receivers, not for live decode of a single antenna.

API

class Decoder:
    def __init__(self) -> None: ...
    def feed(self, data: bytes | bytearray | str) -> int: ...
    def next(self) -> dict | None: ...
    def pending(self) -> int: ...

def iter_decode(chunks: Iterable[bytes | str]) -> Iterator[dict]: ...
  • feed(data) parses NMEA AIVDM/AIVDO sentences out of the buffer. Multipart messages are reassembled internally; partial chunks are buffered until completed. Returns the number of decoded messages waiting.
  • next() pops one decoded message as a dict, or None if the queue is empty. Pop in a loop after each feed().
  • The queue is unbounded — drain it after each feed, or memory grows.
# Streaming pattern
import aiscat
dec = aiscat.Decoder()
with open("session.nmea", "rb") as f:
    while chunk := f.read(65536):
        dec.feed(chunk)
        while (msg := dec.next()) is not None:
            handle(msg)

Output format

Each decoded message is a dict containing the AIS protocol fields plus a small reception envelope. AIS-catcher's internal "meta" fields that don't apply to a Python decoder (SDR signal levels, decoder version, the original NMEA echo, etc.) are suppressed.

Lookup-table values are decoded for you — status comes through as both the raw integer and status_text ("Moored", "Under way using engine", …); same for shiptype_text, aid_type_text, etc.

For the full field reference — every key, its unit, and the lookup tables — see the AIS-catcher JSON decoding documentation.

Type hints

Decoded messages are plain dicts at runtime — zero overhead. For static type-checking and IDE autocomplete, aiscat.types provides one TypedDict per AIS message type (1–28) plus an AISMessage union:

from aiscat import Decoder, AISMessage

def handle(msg: AISMessage) -> None:
    if msg["type"] == 1:
        # mypy narrows to Type1; knows msg["lat"] is float
        print(msg["mmsi"], msg["lat"], msg["lon"])

Licence

GPLv3, inherited from AIS-catcher. Linking aiscat into a closed-source application makes that application GPLv3.

If you need a permissive licence (BSD/MIT/Apache), use one of:

  • pyais — pure-Python, MIT, the de facto standard for Python AIS work
  • libais — older C extension, Apache 2.0

aiscat exists for users who want AIS-catcher's decoding (multipart handling, lookup tables, channel A/B disambiguation, country tables, message-type 6/8 ASMs) and can live with the licence.

Building from source

Requires CMake ≥ 3.15, a C++11 compiler, and Python ≥ 3.9 with development headers.

git clone https://github.com/jvde-github/AIS-catcher
cd AIS-catcher/python
pip install -e .

The build pulls a curated subset of AIS-catcher's source (Marine/, JSON/, Library/, Utilities/) — about 8K lines of C++ — and compiles them together with the binding into _core.cpython-*.so. Build takes ~10 seconds.

Status

Pre-1.0. The decoder itself is mature — it's the AIS-catcher decoder, battle-tested in shore-station and SDR deployments. The Python surface is new and may evolve — feedback welcome.

Versioning tracks AIS-catcher's: 0.68.x uses AIS-catcher v0.68's decoder. Patch releases bump independently for binding-only changes.

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

aiscat-0.68.1.tar.gz (94.9 kB view details)

Uploaded Source

Built Distributions

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

aiscat-0.68.1-cp314-cp314-win_amd64.whl (166.3 kB view details)

Uploaded CPython 3.14Windows x86-64

aiscat-0.68.1-cp314-cp314-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp314-cp314-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp314-cp314-macosx_11_0_arm64.whl (176.9 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

aiscat-0.68.1-cp313-cp313-win_amd64.whl (160.7 kB view details)

Uploaded CPython 3.13Windows x86-64

aiscat-0.68.1-cp313-cp313-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp313-cp313-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp313-cp313-macosx_11_0_arm64.whl (177.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

aiscat-0.68.1-cp312-cp312-win_amd64.whl (160.7 kB view details)

Uploaded CPython 3.12Windows x86-64

aiscat-0.68.1-cp312-cp312-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp312-cp312-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp312-cp312-macosx_11_0_arm64.whl (177.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

aiscat-0.68.1-cp311-cp311-win_amd64.whl (160.9 kB view details)

Uploaded CPython 3.11Windows x86-64

aiscat-0.68.1-cp311-cp311-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp311-cp311-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp311-cp311-macosx_11_0_arm64.whl (176.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

aiscat-0.68.1-cp310-cp310-win_amd64.whl (160.9 kB view details)

Uploaded CPython 3.10Windows x86-64

aiscat-0.68.1-cp310-cp310-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp310-cp310-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp310-cp310-macosx_11_0_arm64.whl (176.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

aiscat-0.68.1-cp39-cp39-win_amd64.whl (160.9 kB view details)

Uploaded CPython 3.9Windows x86-64

aiscat-0.68.1-cp39-cp39-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

aiscat-0.68.1-cp39-cp39-musllinux_1_2_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

aiscat-0.68.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (243.6 kB view details)

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

aiscat-0.68.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (229.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

aiscat-0.68.1-cp39-cp39-macosx_11_0_arm64.whl (176.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file aiscat-0.68.1.tar.gz.

File metadata

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

File hashes

Hashes for aiscat-0.68.1.tar.gz
Algorithm Hash digest
SHA256 9156cf5129307d92422a8211270ee2332f3d5ec5c8bafed527ba522120149731
MD5 657b20522dc7b52a3ffb6c2efddfc484
BLAKE2b-256 ad534a69a66ef48c84b7dc813f9830695e15aaf10e4f28b2f6f43453e074e84c

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1.tar.gz:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 166.3 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 aiscat-0.68.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 125414d88355cea4c6f8301aefe53dcde96ac0c7b3bbad724843dfee3e8985f8
MD5 50e2407e886f82c5ab5b6d2f6e35e9b5
BLAKE2b-256 6a65b9f90a019fbf4f5330cb4e8b6a4f99bed63b7c70e093ce58fb8e2ba90d5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5fa757e0b276f2eb5f1ceb70e49ac661c6f16edb033576a59f6af82f15aa0266
MD5 934a0360b717faf7017ad9f02e39c8e0
BLAKE2b-256 52aad467fa448b313c595bef9458a9923c1847aafd799dffdc197b5676694a25

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6beb665b750d0d92eedd9d3cf8cf4ed0106f3ea4444242256d4db47be6e3ff70
MD5 d5f878de24a74701721e85c374926dbb
BLAKE2b-256 dd1b0f3c09ec54b08f128703307999b1639ae5d6f2c83d07d7078ff479c7d43b

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9e54ec0f4ece4389669b9f9468f4ba53b2493f71d283d9df53beaafbd3691284
MD5 a236c2f1e861bce57165ac3536fb18e3
BLAKE2b-256 9a2c9a0096dff2dd0693971dbdf79202c0c28fb2f9de71af138b0daa7043e904

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 15f1edd53f278383ad748dfde4d3a0e8a058fa26262f0c680c6f153c8d399b21
MD5 8aaea04c1b4274445f7d7b685da40e93
BLAKE2b-256 31a58c66a3aa562b2247674b6c510cf42a21691205897be2b114d78c50b4fceb

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ceebb39d86afc6f1b07f27384b225c5855fa2c44a59f46e007f16f02bf5d3831
MD5 73648c8e15d0e223ecd855f465926671
BLAKE2b-256 f5cad9290ffb77fce64e3e238e10ca39fe38bab6640d5a50b5cd55bebea4cb77

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 160.7 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 aiscat-0.68.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 df15dfeaa7c8d6f3f31e8c29df9459707ee1771cddb9b225faab1f0be0ea5404
MD5 c68f773644d099c11817f2e5a3c0329c
BLAKE2b-256 f4e20b6a46533d8f85fc84d7d0069d097bec50bf179f3ed2c5ff0f0319a46dfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c4db756430a0865415a05356a02ce38c177ecd460b9df87c36d5b5a5d46b4156
MD5 2fe58732a99107a845cb20f2f6ac400b
BLAKE2b-256 54aa71dbb0d24eb04c12ec2f732fb50f5a736bc2029db89b9d88ef52922bb147

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e3a397fb7b87705dc0eafbc85bcc9e74d12989d5adfe4f3a68560e7ceea41b00
MD5 4f521469227dd3eaa1807015c9fb5183
BLAKE2b-256 509f07f5c5e74b0f2c4d39c385a66bd89208803debaab5a233102690f93c373b

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a9a0a405a6c626025e162f9e3afc78761831a5552ca329d37415c89b6c04c2a9
MD5 a03a773303cda8963952e3e62b2728c5
BLAKE2b-256 2a23b85a00c9eb82ae1f1afbaf189445f3ba0bcdab29d9dfe9c89f2cdb798667

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6dd411a4088bcc62e74265cf49e069faa578dbecd7453cedd28a575fb8f634a9
MD5 0e1f3663cb97a4801d2106887551c73a
BLAKE2b-256 aa24dbc3bcddc4fb5eb9e8acca271a97578c534a279403b6b672c505fb3eb4d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc30dda56148ffe4ee5ed472db6e9169eeb74f13030e619b93bfa44cd1c9bbd5
MD5 7e465f609c89bde6d17fbc5f9378113e
BLAKE2b-256 bd27f657149436bc74d235a9481a184dead00b175601997c87ae72cd5d78fe90

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 160.7 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 aiscat-0.68.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 108b484524da44c21170568627b56361295f58edc09f377c8e5fc27ab1de0859
MD5 81e680aa41e13d9f5a5a1dfdad84e4b9
BLAKE2b-256 30efb4832b900ddd318d25f794483e08780723e9ed1f7e49d7db2eeb77ca2ec2

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2f94b748b75234a9b64b2e60861b0f3d4449da2c91ea64476fc1ad8173a3a836
MD5 f2f80d64b2ddc842c9e09f1669201fbf
BLAKE2b-256 3dae05badfea3e84208e81ec4ed5e709dfcb0df63f2e554e4f70a44661eb358c

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7a0d714421a6d18b8ab7981c89c6f1418ee53ecaaeba409414c2e23d0e3b1721
MD5 d40558c14b14bdc10842dea9d5b69562
BLAKE2b-256 8b63569158e9171a0ca1420958dfcf8be76ee51b85a2df0c1aab71c94a60c072

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e35d1eb2816d11d6a967a6c6eae79966dea0ec773f96a47b1e5e3d38c5ad6062
MD5 c73ad897125c40abd0eb5d4916db4f80
BLAKE2b-256 3129bf278a13f6f332b14248e6682fb1a187e14cc13fbbb9ae39d869ee3376c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e8167a41c4d6e561a2c650b0c597f505e49bae9d440dbc2cfd8ffe406c9e7592
MD5 3c4c0d36e10e9eb2ab88919e889d4a0e
BLAKE2b-256 d6f069e50aa1725d9b36024b7ca06c842f48ab968d7ac15b2a168aa09553c126

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ccbf4152ff95c5968374c012d9c69b4b7d26305f75ffdb02b724a8d291eb838f
MD5 bee19e1a18df5c19b178029c866b887d
BLAKE2b-256 f826fbbdd4e6af9279a1551dcb1a3e6cae8a7c0cb6b556db61b688064cbe71df

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 160.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bc6207883ef5dcae1c9227a00691f8b501bdb2a7ffed60e1710fe6cd753258de
MD5 c8c0549279cc5e910ac96afafa675c4c
BLAKE2b-256 d50c33674f3c8c163bd4532470ea098d77c0130a60455849d4c4496e90e7157a

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dd89c3dbc4c7a442a97425708d45233c0fc9ee70171882f24c38c115cf224a7b
MD5 d75c701674d888d8ef4ff1d70f2f553a
BLAKE2b-256 c1b509be98e5d263c64dab4ad8e03391e65501876aaf2ee56d441c754b6beaa6

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 54d484b0ac7ab5917138617a0102767489338d30db18d6035eb89eaad528278e
MD5 cdfba691a090301788dc51883a07e11c
BLAKE2b-256 7506e86c71fed14854fd7ef1c5bdf86e7fadcbc0600e7472a21545b6fbd317f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bc7420f64f86ba1f899a9bb4bdf693e7d1a1c826b8fff137e810138f468654d8
MD5 869b4fca96e2f824639d0643d1b1a010
BLAKE2b-256 852ec6ff2272fae4f6cb0812294a945c891c429a74a85e89fd3d9de2a035d69f

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6011f6e1b117d661635edf05377ee20e19a43c30c9eba094d982d56ca5818d8c
MD5 39216eff6cb6fe56e42d58c0603fdc20
BLAKE2b-256 aa91050cfb93520f0b441fc0626ee51c39d584ea19f63b2447fbffb91d7f5bf4

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d482032bee72a7e9f132fa35c6528ec90fe7a76246e7d3f358a74b5f474540db
MD5 0bcb86f93553d7c6c60090d8ee40743a
BLAKE2b-256 5529770ca97b9ad1595853cb8f11247e962a095b6120617c8c7a234b7d582b1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 160.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 85f344b8f9883f4a87a555e6b4f38b4c75a856c3834e359bc168a3a6966fef78
MD5 fa1bd6225d1c3188f50270c12b1cf4b5
BLAKE2b-256 fe67fb4706be2777f355d6d633370209701b86c9333c4b4bfac4cd2f1633e855

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2f9212836dfe46f52dff4a232109ae197a9aaf514ac778c719e14676a106c546
MD5 88fc00b4680fe516e0dbd44b40c5f441
BLAKE2b-256 958ce056b480e69fa8ab19732b36e2c36efc9c169652691b797d7466e7383d22

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d5027fe69e734950875e64edf2ff590bf088ead8167805f6b6d229e564971eca
MD5 9f82d243fcc27d0e7edbba26fa6976e0
BLAKE2b-256 1baf5ac199cb7d3e605a7e34de159afdca1e169e76d2eae53a2256b3873a66fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 166d244314aec1806c5eb50c8b3ed23d0e4dd541bbd0b9efea99f1817621741f
MD5 7b3093abc1a29ebe72f6bc6e8eb4e095
BLAKE2b-256 7bb4dcf07bc42e63f5a28cc2973af7b11b18792bac092833ae89a9dad903a629

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 97a0f6e6dcb10c61612856103e7a16aa393a0c394b6786ecf2fe7ccf1c4bb352
MD5 f8938c9a794f4bbcc44c9e2fee2e17b0
BLAKE2b-256 081c763a5e8f967f677589b099a938538ea46e1a9fae73a32b8d0ac8600d1b2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 860290fd6352466c5a489433935d9bacf53418093404acec0d6c0dc3a29ed367
MD5 18671cde6de26fca7e4c59985e28e81a
BLAKE2b-256 f4ca8f482930fc7d6344148134c6aa23548d5a7fab56fbcda050dd5ac74733fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 160.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c68cc2c8b05d7f70251500c6c0a4657e178c0002313710dc801da0ad6c364519
MD5 a0f9dc252ba489c9c5c60be19e78665b
BLAKE2b-256 a6d1042bca5242b250487838e18a40930492f0153e72a2a26d01bbf8f5f87cf1

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-win_amd64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4901aae6eaaa2742ae8700b486e7218d3a8575c7830d8103b8b4efe3e4085be5
MD5 4a25832a3cbdf187fbaf48ea77ed0493
BLAKE2b-256 b4c14204f29e75250547c67bd552f11d800a96287576f3f3aca63389b26425b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 28ed3086fd92a762ab89cec36a37948dfca979284cde84ce3b25956a7ad3e2aa
MD5 1b5da79d11da4522c50cc1767354f561
BLAKE2b-256 78d50ed9c904f11d967c84f0217f26896f73efacba3cabbb23806be3a7eb235b

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ab64c88f7de13a5a8749436ad0dd74398a9d39e3d803b424dcd9c8ff89a203e
MD5 b9d2e7c93cc77330cbe6a5f0de9ac60f
BLAKE2b-256 0e31e2eb5c9efea80f1c470fae4601d5f70204d32ea503fd8f3a9cdd3c1df414

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9ef659ea0447cace90fd8ac9b07158f42f47fc4e98209341576885c906661a42
MD5 632e649f14f71ab768d97d8bf86d8dac
BLAKE2b-256 fad4f45d7b840864ff0bf8d3278a06593c5959fa555ae65fe3a663af77e60125

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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

File details

Details for the file aiscat-0.68.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 841b03598b63e507cf95f12194bd09881c4791879666048bbea03e1b5ca01371
MD5 fb2717b5c5cd740b9dca41e2789fed57
BLAKE2b-256 3fa2f7ab0ad590b43e1cb7269572214d2d97bd5f04c7ee662001b0f0b090fe34

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: aiscat-release.yml on jvde-github/AIS-catcher

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