Skip to main content

FT8 and FT4 amateur-radio digital mode encoder/decoder (Python port of WSJT-X)

Project description

ft8lib

FT8 and FT4 amateur-radio digital modes in Python.

ft8lib is a Python port of the FT8/FT4 protocol implementation from WSJT-X: message packing (77-bit), CRC-14, LDPC(174,91) forward error correction, GFSK waveform synthesis, and a full receive chain (candidate sync search, downconversion, fine time/frequency sync, noncoherent multi-symbol soft demodulation, belief-propagation decoding).

Installation

pip install .

The only runtime dependency is numpy. The decode hot paths (LDPC belief propagation, ordered-statistics decoding, fine sync) are compiled from a small C extension at install time; if the extension is unavailable the library transparently falls back to slower pure-numpy implementations of the same algorithms.

Usage

Python API

import numpy as np
import ft8lib

# --- Encode a message to an audio waveform (float64, 12000 S/s) ---
wave = ft8lib.encode_ft8("CQ K1ABC FN42", f0=1500.0)   # 12.64 s
wave4 = ft8lib.encode_ft4("W9XYZ K1ABC RR73", f0=1500.0)  # 5.04 s

# Transmission conventionally starts 0.5 s into the 15 s (FT8) or
# 7.5 s (FT4) cycle:
period = np.zeros(ft8lib.FT8.NMAX)
period[6000:6000 + len(wave)] = wave

# --- Decode a receive period (12000 S/s audio, any amplitude scale) ---
for result in ft8lib.decode_ft8(period):
    print(result)
# FT8 -15 dB  DT +0.00 s  1500.0 Hz  CQ K1ABC FN42

for result in ft8lib.decode_ft4(audio_7p5s):
    print(result)

Each decode is a ft8lib.Decode with fields message, snr (dB in 2500 Hz), dt (seconds relative to the nominal 0.5 s start), freq (Hz), sync, and mode.

Realtime decoding

To decode live audio, feed a RealtimeDecoder blocks of samples as they arrive (starting at a cycle boundary). Like WSJT-X, it runs decode attempts part-way through the receive period (FT8: 11.8, 13.5 and 14.7 s; FT4: 5.6 and 6.05 s), so most messages are reported seconds before the period ends, and it rolls over automatically at each cycle boundary:

rt = ft8lib.RealtimeDecoder("FT8", mycall="K1ABC")
for block in audio_blocks:            # e.g. sound-card capture callback
    for result in rt.feed(block):     # new decodes, as soon as they appear
        print(rt.cycle, result)
rt.flush()                            # decode a partial final period

ft8lib.decode_realtime(blocks, mode="FT8") wraps this as a generator over an iterable of blocks. For a single already-captured period there are also decode_ft8_stream / decode_ft4_stream, generator versions of the batch decoders that yield each message as soon as it decodes instead of returning the full list at the end.

Lower-level building blocks are exposed too:

bits = ft8lib.pack77("CQ K1ABC FN42")        # 77-bit numpy array
msg, ok = ft8lib.unpack77(bits)              # back to text
tones = ft8lib.ft8_tones_from_bits(bits)     # 79 channel symbols (0-7)
codeword = ft8lib.encode174_91(bits)         # 174-bit LDPC codeword

Hashed nonstandard callsigns (<PJ4/K1ABC>) resolve through a ft8lib.HashTable, which you can keep across decode cycles and prime with table.set_station(mycall, dxcall) — the same behavior as WSJT-X.

Command line

# Encode to a WAV file (12 kHz, 16-bit mono)
ft8lib encode "CQ K1ABC FN42" cq.wav --mode ft8 --freq 1500 --full-period

# Decode a recording (any sample rate; resampled to 12 kHz)
ft8lib decode 210701_133000.wav --mode ft8

Message types supported

