Skip to main content

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)

Source distribution for arborenum 0.2.6
File Size Uploaded Provenance
arborenum-0.2.6.tar.gz 160.5 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for arborenum 0.2.6
File
arborenum-0.2.6-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
arborenum-0.2.6-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
arborenum-0.2.6-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
arborenum-0.2.6-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
arborenum-0.2.6-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
arborenum-0.2.6-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
arborenum-0.2.6-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
arborenum-0.2.6-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
arborenum-0.2.6-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
arborenum-0.2.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
arborenum-0.2.6-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
arborenum-0.2.6-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
arborenum-0.2.6-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
arborenum-0.2.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
arborenum-0.2.6-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
arborenum-0.2.6-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
arborenum-0.2.6-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
arborenum-0.2.6-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
arborenum-0.2.6-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
arborenum-0.2.6-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details

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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Security 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.

Select from 21 files

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 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.

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