Skip to main content

Shinrin

shinrin

PyPI - Version License: MIT

Shinrin (森林, "forest" in Japanese) is a scikit-learn-compatible library for decision tree and forest models and tabular neural networks, with Rust and Mojo bindings for performance and ONNX export support.

Since skope-rules and scikit-garden are no longer actively maintained, this project aims to bring them together with extensions for tree models — including SHAP explanations, ONNX export, and benchmarking utilities.

Shinrin also includes TabM — a parameter-efficient ensemble MLP for tabular data (ICLR 2025) that trains an ensemble of k members jointly through BatchEnsemble-style multiplicative adapters, matching ensemble accuracy at a fraction of the training cost. Training runs entirely on NumPy or Mojo kernels — PyTorch is not required.

Features

  • Mondrian Trees & Forests — Full scikit-learn API compatibility
  • CORELS Optimal Rule Lists — Certifiably optimal rule lists for binary data (CorelsClassifier), vendored from pycorels with bundled mini-GMP (no system dependency)
  • GOSDT Optimal Sparse Decision Trees — Globally optimized sparse decision trees with reference-ensemble guesses (GOSDTClassifier, ThresholdGuessBinarizer), vendored from gosdt-guesses; runs single-threaded with no TBB/GMP system dependencies
  • Tabular Neural Networks — scikit-learn compatible MLPClassifier/MLPRegressor and TabMClassifier/TabMRegressor with optional PLE embeddings and Mojo-accelerated training
  • TabM Neural Networks — Parameter-efficient ensemble MLPs for tabular data with BatchEnsemble-style multiplicative adapters (ICLR 2025)
  • TabICL — Tabular in-context learning foundation model (torch/NumPy/Mojo backends)
  • TreeSHAP ExplanationsTreeExplainer for single trees and forests with explanation() visualization helper
  • ONNX Export — Export trained trees, forests, and TabM models to ONNX format for deployment
  • Benchmarking — Built-in utilities for training speed, prediction speed, and model size
  • Rust & Mojo Bindings — Performance-critical code in Rust via PyO3 and Mojo kernels

Quick Start

Tree Models

from shinrin import MondrianTreeRegressor, MondrianForestClassifier
from shinrin import TreeExplainer, explanation

# Train a model
X, y = ...
tree = MondrianTreeRegressor(max_depth=8, random_state=0)
tree.fit(X, y)
predictions = tree.predict(X)

# Get SHAP explanations
explainer = TreeExplainer(tree)
shap_values = explainer.shap_values(X)
# Or use the convenience function:
# explanation(tree, X)  # opens matplotlib visualization

TabM Neural Networks

from shinrin import TabMClassifier, TabMRegressor

# Train a TabM model
model = TabMRegressor(
    hidden_layer_sizes=(256,),
    k=32,               # ensemble size
    random_state=0,
)
model.fit(X, y)
predictions = model.predict(X)

# Classification
clf = TabMClassifier(k=32, max_iter=200)
clf.fit(X, y)

CORELS Optimal Rule Lists

from shinrin import CorelsClassifier

# Binary features, binary classification — provably optimal rule list
clf = CorelsClassifier(c=0.01, verbosity=["rulelist"])
clf.fit(X, y, features=["feature1", "feature2"])
print(clf.rl())          # human-readable optimal rule list
predictions = clf.predict(X)

GOSDT Optimal Sparse Decision Trees

from shinrin import GOSDTClassifier, ThresholdGuessBinarizer

# Binarize continuous features via gradient-boosting threshold guesses
X_bin = ThresholdGuessBinarizer().fit_transform(X, y)

# Optionally guide the search with a blackbox reference ensemble
clf = GOSDTClassifier(regularization=0.05, depth_budget=4)
clf.fit(X_bin, y)                      # or: clf.fit(X_bin, y, y_ref=y_ref)
print(str(clf.trees_[0]))              # globally optimal tree
accuracy = clf.score(X_bin, y)