Standard messages (types 1/2 incl. /R and /P), free text (0.0), DXpedition mode (0.1), ARRL Field Day (0.3/0.4), telemetry (0.5), WSPR-style (0.6), ARRL RTTY roundup (3), nonstandard/hashed calls (4), and EU VHF contest (5).

Performance

Decode thresholds measured with additive white Gaussian noise (10 trials per point, single signal):

Mode ~100% decode down to WSJT-X (with OSD+AP)
FT8 −19 dB −21 dB
FT4 −16 dB −17.5 dB

The port implements the belief-propagation decoder with all five WSJT-X metric passes, but not ordered-statistics decoding (OSD), a-priori (AP) decoding, or multi-pass signal subtraction, which account for the remaining 1–2 dB. A full 15 s FT8 period with a busy band decodes in well under a second on a typical desktop.

Development

Detailed docs on the encode and decode pipelines, with Fortran-source correspondence tables, live in docs/encode.md and docs/decode.md.

The LDPC tables in src/ft8lib/_tables.py are generated from the WSJT-X Fortran sources by tools/gen_tables.py (expects the wsjtx source tree in the repository root).

Run the tests with:

pip install -e .[test]
pytest

License

GPL-3.0-or-later. This library is a derivative work of WSJT-X, Copyright (C) 2001-2024 by Joe Taylor, K1JT, and the WSJT-X Development Team, licensed under the GNU GPL v3. 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

ft8lib-1.2.0.tar.gz (80.5 kB view details)

Uploaded Source

Built Distributions

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

ft8lib-1.2.0-cp314-cp314-win_amd64.whl (99.5 kB view details)

Uploaded CPython 3.14Windows x86-64

