Skip to main content

Drop-in replacement for CPython float formatting/parsing, backed by {fmt} and fast_float. Demonstrator for a forthcoming CPython PEP.

Project description

floatium

Experimental drop-in replacement for CPython's float formatting and parsing, backed by the {fmt} and fast_float C++ libraries.

pip install floatium, set FLOATIUM_AUTOPATCH=1, and every subsequent Python process uses {fmt}'s Dragonbox for repr(float) / str(float) / float.__format__ and fast_float for float("..."). Existing code, existing tests, existing output — just faster. Works with an unmodified stock CPython; no interpreter rebuild required.

Installation

pip install floatium

From source

Source builds require a C++17 compiler (GCC 9+, Clang 12+, or MSVC 2019+) and CMake ≥ 3.20.

git clone https://github.com/eendebakpt/floatium
cd floatium
pip install -e '.[test]'

Tests and benchmarks target CPython 3.14. No system libraries are required; {fmt} and fast_float are vendored.

Why this package exists

CPython's float formatting has gone through Python/dtoa.c — David Gay's 1991 reference implementation — for three decades. The code is ~2,800 lines of hand-tuned C and slower than modern alternatives. Its parsing counterpart (_Py_dg_strtod in the same file) has similar constraints.

Floatium demonstrates what replacing both sides looks like, as a pip package against stock CPython:

  • Format (double → string) via {fmt}'s Dragonbox algorithm — the same algorithm that backs C++20's std::format. Fixed-precision formatting for huge-magnitude values is routed through Ryu's d2fixed to sidestep fmt's Dragon4 + bigint slow path.
  • Parse (string → double) via fast_float's Eisel–Lemire + bignum path — the same algorithm Rust's std, Apache Arrow, and DuckDB use.

A pure-C format backend (ryu_opt, using Ryu's d2s + d2fixed + d2exp) is also available for callers who want zero C++ in the float-formatting path. See Backends below.

All backends produce output bit-identical to stock CPython on every input we've tested (see DIFFERENCES.md — currently zero divergences against CPython 3.15's stdlib test suite).

Usage

Autopatch (recommended)

Once floatium is installed, setting FLOATIUM_AUTOPATCH=1 before any Python process starts installs the replacement for the life of that process:

export FLOATIUM_AUTOPATCH=1
python -c "import json; print(json.dumps([0.1, 0.2, 1e100]))"
# [0.1, 0.2, 1e+100]

The mechanism is a .pth file placed in site-packages/ at install time — site.py executes it during interpreter startup, before user code, and the hook calls install() if the env var is set.

Explicit

import floatium

floatium.install()          # patch PyFloat_Type slots
assert repr(0.1) == "0.1"
floatium.uninstall()        # restore

Scoped

import floatium

with floatium.patched():
    do_something_float_heavy()

What it patches

Surface How
repr(x), str(x), f"{x}" PyFloat_Type.tp_repr pointer swap
f"{x:.2f}", format(x, spec) __format__ entry in PyFloat_Type.tp_dict
"{}".format(x) via __format__
float("1.5") PyFloat_Type.tp_new pointer swap
json.dumps([x]) via __repr__

"%g" % x is not patched — see DIFFERENCES.md.

Backends

Three format backends and two parse backends are available. All format backends produce bit-identical output. Pick one at build time, or build all of them and switch at install time.

Format backend Algorithm C++ used?
fmt_opt (default) {fmt} Dragonbox (modes 0/2) + Ryu d2fixed (mode 3) yes
fmt {fmt} Dragonbox + fmt::detail::format_float yes
ryu_opt Ryu d2s (mode 0) + d2exp (mode 2) + d2fixed (mode 3) no
stock marker — uninstalls and uses CPython's dtoa.c no
Parse backend Algorithm C++ used?
fast_float (default) Eisel–Lemire + bignum fallback yes
stock marker — uninstalls and uses CPython's _Py_dg_strtod no

ryu_opt paired with parse_backend="stock" gives a fully pure-C operation (zero C++ on either side). To build only the pure-C path:

pip install -e . \
  -C cmake.define.FLOATIUM_FORMAT_BACKEND=ryu_opt \
  -C cmake.define.FLOATIUM_PARSE_BACKEND=stock

Or build every backend and pick at runtime:

pip install -e . \
  -C cmake.define.FLOATIUM_FORMAT_BACKEND=all \
  -C cmake.define.FLOATIUM_PARSE_BACKEND=all
