Skip to main content

opthash

Crates.io PyPI MSRV Python CI CodSpeed License

opthash provides Rust hash maps and sets based on Elastic Hashing and Funnel Hashing, two open-addressing algorithms introduced in Optimal Bounds for Open Addressing Without Reordering. It turns the paper's fixed-table constructions into familiar collection APIs that can be used in real programs.

Features

  • ElasticHashMap, ElasticHashSet, FunnelHashMap, and FunnelHashSet
  • Familiar map, set, entry, iterator, and collection APIs
  • Paper-faithful placement during normal fixed-size operation
  • Configurable spare capacity, hashers, and allocators
  • no_std support with alloc
  • Optional Python bindings with typed map and set APIs

Quick start

Add opthash to a Rust project:

cargo add opthash

Both algorithms expose the same core collection APIs:

use opthash::{ElasticHashMap, FunnelHashSet};

let mut scores = ElasticHashMap::new();
scores.insert("Ada", 42);
scores.entry("Linus").or_insert(37);

assert_eq!(scores.get("Ada"), Some(&42));

let mut visited = FunnelHashSet::new();
visited.insert("Paris");

assert!(visited.contains("Paris"));

The default configuration uses foldhash and keeps one-eighth of the table available as spare capacity. Most users should start with these defaults. Advanced users can tune the reserve with ReserveFraction, provide another BuildHasher, or use a custom allocator.

To use opthash without std, disable default features and provide a hasher:

cargo add opthash --no-default-features

Choosing an algorithm

Elastic and Funnel use different placement strategies but share the same core API. Choose the construction you want to explore; switching between them is straightforward. For current performance results, see the benchmark guide.

Compared with the paper

opthash preserves the paper's finite geometry, placement rules, and probe order during normal operation between table rebuilds. A usable dynamic collection also needs behavior outside the paper's model:

Topic Paper opthash
Table lifetime Fixed size Grows and rebuilds as needed
Updates Insertions only Also replaces, deletes, clears, and cleans up tombstones
Placement Uses the prescribed candidates Follows them normally; rare exhaustion can trigger a broader correctness fallback
Randomness Analyzes ideal random choices Uses concrete deterministic mixing
Bounds Analyzes probe complexity in a fixed-size, insertion-only model The paper's bounds do not cover deletion, growth, Elastic misses, or wall-clock performance

These differences preserve normal paper-faithful traces while making the maps usable as general collections. They also mean the paper's theoretical bounds should not be read as guarantees for every library operation. See the paper source used by this project for the exact construction.

Python

Python bindings expose the same four map and set families:

pip install opthash
from opthash import FunnelHashMap

scores = FunnelHashMap({"Ada": 42})
scores["Linus"] = 37

assert scores["Ada"] == 42

Python 3.10 or newer is supported.

Project resources

License

Licensed under the Apache License 2.0.

Metadata