Native Backends

Both Mondrian trees and TabM support interchangeable native backends:

  • Rust (default) — PyO3/maturin extension for tree models
  • Mojo — Experimental Mojo port for TabM training kernels

Select the backend with environment variables:

SHINRIN_BACKEND=mojo python your_script.py          # TabM Mojo backend
SHINRIN_TABM_BACKEND=mojo python your_script.py     # TabM-specific backend

Benchmarks

See scripts/benchmarks/BENCHMARK.md for detailed benchmark results comparing Shinrin against LightGBM and scikit-learn SGD.

See scripts/benchmarks/TABM_BENCHMARK.md for TabM backend comparisons (NumPy vs Mojo vs PyTorch).

See scripts/benchmarks/GOSDT_BENCHMARK.md for GOSDT vs scikit-learn CART comparisons (just bench-gosdt).

To run benchmarks yourself: python scripts/benchmarks/bench_baselines.py (or just bench-backends for Rust vs Mojo backend comparisons, just bench-tabm for TabM backends).

Installation

pip install shinrin

Optional dependencies:

pip install shinrin[sklearn]   # scikit-learn for benchmarks and SHAP plotting
pip install shinrin[onnx]      # ONNX export
pip install shinrin[mojo]      # TabM Mojo kernels (`just build-tabm-mojo`)
pip install shinrin[full]      # All optional dependencies

Native backends

The tree/forest internals ship with two interchangeable native backends:

  • rust (default) – the original pyo3/maturin extension (shinrin._native)
  • mojo – an experimental Mojo port (shinrin._native_mojo)

Select the backend with the SHINRIN_BACKEND environment variable:

SHINRIN_BACKEND=mojo python your_script.py

The default remains rust; the Mojo backend is opt-in while Mojo is in alpha. Both backends produce identical trees for identical random states (verified by tests/test_mojo_parity.py). Build the Mojo extension with just build-mojo (requires the mojo package, e.g. pip install 'shinrin[mojo]').

API Overview

Models

Tree Models

Model Description
MondrianTreeRegressor Single Mondrian tree for regression
MondrianTreeClassifier Single Mondrian tree for classification
MondrianForestRegressor Ensemble of Mondrian trees for regression
MondrianForestClassifier Ensemble of Mondrian trees for classification
TabMClassifier / TabMRegressor Ensemble MLP trainers (NumPy / Mojo backends)
TabICLClassifier / TabICLRegressor Tabular in-context learning estimators (TabICLv2)

TabM Neural Networks

Model Description
TabMRegressor TabM ensemble regressor (drop-in for MLPRegressor)
TabMClassifier TabM ensemble classifier (drop-in for MLPClassifier)

TabM parameters:

Parameter Default Description
hidden_layer_sizes (256,) Backbone block widths
k 32 Number of ensemble members
solver 'adam' 'adam', 'sgd', or 'lbfgs'
arch_type 'tabm' 'tabm', 'tabm-mini', or 'tabm-packed'
dropout 0.1 Backbone dropout rate
use_embeddings True Piecewise-linear + linear embeddings for numeric features
n_bins 64 Quantile bins per numeric feature
d_embedding 8 Embedding width per numeric feature
categorical_indices None Columns to treat as categorical
categorical_cardinality_threshold 32 Max unique values for auto-detecting categoricals

Explanations (Tree Models)

from shinrin import TreeExplainer, explanation

explainer = TreeExplainer(model)
shap_values = explainer.shap_values(X)
expected_value = explainer.expected_value

# Quick visualization (requires matplotlib)
explanation(model, X)

ONNX Export

from shinrin.onnx import to_onnx, save_onnx

# Export to ONNX protobuf
onnx_model = to_onnx(model, X)

# Save to file
save_onnx(model, "model.onnx", X)

Works for tree/forest models and TabM. TabM exports a self-contained graph (preprocessing, embeddings, ensemble backbone, averaged head) that runs on raw feature vectors with any batch size:

import onnxruntime as ort
from shinrin import TabMRegressor
from shinrin.onnx import save_onnx

model = TabMRegressor(hidden_layer_sizes=(256,), k=32, random_state=0)
model.fit(X_train, y_train)
save_onnx(model, "tabm.onnx", X_train)

session = ort.InferenceSession("tabm.onnx")
predictions = session.run(None, {"X": X_test.astype(np.float32)})[0]

Benchmarking

from shinrin.benchmark import (
    benchmark_training,
    benchmark_prediction,
    benchmark_model_size,
    full_benchmark,
    print_benchmark_report,
)

models = {
    "shinrin_tree": MondrianTreeRegressor(max_depth=8),
    "shinrin_forest": MondrianForestRegressor(n_estimators=10, max_depth=8),
    "shinrin_tabm": TabMRegressor(hidden_layer_sizes=(256,), k=32),
}

results = full_benchmark(models, X_train, y_train, X_test)
print_benchmark_report(results)

Test Coverage

All vendored tests are included and passing — these are ported from scikit-garden and skope-rules to verify compatibility. Run pytest --cov=src/shinrin tests/ for a full coverage report.

TabM parity tests (tests/test_tabm_parity.py) verify that the Mojo kernels produce identical results to the NumPy reference implementation. TabM functional tests (tests/test_tabm.py) cover training, prediction, and determinism. TabM ONNX export tests (tests/test_tabm_onnx.py) verify onnxruntime inference parity for all architectures, tasks, and preprocessing configurations.

License

MIT

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp314-cp314-win_amd64.whl (960.1 kB view details)

Uploaded CPython 3.14Windows x86-64

shinrin-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp314-cp314-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

shinrin-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

shinrin-0.2.0-cp313-cp313-win_amd64.whl (960.1 kB view details)

Uploaded CPython 3.13Windows x86-64

shinrin-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

shinrin-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

shinrin-0.2.0-cp312-cp312-win_amd64.whl (960.6 kB view details)

Uploaded CPython 3.12Windows x86-64

shinrin-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

shinrin-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

shinrin-0.2.0-cp311-cp311-win_amd64.whl (959.7 kB view details)

Uploaded CPython 3.11Windows x86-64

shinrin-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

shinrin-0.2.0-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

shinrin-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

shinrin-0.2.0-cp310-cp310-win_amd64.whl (959.6 kB view details)

Uploaded CPython 3.10Windows x86-64

shinrin-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

shinrin-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

Details for the file shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4311451f50099739056beddfc88bafcdcb3f13eba63f159d37c776258717ab71
MD5 187a647b6afc5ca88321cadf3ed670d6
BLAKE2b-256 1076a00661600a2286a71f2066b3cf41ccff213ddfbfe163438b654934cef576

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2f55010fc032286e84cbaa38b95f075103080b06f7e952ee2e311c2b73786e09
MD5 3e3867b79e305227e3518ffd67248bc4
BLAKE2b-256 1275c2ab7bf7cdec63152110f29b8c75f12c36c3fe93887d9267fcb854eae65f

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6974c75d44327bb41d60f37e3b39b474d62e6e8e04bcc45b7131abd3fb2fa350
MD5 43f4168952344210ff6a1d9770b70aa4
BLAKE2b-256 8dc6ad3124d7145606b0f5631727e346a932e95f676fa25e98d5b8100740312a

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 73dc8f60789abae77221bed5d6926f2d42f72a51cb3868466fa438d398b6482a
MD5 6c644689bbc62f0f9fdc9f15dcf94da6
BLAKE2b-256 068bbc7524eb68ab2ba9139e21b91f90155e9293b4451c5c076590f23fa89d58

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314-win_amd64.whl.

File metadata

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

File hashes

