Skip to main content

🌲⚡ rapidtrees

Blazingly fast pairwise phylogenetic tree distance calculations — Robinson–Foulds, Weighted RF, and Kuhner–Felsenstein — powered by Rust

Crates.io PyPI CI Coverage License: MIT

OverviewInstallingUsagePython APIPresence MatrixBenchmarks


🗺️ Overview

rapidtrees computes pairwise tree distances from BEAST/NEXUS .trees files or plain multi-tree Newick files, and writes a labeled distance matrix. Three metrics are supported:

Metric Flag Output Description
Robinson–Foulds --metric rf integer Symmetric difference of bipartitions
Weighted RF --metric weighted float Branch-length-weighted bipartition difference
Kuhner–Felsenstein --metric kf float Euclidean distance on branch lengths

✨ Why rapidtrees?

  • 🦀 Rust core — splits as 128-bit fingerprints, compared as u32 IDs in a cache-friendly layout
  • 🔀 Parallel by default — powered by rayon, automatically scales across all cores
  • 🐍 Python bindings — drop into any Python/NumPy workflow via PyO3
  • 📦 No Rust toolchain required — pre-built wheels on PyPI for Linux, macOS, and Windows
  • 🗜️ Gzip output — stream directly to .tsv.gz without a separate compression step

🚀 Performance

Benchmarked on a ZIKA dataset (283 taxa · 4 000 trees · ~8 M comparisons) (non-gzipped output):

Metric Total time Throughput
Robinson-Foulds ~2.7 s ~3.0 M comparisons/sec
Weighted RF ~3.4 s ~2.3 M comparisons/sec
Kuhner-Felsenstein ~3.3 s ~2.3 M comparisons/sec

🔧 Installing

🐍 Python (PyPI) — recommended

Pre-built wheels for Linux, macOS, and Windows. No Rust toolchain needed.

pip install rapidtrees

🦀 CLI (crates.io)

Install the standalone command-line binary. Requires the Rust toolchain.

cargo install rapidtrees

🛠️ From source

Prerequisites

  • Rust toolchain — for building the Rust core
  • pixi — for managing Python and R dependencies

Setup

git clone https://github.com/Joon-Klaps/rapidtrees.git
cd rapidtrees
# Set up environment — installs Python, R (with phangorn), and builds the package
pixi install

Development tasks

# Run Python API tests (includes R/phangorn cross-validation)
pixi run test-python

# Run Rust unit tests
pixi run test-rust

💻 Usage

rapidtrees \
  --input <path/to/file.trees> \
  --output <path/to/output.tsv[.gz]> \
  [--burnin-trees <N>] \
  [--burnin-states <STATE>] \
  [--use-real-taxa] \
  [--metric rf|weighted|kf] \
  [--backend auto|dense|sparse] \
  [-q|--quiet]
Flag Description
-i, --input <INPUT> Path to a NEXUS .trees or plain Newick file (auto-detected)
-o, --output <OUTPUT> Output path. Use .gz suffix for gzip compression; - for stdout
-t, --burnin-trees <N> Drop the first N trees (default: 0)
-s, --burnin-states <STATE> Keep only trees with STATE > STATE (default: 0)
--use-real-taxa Map numeric taxon IDs via the TRANSLATE block
--metric <rf|weighted|kf> Distance metric (default: rf)
--backend <auto|dense|sparse> Per-pair kernel (default: auto). Both give identical results
-q, --quiet Suppress progress messages (errors still go to stderr)

Input formats. --input takes either a NEXUS/BEAST trees file or a plain Newick file with one tree per line; the format is sniffed from the contents, not the extension. Newick files name nothing, carry no TRANSLATE block and no STATE_ labels, so their trees are named after the line they start on, and --burnin-states / --use-real-taxa have nothing to act on (--burnin-trees still works).

The output is a square TSV matrix where both the header row and first column contain tree names: <file_basename>_<tree_name> for NEXUS (e.g. hiv1_STATE_10000) and <file_basename>_line<n> for Newick (e.g. hiv1_line3). Use -o - to write to stdout for easy piping.