Release files for opthash 0.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for opthash 0.12.0
File Size Uploaded Provenance Actions
opthash-0.12.0.tar.gz 161.4 kB With provenance Details for opthash-0.12.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for opthash 0.12.0
File Actions
opthash-0.12.0-cp314-cp314t-win_arm64.whl CPython 3.14 CPython 3.14 free-threading Windows ARM64 Details for opthash-0.12.0-cp314-cp314t-win_arm64.whl
opthash-0.12.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details for opthash-0.12.0-cp314-cp314t-win_amd64.whl
opthash-0.12.0-cp314-cp314t-win32.whl CPython 3.14 CPython 3.14 free-threading Windows x86-32 Details for opthash-0.12.0-cp314-cp314t-win32.whl
opthash-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details for opthash-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl
opthash-0.12.0-cp314-cp314t-musllinux_1_2_i686.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-32 Details for opthash-0.12.0-cp314-cp314t-musllinux_1_2_i686.whl
opthash-0.12.0-cp314-cp314t-musllinux_1_2_armv7l.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARMv7l Details for opthash-0.12.0-cp314-cp314t-musllinux_1_2_armv7l.whl
opthash-0.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 Details for opthash-0.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details for opthash-0.12.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ IBM System/390x Details for opthash-0.12.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ PowerPC 64-le Details for opthash-0.12.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARMv7l Details for opthash-0.12.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details for opthash-0.12.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
opthash-0.12.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.5+ x86-32 Details for opthash-0.12.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl
opthash-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details for opthash-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl
opthash-0.12.0-cp314-cp314t-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64 Details for opthash-0.12.0-cp314-cp314t-macosx_10_12_x86_64.whl
opthash-0.12.0-cp310-abi3-win_arm64.whl CPython 3.10 abi3 Windows ARM64 Details for opthash-0.12.0-cp310-abi3-win_arm64.whl
opthash-0.12.0-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details for opthash-0.12.0-cp310-abi3-win_amd64.whl
opthash-0.12.0-cp310-abi3-win32.whl CPython 3.10 abi3 Windows x86-32 Details for opthash-0.12.0-cp310-abi3-win32.whl
opthash-0.12.0-cp310-abi3-musllinux_1_2_x86_64.whl CPython 3.10 abi3 Linux musl 1.2+ x86-64 Details for opthash-0.12.0-cp310-abi3-musllinux_1_2_x86_64.whl
opthash-0.12.0-cp310-abi3-musllinux_1_2_i686.whl CPython 3.10 abi3 Linux musl 1.2+ x86-32 Details for opthash-0.12.0-cp310-abi3-musllinux_1_2_i686.whl
opthash-0.12.0-cp310-abi3-musllinux_1_2_armv7l.whl CPython 3.10 abi3 Linux musl 1.2+ ARMv7l Details for opthash-0.12.0-cp310-abi3-musllinux_1_2_armv7l.whl
opthash-0.12.0-cp310-abi3-musllinux_1_2_aarch64.whl CPython 3.10 abi3 Linux musl 1.2+ ARM64 Details for opthash-0.12.0-cp310-abi3-musllinux_1_2_aarch64.whl
opthash-0.12.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details for opthash-0.12.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
opthash-0.12.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.10 abi3 Linux glibc 2.17+ IBM System/390x Details for opthash-0.12.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
opthash-0.12.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.10 abi3 Linux glibc 2.17+ PowerPC 64-le Details for opthash-0.12.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
opthash-0.12.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.10 abi3 Linux glibc 2.17+ ARMv7l Details for opthash-0.12.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
opthash-0.12.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64 Details for opthash-0.12.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
opthash-0.12.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.10 abi3 Linux glibc 2.5+ x86-32 Details for opthash-0.12.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl
opthash-0.12.0-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details for opthash-0.12.0-cp310-abi3-macosx_11_0_arm64.whl
opthash-0.12.0-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details for opthash-0.12.0-cp310-abi3-macosx_10_12_x86_64.whl

Total release size: 16.3 MB

Release files / opthash-0.12.0.tar.gz

Download URL opthash-0.12.0.tar.gz
Size 161.4 kB
Tags Source
SHA-256 checksum
How to use checksums
e72513477c0ca84fcc072e01dd4b802bcb79d22e6e9b9cedc377ef756ed954ac
BLAKE2b-256 checksum
How to use checksums
b2febb0878feee8c8482a74947722f595aeff4f0db11c2a4457027c27ee95922
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-win_arm64.whl

Download URL opthash-0.12.0-cp314-cp314t-win_arm64.whl
Size 339.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
5bedc59d9d737c488eb74bb6ab3ed96985a2b34aa48088a6dd9bdf4a56789681
BLAKE2b-256 checksum
How to use checksums
35fe81f6ffc0722e4cae39faacd5b94d8575b9a8a78f2567f3413b1eb3112d12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-win_amd64.whl

Download URL opthash-0.12.0-cp314-cp314t-win_amd64.whl
Size 343.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
d031952c466db22749d69655d1644117ee69286cd817df131608074ba97529d2
BLAKE2b-256 checksum
How to use checksums
cf7e1ee544568b516689785b17caaad2959cac270d74bbdd3b41e2af156ba78c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-win32.whl

Download URL opthash-0.12.0-cp314-cp314t-win32.whl
Size 321.0 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-32
SHA-256 checksum
How to use checksums
802ad698d16fb90e5a796de444a4a58b72eee4fd1908fea14894cb03af003e5e
BLAKE2b-256 checksum
How to use checksums
e13dace2b8b050177f70d56d5c449228fde1f1caadc04c839aa2b96808a5df44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL opthash-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 695.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
dfe57ea9343786ce58e1628537050537a5761c28e71b877321e5796162f348ad
BLAKE2b-256 checksum
How to use checksums
9ebc8192b8ffb9f4bf0c5f00955c6a9e06788a25348ea72e938b97759827278a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-musllinux_1_2_i686.whl

Download URL opthash-0.12.0-cp314-cp314t-musllinux_1_2_i686.whl
Size 751.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
6b3bec99ab2d3fa523e6b53fa15a4c05b2b6875e05768715c742c68d667d4264
BLAKE2b-256 checksum
How to use checksums
cb08559e3ec71849b12fa10da6567ebb7bebcd5b3e6e1386f754b088d14c0e5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-musllinux_1_2_armv7l.whl

Download URL opthash-0.12.0-cp314-cp314t-musllinux_1_2_armv7l.whl
Size 767.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
6f7686359d47c153cd0e9d9375411a52b81b0d52cd48a5f5b6cc46c7d33407da
BLAKE2b-256 checksum
How to use checksums
dad0eaa2f3eb847ac4768185508f51cc1706d266591ffb38a1215e517f038348
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl

