Skip to main content

Compact, read-only nested dictionary backed by a DAWG-style radix trie

Project description

compact-tree

Tests License: MIT

Compact, read-only nested dictionary backed by a DAWG-style radix trie.

CompactTree stores a nested Python dict using a path-compressed radix trie with DAWG-style key/value deduplication, enabling low-memory random access and efficient serialization.

Features

  • Memory-efficient: DAWG-style deduplication via two MarisaTrie instances (one for keys, one for values)
  • Fast lookups: Plain list-indexing over parallel arrays — no rank/select overhead
  • C-accelerated lookups: Optional _marisa_ext C extension provides TrieIndex and TreeIndex for ~5–10× faster uncached queries
  • Multi-level traversal: get_path(*keys) descends multiple levels in a single C call, eliminating intermediate _Node allocations
  • High-performance builds: 7.3s for a 6.2M-leaf, 173K-key tree (v2.0.0)
  • Fast serialization: 14/s at 173K keys, 77 MiB files
  • Serializable: Save and load from disk with efficient binary format
  • Gzip compression: Optional gzip compression for smaller files on disk
  • Pickle support: Fully serializable via Python's pickle module
  • Read-only: Optimized for lookup-heavy workloads
  • Storage-agnostic: Works with local files and remote storage via fsspec
  • Dict-like interface: Supports [], in, len(), iteration, repr(), and str()

Installation

pip install savov-compact-tree

Or install from source:

git clone https://github.com/andrey-savov/compact-tree.git
cd compact-tree
pip install -e .

Quick Start

from compact_tree import CompactTree

# Build from a nested dict
tree = CompactTree.from_dict({
    "a": {
        "x": "1",
        "y": "2"
    },
    "b": "3"
})

# Access like a normal dict
print(tree["a"]["x"])   # "1"
print(tree["b"])        # "3"
print("a" in tree)      # True
print(len(tree))        # 2
print(list(tree))       # ["a", "b"]

# String representations
print(str(tree))        # {'a': {'x': '1', 'y': '2'}, 'b': '3'}
print(repr(tree))       # CompactTree.from_dict({'a': {'x': '1', ...}, 'b': '3'})

# Serialize to file
tree.serialize("tree.ctree")

# Load from file
loaded_tree = CompactTree("tree.ctree")

# Serialize with gzip compression
tree.serialize("tree.ctree.gz", storage_options={"compression": "gzip"})
loaded_gz = CompactTree("tree.ctree.gz", storage_options={"compression": "gzip"})

# Pickle support
import pickle
data = pickle.dumps(tree)
tree2 = pickle.loads(data)

# Convert back to plain dict
plain_dict = loaded_tree.to_dict()

# Multi-level lookup in a single C call (when C extension is compiled)
result = tree.get_path("a", "x")   # equivalent to tree["a"]["x"] but faster

How It Works

MarisaTrie

MarisaTrie is a compact word-to-index mapping backed by a path-compressed radix trie with subtree word counts for minimal perfect hashing (MPH). CompactTree uses two MarisaTrie instances — one for keys and one for values — to provide DAWG-style deduplication.

  • Path compression: single-child edges are merged for compactness
  • Dense indexing: every unique word gets an index in [0, N)
  • Reverse lookup: recover the original word from its index
  • Bulk enumeration: to_dict() returns {word: index} for all words in O(N); the first call after construction returns a pre-built mapping (zero trie traversals) and frees it immediately
  • Per-instance LRU cache: functools.lru_cache on index() lookups, automatically sized to the vocabulary; cache size preserved through serialization

At query time, navigation uses plain Python parallel lists (_node_labels, _node_children, _node_counts, _node_terminal) — no rank/select overhead.

DAWG-Style Deduplication

  • Keys are collected, sorted, and deduplicated via a MarisaTrie
  • Values (leaves) are similarly deduplicated via a second MarisaTrie
  • Edge labels store integer IDs rather than raw strings
  • The same key or value appearing at multiple levels is stored only once

Architecture

