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 APISnap FormatBenchmarks


🗺️ Overview

rapidtrees computes pairwise tree distances from BEAST/NEXUS .trees files or from precomputed .snap 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 — zero-overhead bitset operations with a cache-friendly memory 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> | --snap-input <path/to/file.snap>) \
  --output <path/to/output.tsv[.gz]> \
  [--burnin-trees <N>] \
  [--burnin-states <STATE>] \
  [--use-real-taxa] \
  [--metric rf|weighted|kf] \
  [-q|--quiet]
Flag Description
-i, --input <INPUT> Path to BEAST .trees (NEXUS) file
--snap-input <SNAP_INPUT> Path to .snap file (currently supports only --metric rf)
-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)
-q, --quiet Suppress progress messages (errors still go to stderr)

The output is a square TSV matrix where both the header row and first column contain tree names formatted as <file_basename>_tree_STATE<state>. 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
Compute RF matrix directly from a snapshot file
rapidtrees \
  --snap-input out/hiv1.snap \
  -o out/hiv1_rf_from_snap.tsv.gz \
  --metric rf

# Read snap with 21 trees and 2193 bipartitions in 0.001s
# Determined distances using RF in 0.000s
# Writing to out/hiv1_rf_from_snap.tsv.gz in 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.


📦 Snap Format

rapidtrees can export tree snapshots to a compressed binary .snap file for downstream analyses (ESS computation, ASDSF, convergence diagnostics) on HPC clusters without re-parsing the original .trees files. The CLI can also compute RF distance matrices directly from .snap files via --snap-input.

What is a snapshot?

A tree snapshot is a compact bitset representation of a phylogenetic tree. Each bipartition (split) is encoded as a bitset over leaf indices. The full set of snapshots for a tree collection captures everything needed for RF-family distance computations and convergence diagnostics — without storing the original Newick strings.

Note: Snapshots are not human-readable and are not intended for general interchange. They are an internal format optimized for fast distance calculations and cannot be convert to it's original newick-style format.

File layout

A .snap file is a gzip-compressed binary stream with the following sections in order:

┌─────────────────────────────────────────────────────┐
│  HEADER                                              │
│  4 bytes  magic        "SNAP" (0x534E4150)          │
│  1 byte   version      format version (currently 2) │
│  8 bytes  n_trees      u64 LE — number of trees     │
│  8 bytes  n_taxa       u64 LE — number of leaf taxa │
│  8 bytes  n_bip        u64 LE — number of unique    │
│                         bipartitions across all trees│
├─────────────────────────────────────────────────────┤
│  TAXA NAMES                                          │
│  For each of n_taxa:                                 │
│    4 bytes  length     u32 LE — byte length of name │
│    N bytes  name       UTF-8 string                  │
├─────────────────────────────────────────────────────┤
│  TREE NAMES                                          │
│  For each of n_trees:                                │
│    4 bytes  length     u32 LE — byte length of name │
│    N bytes  name       UTF-8 string                  │
├─────────────────────────────────────────────────────┤
│  PRESENCE MATRIX                                     │
│  n_trees × n_bip bytes, row-major uint8             │
│  presence[i][j] = 1 if bipartition j is in tree i  │
│                   0 otherwise                        │
└─────────────────────────────────────────────────────┘

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