ft8lib-1.2.0-cp314-cp314-musllinux_1_2_x86_64.whl (139.9 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

ft8lib-1.2.0-cp314-cp314-musllinux_1_2_aarch64.whl (139.6 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

ft8lib-1.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (140.8 kB view details)

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

ft8lib-1.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (140.3 kB view details)

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

ft8lib-1.2.0-cp314-cp314-macosx_11_0_arm64.whl (97.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ft8lib-1.2.0-cp313-cp313-win_amd64.whl (98.4 kB view details)

Uploaded CPython 3.13Windows x86-64

ft8lib-1.2.0-cp313-cp313-musllinux_1_2_x86_64.whl (139.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

ft8lib-1.2.0-cp313-cp313-musllinux_1_2_aarch64.whl (139.5 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

ft8lib-1.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (140.7 kB view details)

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

ft8lib-1.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (140.2 kB view details)

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

ft8lib-1.2.0-cp313-cp313-macosx_11_0_arm64.whl (97.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ft8lib-1.2.0-cp312-cp312-win_amd64.whl (98.4 kB view details)

Uploaded CPython 3.12Windows x86-64

ft8lib-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl (139.8 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

ft8lib-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl (139.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

ft8lib-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (140.7 kB view details)

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

ft8lib-1.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (140.2 kB view details)

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

ft8lib-1.2.0-cp312-cp312-macosx_11_0_arm64.whl (97.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ft8lib-1.2.0-cp311-cp311-win_amd64.whl (98.4 kB view details)

Uploaded CPython 3.11Windows x86-64

ft8lib-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl (137.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

ft8lib-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl (137.5 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

ft8lib-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (138.7 kB view details)

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

ft8lib-1.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (138.1 kB view details)

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

ft8lib-1.2.0-cp311-cp311-macosx_11_0_arm64.whl (97.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file ft8lib-1.2.0.tar.gz.

File metadata

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

File hashes

Hashes for ft8lib-1.2.0.tar.gz
Algorithm Hash digest
SHA256 e94937f2dd31c8bbf3d6de79951dde870a825e4ccb8d05012ab4ef83c09c2acd
MD5 8f4d9979ff9c29e4ddb68d008fce88b4
BLAKE2b-256 1326107ebbf0f201837937ae14f9a61164cf486a64a046d6dd634e46c91a49f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0.tar.gz:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ft8lib-1.2.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 99.5 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 ft8lib-1.2.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 99371607b18f27941fc6c38b13fde83afeac6b65228663463a4870bb5edf80a7
MD5 7c255145798e6df00a8980624514779c
BLAKE2b-256 15d37f005bb7e81aaad4fa98d4749443bf4800dbec516bf649e2bef78f3c2b73

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-win_amd64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a093cfd93f68ad4b4ee3580265d1414c7f140690e541139120e807e2559a0cc3
MD5 fe6c742c744ac82839fd10c6a59b68de
BLAKE2b-256 b2faeb8b0b6487a5a373c961060fbf5caa6f73ec47adf44c30c81a29cb917e86

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 29b84ce404aa4cbbb1af218298ad8d992d525273e2753606372cff0f48c2a6c9
MD5 c0f04aae0cac4ba6f9367bf9765d0530
BLAKE2b-256 ebce5a6f2a59fbfcab8f58874dad836459e86366bdb709922847e7e0d8186f21

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3add530aaa81b511fc63780045ea54b5df21cf9f7f9674bda5d9c6062adf1c5c
MD5 51b6b6936e90a7b207b28e025d2e9646
BLAKE2b-256 964784244a4ead001334582214819baf6cc26ebae7a22040d317cbd2ad519030

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 4dec8d07f91f8d37ba605fcb4fc8f7417a3c946aa8eb30162ef0de3366d224a4
MD5 2b8a08a98771ebf50eeacf98d278a2c2
BLAKE2b-256 96cca9d907cbfc4ef04fb88479cb92140e5839ddd071dadba43f7a8120ac16d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 86e1c91449dc7b00b4a6ebacbd1de4d87f7e7b52d4fd6e0c03223981a90dc39d
MD5 83a252d9ca6e03cf8b6c6a675564b003
BLAKE2b-256 abbfe06615f4091eb7336dae878db617319554aeec07d5df082dd31ba2531f40

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ft8lib-1.2.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 98.4 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 ft8lib-1.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7d7340bb9a7c2a30da3f538a8bcfe04c3f656e3f46150af5447f601a97b39a1b
MD5 ea9d3092da1981555d284f2c4b50505f
BLAKE2b-256 1d798c75a0fddbe060338a28462201f775fb7dd93838cbdc92e8c502f632afd9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3e35bf7c00c532a0365a0554493ceda70d4bb018698556546a465c0904428993
MD5 8fcd809e0058093894dc04567e104feb
BLAKE2b-256 3eddb572b2c39e9b4796f927c1cad761f35a676532afdd582bb15196b5ce0463

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4538bf160e4793cc51dfeaa16e2dc4789617753ba494cd5a4ec08509c84f1d14
MD5 ccad6fe2bc9ff1b7542ef174810f3ca8
BLAKE2b-256 01db574fc5027fb7e974d068e58f628277729678b5f8cfbdf3bbf5a0e2cf74b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b65478cf5e40bf411945ca42d514f1ed221c24c392896e908eae1f6a2b29db8c
MD5 5e38f9cb62cfd915b8301152f2745308
BLAKE2b-256 2b166dfebd4e629f2f82d80c19dad32d608dd5ef2502edea80eaa54ac6d4e3f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 cb3f985c68932be6de9d248d02444ab0005447fe9273dc3c5f27925205b78ad1
MD5 ac2cd01a8becce9f06b38ea6067005a9
BLAKE2b-256 cb429f987aea9c261bb0b99d1a4c247dfa34e48a779f5ae80d9a01c9395159d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 07f978d57f58177f3160bd22136c899f5ef0c8650ea393778f05ef709f372b8c
MD5 f3a96997df354667df9a1e4e563b7f85
BLAKE2b-256 71ae835cb4a3d532d9bc6e9e43a4e8a0fb31ad475f1d93a39bf96ea3238b4fdf

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ft8lib-1.2.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 98.4 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 ft8lib-1.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 300a2a27595a2833ffba41acfec902b2720f0d32e0f1faa4fda1c9358ad1664e
MD5 8310dfa2260f0c2dbde04e77996df319
BLAKE2b-256 34f647c285e0804ba5aea17d3a3007f2be775b9d25a3577206fd61eff5c49edb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bd845d2c1a4a298ac184e0b5138173c359f8f71f35517771e4607f342eadee07
MD5 abd79c83d3de5335cd81b430a35613f8
BLAKE2b-256 610cc14c08f4e53f8412dbb04b6dd0b056d16d8ef25693217f3282d059a5c637

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6d7bda13c3959a4122c26626c7f98189b7f08a2bfac7a23b87480f181125a7fe
MD5 4a1b8c3f562b1c4d481ca55176906a43
BLAKE2b-256 a3d99e0fae9523039eb5eb36fd6a734653829600382c2a8373692b56817de76b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b660257b546620120b9b91178477d346457585c7b4046e17f0dc3b9d5fe8c4ed
MD5 d308f313372e42d5c5b98588882d0d3e
BLAKE2b-256 90ebd3c43dadf03e04d3aa55b7d0e6b92bbe5f7ebbc082faf4536e95dcd91902

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 cd1e7f7dd1a9aa550917a5e3aa9cdeb73a720998a02dbed0e5e6903a3aa87478
MD5 ce0b4b0402f749fcf515954c76c575cb
BLAKE2b-256 c4c73ae648180f1614cccdd1a458def6a9d890806fe34ed8f53103adf48fed75

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d9ae391c2107c56b8241fe9b3ed418ac1bcec2741fe31b9825d15b0da935ae96
MD5 cb9a4af370eafa55e53354cc6629e1ab
BLAKE2b-256 0e07e4ed8a929e3ca5a83a6b2974c9a5dea4d44fab7d4f7a162901c156b6e17e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ft8lib-1.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 98.4 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 ft8lib-1.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6428c6dc101356030eddd999c00e5a86cdc57879b1f97b0256700b8a2f924e5d
MD5 795585337ac5bea0d82f599e567168e5
BLAKE2b-256 69d12c00161480ae474a31900ebe7711f2828d32b4c2068d5b48a382c753d577

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7b642ee1bd0497f77f590ec1805dfaf74140e6b3abf03742ae7d4f41c596ccd8
MD5 5d7ef35c5318864349d90a492c304c0c
BLAKE2b-256 16eb8d6260e057e63bd59630933084e4a14697a0bf6256a834f2f73c74912577

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ddbb704b9a30dcfe70b8f9faf994d0f66e8c6bb191eb058c2f2711370a9a811a
MD5 c042418a7dfb6e42ff5c6ca20a8caf72
BLAKE2b-256 7fbf22dec655b2a026e7254ac51d0aa9bf7b1074437e7695b61ea5e07b5d118b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cae22cf3bb6c5d0e2dc7333401cde4d2adeb00dd93896c0cd6f5deac4e4199b7
MD5 766b0261614ff22cab5d3f49f7d43803
BLAKE2b-256 8d88e7c02c4faa90e0f1d8ba787cbc0e3d694e46557164f89f72ad24abcd1636

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 bf442f64518c6e9330066b83301bd915719306d8d2a893d95f1cc5d31b9b5329
MD5 cbbc9b01a745c73b02f96196d21ae831
BLAKE2b-256 f5c723ed83e30c006351892ba97bd3196089709d104d37f531db93542d4b1125

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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

File details

Details for the file ft8lib-1.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ft8lib-1.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5b930491eaf6d01d0b7c9e5de8c4a5630c47f692dc6c02edc9a075d09204cce6
MD5 2c284ee73dde00d73036941935166f3d
BLAKE2b-256 24622cfddff92f382313feb234519ce17644a89ca1da063a2c4c09cf6d26f7c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ft8lib-1.2.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on 1vers1on/ft8lib

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