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

Python has two established AIS decoders: pyais (pure-Python, MIT) and libais (C extension, Apache 2.0). Both have gaps:

  • pyais is ~20× slower than what's achievable in C.
  • libais's stream layer does not reassemble multi-part AIVDM — it silently drops every type-5 message (and other multi-part types).

aiscat closes both gaps by exposing AIS-catcher's mature decoder as a Python extension: full multi-part handling, lookup-table text fields (status_text, shiptype_text, …), country-code resolution, message 6/8 ASMs — everything AIS-catcher decodes — at C++ speed, in a dict shape that matches what AIS-catcher itself emits.

For live decode of a single station (~50 msg/s) any of these libraries 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 the configuration knobs, custom output formats, or filter chains pyais offers. And the licence is GPLv3 (inherited from AIS-catcher), so linking aiscat into a closed-source application makes that application GPL too. If any of those matter more to you than throughput, pyais is the right choice; aiscat is the right choice when you want the AIS-catcher JSON format produced quickly and reliably from Python.

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.0a4.tar.gz (14.5 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.0a4-cp313-cp313-win_amd64.whl (160.8 kB view details)

Uploaded CPython 3.13Windows x86-64

aiscat-0.68.0a4-cp313-cp313-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (269.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (254.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

aiscat-0.68.0a4-cp313-cp313-macosx_11_0_arm64.whl (183.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

aiscat-0.68.0a4-cp312-cp312-win_amd64.whl (160.8 kB view details)

Uploaded CPython 3.12Windows x86-64

aiscat-0.68.0a4-cp312-cp312-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (269.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (254.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

aiscat-0.68.0a4-cp312-cp312-macosx_11_0_arm64.whl (183.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

aiscat-0.68.0a4-cp311-cp311-win_amd64.whl (161.0 kB view details)

Uploaded CPython 3.11Windows x86-64

aiscat-0.68.0a4-cp311-cp311-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (268.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (254.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

aiscat-0.68.0a4-cp311-cp311-macosx_11_0_arm64.whl (183.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

aiscat-0.68.0a4-cp310-cp310-win_amd64.whl (161.0 kB view details)

Uploaded CPython 3.10Windows x86-64

aiscat-0.68.0a4-cp310-cp310-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (268.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (254.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

aiscat-0.68.0a4-cp310-cp310-macosx_11_0_arm64.whl (183.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

aiscat-0.68.0a4-cp39-cp39-win_amd64.whl (161.0 kB view details)

Uploaded CPython 3.9Windows x86-64

aiscat-0.68.0a4-cp39-cp39-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (268.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (254.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

aiscat-0.68.0a4-cp39-cp39-macosx_11_0_arm64.whl (183.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file aiscat-0.68.0a4.tar.gz.

File metadata

  • Download URL: aiscat-0.68.0a4.tar.gz
  • Upload date:
  • Size: 14.5 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.0a4.tar.gz
Algorithm Hash digest
SHA256 086ab4ba1397f2385464d7d73c93789d3bf694c90082d6956fd7c52355c376b5
MD5 7cb039c535c4d30e97cb628c4d503668
BLAKE2b-256 42572f3b0649ea683cc74b94877336e0585553a384353261c8897af1efb5e966

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4.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.0a4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.0a4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 160.8 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.0a4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ba00edce6ae3680b824c0c75a0540525ce46402783dbe94143fe2b291cbab978
MD5 037a3ec178bcb6fd45f6fb0eb37e324a
BLAKE2b-256 d82d9475285bcc9be21dceb86206662fafc00b88751da112b25075c3840c0899

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ef2120a7581c998c85ef84318fd911b0d761a9e5613f384a90b05ad67a4c8a27
MD5 9263cfd127d52427f52b3f5aafe60f3e
BLAKE2b-256 ec9ecf94e1cf436a067e0e61e889d5048e47e01299f472e5b5081680f91f311c

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3029fef23d5d719ecfb889d5cddc4b77b6369ec4ffb404c5646db16a92d8e287
MD5 022eb1916b331fff9292002ccfbef97c
BLAKE2b-256 b7fae6c1c8313d40b0ede31bf259fb18fdbcd5e0439b74ed114c122880f0f77e

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b95a1c5d7115509608710d51c7442e0ac06a46ec1d5768303e79de42c2ef0ea
MD5 47ca1a3f805ece4d596963fbee449e44
BLAKE2b-256 9e7f1aa3acfb22177d3db75fe553d7d33395c418f23524d32ba2ba7251bc6228

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_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.0a4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 86228994d2bfcc4c3c0783a94f590def96e15ffb8858caa6ac664588fd345fc9
MD5 91570e179ec0d11dd06caf22b9751310
BLAKE2b-256 5c7580f2d90c7d24cd13c12994547f35e51cb9bc842a2a4491f10b5a72028793

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_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.0a4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 134ff6b90cba85b28653b707c386380fbe3d17f52e7ddff0faa36c1fab0d0a7f
MD5 f0baa11bbff8aa3f11efd556a354826c
BLAKE2b-256 e7b1031a1290e2cb8c24c62ab25975d7748e655a6942ace312a5daeac5ab4090

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.0a4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 160.8 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.0a4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 40dd2f6ebe841d7040c1175d399dec07d2fe8ab1dfa0f3c5e09f006ad710e8d8
MD5 c662723178a694c85ed4a2148d4e8996
BLAKE2b-256 86d02356d6407346ca5e99db5b4413575d76fc6631842e81844e26e79b6783db

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1dce7fd995231944bda8ada34b873dddf784243a6069cc39053a1cbfcb6a2e06
MD5 dc174002a832c5e5436df2eb715803cd
BLAKE2b-256 b8e745d5ff17371812737e6643f24125614fffb0933e7667413e316f549be952

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 64990d32f8d3a7b40d10ddfaea19a23ea1895d3ea19d00e1bbeba1c638345c57
MD5 942c160f99cbe2b55428e01f60bafe5e
BLAKE2b-256 a34d648617e4112c0c8b6da9aed7d14fb143e3c766b56d25839785e16977ca20

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6850852897ea98f2a7dd7c998cf35c41f3bf636edb8146b0558a0d4043485f42
MD5 0e3154fb74f90273e88025fc87e06d5b
BLAKE2b-256 d4c0a30e5bb75f720e6804b6c450f1b5369554a8c78372cdf2802cc25e159b44

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_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.0a4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c4073f2c64e3abf503936d3e68649e88b04d9b77fa02a2efc3fda40868fd886e
MD5 5d33ca413e928d773f42dc35063e6759
BLAKE2b-256 37b2fa0b19577cec56f1b1c33df90eb132cc65e5a3a904a4395919993d23f3b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_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.0a4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a6eeab6fdee66b3cf862a60072a8f801e926563820db6cae5fe74dd78b6fc741
MD5 396588c055ff4c7a06d48c925b930d1d
BLAKE2b-256 1c97f11698f6e2b3f8ced03eacc5248d1a9d39790fbecc8ed835b851c5c5c611

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.0a4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 161.0 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.0a4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 38d3d22a4fff2b29e53f3f247e6c1cb1005fde48bf7387a36327d9bbcc559d1a
MD5 de8a3446a888ae7c2347bc2dad6bb92a
BLAKE2b-256 0408b1b4d4a7f86e9589bd53db1ce12769435260d8afceb9bac54f633985d8e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ddfd9adca6bea4b48311df8859081fd1205f4ed9a7346306a949872aff7e3003
MD5 ad2891f1f4291abd56108a14b0085892
BLAKE2b-256 742d6a030a0f4ae16711d23a255ac460e7c15d8ec3684ac9598610b79ce5c523

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cc4711bac6b3ebff94c4ceacaf84bff09fe7dce8f77bba8d12cbc0935a6433e6
MD5 011bbbdac422be7bd2e06e56c22ccd3a
BLAKE2b-256 1382710813d024c20d17f72427a5b5a8b723b558c95098dc028b51c8ef6baa75

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e9eb6419067034864238c24dbf7e9a05bb97b711e10ac6bc6065e9e72aaa78a5
MD5 4ac05e23fe136147ba79bb8d34e4b47b
BLAKE2b-256 aff3a043b9d1b2181e02c510be65483b598782dd11ac660f7bf13b27355d04af

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_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.0a4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8e459c6d28106d1789ad90f758dd84384cdbff4d40de41335c5e4645ddc66f29
MD5 03d357975dfdaaa293a82eff06ff98a2
BLAKE2b-256 18abe2c54a1f5bb63135fb886d46f11674fad0f964041845ea1cd43f9e1da346

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_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.0a4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1d58f2f81724573e9f047ad22a06059ecb6e411ff4bf187793d42fc4e8ef4558
MD5 c011cab570d08a450da26d7f86a07f22
BLAKE2b-256 699075a541eae74f6e702b17634c0d664ca658c10653a54fe742e74c02d39cb0

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.0a4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 161.0 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.0a4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 52480208b6517795a88ac79e5cd8d14868d1400b481d2bce574aaabff8a6237f
MD5 d692ac2044c705f203a28f5122d4682c
BLAKE2b-256 5df67716b9ec9fbc25e1f407e56c9b9ec04d6567ee65fd272c9b1b55e79da51a

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d8557a571ed6f5fdf2962f5b54036d38eae59f137beeebfa44412b8b3a0de2a0
MD5 c4780486b021ba77257f023f4b9993b4
BLAKE2b-256 0a5310dd649e2383172775c6ba8b10c16d5bd1c074a2b1186bf3416408e8443b

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a7e2bb508c6f35711c35780e81571a9044e0c076deec07710633155288ac9528
MD5 5419c85585e83584f742d6d0b6f359c6
BLAKE2b-256 09ac86d91668b71d33b4a0496c87c1451b5063ccaa73413014521401bb06aed6

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49f745c0abdd0effb9ba07702a03084199544a6d7c5c449f6ac09f8359c1c776
MD5 87410c0e18d2600845bf775fbac2544a
BLAKE2b-256 7722767816f4486a3c63fe209c903e167ac88a331a01e8c6bc3dd8af184f41b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_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.0a4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0903775af67e4531b171ee2ff51883b2dc46b6611f9a273a5c7d8245114d3fab
MD5 d4a64e5df77385baf6c04669c38bb3d1
BLAKE2b-256 3a6c9d4bdee4c39dae20ec2508330f59479195f79c3c00538ac14711fd802f24

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_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.0a4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59d1a950e3e3193f5fe864e0814b71cf92ad22c9b3d09a2abc75c0245e5e7818
MD5 9e4a90eefc8461915ed8bed6115b9f78
BLAKE2b-256 442a2b0122814ab507807007220508cec6ba2f2dd1fcbe351ffc02a2f71c6f43

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: aiscat-0.68.0a4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 161.0 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.0a4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 64f367651b99674a0d17e0045dad9a736940ce99dd565942bd625b6374901a0c
MD5 d45c9d69232201506b40b2b8245d3944
BLAKE2b-256 3149c9aad893abb4b54cd2eb85245f4bf682ec52d3b960a80cea010ac22cddac

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5cd2a218175b57397dc35b18b123ca6a26f04bd384af77ce0c22b43ae4296be8
MD5 207ee672bcd3d2b85e3a55dc2fad6c6d
BLAKE2b-256 99b1d07a226c3b7f878ceb06be8b1bfb0a8c9c32bf013267e4226219e7dc0556

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 80328b8d90af4b15668eae15fec6233ba1867b8fa1fd7b5d5ca94f29638a986a
MD5 caad22644aed16c5e81c34cdcdd6c0ae
BLAKE2b-256 c0159db5659650b7e4d8931ced1f31d97bf4818abeabf73fb45103422338bdf5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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.0a4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0eb527dba7c5cfa4439c148f8141b4987cce5f4210026297fed06691b97d994
MD5 c83cde0aa0d8ab79e015e09d35a3bc79
BLAKE2b-256 cbf5d58560f351e5c7a7c31df2ffe38be5dc669f2b1a9cfbe8468ccdfb4256c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_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.0a4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 45f46180246ef6230c0efc558ba1b47fc2590fcdd988651fae7b39a4925de5ba
MD5 ec2418c212f3e04b0bcff8d8a769126a
BLAKE2b-256 8dd273676a82e5267bd8ec52382547c7c98e1443ee86a65ff92e9a66107be716

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_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.0a4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aiscat-0.68.0a4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 12c534ecd9a6309911925854c2682aa3db99e60544cd87ce1b5e2054cbb6e321
MD5 66a544581fa164af64be8fcb999b4fe7
BLAKE2b-256 63466f904e5f28daf9d768efb09981c892ce69451cbf281e11ed147921ad94a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiscat-0.68.0a4-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