Snap files are written and read by the CLI only. From Python, use pairwise_rf_with_snapshots_from_newick_iter to obtain the same presence matrix in memory without writing a file — 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 bitset snapshots 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 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.8.2.tar.gz (154.7 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.8.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (542.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (479.8 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (538.9 kB view details)

Uploaded CPython 3.15tmanylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (538.0 kB view details)

Uploaded CPython 3.15manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (539.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (476.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp314-cp314-win_amd64.whl (300.6 kB view details)

Uploaded CPython 3.14Windows x86-64

rapidtrees-0.8.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (475.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp314-cp314-macosx_11_0_arm64.whl (422.7 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rapidtrees-0.8.2-cp314-cp314-macosx_10_12_x86_64.whl (431.3 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rapidtrees-0.8.2-cp313-cp313-win_amd64.whl (300.0 kB view details)

Uploaded CPython 3.13Windows x86-64

rapidtrees-0.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (474.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp313-cp313-macosx_11_0_arm64.whl (421.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rapidtrees-0.8.2-cp313-cp313-macosx_10_12_x86_64.whl (430.7 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rapidtrees-0.8.2-cp312-cp312-win_amd64.whl (300.9 kB view details)

Uploaded CPython 3.12Windows x86-64

rapidtrees-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (474.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp312-cp312-macosx_11_0_arm64.whl (421.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rapidtrees-0.8.2-cp312-cp312-macosx_10_12_x86_64.whl (430.8 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rapidtrees-0.8.2-cp311-cp311-win_amd64.whl (303.7 kB view details)

Uploaded CPython 3.11Windows x86-64

rapidtrees-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (476.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

rapidtrees-0.8.2-cp311-cp311-macosx_11_0_arm64.whl (426.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rapidtrees-0.8.2-cp311-cp311-macosx_10_12_x86_64.whl (430.4 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

rapidtrees-0.8.2-cp310-cp310-win_amd64.whl (303.7 kB view details)

Uploaded CPython 3.10Windows x86-64

rapidtrees-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

rapidtrees-0.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (478.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

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

File metadata

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

File hashes

Hashes for rapidtrees-0.8.2.tar.gz
Algorithm Hash digest
SHA256 09e89567a7d6c7057658850bf52744cc7f7bf3f3fc1087017328e5ce2a26fa0b
MD5 7a41c795cd622934bd5eeef7f55e0d45
BLAKE2b-256 e9d1f6843259da683d753eaa1c7187b4395191ec4e2661b867fb85c92db7c44c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2.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.8.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d146b5c6e147f8fc5b7b5d8eb970e9f4688651c8939f8690a6c8663ca60d83f
MD5 c3654028f9e79ce4225b6ffc3f7bb077
BLAKE2b-256 cc56d20c86060bd92d938b010e43a0ac687d6938dad20cba2d9d82049e5ee49c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a25769b0a2014d29167bf8e736ca16b7808535beb6c41e74dba449b0e0abbeea
MD5 8adb542be9b1bee6680bcedda53ce29c
BLAKE2b-256 7c68d40216cbeca8edca80fdf3cc7091d3a3cedcc3483aaa0ee572beaa909b2d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 05e140b3072b668f9f7843a9761d0b79a71dfac04abfb623fadd93c9a7547b14
MD5 4ae443ca7a88da2163ccecfb6b3640bb
BLAKE2b-256 262c85a08b9071426cf87cd4bce6a798b11431f76927f955724e5796a0395b9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08a15f422ad45923e0228d9df873e5a9990906617d85fdc7de396504902ec4e5
MD5 bdd71ab632ba1f112bccaf95c7fb37b3
BLAKE2b-256 717d4a8b89739480b70e8f6d8766d7f069e0c40fb8f90c227faa2fa5bba51389

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed8a01dac6d2842e7be2aadec7ffba48ab06fd2ec6584cc658ce54474fb0d86e
MD5 6819e7be48f9f3277333d8fef7d2e6fd
BLAKE2b-256 d4dd2f3e21bfbc7084bef913087e18235d7b4c826340f0fa490d2884a967aa55

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3230d716de63f1274f9895894be818eea9bf0b6436df2704a9c0b80916646902
MD5 3a983a150f2ebc27c7d4fc8602c10994
BLAKE2b-256 1c4580cd549b7e881b38040aa3612038f50b73c01be345e393ecee82c7369b7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.8.2-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 300.6 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.8.2-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 31662f9b1947a6177c3c59556551ba457366517cedd375670646c571b6d7b9e7
MD5 3e273aee89013997632ca9d03e11aedb
BLAKE2b-256 0db3a4787031d67c652787119500ff4e69569b8d900acbcbea06b3f0ec0ffa59

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4df4be48fe7a8e7acbfe0299ceb4b9e3dec1af45061207ebf78ea90b62ceae03
MD5 6561f49e5815ecc6716f9268888993be
BLAKE2b-256 61fc6b1c8990c75dc866534c70c05b4efb6053cd4aeda6359dd51fefc00be8d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f9c27eac1d32d400332cc8061ae135e1e5dd104982d3ebd4c7580063cb3c1fd5
MD5 d445cc72873b739028a6359ab78d76eb
BLAKE2b-256 d8083ac0f6f2dc06ea7b9e09f4480cc2631dd7f1f96b13785ed4acdccab4ecd3

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 845742f6d923217c72cc7a22c4af39c0d7e1b8ad1994bd1c68b4c11b1d99f49f
MD5 b7fd0f588bb53311c8b63edc74776a43
BLAKE2b-256 078c8cbe412494f48b5bb18cb0d9c042ab2985a54fcb5d78f0cd7ff0d065e341

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 02071f8a2cc5b8be1eaabf6c1702e0fe0880d24ff22482feefc50300ae43e22b
MD5 2009c6901b00f03b3651227c07b1430f
BLAKE2b-256 beefbf315bfbf07f6acc4ed34f249e8940e61dfe695a3d4fc41aa5b90a8dae01

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.8.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 300.0 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.8.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 47ef76cfd53c9c253e57e7948353b2cfd83de5d15feb088598d4743a0bce3f01
MD5 82f4f8df1af28e3443f092fba18bf77a
BLAKE2b-256 25788ddeb207e7fc20769d317e4c0558c19659abee2bc7cd9eafd4476266aa65

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7398f51410639362deab9dfe5c453df611ca247d570525e6ff95fa1ec8678c2c
MD5 1357eceae989a851a76e02e532d63a7c
BLAKE2b-256 3c224a0f5520d6c64ffd17d7f7f092835e7f5ff6e2366bd682c31cfe23c3289d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1afb282ac8ac3cea2ce63c4198342f2ada9718950c1511969b1b0b2ae86db40c
MD5 66f793c750e1414cd0ae7b9eefb2d295
BLAKE2b-256 c1266703af4429fb4f60c694228212c7ed31cc613cdae36c11aeadf3663bf129

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1f02eaa16dcf9d8d7e47667d284401c9e8ddca987b4d42fb2ef6b8e77ae22318
MD5 a35d7b621bea589f288bfad2db0e0dd3
BLAKE2b-256 3d44d46582385c2b36c1b40fecbc49389d820ee621a0fc22cdfa1f11a7cf863c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 648eca1a0f0d101b02eea6f23f87bdc899115a27b9ddf646703b16e2693fc5aa
MD5 cfd4269ce595493f1c8470ed6a33f250
BLAKE2b-256 2971d5c0609a41bbfbb7285c918d73ae943db5dfd2e541c1f977a9a89a70a0d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.8.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 300.9 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.8.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1ce36c33b4e1fb1043fd943bf577a807319f18fc4997e1f45ef45cafc6e85c67
MD5 f4e14316ef4b88ec181d10c64ca50d72
BLAKE2b-256 374d5379c70fb2bb9894cfd32b01dea19b05aa1839760340e4032b19b4dce0e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6973f4ebc62fc3e547aa8001ab3b1b6aa274fee04b4d580aa5e30acf97f330d1
MD5 febe8ccd09bc045f9e9bc23001069385
BLAKE2b-256 773d9d0f5409329e5a8335e4cfaf9bfe7d00936742697e03b2dc8a34fa966a14

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 972e4cc981c6d7687b3a91bcbaebdfb33a17434b5858335392347d43ee4d0c4d
MD5 ed47a4fb8b530ea162540c35e9bb257f
BLAKE2b-256 047b237b7b27133c813fdaa31afe260ba751c9272132c758544464bd83182267

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c701d574a735d4731062a5bb6afef91da8bd7dfc873a0dea299a44287f2a8779
MD5 8f07852c659823342fda609c5ec871fe
BLAKE2b-256 8a3114aa95c6dd07e2ff704b606bef824fcb156ff317696cacdf164126b47164

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f67f6f52207cb0cce6dabc5b68a37a74de063eeca60c6af326ca88902be76de5
MD5 617c8ff5774c21af94b8b831d9ead473
BLAKE2b-256 05f98a2e075237686a6a1e4b442aca37a884fa05564153b7b2b58fa11c9075df

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.8.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 303.7 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.8.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c55d1f9d613f01bc0ea4a3f100cdd8c1a7d153f9da5dcde5ffe52716359db4c1
MD5 729313897994359eb00c1ee0c987406e
BLAKE2b-256 cd24b95814b8d8cfd146a99076ee81f35f63e7f166817710527bdc14e35e9e28

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31d3eda4f82b29575595cc78ab03dbf2068d86f739b2602d991bb6db69b2a0cc
MD5 71f8b5ce11aa83e76426bcfb6a34a407
BLAKE2b-256 474ebae6cfa673260168cbef9cf1fbc2a8771f7a11834d43e8f28079cb6d9c2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bc5ba30570dc2271d36246b0e1ff3a3d6522fedb72b78662facdbea56d68af11
MD5 4caefc0eb34b5387fc88eaa494343cbe
BLAKE2b-256 356e9c6b253ce6b5aff77c805f6effef8a75d0634b230da7238eeb2dbe9a1618

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 297f71f3709c75a0ce992c23971c166d7874e2c43f16630b6d2e55ec3023f7d0
MD5 ba4e085d22a698a3712f8d7f0315ca60
BLAKE2b-256 50096bc719bb25493612c76d49050ba684b471852d84f0768ae587c98d26bffa

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2375bc02f3ec94846c85ee802d8c3a260b1dcbbe5c9e462d2c96c52810a1d978
MD5 28da55c20f20cd1e0a736f5f3ac0ae27
BLAKE2b-256 aa930508420074adce8ba701d329c87c47968972b3fdde5e891d2f58645b1058

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: rapidtrees-0.8.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 303.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.8.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5b651a8a1eaa23a68cb81258abc3ed09a9ba7b69425ffd4202d48c57aa0bc58a
MD5 a750ff2646fe603453b2e9f99a93370c
BLAKE2b-256 85561e8b582e2f0540979f6bcfe1d0481afa7527d86a4e28243694d2537a859f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 552ad758578f7c65707f2a1ccddca99114878a789bdbb480ec38591497e66ef3
MD5 c0faafa6cd5e6e517ee3e9437c3826d9
BLAKE2b-256 9b4eb416a68acd4e508da2ecd48968bab77af145c5beec17b28eac5423f93491

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rapidtrees-0.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5475a3431ec0f8727ad707a75ee53a68b374fa3f172f29fa341501912022ea7c
MD5 017934151ef5f5ca8cca26db64835cac
BLAKE2b-256 51eabce0481b04108da2c897ed5223fc7dfef6ebbe3c1dd02939786e1542f71e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidtrees-0.8.2-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

0.9.0

30 files

0.8.3

30 files

This release

0.8.2 This release

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