import floatium
floatium.install(format_backend="ryu_opt", parse_backend="stock")

The ryu_opt adapter (mode dispatch, FP fast path for %e/%g, banker's rounding for round(x, k) with negative k) is ported from the rye_float companion CPython branch — the in-tree pure-C demonstrator that drops Python/dtoa.c.

Vendored libraries

All three are vendored directly from upstream — pinned versions live in each third_party/<lib>/README.vendor:

Library Upstream Resync
{fmt} fmtlib/fmt tools/sync_fmt.sh [/path/to/fmt]
fast_float fastfloat/fast_float tools/sync_fast_float.sh [/path/to/fast_float]
Ryu ulfjack/ryu tools/sync_ryu.sh [/path/to/ryu]

Each script defaults to ~/<libname> and copies a fixed file set into third_party/<lib>/. None of the vendored files are locally modified except for one trivial include rewrite in Ryu (#include "ryu/X"#include "X"); see each README.vendor for the file list.

The C++ adapter shims that bridge these libraries to CPython's formatting/parsing contracts (fmt_dtoa.cc, fmt_opt_dtoa.cc, fast_float_strtod.cc, ryu_opt_dtoa.cc) live in src/cpython_adapter/ as floatium-owned code.

Benchmarks

Run locally with:

python -m bench.bench_ns_per_op --markdown        # quick ns/op table
bench/run_all.sh                                  # full pyperf sweep

Numbers below are from a release CPython 3.14.3 build (python -m bench.bench_ns_per_op, median of fastest third of samples, lower is better) using floatium's default fmt_opt format backend + fast_float parse backend. See INTERNALS.md for the routing inside fmt_opt, and the Backends section above for how to A/B against fmt, ryu_opt, or stock:

Corpus Operation Stock (ns) floatium (ns) Speedup
random_uniform repr(x) 284 96 2.95×
random_uniform f"{x:.4f}" 119 103 1.16×
random_uniform float(s) 121 44 2.79×
random_bits repr(x) 820 134 6.11×
random_bits f"{x:.4f}" 1,933 196 9.86×
random_bits float(s) 275 61 4.52×
financial repr(x) 171 80 2.14×
financial f"{x:.4f}" 145 101 1.43×
financial float(s) 37 36 1.01×
scientific repr(x) 640 135 4.74×
scientific f"{x:.4f}" 1,081 161 6.71×
scientific float(s) 212 58 3.64×
integer_valued repr(x) 143 88 1.62×
integer_valued f"{x:.4f}" 169 106 1.60×
integer_valued float(s) 43 42 1.02×

Wins are largest on hard inputs. random_bits and scientific corpora — values whose decimal expansion stresses dtoa's big-integer path — see 6–10× on repr / f"{x:.4f}" and 3.6–4.5× on float(s). On financial and integer_valued, parse stays near 1× because the inputs are short, integer-valued strings where dtoa's fast path and fast_float's Eisel–Lemire path both finish in tens of nanoseconds — there's not enough work to amortize either parser's setup cost.

For the format side specifically, plain fmt regresses on fixed-mode huge-magnitude inputs because fmt::detail::format_float falls into a Dragon4 + bigint classical loop when the value's decade + requested precision exceeds the 19-digit Dragonbox first segment; fmt_opt detects that cliff from the binary exponent and routes those cases through Ryu's d2fixed, which is block-based and always fast.

Parse hooks both tp_new and tp_vectorcall. CPython 3.13+'s specializing interpreter quickens float(s) to CALL_BUILTIN_CLASS, which dispatches through tp_vectorcall — bypassing tp_new. Patching only tp_new would silently leave fast_float disconnected for the common direct call (type.__call__(float, s) would still hit the hook, but float(s) would not). Floatium patches both slots, so the benchmark numbers above reflect fast_float actually running, not the stock parser running twice.

Running CPython's test suite against floatium

tools/run_stdlib_tests.py runs a curated set of CPython's own stdlib regression tests with floatium autopatched. Zero divergences on the default set as of the last update; see DIFFERENCES.md for the current status.

python tools/run_stdlib_tests.py
# ==> running: python -m test test_float test_strtod test_fstring ...
# == Tests result: SUCCESS ==
# All 12 tests OK.
# Total tests: run=1,616 skipped=210

Limitations

See DIFFERENCES.md for the full list. Summary:

  • "%g" % x is not patched. The % operator calls PyOS_double_to_string directly from libpython; no pip package can intercept that without LD_PRELOAD.
  • Patching is process-global. One install() per process; affects all threads, all modules.
  • Py_TPFLAGS_IMMUTABLETYPE bypass. We write directly to PyFloat_Type slots, bypassing the public type-attribute API that honors the flag. This is a known-stable internal technique (CPython itself does it during bootstrap) but explicitly not part of the stable ABI.
  • Free-threaded builds. Supported; patching must happen at import time (the only safe window). Method-cache invalidation uses PyType_Modified() except on 3.15 debug builds (where that call asserts on static types), in which case the wrapper falls back to writing tp_version_tag = 0 directly.
  • float("1_000.5") and float("inf") take the fallback path. Both parse correctly (output is bit-identical to stock) but don't benefit from fast_float's speed.

License

  • floatium wrapper code: MIT.
  • {fmt} (vendored in third_party/fmt/): MIT.
  • fast_float (vendored in third_party/fast_float/): Apache-2.0 OR MIT OR Boost-1.0.
  • Ryu (d2s + d2fixed, vendored in third_party/ryu/): Apache-2.0 OR Boost-1.0.
  • src/format_short.cc is a port of code from CPython Python/pystrtod.c, which is under the PSF License. The port preserves the original attribution and is compatible with downstream MIT redistribution under the PSF license's permissive terms.

See LICENSE and the per-directory LICENSE* files.

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

floatium-0.12.1.tar.gz (338.7 kB view details)

Uploaded Source

Built Distributions

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

floatium-0.12.1-cp313-cp313t-win_amd64.whl (88.5 kB view details)

Uploaded CPython 3.13tWindows x86-64

floatium-0.12.1-cp313-cp313t-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

floatium-0.12.1-cp313-cp313t-musllinux_1_2_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

floatium-0.12.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (113.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

floatium-0.12.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (112.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

floatium-0.12.1-cp313-cp313t-macosx_11_0_arm64.whl (87.7 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

floatium-0.12.1-cp313-cp313t-macosx_10_13_x86_64.whl (88.4 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

floatium-0.12.1-cp313-cp313-win_amd64.whl (88.2 kB view details)

Uploaded CPython 3.13Windows x86-64

floatium-0.12.1-cp313-cp313-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

floatium-0.12.1-cp313-cp313-musllinux_1_2_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

floatium-0.12.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (113.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

floatium-0.12.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (111.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

floatium-0.12.1-cp313-cp313-macosx_11_0_arm64.whl (87.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

floatium-0.12.1-cp313-cp313-macosx_10_13_x86_64.whl (88.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

floatium-0.12.1-cp312-cp312-win_amd64.whl (88.1 kB view details)

Uploaded CPython 3.12Windows x86-64

floatium-0.12.1-cp312-cp312-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

floatium-0.12.1-cp312-cp312-musllinux_1_2_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

floatium-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (113.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

floatium-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (111.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

floatium-0.12.1-cp312-cp312-macosx_11_0_arm64.whl (87.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

floatium-0.12.1-cp312-cp312-macosx_10_13_x86_64.whl (88.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

floatium-0.12.1-cp311-cp311-win_amd64.whl (88.1 kB view details)

Uploaded CPython 3.11Windows x86-64

floatium-0.12.1-cp311-cp311-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

floatium-0.12.1-cp311-cp311-musllinux_1_2_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

floatium-0.12.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (113.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

floatium-0.12.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (111.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

floatium-0.12.1-cp311-cp311-macosx_11_0_arm64.whl (87.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

floatium-0.12.1-cp311-cp311-macosx_10_9_x86_64.whl (88.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file floatium-0.12.1.tar.gz.

File metadata

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

File hashes

Hashes for floatium-0.12.1.tar.gz
Algorithm Hash digest
SHA256 24cabb55827b45004d9e8edba319ec502e458280148056ae110bcd6fa3137dd4
MD5 6edc712066a8a888c4663ea7728e91be
BLAKE2b-256 f1bd2b54509dca6a6b22ad2bfc8a2b8cb69120bfbaa28348e0e1feed15eed164

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1.tar.gz:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: floatium-0.12.1-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 88.5 kB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 5ceba9d87066bf403ddddcd9a6bf5a81b7ad119c06cd0c1636eadbd0608a15d9
MD5 cbdc1f25ef8731e224c517f95d7d5c6e
BLAKE2b-256 2716ae3adeae3f1f431ff99cdb9a487440a76d59d523b2418f90e05b6bd6554c

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-win_amd64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e0e5410f1dd39eeb9903ff5ab4cfb29165fe7b34703c97e92e3c989f01b74189
MD5 ec64d13e56980ab3bf6fe39372fd4684
BLAKE2b-256 2251fdafd308d5cadc6003f7db8cf290e10c4f8b46e37244ddce19293ad3c5b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9cbeda2e8114f66f967514383616944d9d24ff9c8daaafcc6656cbd092b4cf5e
MD5 e71bda9ab0fe4852c4b97e52875f1025
BLAKE2b-256 f3420f6354555051514be6edd8148cbb0fa1c995634e0a9faf3f6f1d745e596b

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0a8128eacb15e69799200726af0f12f9fc007f776e2280cd137d6b158b7dafdb
MD5 e56f7e9fd810bcc531952a1ddc7de968
BLAKE2b-256 29d1ea974af40f9b0dd92cc057ef2d877d9255ea967d3a8ce73b9ebc2328367d

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6309c62e22bb723f91c689c21a3d7852885fc3470b2ea14055ca1dcb60f6b060
MD5 2c357597dffad644f4d75e78335d6fbf
BLAKE2b-256 cf6c07d8ae7fdb77a8d10e8d36383cfac0b128758597d96936b9b8142a20adf8

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 452d420703dd7e5eb961450a81ad525412dfd8c039e34cc97db721c469612355
MD5 8904c87a18e8748a90d8a98ddce17032
BLAKE2b-256 af8340ceacffd7df8c0003066bed3448f05855ff752470a1a9986ddc09591e99

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-macosx_11_0_arm64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 92f3619fe6d78e7d3643b4812cba014150ddf148f95f0396ba48a0c7c21ee0bc
MD5 190c39b37b15d7ff4c32124be1220bd6
BLAKE2b-256 89d139df1a5be258b9cb5136745486f3beb07c11832c3e07555ceb24297ba906

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313t-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: floatium-0.12.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 88.2 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 floatium-0.12.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 138c4cf149a85e37c23c252503c73174de0b98b274609672a57f3a193eda0352
MD5 64b52597da43ea6eb1da24253e214c1d
BLAKE2b-256 c305c8f5293a1385e0638020ca183551be134ba01e77420608dadc1ecc0e843e

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 57e9b3259c3a28d29f4d270da65da446a47225484db6e8df6b9bcc25e1f607cf
MD5 fd19c001305dbd36c179c8fd9a422fc3
BLAKE2b-256 defd7fa2c4a69aa3b502f588f6ab21c8c383c06ee2f9e9227c32732a65d7fe34

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 caed245ca41719c3c04aabac2a35f271956254e4e5e3de57dfb555a7473ad14b
MD5 4145fceb32eacf5e7ee76670ef265d14
BLAKE2b-256 80b1c00823f7908bd4f35ec234379235eadf00c7d7a4e05a415363faec9639de

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9911b2fbf26364438ff4a33a823ea7aa51069c3511fbc7d95cae7a7c8161742e
MD5 fa6da2c1fcdff0ea5e3673efe1bc8be3
BLAKE2b-256 f238cca7c90d4cafff4f3941e53845e8f0461008d59ea9b2cbb041900baa16a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 16f53cc6c8e494d5dcb5fe656dcaa6278ca1649ff35269b6f47dd9414d4fb2cf
MD5 52e836c72ca512996a0bd4c49dc08608
BLAKE2b-256 d2031a8afc28e5d26d41674d05a134e79b388682d2617755e20c5ef425fd2836

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bef2fec77e4a5b6eefcfbe9f7a9e3256f861b06e19afdfb90737cb94b26d8875
MD5 39d5f316345ec551759f266b84c06474
BLAKE2b-256 135c0c82d80e78fc86014275f4affecfd50be853c2e266de2824d5dbfcc7762d

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 5f174396fbfc44d50debe260eaca6693f606b0a7a1e90427849717792aee2ad4
MD5 ab907afb1c2309511768530aa58b554a
BLAKE2b-256 d8e359382aee37b33d8ac0604a7b6a567f0469d97dfe4fe84a253e79014c9f04

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-win_amd64.whl.

File metadata

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

File hashes

Hashes for floatium-0.12.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 13bcbb8e47a6858f354c93e364a8d001a22d22fa699b19b2ded79c29bf09bcd9
MD5 fb42163018ad269eaf789f3fff5967f5
BLAKE2b-256 bb43ba410dc16fc8442b40ca0d605b82ebfa2c2fbe686d9e1838ce43285f9fa2

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dbd20cfdf810a8cad6343e32175ac2a02f5177962b7f7ac4a6dfecb56f85c120
MD5 3b2c413bd88ef70f889e02af846e9078
BLAKE2b-256 3567a45a6fe19f3eddd27dc37003dd22c5cc578191d90a3147ebc7e494011487

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8fb58a2b510b5eb6de97311a2548f44f084afbf3ece499de69fbf60f1a3f53b1
MD5 d0d7407e01119a9673d1baca71aa24c3
BLAKE2b-256 18d24caa8181a29dd74632c71a78ec36e57f051d7f9b1830e19823a30b6d34e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d073ee27034e53a61e713ef9a9b48e4388fd153739acfcb198775370de57a408
MD5 d5edd039bf86799e22f7616fc730cc3d
BLAKE2b-256 1b221fea1ae1be07c73f9ec9a7dc12386617fd801304be47ff259ba169046812

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a629fbec2a1e4024739b5cceb95c6d2c45022f7e7654f939f0a03f785d6f3ddf
MD5 43eb99f5368a6ac6c18bb753641f440d
BLAKE2b-256 4a8c8c000ab75a976722dcae2e6cb333cc26ad098ebee1eb1105db285cd64020

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 750550ac7ad54121ec7abd05e90021c624c1e73052434b54f8dd093623cc458d
MD5 d3b84bd6a5743062d8921e7ccd341614
BLAKE2b-256 d0f5ffb23d5eb21698b778e93e0be9604d2adab0dbaf5fdae0816c72f28279f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2e5fdeef5bbd2c847d77d901dc25f8fc0cebdf01ea103f11dfe08e011d039a22
MD5 6e37a6066b59e2b208baa407120a6629
BLAKE2b-256 6d8adc5c433b25c17d62c71090a4871cda8fc7ba7b20d338f1f49f007de4b3da

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: floatium-0.12.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 88.1 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 floatium-0.12.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a424c23150c26ee0f4cd10756da350ffd738cb2ea4717b252e9fbfbc4d6a103a
MD5 448658cc8526709672e21dd93a487271
BLAKE2b-256 4e07d30c3b973d20dc80c83acde1924917525dfb5e4811d51f4df5e893597c66

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 47d05e3a045ff8c5189504c70f891bbf94cd00af4f816fba088190f69ce3b7ca
MD5 4edce4dee0c51a6ed8b7f245e39fe4af
BLAKE2b-256 7b7b0ad42212027c2b977c565d0b40e62ab0f2a2fc36610b696514aaddfaa86f

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8c4f0ca4e7ae283c97df6ce1a6c27cff931b9a4946d38b0274d45d03767fa1ad
MD5 f1bd13ba7bcf50367493fce899e20735
BLAKE2b-256 3f2efb381e0be5bc4bc6d788710eea1e84c4fa165714bdead806801214bb2dd2

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d1c1d73dad34726f91e775250bfaa2d5258ebecf3ffea92c9f06df97f466499
MD5 c9385fd497978d022836ea02d1f8e8d7
BLAKE2b-256 b9b719985c231aec8b115b293161ac4d7b5843dae2059847c83a0c8917a81ac6

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 237a33534a5db5fc867b6b299faa4dfc04e0667031b7130f249557de5bf60243
MD5 98d133d59f5b085922fbb3c196c6acfa
BLAKE2b-256 f0f7f38ba9cfec2f48143bea88cd294af82f93293299433018c0c4adc15fe486

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f840adb78ca95871a90aa8201a1c0839378b28b1e9b44488a2a04e2dc476b86e
MD5 4ad7b1c33a2a1d1f023c10af0e05bad2
BLAKE2b-256 c6d25adc5e88214b6d278ac7f4ddeabc56e02ca8ea7cd9c4c6127808396a0ce1

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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

File details

Details for the file floatium-0.12.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for floatium-0.12.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3b3f70fd2e8e76a00e03a42ccbcc6f09d086a79bb35f2744c5b02174c9f4b785
MD5 6ca7199d5717f3ce9462176839e31966
BLAKE2b-256 cfafca09ec88ab8716cce42c26c5c5028157a9c1a5813aa6ddd2401fabdf3518

See more details on using hashes here.

Provenance

The following attestation bundles were made for floatium-0.12.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: wheels.yml on eendebakpt/floatium

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