Skip to main content

Python bindings for FIRM Client using Rust

Project description

FIRM-Client

A modular Rust library for parsing FIRM data packets, with bindings for Python and WebAssembly.

Project Structure

The project is organized as a Cargo workspace with the following crates:

  • firm_core: The core no_std crate containing the packet parser, CRC logic, and data structures. This is the foundation for all other crates and can be used in embedded environments.
  • firm_rust: A high-level Rust API that uses serialport to read from a serial device and provides a threaded client for receiving packets.
  • firm_python: Python bindings for the Rust client.
  • firm_typescript: WebAssembly bindings and TypeScript code for using the parser in web applications.

Philosophy

The goal of FIRM-Client is to provide a single, efficient, and correct implementation of the FIRM parser that can be used across different ecosystems (Rust, Python, Web/JS, Embedded). By centralizing the parsing logic in firm_core, we ensure consistency and reduce code duplication.

Building

Prerequisites

  • Rust (latest stable)
  • Python 3.10+ (for Python bindings)
  • maturin (for building Python wheels)
  • wasm-pack (for building WASM)
  • Node.js/npm (for TypeScript)

Build Instructions

We assume that you are using a Unix-like environment (Linux or macOS).

Windows users may need to adapt some commands (we will mention where this is the case), or use WSL (Windows Subsystem for Linux) for best compatibility.

Make sure you have Cargo and uv installed.

You would also need npm if you want to test the web/TypeScript bindings. Install it and Node.js here: https://nodejs.org/en/download/

  1. Build all Rust crates:

    cargo build
    
  2. Build Python bindings:

    cargo build -p firm_python
    uv sync
    # or to build a wheel
    uv run maturin build --release
    
  3. Build WASM/TypeScript:

    cd firm_typescript
    npm install
    npm run clean
    npm run build
    
    # For testing the code with examples/index.html
    npx serve .
    

Usage

Rust

Add firm_rust to your Cargo.toml.

use firm_rust::FirmClient;
use std::{thread, time::Duration};

fn main() {
    let mut client = FIRMClient::new("/dev/ttyUSB0", 2_000_000, 0.1);
    client.start();

    loop {
        while let Ok(packet) = client.get_packets(Some(Duration::from_millis(100))) {
            println!("{:#?}", packet);
        }
    }
}

Python

You can install the library via pip (once published) or build from source.

pip install firm-client

This library supports Python 3.10 and above, including Python 3.14 free threaded.

from firm_client import FIRMClient
import time

# Using context manager (automatically starts and stops)
with FIRMClient("/dev/ttyUSB0", baud_rate=2_000_000, timeout=0.1) as client:
    client.get_data_packets(block=True)  # Clear initial packets
    client.zero_out_pressure_altitude()
    while True:
        packets = client.get_data_packets()
        for packet in packets:
            print(packet.timestamp_seconds, packet.raw_acceleration_x_gs)

Web (TypeScript)

todo: Add usage example.

Publishing

This is mostly for maintainers, but here are the steps to publish each crate to their respective package registries:

Rust API (crates.io)

todo (idk actually know yet)

Python Bindings (PyPI)

We need to to first build wheels for each platform, right now the workflow is to do this locally and then upload to PyPI. At the minimum, we build for Linux x86_64 and aarch64 for python versions 3.10+, including free threaded wheels.

  1. Always bump the version in firm_python/Cargo.toml before publishing.

  2. Build the wheels

# If you're on Linux
./compile.sh

# If you're on Windows
.\compile.ps1

This will create wheels in the target/wheels directory, for Python versions 3.10 to 3.14, for both x86_64 and aarch64.

  1. Make sure you also have a source distribution:
uv run maturin sdist
  1. We will use uv to publish these wheels to PyPI. Make sure you are part of the HPRC organization on PyPI, so you have access to the project and can publish new versions.