💡 Examples

Compute RF matrix → gzipped file
rapidtrees \
  -i tests/data/hiv1.trees \
  -o out/hiv1_rf.tsv.gz \
  --metric rf

# Reading in beast 0.003s
# Read in 162 taxons for 21 trees
# Creating tree bit snapshots 0.002s
# Determining distances using RF for 210 combinations
# Determining distances using RF 0.000s
# Writing to output 0.000s
Apply burn-in by tree count
rapidtrees \
  -i tests/data/hiv1.trees \
  -o out/hiv1_rf.tsv \
  -t 2

# Reading in beast 0.003s
# Read in 162 taxons for 19 trees
# Creating tree bit snapshots 0.001s
# Determining distances using RF for 171 combinations
# Determining distances using RF 0.000s
# Writing to output 0.000s

🐍 Python API

rapidtrees exposes four functions from its Rust core. All accept a Python iterator of newick strings, keeping memory constant regardless of tree count.

Function Returns
pairwise_rf_from_newick_iter (names, bytes) — RF matrix as flat uint32 bytes, row-major
pairwise_rf_with_snapshots_from_newick_iter (names, bytes, leaf_names, n_bip, bytes, bytes) — RF matrix + presence matrix + clade bitmasks
pairwise_wrf_from_newick_iter (names, list[float]) — Weighted RF, flat row-major
pairwise_wrf_with_snapshots_from_newick_iter (names, bytes, leaf_names, n_bip, bytes, bytes) — wRF matrix + branch-length matrix + clade bitmasks
pairwise_kf_from_newick_iter (names, list[float]) — Kuhner-Felsenstein, flat row-major
pairwise_kf_with_snapshots_from_newick_iter (names, bytes, leaf_names, n_bip, bytes, bytes) — KF matrix + branch-length matrix + clade bitmasks
import rapidtrees as rtd
import numpy as np

trees = [
    "(A:0.1,(B:0.1,C:0.1):0.1);",
    "(A:0.1,(C:0.1,B:0.1):0.1);",
    "((A:0.1,B:0.1):0.1,C:0.1);",
]
names = ["t1", "t2", "t3"]

tree_names, rf_bytes = rtd.pairwise_rf_from_newick_iter(
    names, iter(trees), [{}], [0, 0, 0]
)
rf = np.frombuffer(rf_bytes, dtype=np.uint32).reshape(len(tree_names), -1)

For BEAST .trees files, translate maps, the snapshot API, and multi-file usage see docs/python-api.md.


📦 Presence Matrix

Alongside a distance matrix, rapidtrees can hand back the presence matrix: which bipartition appears in which tree. That is everything the convergence diagnostics need (ESS, ASDSF, split frequencies), and it comes out of the same single parse as the distances.

Splits are identified by a 128-bit fingerprint, not by comparing leaf sets — that is what keeps building a tree linear in its taxon count rather than quadratic. Two distinct splits are merged if their fingerprints collide, with probability about e²/2¹²⁹ for e distinct splits in the run: 1.5 × 10⁻²³ at a hundred million splits, some nineteen orders of magnitude below the rate at which the machine's own RAM flips a bit unnoticed. Every run prints its own e and bound.

Bipartition column order is deterministic: columns are sorted in ascending Bitset order (lexicographic over u64 words, i.e. by leaf-index bit pattern), so the same tree set always produces the same column indices regardless of parse order.

What the presence matrix gives you

The presence matrix is sufficient for all major convergence diagnostics:

Diagnostic What you need
Pseudo ESS presence.mean(axis=0) per chain
ASDSF Per-chain split frequencies
Fréchet ESS RF distances via XOR of rows
WRF / KF distances Branch lengths — use pairwise_wrf_with_snapshots_from_newick_iter or pairwise_kf_with_snapshots_from_newick_iter

Note: sum(presence[i] XOR presence[j]) == RF(tree_i, tree_j) exactly.

Presence matrix from Python

Use pairwise_rf_with_snapshots_from_newick_iter to get the presence matrix alongside the RF distances, from one parse — see the Python API section above.