Download URL opthash-0.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Size 671.2 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
f0e34ff081f160d7485a3942f01827a3529bc8acac4c11944b11a2378ca83877
BLAKE2b-256 checksum
How to use checksums
8428cf3aaac1c7b44e6f338b69b06bc6239fbf0a95fd0c8f5c9ea7a48bfddcb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 484.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
055b64ece28d942e887fcbb204b73f19580482699147f3d50e57894e9adeff91
BLAKE2b-256 checksum
How to use checksums
b4b5df0cc11a415c81699302fddc87f3a77525cbd0679be34c686cf7abb85cf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 518.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
1cc0899b30abd557500b509628ca3fbae7f3c8dd7802e0d67376152bc0340863
BLAKE2b-256 checksum
How to use checksums
4644e1de3d9152ab231b0dd8c901b89b2d22d61682115fac31ff979152c2bde7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 662.0 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
3984f14e1003967d321df42f35cab9fa270404e64ef5e40fb58f7473b347444a
BLAKE2b-256 checksum
How to use checksums
9e4784c0f4d316fccad0d04f2bc1f98af7f5750531e2cf6984ca371d8f55de83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 493.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
2e85b679473188e096674bf3139997cea0120d0fa205eba818ea133708f4deed
BLAKE2b-256 checksum
How to use checksums
cb66309b0a0372ffaddd43c27da1389c3666a9d2cba54cc8d93acba87521a1a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 495.7 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c1323931f4edbaa4fd8bbe196c468440f65857a97734f33caf4be73318573c32
BLAKE2b-256 checksum
How to use checksums
407069ea52000b96c3d950c082a72edea20d628627bc73e64e41714a21d286e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl

Download URL opthash-0.12.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl
Size 543.0 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
45d1d5e26ba16bbc49db3c6ffadf4830ffc2430d741e305a20a443f4d444f557
BLAKE2b-256 checksum
How to use checksums
411b3a03edb1a390d11d22ca7eda4badeb79b99e7385951a91e1ebd060d62f97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL opthash-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 470.9 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5ba47ddbb5c36ba594703bde137ce2543c93d8e3120dfa085f0540374ec97039
BLAKE2b-256 checksum
How to use checksums
011189cf26aa456fc1de1cb48aae07b40c95d57160a7758c745434c76a11b077
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp314-cp314t-macosx_10_12_x86_64.whl

Download URL opthash-0.12.0-cp314-cp314t-macosx_10_12_x86_64.whl
Size 473.3 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
05c8857658875f0f6c7057fec382b842ec0d0437551f69cb8435e74ee55ddfce
BLAKE2b-256 checksum
How to use checksums
573c3e95669c923aa39474a9cf66a6830bb38a985b7c2ed88b0d3c623a59b316
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-win_arm64.whl

Download URL opthash-0.12.0-cp310-abi3-win_arm64.whl
Size 350.4 kB
Tags CPython 3.10 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
04571e859f10ad91585dad8b5bd93b3d41232fd39897a93e6a1fb3fed74c2c44
BLAKE2b-256 checksum
How to use checksums
c636dff71070dab9a1cccf1ad8bbe94f18f90484e9d04cd3195d7220b7ed01cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-win_amd64.whl

Download URL opthash-0.12.0-cp310-abi3-win_amd64.whl
Size 356.3 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
8be4486dc116611b34171f60cc88687c6db3adaa8a0bf54cc84e71192aacbe4d
BLAKE2b-256 checksum
How to use checksums
5e04ef86a47ff3d64041b91e98f212865ea9aac42ccf603269de0b45263b517d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-win32.whl

Download URL opthash-0.12.0-cp310-abi3-win32.whl
Size 329.8 kB
Tags CPython 3.10 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
7226ccfb03f8e820474e39137036c4f837fdd615f47c4b5e5249454b3b04a6f6
BLAKE2b-256 checksum
How to use checksums
c29d59d8cdd0d645a6a5635e5dfba4ca7a1db5ba46c3afb0cbcd1266aeb4e620
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-musllinux_1_2_x86_64.whl

Download URL opthash-0.12.0-cp310-abi3-musllinux_1_2_x86_64.whl
Size 702.7 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
dfdf423d0e1a4c198481784457970e25d3acf64fc4e2110fa0db637149b92c37
BLAKE2b-256 checksum
How to use checksums
0bbe684ffdac27376c23cc3c1d8f401477fbceb8efc76869c1636a63ae78b32b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-musllinux_1_2_i686.whl