uv publish target/wheels/*

This will ask for PyPI credentials, make sure you get the token from the website.

TypeScript Package (npm)

  1. Always bump the version in firm_typescript/Cargo.toml and package.json before publishing. Make sure they match.

  2. Login to npm

npm login

  1. Publish it

npm publish

(Ensure the version in package.json is bumped before publishing.)

License

Licensed under the MIT License. See LICENSE file for details.

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

firm_client-1.1.0.tar.gz (55.1 kB view details)

Uploaded Source

Built Distributions

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

firm_client-1.1.0-cp314-cp314t-win_amd64.whl (344.0 kB view details)

Uploaded CPython 3.14tWindows x86-64

firm_client-1.1.0-cp314-cp314t-manylinux_2_31_x86_64.whl (436.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.31+ x86-64

firm_client-1.1.0-cp314-cp314t-manylinux_2_31_aarch64.whl (412.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.31+ ARM64

firm_client-1.1.0-cp314-cp314-win_amd64.whl (344.2 kB view details)

Uploaded CPython 3.14Windows x86-64

firm_client-1.1.0-cp314-cp314-manylinux_2_31_x86_64.whl (436.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.31+ x86-64

firm_client-1.1.0-cp314-cp314-manylinux_2_31_aarch64.whl (414.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.31+ ARM64

firm_client-1.1.0-cp313-cp313-win_amd64.whl (346.3 kB view details)

Uploaded CPython 3.13Windows x86-64

firm_client-1.1.0-cp313-cp313-manylinux_2_31_x86_64.whl (439.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.31+ x86-64

firm_client-1.1.0-cp313-cp313-manylinux_2_31_aarch64.whl (415.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.31+ ARM64

firm_client-1.1.0-cp312-cp312-win_amd64.whl (346.5 kB view details)

Uploaded CPython 3.12Windows x86-64

firm_client-1.1.0-cp312-cp312-manylinux_2_31_x86_64.whl (439.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.31+ x86-64

firm_client-1.1.0-cp311-cp311-manylinux_2_31_aarch64.whl (413.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.31+ ARM64

firm_client-1.1.0-cp310-cp310-win_amd64.whl (344.2 kB view details)

Uploaded CPython 3.10Windows x86-64

firm_client-1.1.0-cp310-cp310-manylinux_2_31_x86_64.whl (436.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.31+ x86-64

firm_client-1.1.0-cp310-cp310-manylinux_2_31_aarch64.whl (413.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.31+ ARM64

File details

Details for the file firm_client-1.1.0.tar.gz.

File metadata

  • Download URL: firm_client-1.1.0.tar.gz
  • Upload date:
  • Size: 55.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0.tar.gz
Algorithm Hash digest
SHA256 3b242e877acf000966bd963d39c581f15e306a46e635ee3b937f403546930236
MD5 9ea154a9565bca047f525690c0ea5ac1
BLAKE2b-256 ef8acfc4a19bbc5f9022f98d3b5ba420c648372b809a3e84753e8f0e6be8370a

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 344.0 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 26752453c96d5a4cffd1579b5fd2fdcec6e3146b1946e621f4f8896553bbb310
MD5 30e80f3f388ed59eac79656f662b2fc1
BLAKE2b-256 c69824db31cca1a2b058f6a96c5afc790eae38f7c7c8450293f1d505293b00ee

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314t-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314t-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 436.2 kB
  • Tags: CPython 3.14t, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314t-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 8c22ccc05243287eaf3c3ef2e30ecfe850a80b1a0f5bf41c3e56832f07bc1994
MD5 744fd27516dc3c376e585872ce0ed93d
BLAKE2b-256 28c51f05d88068fa3245449ee72a109a7e37e5b4df917b7e6a1bad314fc4462d

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314t-manylinux_2_31_aarch64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314t-manylinux_2_31_aarch64.whl
  • Upload date:
  • Size: 412.4 kB
  • Tags: CPython 3.14t, manylinux: glibc 2.31+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314t-manylinux_2_31_aarch64.whl
Algorithm Hash digest
SHA256 a27111745dc27fe9382b155e970b86b244361c70c4bb57d5bbc754c4eb6153b6
MD5 8fc449d8e37e8335e3569e99692a3b8a
BLAKE2b-256 0bd546b662f7e73c3453a95ff472790c036bbf2891a91a540cb63c22f4298c13

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 344.2 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 2f24e3b059558d3a9005013b3d25f4143bc5cea97180d14a7f6f3e1d2b3623f1
MD5 51238bf0f17905d39f090834eb832f47
BLAKE2b-256 58b2a7aedc12bdf11defeb17110b896c57b22a8a88ca186d4e888324e3dfe2a8

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 436.4 kB
  • Tags: CPython 3.14, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 e6482569328ef67254f4c0d2359f0ad04e5da4cc28b6837c8183800346b177ab
MD5 10e4cf047d7086a74c8c42f53682c599
BLAKE2b-256 9d8deb1343dee128c06ba87e055af8b6323b605f743208c13f6538b4116f1df6

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp314-cp314-manylinux_2_31_aarch64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp314-cp314-manylinux_2_31_aarch64.whl
  • Upload date:
  • Size: 414.1 kB
  • Tags: CPython 3.14, manylinux: glibc 2.31+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp314-cp314-manylinux_2_31_aarch64.whl
Algorithm Hash digest
SHA256 6c5072fd3e21e1d7935460aff1a1d947c0d58c38b5593cc80ce37a37eb0984d4
MD5 4de2c395a447f93a516be07ad815d426
BLAKE2b-256 4f3be443635a50c5acea621b6584f7fa217019eadf1f92da24085ac594017bc3

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 346.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 67d7bd9413e0fe379a4d84194d5df034f8839d6bbc4e7615e41e3d11801571cf
MD5 846523a2e1237312c2565b38e07e9903
BLAKE2b-256 5bc38009ffb6526e2376c8c211faf711d2ad14fdcb6bbb8738e52aa3eb701545

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp313-cp313-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp313-cp313-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 439.3 kB
  • Tags: CPython 3.13, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp313-cp313-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 46f81b3c2aa9380e573e0e729b9fdb39210d03291758906639cbdc20ab2417ad
MD5 e0e8c12c73b6f8e52c62ee3015353bbd
BLAKE2b-256 89a9cd9df004ff55b5649fc102dc11e83fe7fb395c48814b008c576636fd192d

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp313-cp313-manylinux_2_31_aarch64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp313-cp313-manylinux_2_31_aarch64.whl
  • Upload date:
  • Size: 415.4 kB
  • Tags: CPython 3.13, manylinux: glibc 2.31+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp313-cp313-manylinux_2_31_aarch64.whl
Algorithm Hash digest
SHA256 a3d9e90a00c6187e4a98e4e8461fce4dfb9969c205e733390865fa3f099d9b76
MD5 f79409fc71222f4c46aeabf4505b7275
BLAKE2b-256 36b1a8aba704108eea90b21d8faacc3d07b4ed7da50a479810442b9df0c82bbb

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 346.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 faa0ae0aa0fff23a5c0cf81402e02217dace9685032ea479cab6adefc182e542
MD5 1e6b9c9bf155148c2802828d0cb9625a
BLAKE2b-256 98aadf0bfd5be019c7dece771e2498d437f2b80c1eb0abdbf233566f0d741ca1

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp312-cp312-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp312-cp312-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 439.7 kB
  • Tags: CPython 3.12, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp312-cp312-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 0469e0dfbe1d108a3db847119fb1864b23644f8e85ce62b173dbc0d86f5f7559
MD5 5638e38795874bf749c39ecd70f40662
BLAKE2b-256 955e6c45bcdb3c7ff369ff53827b4b5763475b4c7457513b87824e212903452d

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp311-cp311-manylinux_2_31_aarch64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp311-cp311-manylinux_2_31_aarch64.whl
  • Upload date:
  • Size: 413.3 kB
  • Tags: CPython 3.11, manylinux: glibc 2.31+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp311-cp311-manylinux_2_31_aarch64.whl
Algorithm Hash digest
SHA256 9f9a685457af0a8e0f1309650a100519360c64b53efd3a2b4427a97ede03ebdb
MD5 8085525c2ffa8173153fd8e147f1e240
BLAKE2b-256 273ae2214f19962ec8826d45188048069c851d78ce0ac60aa3fa2928bf8a1676

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 344.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ba6d208740434bab5f9f28020ffa7cc67a6a60b82bd523c10f122865eb063403
MD5 6d0c90c210a1554075b4338e556bf3ff
BLAKE2b-256 9371a899f2e86ff1d53f786b839f8890a8112b2d4fe4b6fead2d929922525f24

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp310-cp310-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp310-cp310-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 436.1 kB
  • Tags: CPython 3.10, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp310-cp310-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 0d8973782271f7c735c79108c1e2b38c286f9c982ff8a7126a180508f3aecb23
MD5 452f13236251d55cae7d458124200eb1
BLAKE2b-256 9adf7c9e57d8022167c1d66d2502fec75f2b416746e09847e5427f552c3a840b

See more details on using hashes here.

File details

Details for the file firm_client-1.1.0-cp310-cp310-manylinux_2_31_aarch64.whl.

File metadata

  • Download URL: firm_client-1.1.0-cp310-cp310-manylinux_2_31_aarch64.whl
  • Upload date:
  • Size: 413.5 kB
  • Tags: CPython 3.10, manylinux: glibc 2.31+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for firm_client-1.1.0-cp310-cp310-manylinux_2_31_aarch64.whl
Algorithm Hash digest
SHA256 d1bf20d0159bf876b2c5c40f555bb8782e40f305ced700b57d41a58cd8c8d5a4
MD5 3ab5ef0d4e15a66713e6d212ff997c94
BLAKE2b-256 8f92ffa6a5d71c65d68e61a1aaa9d43da3332066289ee2455b1b9e8ee4dd6eff

See more details on using hashes here.

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