import rapidtrees as rtd
import numpy as np

import math

tree_names, rf_bytes, leaf_names, n_bip, pres_bytes, bip_clade_bytes = (
    rtd.pairwise_rf_with_snapshots_from_newick_iter(
        names, iter(newicks), translate_maps, map_indices
    )
)
n = len(tree_names)
presence = np.frombuffer(pres_bytes, dtype=np.uint8).reshape(n, n_bip).copy()

# Global split frequencies (for Pseudo ESS / ASDSF)
global_freq = presence.mean(axis=0)

# RF distance between any two trees — no recomputation needed
rf_01 = int((presence[0].astype(int) ^ presence[1].astype(int)).sum())

# Named presence matrix — decode clade bitmasks for column labels
bytes_per_bip = math.ceil(len(leaf_names) / 8)
bip_arr  = np.frombuffer(bip_clade_bytes, dtype=np.uint8).reshape(n_bip, bytes_per_bip)
bip_bool = np.unpackbits(bip_arr, axis=1, bitorder="little")[:, :len(leaf_names)]
col_labels = ["|".join(leaf_names[i] for i in np.where(bip_bool[j])[0]) for j in range(n_bip)]
import pandas as pd
df = pd.DataFrame(presence, index=tree_names, columns=col_labels)

⏱️ Benchmarks

Benchmarks were run on a MacBook Pro M1. Trees are parsed once and their interned split IDs are reused across all pairwise comparisons. Parallelism is provided by rayon — no manual thread management needed.

Show full benchmark table

Output of cargo bench --bench memory_time_benchmark

Taxa (N) Trees (T) Combinations Est. Memory Actual Memory Wall Time CPU Time
10 100 5.0K 13.96 KB 17.87 KB 172.29 µs 733.00 µs
10 1000 500.0K 139.65 KB 168.95 KB 5.94 ms 12.99 ms
10 10000 50.0M 1.36 MB 1.64 MB 717.43 ms 1.36 s
10 100000 5.0B 13.64 MB 16.40 MB 3.53 min 4.04 min
100 100 5.0K 133.59 KB 136.09 KB 244.42 µs 1.75 ms
100 1000 500.0K 1.30 MB 1.21 MB 17.49 ms 50.99 ms
100 10000 50.0M 13.05 MB 11.95 MB 1.08 s 4.81 s
100 100000 5.0B 130.46 MB 119.41 MB 4.29 min 9.86 min
500 100 5.0K 706.84 KB 713.93 KB 2.02 ms 3.08 ms
500 1000 500.0K 6.90 MB 5.89 MB 27.77 ms 216.87 ms
500 10000 50.0M 69.03 MB 57.84 MB 2.82 s 21.30 s
500 100000 5.0B 690.27 MB 577.28 MB 7.44 min 37.13 min
1000 100 5.0K 1.50 MB 1.51 MB 873.75 µs 5.63 ms
1000 1000 500.0K 15.03 MB 11.86 MB 51.22 ms 420.94 ms
1000 10000 50.0M 150.32 MB 115.30 MB 5.12 s 42.92 s
1000 100000 5.0B 1.47 GB 1.12 GB 11.26 min 74.74 min
2000 100 5.0K 3.50 MB 3.51 MB 1.14 ms 9.92 ms
2000 1000 500.0K 35.01 MB 24.15 MB 93.73 ms 838.01 ms
2000 10000 50.0M 350.06 MB 230.59 MB 9.42 s 1.38 min
2000 100000 5.0B 3.42 GB 2.24 GB 18.57 min 141.11 min
5000 100 5.0K 14.30 MB 12.43 MB 61.36 ms 83.85 ms
5000 1000 500.0K 143.02 MB 63.97 MB 224.40 ms 2.09 s
5000 10000 50.0M 1.40 GB 579.40 MB 22.45 s 3.44 min

Note: Weighted RF and KF produce floating-point matrices; RF produces integer matrices.