Hashes for shinrin-0.2.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 f9d5a4ffefa098420c25746dab06effbae94a4df957f881dc4a48a203cd49481
MD5 878c5b2fb5b466911fd67e136a370f0d
BLAKE2b-256 a8af617cdddb274bbb7a90e3c7c7894653f4d6a021da6c47f29cd01c0b0e6250

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314-win_amd64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b23925cb92bfa1aca1f200f5b59af700ad3ed572e39eb06f88c2f5fbf95f0398
MD5 841dd7d4f2fbc9d4827c50056358e118
BLAKE2b-256 3d1460e0426b98067d08cae9cd4f62fc663cad04458f7f1f4c48f0f26b69aa5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f2bd3284918c92973069ac9ab5550d5274cd97e2ba92b7066c42c8966506b5f9
MD5 74c482bf5ac17fe86f0c0165196f4783
BLAKE2b-256 f5b60b28e980c9e2b6d42fe739b4f3aa4d807b7781c2ddd4771d110ad4ff4145

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c17178fa2d6308c46c92d250b6d914367b0d9d0e66207691323e299568ea3f2a
MD5 5341bcdf859965eaef18cbf37c0044c0
BLAKE2b-256 331ac07a52452d90f57a2c15dba287443948a70455421dd09490a4ef887e5401

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8df078c5f6167ac3f50f1cb657080dd4e5946c6f25410912d0b72999e87f25f7
MD5 9a0a7a9b5487bc39d640f38911a1fad7
BLAKE2b-256 656b2f29315c16e8a9b08e762464658277f041eafc65158db37e8cd9cba3105d

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp313-cp313-win_amd64.whl.

File metadata

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

File hashes

Hashes for shinrin-0.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5ec0b3cbef8ca5e7bb06d68b71dde9d74348bd06063ea916590ba47e96150b30
MD5 e269bcf2409ef1a54f81d06f51f5b6b4
BLAKE2b-256 9d0a22277a95a811372ce7db1326af12acc0705ceb90f1f856ae66830ca6cd7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp313-cp313-win_amd64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 030d1474a1c56ced8e4870a94b8197e0e16c8c68b6d1e41bdfbfec9d155a972a
MD5 88e103d9cfe03d68076bd18a3c634412
BLAKE2b-256 fb4e2b12616b86560832cd74b4e2a794825510d41ed66c044810a4b7bd506f47

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f37f4588e4982fed4823118e37a4d5aede4b9f53a6603e110137319326fb8e3a
MD5 9a94b77f855c83b441398c1b74fecfe9
BLAKE2b-256 494a7c1002e9cbe7e118684dd5935066dd08c9cee6cdb81f909c3bb524a0049d

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab536c60cf177d31dcce407bfc67cf4e988afe6e125fd1ef5e4e17c9c236a704
MD5 eca6dcdb53a9b92523bc1b37cf832f31
BLAKE2b-256 eb33d2d69fc92ef97a66ad2c3dc9b63442e6dc46a6c101d9f7206926beeb750c

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce47232954ee204202b89bc297366ce0d8f7effab92a265f976acf886de7a0c7
MD5 685f554cc2368ded87e1f7c5dfe3c9fc
BLAKE2b-256 f24853ca10cd571faa89cf7416f0e9a799c0142cb9880647a89bdefc91e61a3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp312-cp312-win_amd64.whl.

File metadata

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

File hashes