CompactTree
  |
  +-- _child_start : array.array('I')  child start offsets (CSR), one per node
  +-- _child_count : array.array('I')  child counts (CSR), one per node
  +-- elbl         : array.array('I')  edge labels (uint32 key ids, one per node)
  +-- vcol         : array.array('I')  value column (uint32: value id or 0xFFFFFFFF for internal nodes)
  +-- _key_trie    : MarisaTrie        key vocabulary (word <-> dense index)
  +-- _val_trie    : MarisaTrie        value vocabulary (word <-> dense index)
  +-- _c_tree      : TreeIndex | None  optional C-level traversal helper (None if extension not built)

MarisaTrie additionally exposes:

  • _c_index (TrieIndex) — C-level lookup helper, set by _build_c_index() when the extension is available.
  • _first_char_maps / _prefix_counts / _node_label_lens — navigation tables built by _build_navigation_tables() for O(1) child dispatch and MPH index accumulation.

Each non-root node v (0-indexed) occupies a slot in both elbl (its edge label / key id) and vcol (its value id, or the sentinel 0xFFFFFFFF for internal nodes).

Child navigation uses CSR (Compressed Sparse Row) arrays: _child_start[v] is the start offset and _child_count[v] is the count of children of node v.

Binary Format (v5)

Magic   : 5 bytes    "CTree"
Version : 8 bytes    uint64 LE  (always 5)
Header  : 7 × 8 bytes  lengths of: keys_trie, val_trie, child_count,
                         vcol, elbl, key_vocab_size, val_vocab_size
Payload : keys_trie_bytes | val_trie_bytes | child_count_bytes
          | vcol_bytes | elbl_bytes

keys_trie_bytes and val_trie_bytes are serialized MarisaTrie instances (CSR format). child_count_bytes, vcol_bytes, and elbl_bytes are packed uint32 arrays. key_vocab_size and val_vocab_size record the LRU cache sizes used during from_dict and are restored on load so query-time caches are immediately correctly sized.

Files written in v4 or earlier (LOUDS-based) are not supported. Use v1.x to migrate old files if needed.

Dependencies

  • bitarray — Bit-packed boolean arrays (used for terminal flags in MarisaTrie serialization)
  • fsspec — Filesystem abstraction for local and remote storage

Testing

pytest test_compact_tree.py test_marisa_trie.py

Benchmarks

Run performance benchmarks with pytest-benchmark:

pytest test_compact_tree.py::TestLoadPerformance --benchmark-only -v

See BENCHMARK_RESULTS.md for detailed results and OPTIMIZATIONS.md for optimization history.

Performance

Benchmark: 3-level nested dict, shape {L0=9, L1=4, L2=173,000}, 6.2M leaf entries.

Metric v2.0.0 v2.1.0 (C ext)
from_dict build time 7.3s 7.3s
Lookup throughput 67,889/s (14.7 µs) ~340,000–680,000/s (1.5–3 µs)
Serialize 14.0/s (71.6 ms), 77.2 MiB 14.0/s (71.6 ms), 77.2 MiB
Deserialize 1.0/s (999 ms) 1.0/s (999 ms)

Lookup improvement requires _marisa_ext C extension (built automatically when a C compiler is available). Pure-Python fallback matches v2.0.0.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details.

License

This project is licensed under the MIT License - see the 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

savov_compact_tree-2.1.1.tar.gz (41.5 kB view details)

Uploaded Source

Built Distributions

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

savov_compact_tree-2.1.1-pp310-pypy310_pp73-win_amd64.whl (30.3 kB view details)

Uploaded PyPyWindows x86-64