🔍 Troubleshooting

  • No trees parsed? Verify the input is a valid NEXUS .trees or Newick file and adjust --burnin-* settings.
  • Piping to other tools? Use -q to suppress timing messages on stdout.
  • Gzipped output not working? Ensure the output filename ends with .gz.

⚖️ License

rapidtrees is provided under the MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rapidtrees-0.9.0.tar.gz (166.3 kB view details)

Uploaded Source

Built Distributions

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

rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (488.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (542.2 kB view details)

Uploaded CPython 3.15tmanylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (542.8 kB view details)

Uploaded CPython 3.15manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (542.7 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (482.6 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp314-cp314-win_amd64.whl (308.0 kB view details)

Uploaded CPython 3.14Windows x86-64

rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (481.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp314-cp314-macosx_11_0_arm64.whl (427.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rapidtrees-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl (435.0 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rapidtrees-0.9.0-cp313-cp313-win_amd64.whl (307.2 kB view details)

Uploaded CPython 3.13Windows x86-64

rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (481.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp313-cp313-macosx_11_0_arm64.whl (426.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rapidtrees-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl (433.2 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rapidtrees-0.9.0-cp312-cp312-win_amd64.whl (308.4 kB view details)

Uploaded CPython 3.12Windows x86-64

rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (481.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp312-cp312-macosx_11_0_arm64.whl (426.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rapidtrees-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl (433.5 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rapidtrees-0.9.0-cp311-cp311-win_amd64.whl (311.1 kB view details)

Uploaded CPython 3.11Windows x86-64

rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (545.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (485.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

rapidtrees-0.9.0-cp311-cp311-macosx_11_0_arm64.whl (432.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rapidtrees-0.9.0-cp311-cp311-macosx_10_12_x86_64.whl (433.3 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

rapidtrees-0.9.0-cp310-cp310-win_amd64.whl (310.7 kB view details)

Uploaded CPython 3.10Windows x86-64

rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (545.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (486.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

Details for the file rapidtrees-0.9.0.tar.gz.

File metadata

  • Download URL: rapidtrees-0.9.0.tar.gz
  • Upload date:
  • Size: 166.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0.tar.gz
Algorithm Hash digest
SHA256 4af1a9336897a2a3a941f53175e351533e9ac235f608003fde30ac6f1a6c8ba0
MD5 6260444edca4b5a9e90965a3f8cac8f2
BLAKE2b-256 dc5540ef1d457f81d58be4cde06f17ebb438aec6f0304632b909cd35f5843e9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0.tar.gz:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f877be1227bb551222d1c1260b94ab0e70a3ecbe1608fc81c1dfedc3027bb75d
MD5 e9157f2b3f08c6589e56664305beaf24
BLAKE2b-256 7e6d8fbec41e3a9050200cda2b175b296f2869711dbf176d388551fd1753716a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 560d087df83c04e8fb75ec66c74a1f5a96afa9c0c7b35cba8f0611473ad39425
MD5 857266490037cff1eb5869e9a7505b16
BLAKE2b-256 08ae5f8bb0c3f721f87a47be12eeb09b063f1c9a64116eecfc54b9c8df09a85e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6bb6d5a044e1fd731525e54264da3bb752919543e41e9b65d6e9d5d71392f263
MD5 e88707d307277fbb656ea787ce8538c6
BLAKE2b-256 06df29a105b3dade599659fdc4b45f1b4607ac3a229c846efa2b9b388b0ee122

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 040eacb99902db0badb80659ffdf0f11dbbfb46e54bd69c028b3774da2653e80
MD5 a184e00839fdcd51718cabf280340d88
BLAKE2b-256 c866da2391f9d6a78c317d8601d4a15cc0b96f4fb52660ef684cbb5157fe6a12

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 58a52ae5683d8bf9fe8d6c7f2ea0ec75ce004c82a1b0b3711e61a622d45a3e88
MD5 a0673412976ac9eadae588ef43ba7e7e
BLAKE2b-256 f0df8a59906340481befdf991e8e3929c29b3644d79d59a85b138c13afa6d506

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fe50e2009e6a730dfe1b9ad363aef36e55618756880b4d14435a928438688337
MD5 fcb2f2db82c9b6cfe0b9d8cbe041f697
BLAKE2b-256 12e5e48b23fe37d5ac487a0900ad38ef27021775cc34a834cc9a3767b17df366

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.9.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 308.0 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e37fa5058054afbdac85260efaecccebfd9d09ce88e3b7695ce15b083452906d
MD5 453b58e618b08c85bbad9155e9097a2f
BLAKE2b-256 22e78d34f488ca55057ee9fcc054ccfecc02ea81c9cae0c8f9f3cc2928795070

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314-win_amd64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7feea9d514071f47b906d6b936ee625f6d41f45724bd099ae05374d24a9b6fb2
MD5 846b14228a6074b68fd70b001477ba45
BLAKE2b-256 3fa576623d2c13a2420ab0bcab150c25da00c0be156141fca1a1ff829a091109

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 556541659ce954d48ecc5b00eb2ef4a69d3813ee95e0191f22b6fac109e02127
MD5 3f637ef3286fd564c8398ab3af44ca11
BLAKE2b-256 c92b8213f87db9ee276df4fa59eebcced40be44b80ddb24f0fed2a4828d49db2

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6dce26f104296afafb61221974c04f918ae906c050cf9f88acb3d4891b9087b6
MD5 c5b3196fcba2e5a0cf0b6863c02daa40
BLAKE2b-256 6e395e0b4c09205b35c8b3ebe3e27c1043ebf8b58a236026531e9355744ea553

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1e1a346515a73eee9f4806f8f1d05d1f6b0f93f5afe178eeac7ed9174de3474d
MD5 db69f5ff5f2199d96569933ce5ae2d40
BLAKE2b-256 6f6566b0d245023668644683ddd16e6e88c095bb3d13d225fe29a06fba37e564

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.9.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 307.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9d04fb6476df661f6fcc8de1f1d7fa5290b0e516cf2163a2dd720d42a6339a27
MD5 7b36c9b0018ac1b32695a3db345d93ba
BLAKE2b-256 f8af47fc21e9cac2c297b01564d670a01267c9f73d129b7e1aacf5dfc7fbc9c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp313-cp313-win_amd64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f91a941544baa423b9abed786c33e75858e5403edc422c4965e6b442c2c6d063
MD5 fe6596629be44ca49b6651c293e15f28
BLAKE2b-256 aef6b892a28ce7b4414112b978439d2a2ddf2fb507f4b2dbec84e9e0ed642a06

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 37ac67f19c14a97501eeb74acd505309cf4447f86bbc74cb2a0f64a6ba33cde7
MD5 1fedfb34907a9f9acca28ca43a94b6cc
BLAKE2b-256 afd0d04e9647fe3c411298a75e47db96736e0e16b8e098705e19567b2ebc9517

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 689394abaff06039ea9a0de3edcce102ead9c7f326032f19db1012f672c7cf0a
MD5 c44752727df5ea9d5711549d411570de
BLAKE2b-256 d11b466912ded8e22f27c6b425da6e29003db920806b6f1a40a19f2a00abbbdc

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a83fd2abde040cf46fd2ea6b792a534c9df5bdb3b71294a76cb89982647b62b1
MD5 07c66c44a37facf4ce35443556c09ee4
BLAKE2b-256 190cbb200fae1504b3eff44083073e26b08f938f5f570a5a478fd5315aaf0d3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.9.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 308.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b3b6ce4f976f58ecf625fabafe61684f442b304cd40c9dd5c28412acfce4f24f
MD5 8b71628e075bbb96ce3c8d01ea5e9486
BLAKE2b-256 54828b0270d3b84dadbf5c29220f22c77bc3bd52aab1a07698063c9bd21ff2a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp312-cp312-win_amd64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 365a8f3a87bbe58f20a25f4571d134b31547332be3e1838ae74203459eb74fdd
MD5 b492b8ef863f9f577cbaf77c8c4457e0
BLAKE2b-256 54541e40d59ac9793fc17795912778600191400f27447a7805c528b1a4ba2913

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dbe5ec00e8e416a924bdfc420f16116b8f294f0c4ecdfd1d8b19a71d2dd9d046
MD5 b46703b5fa3e6e94c20fcf92898b0ffd
BLAKE2b-256 b581482137178591659d881d6a9fd3f7211df79b4a29e773cbeb778726406684

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa6aabd0982980492e9d746f5e89cfdd9d7565b924d1d41375c8dd2d12e752aa
MD5 9cee69b3175864864317da9e7d374d1d
BLAKE2b-256 c872bd6713f93e31765d17c270ad760a5a18bf8857d7e559ea81624dfb5ac26b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4aedc87bd3353ee98e4fc07c09bcee3f9f4197085787b21eb0e45f2ec623fcf2
MD5 77ed5e1ddc3e4ee2b8059f8683758d21
BLAKE2b-256 d36c27befb4c2d5276b0a99a1747b543de85c5bcca15a686738c5f0795913d7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.9.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 311.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f96cc081ef2b7a385fbb3d0e04303e77275bc56fa4306d2a2d1a952fec87ef5b
MD5 1a9d4b10520197a5b8dde5141b99ee45
BLAKE2b-256 f24b3f037f3a6ff45a9fe14bbc10ba123cbc316027da9363c715ec3ef1a4a4de

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp311-cp311-win_amd64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 99e86ad7f2399a638ca567ee86892dd131b47ac60133bef2e19885b7c86bfabf
MD5 133fd34e7a0b03b53055482537e9fbed
BLAKE2b-256 ac1482a0b76e9219e0fe7da19c41ca39c51e52877700a4abb85eb9c64fdd5072

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 eccc1e4834c9b727ca884a5fff0193c1730345529d6e6ad73d751704341aa581
MD5 f40406e6919629e52b928d6d54e4a0be
BLAKE2b-256 5fca6c78d354eb7eabac7cf7c5249cc4ac87684a92825e498f2229bcbe7b7e6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2f2a5af4b666b0c4ccc7ebe534b6fbc1c56226123a7ce4f82588e53f55410f94
MD5 10d056012125ffd7a6eebad4bfe06fc4
BLAKE2b-256 2997dae6a20a01a98dc3ad7495382e9e003fe156c87322f86ced7fe7dd6edf55

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e50ec94f4f298671c7d2de53e137730db3b4b0ed28be367adcbeff133f53b878
MD5 db239d2f8176f881fbe8c52c573d7ca7
BLAKE2b-256 c7ddbc5f1aa87f819e65177849800acdb39f5a08dc074d08fd4d43e0c8190e54

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.9.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 310.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidtrees-0.9.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a486ff9a4a450cf2b71ae53b70d58a8f02d30a58bb2dd69321d459937f09ea7b
MD5 a1cc556686767c6b1257df0f3425f9dc
BLAKE2b-256 37ffcc8e94727b92e08abe2e5321ec12b32869881f5787447d72074cb13b4ad0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp310-cp310-win_amd64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6d314b4268047a5a51fa2a7f303b877707f8941cd430d5f26a48be4c8b3341f1
MD5 03f1528dd4e56c663e603b4b541bff6b
BLAKE2b-256 f1ae5f09b5acc54d0fc8b169e2cb1c4a6f6c0723eaf28dbb38acde484cb414ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

File details

Details for the file rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d6348090ef084e695178b91b38dafc85a274c82cc7da1f7e54df21baddc9e58c
MD5 b647f7dddac3566c1786e0e945ea00bb
BLAKE2b-256 390555577df53a8157828ae8c817d70a5acf3b649063b28babadd9096833ee8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Joon-Klaps/rapidtrees

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

Release history Release notifications | RSS feed

This release

0.9.0 This release

30 files

0.8.3

30 files

0.8.2

30 files

0.8.1

28 files

0.8.0

28 files

0.7.1

28 files

0.7.0

28 files

0.6.0

28 files

0.5.1

28 files

0.5.0

28 files

0.4.0

28 files

0.3.0

30 files

0.2.3

30 files

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