Download URL opthash-0.12.0-cp310-abi3-musllinux_1_2_i686.whl
Size 760.8 kB
Tags CPython 3.10 Linux musl 1.2+ x86-32 abi3
SHA-256 checksum
How to use checksums
048177c5b32221dc7cc0c01b54b61597db27733d0ac9c36a33e27d432bd9b6fc
BLAKE2b-256 checksum
How to use checksums
bd900ea1f0f3a80be73e983f2131044d352f8e6a88831170d5cdd7f2fa561bf9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-musllinux_1_2_armv7l.whl

Download URL opthash-0.12.0-cp310-abi3-musllinux_1_2_armv7l.whl
Size 771.3 kB
Tags CPython 3.10 Linux musl 1.2+ ARMv7l abi3
SHA-256 checksum
How to use checksums
8260f8acd315107149f39c41103c2fe6f83cc46f51f40377438dc68204230f22
BLAKE2b-256 checksum
How to use checksums
477b42d9082dd887abcb7aa111a86e1f6975538e412634c79a69417b01165d6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-musllinux_1_2_aarch64.whl

Download URL opthash-0.12.0-cp310-abi3-musllinux_1_2_aarch64.whl
Size 678.1 kB
Tags CPython 3.10 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
cfe84766e1d5babc5fba9b215c7c67fe492d7cc9676f57202daf17739abe562c
BLAKE2b-256 checksum
How to use checksums
2b56686f473cd7f273cfdecdab77de57ffdae794838b8d4ee1d67eb9780f6075
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 493.0 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
f607e3c13e66526b907e460e1b0b4492b24008e18bb74a0425cbba0401c0d34f
BLAKE2b-256 checksum
How to use checksums
21984c57300ff176ddccc392ee89844407be275f1ad11f10f275e7218e573dc4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 523.0 kB
Tags CPython 3.10 Linux glibc 2.17+ IBM System/390x abi3
SHA-256 checksum
How to use checksums
5b77d1c62791f76c96fc2319e70e6281356548fe46e5da45e1cd39e342180029
BLAKE2b-256 checksum
How to use checksums
c2730aa8266f3c79c81187276dd673784bc8757f0279b42e02eeadd379450c0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 675.6 kB
Tags CPython 3.10 Linux glibc 2.17+ PowerPC 64-le abi3
SHA-256 checksum
How to use checksums
f6cb1503a6697e5873a355a6cdb2cf22af8a47f33ac482aab0eaf2af612cccfd
BLAKE2b-256 checksum
How to use checksums
28131abd9a2b8ee7ecb51825f501f7196ca31fa34c365c602ea38504d0878637
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 497.5 kB
Tags CPython 3.10 Linux glibc 2.17+ ARMv7l abi3
SHA-256 checksum
How to use checksums
22c167df2317f7c54a43a179246b30a94e7e75f639786057797f4b0992143d01
BLAKE2b-256 checksum
How to use checksums
d117a00d5ff7c9f7ab29a85d92f0d797caa19bddaaf8dfc26c9745473760198f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 502.8 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
5bf3b789ef53017a779c8b56396148f72b624e6e8d48fa5c951822875d729841
BLAKE2b-256 checksum
How to use checksums
97ae21d8a363beb2ffda3d277d597328b841e1411a1a719381d84102247ef57e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl

Download URL opthash-0.12.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Size 553.3 kB
Tags CPython 3.10 Linux glibc 2.5+ x86-32 abi3
SHA-256 checksum
How to use checksums
0951c3fac018a3f298f6f4a3d0cb55e5861d2038f4b1f78f942bb4ca043eb60a
BLAKE2b-256 checksum
How to use checksums
c90fd81a11e955a861e5e0c7d848f49b4f4e34c6ecd1e9ab1b20af4c25c0f587
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-macosx_11_0_arm64.whl

Download URL opthash-0.12.0-cp310-abi3-macosx_11_0_arm64.whl
Size 473.6 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3087cd253bbe00fbc83f61f38604718ed8127f5fc629556b7f11556d5debefa3
BLAKE2b-256 checksum
How to use checksums
5593851386cdec1ad1a6ee4fce0613cd791cb2b74acd7b2411eb8ac31699a678
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / opthash-0.12.0-cp310-abi3-macosx_10_12_x86_64.whl

Download URL opthash-0.12.0-cp310-abi3-macosx_10_12_x86_64.whl
Size 463.6 kB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9e9f51f63b96b449a2642e335347431aec9ca3c971f9973a7e7b07a260ed79ef
BLAKE2b-256 checksum
How to use checksums
cb19ac00822f891926533c753693b10c1d501c68f28d3ec49bf403160d3bc161
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Security for opthash 0.12.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 31 files in this release have been uploaded with provenance metadata.

Select from 31 files

Attestation for opthash-0.12.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page