Skip to main content

boostree

A fast in-memory R*-tree index over points or axis-aligned bounding boxes, backed by Boost.Geometry via pybind11.

Two surfaces:

  1. Native API (boostree.RTree) — a clean, batched, numpy-first interface designed for new code.
  2. rtree.index drop-in (boostree.index.Index, boostree.index.Property) — method-for-method compatible with the subset of the PyPI rtree package.

On that subset it's ~6× faster per query and ~4× faster to build than libspatialindex (which the PyPI rtree package wraps), plus:

Feature rtree (PyPI) boostree
Bulk nearest over many query points yes (nearest_v) yes
Bulk intersection over many query bboxes yes (intersection_v) yes
GIL released during batch queries no yes
Free-threaded CPython (PEP 703) no yes
Bulk delete by id-set no — one at a time, needs original coords yes
Bulk delete by bbox range no yes
update (move entry by id) no — hand-roll delete + insert yes
copy.copy / copy.deepcopy aliases C++ handle independent deep copy
pickle unsupported works (state is (ids, mins, maxs), or (ids, points) under point storage)

Native API

import boostree
import numpy as np

# Build from points or boxes
tree = boostree.RTree.from_points(pts)               # zero-volume boxes
tree = boostree.RTree.from_points(pts, ids=eids)     # with ids
tree = boostree.RTree.from_boxes(mins, maxs)         # explicit boxes
tree = boostree.RTree.from_pairs(items, dim=3)       # iterable form

# A point-only tree: entries hold no extent, so it uses less memory
tree = boostree.RTree.from_points(pts, storage="point")

# k-nearest, rows sorted by ascending distance; exactly tied candidates
# are picked and ordered by coordinates and then by id, so the answer
# never depends on the order the tree was built in; optional per-query
# radius cap (radius<=0 disables)
ids, dists = tree.knn(queries, k=8)
ids, dists = tree.knn(queries, k=8, radius=0.5)
ids, dists = tree.knn(queries, k=8, radius=per_query_radii)

# k-nearest under elliptical (Mahalanobis) metrics: transforms maps
# world coordinates into each metric class's frame; radius is then in
# metric-frame units (radius=1.0 keeps hits inside the ellipse)
ids, dists = tree.knn(queries, k=8, transforms=tmats, class_ids=cids)

# Box queries: pass maxs alongside queries (Euclidean only)
ids, dists = tree.knn(qmins, k=4, maxs=qmaxs)

# Bbox-vs-bbox intersection (ids flat, counts per query)
ids, counts = tree.intersect(qmins, qmaxs)

# Existence-only variant: (n,) bool, stops at the first hit per query
hit = tree.intersect_any(qmins, qmaxs)

# All queries are batched — no separate single-query method.  For one
# query, just pass a length-1 array
ids, dists = tree.knn(np.array([[0.5, 0.5, 0.5]]), k=4)

# Mutation — batched and id-based, no need to remember the original
# coordinates the way rtree.index requires
tree.delete(ids_to_drop)                             # by id-set
tree.delete_in(qmins, qmaxs)                         # by bbox-range
tree.update(ids, new_points)                         # upsert by id
tree.add(new_ids, new_points)                        # incremental insert

# copy.copy / copy.deepcopy both produce fully independent trees
import copy
tree2 = copy.deepcopy(tree)

# Pickle round-trips through (ids, mins, maxs), or (ids, points) under
# point storage — independent of host architecture / endianness /
# pointer width
import pickle
blob = pickle.dumps(tree)
tree3 = pickle.loads(blob)

# Or the same arrays directly, e.g. for HDF5 or numpy.savez
ids_arr, mins_arr, maxs_arr = tree.dump()             # box storage
ids_arr, pts_arr = point_tree.dump()                  # point storage

The native API differs from rtree.index in several ways:

  • Output shape is fixed (n, k) for both ids and distances, rows sorted by ascending distance and padded with -1 / +inf. No variable-length flat returns.
  • Elliptical metrics are first-class: knn(..., transforms=..., class_ids=...) runs an exact best-first search under per-query Mahalanobis metrics — no oversample-and-re-rank workarounds.
  • radius does not mutate the caller's array (the rtree-compat shim does, matching libspatialindex; the native API doesn't because callers can read dists instead).
  • radius <= 0 disables the cap (matches libspatialindex), so the zero-radius sentinel works without surprises.
  • Property is gone. dim is inferred from your input; the rtree capacities are not user-tunable in Boost's rstar.
  • Mutation is id-based and batched. rtree.index.delete(id, coords) needs the original bbox alongside the id and removes one entry per call; tree.delete(ids) accepts an array and removes every match in one pass. There's no update in rtree.index at all — callers hand-roll delete + insert; tree.update(ids, points) does it for you with upsert semantics.