savov_compact_tree-2.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (29.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl (27.2 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (26.9 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

savov_compact_tree-2.1.1-pp39-pypy39_pp73-win_amd64.whl (30.3 kB view details)

Uploaded PyPyWindows x86-64

savov_compact_tree-2.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (29.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl (27.2 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (26.9 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

savov_compact_tree-2.1.1-cp313-cp313-win_amd64.whl (30.0 kB view details)

Uploaded CPython 3.13Windows x86-64

savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_x86_64.whl (47.5 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl (47.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (47.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (48.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

savov_compact_tree-2.1.1-cp313-cp313-macosx_11_0_arm64.whl (27.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

savov_compact_tree-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl (27.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

savov_compact_tree-2.1.1-cp312-cp312-win_amd64.whl (30.0 kB view details)

Uploaded CPython 3.12Windows x86-64

savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_x86_64.whl (47.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_aarch64.whl (47.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (47.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (48.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

savov_compact_tree-2.1.1-cp312-cp312-macosx_11_0_arm64.whl (27.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

savov_compact_tree-2.1.1-cp312-cp312-macosx_10_13_x86_64.whl (27.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

savov_compact_tree-2.1.1-cp311-cp311-win_amd64.whl (29.9 kB view details)

Uploaded CPython 3.11Windows x86-64

savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl (46.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_aarch64.whl (47.4 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (46.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (47.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

savov_compact_tree-2.1.1-cp311-cp311-macosx_11_0_arm64.whl (27.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

savov_compact_tree-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl (26.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

savov_compact_tree-2.1.1-cp310-cp310-win_amd64.whl (30.0 kB view details)

Uploaded CPython 3.10Windows x86-64

savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_x86_64.whl (48.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_aarch64.whl (49.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (48.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (49.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

savov_compact_tree-2.1.1-cp310-cp310-macosx_11_0_arm64.whl (27.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

savov_compact_tree-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl (27.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

savov_compact_tree-2.1.1-cp39-cp39-win_amd64.whl (30.0 kB view details)

Uploaded CPython 3.9Windows x86-64

savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_x86_64.whl (48.5 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_aarch64.whl (48.9 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (48.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (49.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

savov_compact_tree-2.1.1-cp39-cp39-macosx_11_0_arm64.whl (27.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

savov_compact_tree-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl (27.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file savov_compact_tree-2.1.1.tar.gz.

File metadata

  • Download URL: savov_compact_tree-2.1.1.tar.gz
  • Upload date:
  • Size: 41.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for savov_compact_tree-2.1.1.tar.gz
Algorithm Hash digest
SHA256 4b07a9cd77719b5bf2fccdb3787ac033bbbf674ae7f9e57c1ba57824885e8da3
MD5 940cb42b2121eafbab1a705c81adf8a7
BLAKE2b-256 01f28e7405be78bf1b65b04a84a58e4294adbd3ed291bc9f2ad1aa14cc550dee

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1.tar.gz:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 5b40d9440182a03a2bc0607cf8932096f52ac586bab1f28bcc8a176d085950f4
MD5 51cd39e054338fa5aca81534421bfe24
BLAKE2b-256 2b07d06d2ea46c117b167e779c346d8e70d6cf00eb46683311a81c9a19da30bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp310-pypy310_pp73-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0db358a2e011b55efde42dd89f5da3726e7347856dc585c0e40822e36302b5c3
MD5 4eea41c4e028c2637fc87209bc40db61
BLAKE2b-256 3f9e921fdac4826ff893d35968fbe111956ce71f569a1427ffaf76bd98a6fdce

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7e6b3b3b36dee71a12e25832758fd827fd6bb5ad9a770b07bbc44d80e75fbc2
MD5 c4729de3ab46bd439e075ef46cb5b944
BLAKE2b-256 09c2b78b957bae701a7393b613e4fce4add90210dec5e912c6c9cba566586b87

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 4a25deebc6affb6e17365e6d5491cbcd87ab7892868ab946a28f64d7b47b3ea7
MD5 3673e934d9209af8cb73faa2d1ce4e25
BLAKE2b-256 dcdc290724e922984d4c4669d7232c7c5de95f83d788e4adc269cafffce258ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 ea73ead21eedf22f5b31e119f96b32b22e9c3a5a88342e80005ccbef91215adc
MD5 4efb6e22631346c6f63def964dbc3cda
BLAKE2b-256 af24de308fde408c0e9e0308e9e5624dca5adb92ee7488779bf29bd4af77b4c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp39-pypy39_pp73-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 901adca3fade14303fb8997831cbf8200090e1c6c78bd5391024a563c75683d8
MD5 239f73fa335ee7b117ceb8951ef8c01e
BLAKE2b-256 0fcfe152cb433ed85f2666708f030d188096fef26d2ba2f3a633fa308955d1a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3a87ab602693a29c0bb03e546e6d49c0ee867ddefb0f3ec1da7525e0395820fc
MD5 b5aaa6240e68f1d6804a23f79a48a9c4
BLAKE2b-256 ca328e9d8aef645e6bbc18f26bad3b125ae3aacf9e809ee0e6dabd31644eced2

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 daff9944ae48973b9d6b02bf6cfe7d3cf9aba9c26e2af95a183e974181021eba
MD5 328c4e96f2a4e2ed07412bbc8e9dedca
BLAKE2b-256 cddf0e8d3a369ac6581e50a4ade79bec1745511114181edcad97f70bdc430692

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cddd0fe05bab4c4f5284228fa18bd77f67460f54807ad7e452206c4b34f4f324
MD5 1a8050f57fcce9253b8b7f2f16a77053
BLAKE2b-256 e704b4dc8b585b46858bcf0fdccb75135bf4dd9ee58b8eb47d65307a59e8786c

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9886b80a213a5eb4ebf6ce036458f599e7ebdf1d5e8d121002d3db5b61fae9fc
MD5 606ab905c8693ecf2be3147eba49865a
BLAKE2b-256 0f471a7388ae1fbdbcad8955d472f6abad60768f81ad6f0e9ca227609d63df31

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 51a2ec433fec0be2d63a2b14d1699e0d77e41a3fd7f4233bd3f95f9cd96d8e4f
MD5 4bfc7607e265c75792a4dc1b4fb03e11
BLAKE2b-256 c8aadcbb619750626827db51d7fda2c2e965866418ec77acf0e0b6934ca801c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f9ebc274b809be74625c990cc80304397300253c5feaf5caef6e79df28a748cc
MD5 095d30349f4c71cd70c81dfae4d109c3
BLAKE2b-256 e9888dc5bb65c165e69830523064692f3f0704747db1592fa70088d383c073b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 37d4f5c5ead30afce6246a7f301f36638b00bc0b6ad776688f0386869fb58591
MD5 a9da7d849bad0c4326878e9722b12a86
BLAKE2b-256 fe67094318551ea7cace1a3ec751e292518095db35358461f8fbe755e2ad4448

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 269199b3b751b701704ec93f7f88fcdba5b622db3e820f6dd17fe87438d44faf
MD5 c28b0e2be37b9dc4dc777a244e43118c
BLAKE2b-256 373cc049f618a33a3ff5473ea72b8c32af2a440b6f01b017abbb56ec07cde86d

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e0b131c0cd6ff01c536e5a94984e789556742548d16505c0c493b939dd274988
MD5 34033bedcde5ebd26a93831fa9a10db8
BLAKE2b-256 9d4a5d48977689134f5cac923ced298d0058bd86f68e886bce5d60ae6b6ca9ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bf3906394628a03521709c4f002df385d01d19b9af7f7f08bf71479ea8b26ddf
MD5 ea7ede01215c2f2520dc58632ee25c1d
BLAKE2b-256 8e503cab88ee674ce2a3ed17c48138f9b14de7ddc3931f3a4d11c539bbe84687

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 626dd324c61d8080876cf2aaf910670a3edf5b734471245650b3cb9fb2face56
MD5 2e3931e1ad5e6cc23e265126ec331067
BLAKE2b-256 9ed9ecbbc41afa4f606218e781ab2b7672018b51a7a54f9d3cc9f9f51428f90e

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ac8236a2e4e13e0708e8228030c3fe453ef4ec58e1cb23d688a1740fed23eae9
MD5 9e158a9bae9861cb161e5f9c591d2404
BLAKE2b-256 89354f6564e24c870b6f829f7c01c5fc9466d2e8173f024cc853d63f7e185915

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc3e65989f22ff9c0a0b7dff90386180af76764efccff96879ac90c9940b86bb
MD5 bec5c25789ed04b49f546eb8eabdd8c9
BLAKE2b-256 e633b1649589db3257e125cbe0f644e88ac93d39fffb2ed9aee7ce0929ca844f

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9fe19c2677147b01c4d494dcd0bed936f1a327047e9a02038a6a883f3a0d16f0
MD5 5dd3e3e7260f636b39b21261d998f385
BLAKE2b-256 0d9e2bb0c6377886be180741076fe37bda7eb0488ace640ecda2a33244765728

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8bc4f5c0a61bd8b3e416ded8c3b24372e9577324c3fe7fbfcf197b8af089c532
MD5 15cef6e50ee7637022b86a14882c3359
BLAKE2b-256 ef8f6942744d0b39fddfa57f90796b49d2d9b4ef9ae5235ce701ed6ba032d42d

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a5ae695a7b6f7926aa64c6a798c990a2915a8f87494290cc9aeb3b46e38aff8f
MD5 198f68dd52619c0cbefd83c9b377ac2f
BLAKE2b-256 db2013ac883cc3230bbb6d41a3a2915a464a2e04eb51e18b4025006f691256b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fb3d7d6f2a300ffe36fc9192b066ad93458eae8da25c6504fd1c7cc815574f80
MD5 6df6fcf4f1b7e526e8364ea419368c4b
BLAKE2b-256 a7a3a3bfb780875bd92a6cf2a2005c4e6bc2555b889b6c830caf34a70099da99

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a784fa94653cd2f29b5f9dc43a84c5636664de721f9e5b3054bee0f2ef68d47a
MD5 7dd7c62cfd039243f92aaaf0ba8256cd
BLAKE2b-256 826cb00fe9dd8ec3ce18cfd0eeed66bc5f14e8f7ca91150501c921513b92d595

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f0169e097bc41877f2f033779d4f18b2710abd4fa19ace53be5c3773c596486b
MD5 8ff7ee7bccf920add3b9dab4af0477e0
BLAKE2b-256 96ca3c13ece6e9a6e54ead1f8bec706dbb8f55a8c595cefb84f73f83589eb1c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 db2af32121e4b2798ca3495add25d47328214b56bb4ffb219a13e31c11ca0bfb
MD5 c5c9b07598b409d4eef9745c6508a8de
BLAKE2b-256 7233e9b546d9435ca6795cd5f9cf7eb2ab142f86d4774d3671dacf1801297f1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 41c960d48534923b8985ee7efc8474570823b7cdd4157d6cbb547f4bdca11687
MD5 048c0804166ae615438ec6e4d4e9c672
BLAKE2b-256 1543514ce7fe08a8310ae957be94be3201595b677fd56a3194aef96822c3efa7

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b27684554d2231ff3a91e4c756cf4ae71bf552b067cfee8610c84e00500031df
MD5 30c2d0c67eb2ee32148615646ea0c3d9
BLAKE2b-256 cd2644a9d0b092ba031eceda6ab20c9bbaa09eb5a895605cb0b4f656ba37f54f

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ca184c4554f48a6496f51efa63aa24da6f51b71f5c375c1ae4c4bd8e71fd4376
MD5 d69445b91d77573348e5a5bd3c315340
BLAKE2b-256 2e9fd305abc4724e888bb11bce038d5aacd2a45f9c5c15ea551427a3aca64b2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 911a2124f00b8320653a9dba03e9fa9ca5efa9d1ad90bc6f08dd5fd24afe4cb2
MD5 4935449d5a747f32d46ba51817da9192
BLAKE2b-256 8d93d68e0b01331a9a0d131c3c93feee46aa5098ee8742297b60f6b9705e356d

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bf42e64df781c4ee3c131fdbe0b52eb0261628aefee0f7c83ac68a16a826776a
MD5 0aed91085522a7cd0d84c86373a93fbe
BLAKE2b-256 ab0c825ef487404a6fa5a9354ddcb37d01a075733b627906a529679699462e2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e688c0e676204cbbd175d579d073ba0abbb1975fba4eddeacd2f19424d818b6a
MD5 5a6ccdeccf8f0aac6addfd82e525c081
BLAKE2b-256 38e11e74497894e6f828704a07427483d7a09acdafe2f140c1f4f4f1cdbae451

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bbf38fb3e64034179e7ba0932dad06f79f3d3fc5999ef65e51e3e2d2c8630aed
MD5 2f5c563df48840f69a606d738ca9bf9d
BLAKE2b-256 68efa81ea2fc199fab2f6e8d61a558f411077c78a5aa8064ceef1afd2e5af4af

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 433c935564a91c13d03f6888757b177c989216bf1e8e94978abef3b458667ae4
MD5 3477813de77e41b5a7e1f3a98616839a
BLAKE2b-256 7815b7bbe7516c8886b715ea28eb6795af0f73b369d39b657a0e7b285777771e

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d2dddf187ea59f2ec5c80ec52959fad24632fd60915abd07b4203faf6acd8846
MD5 026db09cfd5a613dffa101cf0303d0e4
BLAKE2b-256 ea6245cab1c9b0ed2f63dcf7d55932342623d2bf1a1a178c61f67f76685f2fc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 91dc151dfb5bd4118c307bde4e0a2309fcc0fca84093cfbcc8c8a63ea15a89cb
MD5 fa9df84ce688263dd24c9733d165fb06
BLAKE2b-256 1b8f6f9602e44a0a8b80a7288c31fc74ee46bfb0dde1cd4902121a667f3a88c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fffbdf99484ba331d185aeceea5bd6e0c2401c54ee88657ad386adbcafda1329
MD5 af7fb33e15d03db7962567bcde451089
BLAKE2b-256 1647e9e329f7e8a9cc1267e626b4621db254bfbef8cfa8f55eda4fc6a1c2270a

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-win_amd64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8c568664cba659ac853083e229c4c5948b19a5a734fa824d523d1bc1e0226e67
MD5 58ecebfbb337b21129312aabd4b48fba
BLAKE2b-256 b4660df6ede5123810b015ec5b7c61777f9006b7dfbfb7ae64064a24fc3ebf36

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4278fb1e44a8bfadc6771ffb4a3b16ef61056b6321d7fd07abd870ee013d61c2
MD5 1d528ed5a799e1b20a109d8472afb853
BLAKE2b-256 2c51523b5e4458ffa1b9ab0c0f1e86ae19381e9dc7984330cd16f13540562b41

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fef7005fb9ce6ebde5ad4def76cf746f1c94f6edc640283e9afebf1827c5d691
MD5 9ba040d7ebaa30d53b824dd1c798242e
BLAKE2b-256 8cbac88461ddfd9bee17eb36312668accf4acfe3f8ae1a363be133f6ff4992a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ff4428f4b16145a831312508265bc480aae8bd783f85e96bb21c1e243c004e99
MD5 4dcca379077fa20c13bf4873f164bf4c
BLAKE2b-256 9bdb084f618c336f57268fff1b36d5e09665c2012d660bcbd6db0ecfd394be68

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 32e323903261d727e62f88d6624e2d890dafafb5a638f75a01cd632a70296bc8
MD5 5c67bb71e47994ec0b363e1f520d078e
BLAKE2b-256 3581cfa017f24764d7346ad2559341d48d1fcc659fc369e0aa4c7a1132fb143d

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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

File details

Details for the file savov_compact_tree-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for savov_compact_tree-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 da2469056f2fc2640cfd38b59acbd24c457eb9bbcc3e448c3e1c911af93bb6ca
MD5 8c289432eb27849f37d4b3d3eede64e8
BLAKE2b-256 83ca7cd5f6b9490016d811a57aed4de1fafb7c7b75c006d09e75cf64eb93f297

See more details on using hashes here.

Provenance

The following attestation bundles were made for savov_compact_tree-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: publish.yml on andrey-savov/compact-tree

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