Hashes for shinrin-0.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 608634419e4a978dcbc7630d2d7458348bc6fa6623745053689efb7b0620e72e
MD5 7c75a0f08817b424c9e1559b8928fee2
BLAKE2b-256 6c9311851c60dc97be6b9a988a5aaabbb689c0d7a1817459c28fa25bfa1c665c

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp312-cp312-win_amd64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdd1c89a0ee5cffde8c9ff8a491d5bfda9adf3ba3762677ad1268947d40bf1ca
MD5 90fd565bec2c4cb1f20a09f5f0d86189
BLAKE2b-256 272a1ae9bb0329eee91a1207434bceb9c4df38f089b2cc0011711edfa58d4cef

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d21fa3107ff5e89aac402204faeaf6ed63e86183a272cf62fb75fa9285393f2e
MD5 86c4cd9b035b55c379dd487d6a63281d
BLAKE2b-256 5b26261296aa074c8971404ec06d3b434edc35635829ffff626bee937c0d730f

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 40ea91f1da3f398166f559508f694e5088392d14072c512534c9ee194a46982f
MD5 43a8c54aa00f0397b53cad196af04afc
BLAKE2b-256 83fe67ca5c631fd057886acdd62ecd100b9d2c8b2c8047d9a0b66a4d42b439a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce0409cfd4fb6a9a2c465f61b323367bee6384f944617488eee0a50040d86ad3
MD5 efffb02da0c46f0623e916fe0cbd7336
BLAKE2b-256 3d70fa4368e441b529490d14b5667a538810fdc5e7216127a709deaf77e0bbd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp311-cp311-win_amd64.whl.

File metadata

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

File hashes

Hashes for shinrin-0.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bf7536d623acbabb616b94215e482c5a34a1f74f771d46804a4f09049ed6fa92
MD5 8558b005f9b837b5df3f36f805bc9bb3
BLAKE2b-256 4376126044af97c8bebd0ce79555c2316e7c615bf76cadf55a9d8d71e0bf999b

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp311-cp311-win_amd64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1c895f93e663c5efdec8d52528a28a49273fa536c762c53e6c91d59dfe973e81
MD5 5373c306fc022d6e66060d34b3f28d6a
BLAKE2b-256 2b5a10a0cdc8f7b73c018c6b1fe9e53c4e98da7b14b5860b607a1824c1b13063

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dfeef00f9bd2ab68dd2f6d9711bd193beee6dfedf139526df40116899d052068
MD5 ed8142ff373e8c3510e0df640e51ea1d
BLAKE2b-256 431d796cd00fbdb258bb8bc304f6da95d03d7558b38aa035e788ae8c7ba5086f

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c2e06a15cca3ad4e493b7b41f27c32bac2d439c6cfe89b6fabe06099e1c18dc7
MD5 6e23956a59332185d0cfd2216232ff47
BLAKE2b-256 f63b27baf78cc0d8ce3f162bc3433f426f5506c352ac468b15177b675d4ee61b

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d05c175bcd8db26389e891b2ad62b104b77f172af87db71ae17349201a03aee4
MD5 a9911bcd9e3770c474c15796de66288e
BLAKE2b-256 590a8c54d9c57f03afa602422af608595954af9c836ac8eea1242d07089ef781

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp310-cp310-win_amd64.whl.

File metadata

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

File hashes

Hashes for shinrin-0.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a6be5ae33daf6b6914881860a4ae5808a903e7b6d29462f63c5b2c235ae0970c
MD5 b78dc3227954d58df91c992deca84329
BLAKE2b-256 4603563a152aab2a019988a47b6768b7955698183e6b375991f966cccbc436b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp310-cp310-win_amd64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9fe23b9b3087a296e0b4728f388ba9792b81ce25ea058e68864004ced9da4506
MD5 73746c821ae4ca66afd3de640c4f7c7e
BLAKE2b-256 a200e46b279d6b53bb6a335bb64fe34bdd59b425a8877589afdc68a663d27ee5

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

File details

Details for the file shinrin-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shinrin-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 71ccfe8af7f6bbedf9d1736a0f1858da291d8338fadb9660c8643d03e48aa104
MD5 af9a169fa1fed3f43d248f1abb1ab124
BLAKE2b-256 c916274f4d83917dd096ac56c9f9dfcdeded3e1c991885de3f14c328dbb2b263

See more details on using hashes here.

Provenance

The following attestation bundles were made for shinrin-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: workflow.yml on NoRaincheck/shinrin

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

Release history Release notifications | RSS feed

This release

0.2.0 This release

27 files

0.1.0

29 files

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