rtree.index drop-in

Existing code that uses from rtree.index import Index, Property can switch to boostree without source changes:

import boostree
boostree.install_rtree_compat()        # one-line shim into sys.modules

# from this point onwards the rtree imports resolve to boostree:
from rtree.index import Index, Property
tree = Index((ids, mins, maxs), properties=Property(dimension=3))
nidxs, counts, dists = tree.nearest_v(qpts, qpts, num_results=8)
ids, counts = tree.intersection_v(qmins, qmaxs)

Covered:

  • Bulk batched paths — bulk-load (numpy (ids, mins, maxs) or (id, bbox, obj)-iterable), nearest_v with max_dists / return_max_dists, intersection_v.
  • Single-query rtree methods — intersection(bbox, objects=False), nearest(point, num_results=1), insert(id, coords), and delete(eid, coordinates=None) (boostree ignores the coordinates argument since it can look the id up directly; rtree requires it).
  • copy.copy / copy.deepcopy and pickle — work too, unlike upstream rtree.index where copy aliases the C++ index handle and pickle isn't supported at all.

Plus four boostree-only batched paths exposed on the same Index:

idx.delete_v(ids)                    # bulk delete by id
idx.delete_range_v(pmins, pmaxs)     # bulk delete by bbox intersection
idx.update_v(ids, pmins, pmaxs)      # bulk upsert
idx.intersection_any_v(pmins, pmaxs) # existence test, early exit

Notably not supported by either surface:

  • dimension other than 2, 3, or 4
  • persistent / disk-backed indexes
  • user objects carried through queries (objects=True)
  • arbitrary point types other than float64
  • nearest_v(strict=False)'s overflow-on-equidistant-ties behaviour (we always return exactly num_results ids, padded with -1)

Property.index_capacity / leaf_capacity are accepted for API compatibility but ignored — Boost picks its own internal layout.

Install

pip install boostree

Wheels are published for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (AMD64) on CPython 3.10–3.14. No Boost or compiler is required at install time — the minimal Boost.Geometry header subset is vendored in the source distribution.

To build from source you only need a C++17 compiler and CMake ≥ 3.18:

pip install .

To rebuild the vendored Boost subset against a newer Boost release, install bcp (e.g. apt install libboost-tools-dev) and run:

python scripts/vendor_boost.py --boost-root /path/to/boost_x_y_z

To build against system Boost instead of the vendored subset, pass -DBOOSTREE_USE_SYSTEM_BOOST=ON to CMake.

OpenMP is auto-detected at build time and used to parallelise batched queries (knn, nearest_v, intersect, intersection_v) across threads — typically ~10× speedup at 16 threads on aircraft-class workloads. macOS clang ships without OpenMP, so the macOS wheels run serial (still faster than libspatialindex).

Development

Source is formatted via black (Python) and clang-format (C++) — a project-local .clang-format and [tool.black] block in pyproject.toml pin the styles.

To run both formatters at once:

pip install pre-commit
pre-commit run --all-files

Or hand-run:

black boostree/ tests/ scripts/
clang-format -i src/*.cc benchmarks/*.cc

Threading

The C++ extension declares itself compatible with PEP 703 free-threaded CPython (py::mod_gil_not_used()), and the batched query methods (nearest_v / intersection_v / knn / intersect) release the GIL so they parallelise across Python threads even on the regular GIL build.

Each tree carries a std::shared_mutex: read methods take a shared lock, mutators (insert_point, delete_*, update_*) take an exclusive lock. Concurrent reads run in parallel; reads block during a write and vice versa. No external synchronisation is required, even on free-threaded CPython.

Benchmarks

On 161 368 wall faces × 1 811 835 query points × k=8:

build k=8 query (1T) k=8 query (16T)
rtree (PyPI) 1.10 s 80 s n/a (serial)
boostree 0.03 s ~12 s ~1 s

Changes in 0.3

  • CPython 3.14 is supported and gets published wheels.
  • Point storage. RTree.from_points(pts, storage="point") holds a bare point per entry rather than a zero-volume box, giving the same answers in less memory. Entries hold no extent, so update() refuses a maxs.
  • Order-independent ties. Candidates at exactly equal distances are selected and ordered by coordinates and then by id, so knn no longer depends on the order the tree was built in.
  • Non-finite coordinates are refused. A stored NaN read as an exact hit from anywhere along that axis; inserting one now raises.
  • Breaking: the keyword naming the far corner of a query or update box is now maxs throughout the native API, matching from_boxes / intersect / delete_in. RTree.knn(..., query_max=) and RTree.update(..., query_max=) are now maxs=. The boostree.index drop-in is unaffected.

License

Boost Software License 1.0 (matches Boost.Geometry).

Metadata

Release files for boostree 0.3.1

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

Source distribution (sdist)

Source distribution for boostree 0.3.1
File Size Uploaded Provenance Actions
boostree-0.3.1.tar.gz 2.8 MB With provenance Details for boostree-0.3.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for boostree 0.3.1
File Actions
boostree-0.3.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for boostree-0.3.1-cp314-cp314-win_amd64.whl
boostree-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for boostree-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
boostree-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for boostree-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
boostree-0.3.1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for boostree-0.3.1-cp314-cp314-macosx_11_0_arm64.whl
boostree-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details for boostree-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl
boostree-0.3.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for boostree-0.3.1-cp313-cp313-win_amd64.whl
boostree-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for boostree-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
boostree-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for boostree-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
boostree-0.3.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for boostree-0.3.1-cp313-cp313-macosx_11_0_arm64.whl
boostree-0.3.1-cp313-cp313-macosx_10_14_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.14+ x86-64 Details for boostree-0.3.1-cp313-cp313-macosx_10_14_x86_64.whl
boostree-0.3.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for boostree-0.3.1-cp312-cp312-win_amd64.whl
boostree-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for boostree-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
boostree-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for boostree-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
boostree-0.3.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for boostree-0.3.1-cp312-cp312-macosx_11_0_arm64.whl
boostree-0.3.1-cp312-cp312-macosx_10_14_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.14+ x86-64 Details for boostree-0.3.1-cp312-cp312-macosx_10_14_x86_64.whl
boostree-0.3.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for boostree-0.3.1-cp311-cp311-win_amd64.whl
boostree-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for boostree-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
boostree-0.3.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details for boostree-0.3.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
boostree-0.3.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for boostree-0.3.1-cp311-cp311-macosx_11_0_arm64.whl
boostree-0.3.1-cp311-cp311-macosx_10_14_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.14+ x86-64 Details for boostree-0.3.1-cp311-cp311-macosx_10_14_x86_64.whl
boostree-0.3.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for boostree-0.3.1-cp310-cp310-win_amd64.whl
boostree-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for boostree-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
boostree-0.3.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for boostree-0.3.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
boostree-0.3.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for boostree-0.3.1-cp310-cp310-macosx_11_0_arm64.whl
boostree-0.3.1-cp310-cp310-macosx_10_14_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.14+ x86-64 Details for boostree-0.3.1-cp310-cp310-macosx_10_14_x86_64.whl

Total release size: 16.9 MB

Release files / boostree-0.3.1.tar.gz

Download URL boostree-0.3.1.tar.gz
Size 2.8 MB
Tags Source
SHA-256 checksum
How to use checksums
7ea6a5ae3c670c633990581bfbcd4ff9407b1aa667fe17231b21a79f569c3aea
BLAKE2b-256 checksum
How to use checksums
5ac8b39748063c4fda44cefe9f2d1247060033742ca47ec1e127659806725b4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp314-cp314-win_amd64.whl

Download URL boostree-0.3.1-cp314-cp314-win_amd64.whl
Size 677.0 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
395acc6b2063685eb9dedf77c5765366279f421bacb92e4c7594d77d6f23e071
BLAKE2b-256 checksum
How to use checksums
81f83d30fdeb8bbd96502f0842c6f751ca9d5702412aa9853bf8b3351b7a2597
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL boostree-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 625.9 kB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
bca08150fae16e3bd4895d77ce25913f5fc1a3e88618f7f13d0ee04e66b22512
BLAKE2b-256 checksum
How to use checksums
2c54fb88fdf6533ffe5b69340190e69f542884cbdcca9a3800e929d05e2cb376
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL boostree-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 573.3 kB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
5836cf9ea28f1107cacd605b812fdc02a01f6876c2847caaca527ae0b7ec63a1
BLAKE2b-256 checksum
How to use checksums
a7b85ca365b3af9687ea12e8185963feb9b73224eaf42fcbbfcb6a1cee66e111
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp314-cp314-macosx_11_0_arm64.whl

Download URL boostree-0.3.1-cp314-cp314-macosx_11_0_arm64.whl
Size 446.2 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
70a9e73df1da32803d820dce6a3fdbc7f00dc65cbad83ed90f0959d86e64b59a
BLAKE2b-256 checksum
How to use checksums
4c10c068a3ba7ef14f92375ccba40603518a4349d465d0b7df8425ebe9e9ac93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl

Download URL boostree-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl
Size 534.7 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
dbf93a00946bf87fe2e9aa54ee6b70536d71322e16874a757277ef4c87af8c96
BLAKE2b-256 checksum
How to use checksums
f0004c15dd77d08988ead6e9a95e9b531c52c75c94cbe6c32dd10cdebc514496
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp313-cp313-win_amd64.whl

Download URL boostree-0.3.1-cp313-cp313-win_amd64.whl
Size 654.1 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
5315f1d1215c0457f1e4018e5db9acf6c27ad632c653b8665a703401489461ec
BLAKE2b-256 checksum
How to use checksums
d51a8d76c4160ed59acacf684b54bf25155da5f464fdd11f6e605cd59d52b392
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL boostree-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 625.8 kB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
574fb74279200252148e4f845ced52bbb0d9b9ea37902d2a06e1a7eeb95c0e76
BLAKE2b-256 checksum
How to use checksums
91469f53f650c3dcdfc96b83072f82366f3a3f2d2e524fd9d406c7aedf234f43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL boostree-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 572.5 kB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cca45e8aba4346b26015066cc52aa60fce084617eac449de5988061ac0638548
BLAKE2b-256 checksum
How to use checksums
75df0726d3b73f7cb8d0e471ed0e5aeec6ca9cd62845d3aca10c4c1e93cdb80b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL boostree-0.3.1-cp313-cp313-macosx_11_0_arm64.whl
Size 445.7 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9850b065f1db946cb19139ff7d33de203f5257d93b6d1341837369d631f72511
BLAKE2b-256 checksum
How to use checksums
0e9044a74881d02651a2ae47b93b52f2f7f563d7f9f1997384bcf8bdef960bfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp313-cp313-macosx_10_14_x86_64.whl

Download URL boostree-0.3.1-cp313-cp313-macosx_10_14_x86_64.whl
Size 534.2 kB
Tags CPython 3.13 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
f0ee43b7fa19c224c634de11704d54fd677b2c819beff254a701c01b1497eef3
BLAKE2b-256 checksum
How to use checksums
c82cc2d5872777d3790ff9cd8dc1fe2613638c3a6a1f98b5a758427f18c9141f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp312-cp312-win_amd64.whl

Download URL boostree-0.3.1-cp312-cp312-win_amd64.whl
Size 654.1 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
aa24907f5d317a726258bb9a81109b57fc6f726ee557ab1d036a95dfd9b75a8c
BLAKE2b-256 checksum
How to use checksums
cebfdb383db8390112404cf63405a864cf7f95038dc296919039c558b28c3ccb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL boostree-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 625.7 kB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
12ebdc2c0f2c3ed4bcec692e28a12cc0c212a20fc06e37d54d89e6cf32a1d1e3
BLAKE2b-256 checksum
How to use checksums
f66f9423c61585b8f16b3ddc4212579e908676d906c26427bc22190a7b6b78b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL boostree-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 572.5 kB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
111735b21aae6eeffc2fc03963c116cf3071ade3913fcafa3fad8674719090d9
BLAKE2b-256 checksum
How to use checksums
dffbce43ce2c9620363659b574d929d3c07f44e22f53a047b8221318fd73f1b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL boostree-0.3.1-cp312-cp312-macosx_11_0_arm64.whl
Size 445.7 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1ae329fb52d703d6fb56fc07765f4a090d532ec1cfc231e33bf21e58e6402ae3
BLAKE2b-256 checksum
How to use checksums
3ba406245626d9f1d121524e82d5673e592fda6143e55f0f8caf13f706785471
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp312-cp312-macosx_10_14_x86_64.whl

Download URL boostree-0.3.1-cp312-cp312-macosx_10_14_x86_64.whl
Size 534.1 kB
Tags CPython 3.12 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
78171f2d0098e9e997338392d6ab334898ce50dd82787214e12276c68e577326
BLAKE2b-256 checksum
How to use checksums
209e1f709b4a3450148e121fe6352289d77711037f6c2318fdeb05e4238adf93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp311-cp311-win_amd64.whl

Download URL boostree-0.3.1-cp311-cp311-win_amd64.whl
Size 652.1 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
0d6e4dc5e977506fdc576bb6bacea32c0178fee14b7d76d313fee887eefda9e5
BLAKE2b-256 checksum
How to use checksums
85e4a3639abede6ce9748ffa571443a2e77d02e470ee65ad562dd4fda31ef69e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL boostree-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 614.4 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4117dbb448b87a645e8911386bb34bf0d39056ac6bd4f7b97bf6a3a1b362cf79
BLAKE2b-256 checksum
How to use checksums
4cefc6c9f8e9dcc0cf5581635b5471b94e1dc738042b00800a3b7c5d44ee0948
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL boostree-0.3.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 568.7 kB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8dcb68b0c0a5f1fd9d020c168548f4b3fffb031fefa865f8b64cfb39f0e9a94a
BLAKE2b-256 checksum
How to use checksums
032b13ec2ed698f34e2daf6679b2cdbae8d95b1371628da96e08601c3bb43e2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL boostree-0.3.1-cp311-cp311-macosx_11_0_arm64.whl
Size 445.2 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2c785a6a6c4201125e1f6903fed274b0b562a8ebcf027597206ea179f5db94e3
BLAKE2b-256 checksum
How to use checksums
2d5b57a5f8441198dccd9b13b783b492305d286d5ce60baa60a6e06211a7a179
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp311-cp311-macosx_10_14_x86_64.whl

Download URL boostree-0.3.1-cp311-cp311-macosx_10_14_x86_64.whl
Size 529.5 kB
Tags CPython 3.11 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
0297e141f52eca09db9e7f49ae1b9440ac61fd0f87f5dac44cd31ef6ba26bdf9
BLAKE2b-256 checksum
How to use checksums
092a7bc77bb4a4ab8bec7c71f8e15333ea394d00969698360e0f40731341e006
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp310-cp310-win_amd64.whl

Download URL boostree-0.3.1-cp310-cp310-win_amd64.whl
Size 651.1 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
1eb9e591bbc92e85db4673997c9fc071c328079318c13c3b52aa0b8e377857ae
BLAKE2b-256 checksum
How to use checksums
070258e13b67a637dd971276ec5a54aa7b9b80536f5f6e8054dbaecdf926560e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL boostree-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 614.0 kB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
83671a7bd519bf9019399055e6123f2a6b2ed614cd185ecd073e84c9dd4e349f
BLAKE2b-256 checksum
How to use checksums
ebbdf8797b783c7351a83c4045f5ff5732ea492d61814ce90c8c85529151ce8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL boostree-0.3.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 567.7 kB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c6a25cdb0f24fdde31c4d3ef2bcaa3a63964c42b363b503e81fc894bf16b38bf
BLAKE2b-256 checksum
How to use checksums
56b1d4bc9bc716abf2ea80b62533e2407fead2a1e8a55e43c2b4e32ff8c1aeff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL boostree-0.3.1-cp310-cp310-macosx_11_0_arm64.whl
Size 444.1 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e992149fac0544beb9e2c28c2554a9c7351dc360db086dfc512ff91e66d4c59c
BLAKE2b-256 checksum
How to use checksums
95b3c0bace7ce7c3ac9c1301ee8fd66139f1c3bb56e05681ba800e396183102a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / boostree-0.3.1-cp310-cp310-macosx_10_14_x86_64.whl

Download URL boostree-0.3.1-cp310-cp310-macosx_10_14_x86_64.whl
Size 528.3 kB
Tags CPython 3.10 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
620d422888bdb86455ab8edad3f94bf09e4aa483549b30fd301b2dfb8889859d
BLAKE2b-256 checksum
How to use checksums
cf80b3775d16ffb3dfb2293f4ebe732d635dfeb0899d26fd18583d5efc0667d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Security for boostree 0.3.1

Provenance

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

Full provenance

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

Select from 26 files

Attestation for boostree-0.3.1.tar.gz

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

A note on package security

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

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

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