ArborEnum
Exact, approximate, and anytime enumeration of decision-tree Rashomon sets over continuous features.
ArborEnum finds collections of accurate, interpretable classification trees rather than returning only a single model. Unlike prior work, it directly supports continuous features as input. Its algorithms span approximate to optimal Rashomon sets, allow either coarse or fully exhaustive treatment of continuous features, and support runtime and memory limits through an anytime algorithm. ArborEnum also integrates the Rashomon Importance Distribution (RID) to provide stable variable-importance estimates across the set of all good models.
Features
- Enumerate decision trees within a small multiplier beyond a reference objective (for instance, the optimal tree or a tree from a non-optimal proxy algorithm).
- Work directly with numerical tabular data (continuous features).
- Use exact, approximate, or anytime enumeration.
- Inspect objectives, predictions, leaves, and individual tree structures.
- Compute and visualize Rashomon Importance Distributions.
Installation
pip install arborenum
Full Usage
See the example notebook for a complete walkthrough.
For more detail about the algorithms themselves, see our paper.
Basic usage
import time
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from arborenum import ArborEnum
Load a numerical classification dataset (for instance, a bike rental dataset). Keeping X as a pandas DataFrame allows ArborEnum to use the feature names in plots.
df = pd.read_csv("examples/bike_processed.csv").sample(
frac=1.0,
replace=True,
random_state=0,
).reset_index(drop=True)
y = df.pop("label").to_numpy(dtype=np.int32)
X = df
Standard enumeration
We recommend keeping all of these parameters for a high-quality approximation. Only change lambda_reg, depth_budget, and rashomon_mult depending on the Rashomon set you want.
For an exact Rashomon set, use proxy_mode="continuous" and lookahead_k=depth_budget - 1.
standard_model = ArborEnum()
start = time.perf_counter()
standard_model.fit(
X,
y,
# Which thresholds the proxy algorithms may use:
# "continuous", "hybrid", or "binarized".
# We recommend "hybrid" for strong approximation quality and speed.
proxy_mode="hybrid",
# Accuracy-interpretability trade-off.
lambda_reg=0.005,
# Maximum allowed tree depth.
depth_budget=5,
# Rashomon multiplier.
rashomon_mult=0.01,
# Proxy lookahead.
lookahead_k=1,
# None considers every available cutpoint.
max_number_thresholds_per_feature=None,
# "hash" is memory-efficient; "exact" uses exact bit-vector caching.
key_mode="hash",
)
elapsed = time.perf_counter() - start
print("elapsed seconds:", f"{elapsed:.2f}")
print("minimum objective:", standard_model.get_min_objective())
print("number of trees:", standard_model.count_trees())
Proxy modes
"continuous"allows all proxy components to use continuous thresholds."hybrid"dynamically changes between a subset and all thresholds"binarized"restricts all proxy components to automatically guessed thresholds.
"hybrid" is the recommended default for a strong speed–quality trade-off.
Anytime enumeration
Our anytime algorithm progressively solves for the Rashomon set, adding more and more cutpoints of continuous features over time. This means that it can stop at anytime during the execution and maintain guarantees over a binarization. The anytime algorithm uses the same main optimization settings and adds early stopping, resource limits, proxy refinement, and optional Rashomon-multiplier expansion. The last point means that after we have added all cutpoints, we are able to repeatedly increase the Rashomon multiplier to expand the Rashomon set.
anytime_model = ArborEnum()
start = time.perf_counter()
anytime_model.fit(
X,
y,
early_stopping=True,
proxy_mode="hybrid",
lambda_reg=0.005,
depth_budget=5,
rashomon_mult=0.01,
lookahead_k=1,
max_number_thresholds_per_feature=None,
key_mode="hash",
# "on" continually refines the proxy.
# "auto" decides whether further refinement is worthwhile.
proxy_refinement="auto",
# After adding all thresholds, optionally extend the budget to match a bigger Rashomon multiplier.
second_rashomon_mult=0.03,
multiplier_step_size=0.0025,
runtime_limit_seconds=600,
memory_limit_mb=10000,
)
elapsed = time.perf_counter() - start
print("elapsed seconds:", f"{elapsed:.2f}")
print("minimum objective:", anytime_model.get_min_objective())
print("number of trees found in total:", anytime_model.count_trees())
print(
"trees within a 0.01 multiplier:",
anytime_model.count_trees_within_mult(0.01),
)
print(
"trees within a 0.03 multiplier:",
anytime_model.count_trees_within_mult(0.03),
)
Set second_rashomon_mult=None when no multiplier expansion is desired.
Inspecting and plotting trees
Tree indices range from 0 to model.count_trees() - 1.
for model, model_name in [
(standard_model, "Standard ArborEnum"),
(anytime_model, "Anytime ArborEnum"),
]:
number_of_trees = int(model.count_trees())
if number_of_trees == 0:
print(f"{model_name}: no trees were returned.")
continue
tree_indices = [0]
if number_of_trees > 1:
tree_indices.append(number_of_trees - 1)
for tree_index in tree_indices:
tree_name = "first tree" if tree_index == 0 else "last tree"
objective, normalized_objective = model.get_tree_objective(
tree_index
)
predictions = np.asarray(
model.get_predictions(
tree_index,
X,
),
dtype=np.int32,
)
accuracy = np.mean(predictions == y)
print()
print(f"{model_name}: {tree_name}")
print("tree index:", tree_index)
print("objective:", objective)
print("normalized objective:", normalized_objective)
print(
"number of leaves:",
model.get_tree_num_leaves(tree_index),
)
print("accuracy:", f"{accuracy:.6f}")
print("first 10 predictions:", predictions[:10].tolist())
model.plot_tree(
tree_index,
title=f"{model_name}: {tree_name}",
show=True,
)
plt.show()
Rashomon Importance Distributions
A Rashomon Importance Distribution describes how feature importance varies across accurate trees rather than reporting importance for only one model. It is also stable because we train Rashomon sets on more than one bootstrap of the dataset.
rid_model = ArborEnum()
start = time.perf_counter()
rid_result = rid_model.compute_rid(
X,
y,
# Use False for standard RID construction.
early_stopping=True,
proxy_mode="hybrid",
lambda_reg=0.005,
depth_budget=5,
rashomon_mult=0.01,
lookahead_k=1,
max_number_thresholds_per_feature=None,
proxy_refinement="auto",
second_rashomon_mult=0.03,
multiplier_step_size=0.0025,
runtime_limit_seconds=600,
memory_limit_mb=10000,
# Number of bootstrap repetitions.
n_boot=3,
# Number of feature permutations evaluated per feature.
n_scramble_evals=5,
# Required for pairwise RID plots.
return_joint_samples=True,
)
elapsed = time.perf_counter() - start
print("elapsed seconds:", f"{elapsed:.2f}")
RID plots
rid_model.rid_plot_mean(
show=True,
)
rid_model.rid_plot_violin(
show=True,
)
rid_model.rid_plot_cdfs(
show=True,
)
Pairwise RID plots
Pass feature names directly as strings. Each point corresponds to a tree in one bootstrapped Rashomon set. The coordinates are the feature importances for those two features.
feature_pairs = [
("mnth", "hr"),
("holiday", "weekday"),
("temp", "hum"),
]
for feature_a, feature_b in feature_pairs:
print(
"plotting:",
feature_a,
"vs.",
feature_b,
)
rid_model.rid_plot_pair(
feature_a,
feature_b,
show=True,
)
plt.show()
Important parameters
| Parameter | Meaning |
|---|---|
lambda_reg |
Penalty on the number of leaves. Larger values favor smaller trees. |
depth_budget |
Maximum tree depth. |
rashomon_mult |
Relative objective tolerance defining the Rashomon set. |
proxy_mode |
Continuous, hybrid, or binarized proxy threshold configuration. |
lookahead_k |
Proxy lookahead depth. Larger values improve proxy quality but cost more. |
early_stopping |
Enables the anytime algorithm. |
proxy_refinement |
"off", "on", or "auto" for making the proxy converge to optimal. |
second_rashomon_mult |
Optional larger multiplier used to expand the Rashomon set to a bigger multiplier |
multiplier_step_size |
Step size for multiplier expansion. |
runtime_limit_seconds |
Runtime limit for anytime refinement and expansion. |
memory_limit_mb |
Memory limit for anytime refinement and expansion. |
max_number_thresholds_per_feature |
Optional cap on continuous cutpoints per feature. |
Exact versus approximate enumeration
For exact continuous-feature enumeration, use:
model.fit(
X,
y,
proxy_mode="continuous",
lookahead_k=depth_budget - 1,
depth_budget=depth_budget,
max_number_thresholds_per_feature=None,
key_mode="exact",
)
Using "hybrid" or "binarized", a smaller lookahead_k, or a threshold cap gives an approximate variant. Hash-based keys are designed to be memory-efficient with virtually no risk of collisions; use key_mode="exact" when exact subproblem identity is required.
More Examples
See the example notebook for a complete walkthrough.
Metadata
Release files for arborenum 0.2.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| arborenum-0.2.6.tar.gz | 160.5 kB | With provenance | Details |
Built distributions (wheels)
Total release size: 44.0 MB
Release files / arborenum-0.2.6.tar.gz
| Download URL | arborenum-0.2.6.tar.gz |
|---|---|
| Size | 160.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5c8bc551e77a2254e94996e1effd12a8ad858db257809283b985f1f89976536e
|
|
BLAKE2b-256 checksum How to use checksums |
e9abac3788c0084d1d51ee1a248459eb55141ff056b0ea3807a2f90f75d596a8
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp313-cp313-win_amd64.whl
| Download URL | arborenum-0.2.6-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 722.6 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
06cfbe17b2b9d2cae52a01a051f572009c896f9afbed2ff516275b38ecdaf512
|
|
BLAKE2b-256 checksum How to use checksums |
8a94d6a71b3d891e3493e32f92109f1d2f66f86170faa1d532c4b5aceee31f10
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | arborenum-0.2.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
8880006be57444435950d93889ee1e931bbfd66dbca534c1f9da1764752ad6f6
|
|
BLAKE2b-256 checksum How to use checksums |
18b567379a2d3f1507da19901551da0d37cea76f77e44bc29d1753e41c62d3f3
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | arborenum-0.2.6-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 596.0 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
52d7a63f42da4a17f20272b356acfff6bf1e72eb9d39fbb6f79280c2736a3540
|
|
BLAKE2b-256 checksum How to use checksums |
35d55347113f6a77d0b2f6b180129a3ccc5d3b994e8ac154969a6419232d9bfe
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | arborenum-0.2.6-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 631.7 kB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
947aaca966fd8b1c39b4b89a4f07eccd5e76e3aab789424bae19a5e9615f6d95
|
|
BLAKE2b-256 checksum How to use checksums |
3ecd806d794d569b7ccb6d121133451410527bef0c09c701582ca43ad8d91ce1
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp312-cp312-win_amd64.whl
| Download URL | arborenum-0.2.6-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 722.6 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
bc0f40bfdb17a3f2aebea57ecaa2d436f3a3ad725fcf26d2ab42872fa1f35553
|
|
BLAKE2b-256 checksum How to use checksums |
a20f22e6f15bb2758a84dbb7eee6410f167ba19606bb8cb37ad2576af28b4ed3
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | arborenum-0.2.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
bb957273864b9cd830818462d5bf87f7ce3612d236c906703a23dc5f8e38790f
|
|
BLAKE2b-256 checksum How to use checksums |
a08948079e91ac7d9f74f86f680eff6a4c992e5d31e16da0ec147046fc792046
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | arborenum-0.2.6-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 596.0 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ba18cbdc65444a64abd1f64694108f569c67483320e050b17c56b87edc6de84a
|
|
BLAKE2b-256 checksum How to use checksums |
29a2d9504f0b9283614010bde81daf55561a515c4299020986c18caf5ab16264
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp312-cp312-macosx_10_13_x86_64.whl
| Download URL | arborenum-0.2.6-cp312-cp312-macosx_10_13_x86_64.whl |
|---|---|
| Size | 631.6 kB |
| Tags | CPython 3.12 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
1cba3ed05d25cb55eaa8cd21fbedaadf89cc693644fb24c05c9ac078c1263c7d
|
|
BLAKE2b-256 checksum How to use checksums |
c7075c9043a4116334c2ee1a83900f3d6fca11855569556961a17559701bf315
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp311-cp311-win_amd64.whl
| Download URL | arborenum-0.2.6-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 720.4 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
f69bf9e6900e1846eeac9a963372216a03f6f4f4f50828c60f5cc213e265ece5
|
|
BLAKE2b-256 checksum How to use checksums |
e7b9a40d875a4b1bb88738ab54aa632a131114089adde0c7b38b2d23ff755913
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | arborenum-0.2.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
eec0e01025587ff264a018b2b51967c2f4dc3c92b82e7cfe918932f955ad5781
|
|
BLAKE2b-256 checksum How to use checksums |
1d944cc58c35d28611d4f1d1ecbdaf0c36b9c6f91ba31584c3a5d3b8fb2cbe93
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | arborenum-0.2.6-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 594.2 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
438229b413fc1fd839363251afe6b10413a41bb0a63b834495f03ca27049b0e7
|
|
BLAKE2b-256 checksum How to use checksums |
2a634fe45a42587c281cbe5c15e257269ce5e463c44efa97f55d25bb76b6edc6
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | arborenum-0.2.6-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 629.1 kB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
e7cd1d75a502421dcb2e8f6baba25401148df20ba59bc82287eb20a72e84c2b1
|
|
BLAKE2b-256 checksum How to use checksums |
60c6d507ba69512273478a8082588fe61b1e667188fcea93109d61c5b6c27803
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp310-cp310-win_amd64.whl
| Download URL | arborenum-0.2.6-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 719.9 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
e41fb90712426f8bd8b6e1ad641bc1f8c6a4bab558db8218353ef7d3f8de325d
|
|
BLAKE2b-256 checksum How to use checksums |
90a431c2c5fc1e4ac7597375da7fc4fbf2194b169630a5cd316be7a9a46a3355
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | arborenum-0.2.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
0beb9bf45eacdcf1801a7c007dee116d35bcacc311e6d2e0c902f4bec25a0b39
|
|
BLAKE2b-256 checksum How to use checksums |
8a13b8e21f5b30f68ccc702acaa022f6c04c159cef862bae10473301626919e8
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | arborenum-0.2.6-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 593.2 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
085c239388dab235ce6f3722e1cf3d5a013a5a11f763c0edcf66b9ed72288efd
|
|
BLAKE2b-256 checksum How to use checksums |
78a3068988e6e659ed46d832d5fb5bbfaab029d18a5bb8d2491457808f5ed3df
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | arborenum-0.2.6-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 627.3 kB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
d38ed85e1ade86237aec6d84598248da7522a0e43935678c9833ad627a5c946e
|
|
BLAKE2b-256 checksum How to use checksums |
5a7d7edd7cadfcb6aeb381fef2f1ad4f40205f415972e1ca9450f73d75e0d6a9
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp39-cp39-win_amd64.whl
| Download URL | arborenum-0.2.6-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 727.3 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ba9fe341a13a8f2dae6308934f4033737d95c231e4ce6aefd32248530094bfbf
|
|
BLAKE2b-256 checksum How to use checksums |
d67a6392e560e6ca2f88527f2c51d3af4a812257069a4a78bc17571106a17f8e
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | arborenum-0.2.6-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 6.8 MB |
| Tags | CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
350b733af998b8491181ba87892c1f542475f0982e33d40acca1b82a2ebd9320
|
|
BLAKE2b-256 checksum How to use checksums |
157234329017e7ea1222b5cc5dc1f0a8bdc0deb2c3a5ee761ea692b88708ed2c
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | arborenum-0.2.6-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 593.2 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
200fa8266f31d3bb85946bda27ce678c3f5cda11b7ee329432345ccc0e1e1863
|
|
BLAKE2b-256 checksum How to use checksums |
bebddb29495f3443d716099bd1a09dea01ce9988348db548ae57d19efcb7c5fb
|
| 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 Sep 11, 2026.
Transparency logRelease files / arborenum-0.2.6-cp39-cp39-macosx_10_9_x86_64.whl
| Download URL | arborenum-0.2.6-cp39-cp39-macosx_10_9_x86_64.whl |
|---|---|
| Size | 627.4 kB |
| Tags | CPython 3.9 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
f0c0516bb6c0df9e5689c82be61dd0301cd49943832e0cd694617acab020b96e
|
|
BLAKE2b-256 checksum How to use checksums |
e2f72d8319523e037e1e568213f572cdd0e91b1146b1498d5ee12937fbfb0fd1
|
| 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 Sep 11, 2026.
Transparency logSecurity for arborenum 0.2.6
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 21 files in this release have been uploaded with provenance metadata.
Attestation for arborenum-0.2.6.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 Sep 11, 2026.
Transparency logA 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.