Skip to main content

modelo

modelo is a Rust multi-model validation library and a Python bindings extension intended as a drop-in replacement for python-ort.

Namespaces

Each model family lives in its own namespace, so families can be added without disturbing the others. Currently there is one: ort, the OSS Review Toolkit model.

ORT model Shared validation engine
Rust modelo::models::ort::* (src/models/ort/) modelo::models::{Model, ValidationError}
Python modelo.ort —

Adding a family means a new src/models/<name>/ directory whose types implement models::Model, plus a modelo.<name> submodule in src/python/mod.rs. The engine and the bindings' plumbing stay as they are.

Workspace layout

This repository is a Cargo workspace with two crates, so the library stays free of CLI/TUI dependencies (clap, ratatui, crossterm):

Crate Contents Dependencies
modelo The validation engine and models (src/), plus the optional Python bindings serde, serde_yaml, thiserror, purl, pyo3 (feature-gated)
modelo-cli The modelo binary: CLI subcommands and the TUI modelo, clap, ratatui, crossterm, anyhow

Build

cargo build --release --workspace  # library + `modelo` binary
cargo test --workspace              # unit + integration tests (203 tests)
cargo clippy --workspace --all-targets # lints
cargo doc --workspace --open        # API documentation

The Python extension module lives in its own modelo-python crate, so the modelo library and the modelo binary never link against libpython:

cargo build --release -p modelo-python

Validating files: the modelo CLI

The modelo binary lives in the modelo-cli crate:

cargo install modelo-cli

modelo license-classifications  tests/data/license-classifications.yml
modelo repository-configuration tests/data/repo_config/curations.yml
modelo ort-result               tests/data/evaluation-result.yml

The subcommands are still flat rather than grouped per family (modelo ort ort-result ...); that regrouping is worth doing when a second family lands, not before.

Each subcommand prints valid <kind> file. and exits 0, or reports the first parse/validation error and exits non-zero. --debug additionally pretty-prints the parsed model. This is the equivalent of python-ort's ort-validate (src/tools/ort_validate.py).

Interactive TUI

modelo tui [FILE] (or modelo with no arguments) opens a ratatui interface: pick the model kind, type a file path, see the validation result. ↑/↓ (or k/j) move and scroll, Enter confirms, b goes back from the result screen, q/Esc quits.

Using it from Python

pip install modelo

or, from a checkout:

pip install maturin
maturin develop     # into the active virtualenv
# or: pip install .                   # maturin is the build backend

The modelo.ort submodule exposes the three top-level ORT models, each parsed from YAML and navigated with plain attribute access, the way python-ort's pydantic models are:

from pprint import pprint

from modelo.ort import LicenseClassifications, OrtResult, RepositoryConfiguration

result = OrtResult.from_yaml_file("tests/data/evaluation-result.yml")
config = RepositoryConfiguration.from_yaml_str(open(".ort.yml").read())

pprint(result.analyzer)                                 # AnalyzerRun(start_time=..., ...)
result.analyzer.environment.ort_version
result.analyzer.result.projects[0].id
result.repository.vcs.url

Invalid input raises ValueError (with the failing field path, as pydantic's ValidationError does); an unreadable path raises OSError.

Every nested model is an instance of a class named after it (type(result.analyzer).__name__ == "AnalyzerRun"), all of them subclasses of modelo.ort.Object. Besides attribute access they support keys(), values(), items(), obj["field"], "field" in obj, len(obj), == and to_dict():

import json

result.to_dict()                                        # nested plain dicts and lists
json.loads(result.to_json()) == result.to_dict()        # True — one source of truth

Fields that ORT itself serializes as scalars stay scalars: Identifier is a string ("PIP::requirements.txt:1.0"), enums are their member names, and free-form maps such as labels are dicts.

Type checking

The wheel is a PEP 561 typed package: modelo/py.typed ships alongside modelo/ort.pyi, so mypy, pyright and ty resolve import modelo.ort and the model classes without falling back to Any. The compiled extension lives at modelo._modelo; modelo.ort is a thin Python re-export of it, which is what makes the module statically resolvable.

Examples

Runnable counterparts of python-ort's examples/, using only the standard library:

python examples/license_classifications.py tests/data/license-classifications.yml
python examples/repo_config.py             tests/data/repo_config/curations.yml
python examples/ort_result.py              tests/data/evaluation-result.yml --analyzer

Checking parity against python-ort

examples/parity_check.py parses every fixture in tests/data/ with both libraries and diffs the serialized result, ignoring set-backed field ordering (arbitrary in both):

pip install . python-ort
python examples/parity_check.py

All 9 fixtures agree; analyzer-result.yml is rejected by both libraries for the same unknown field. The behaviours this covers:

  • Int-backed enums (Severity, *Reason, …) accept the numeric value or the case-sensitive member name, and serialize as the member name — python-ort's ValidatedIntEnum.
  • Unknown fields are rejected wherever python-ort sets extra="forbid", and accepted where it sets extra="allow"/"ignore".
  • Loose scalars are coerced as python-ort's mode="before" validators do (an integer start_lines, non-string options values).

Continuous integration

.github/workflows/ci.yml runs on every push and pull request: format (rustfmt), lint (clippy, warnings denied), test (Linux/macOS/Windows), python (bindings built and smoke-tested on 3.10 and 3.13) and parity (the diff above against python-ort).

Every third-party action is pinned to a full commit SHA with the released tag in a trailing comment (uses: actions/checkout@3d3c42e... # v7.0.1), so a moving tag cannot change what runs. To bump one, resolve the new tag's SHA (gh api repos/<owner>/<repo>/commits/<tag> --jq .sha) and update both the SHA and the comment. actionlint .github/workflows/*.yml validates the files.

Deployment

Both registries publish from a v* tag (git tag -s v0.1.0 && git push origin v0.1.0) or a manual Run workflow dispatch. Bump the version in Cargo.toml and pyproject.toml first — they are separate files and must agree.

PyPI — .github/workflows/release-pypi.yml

Builds wheels with maturin-action for Linux (x86_64, aarch64), macOS (x86_64, aarch64) and Windows (x64), plus an sdist, then uploads everything in one publish job via pypa/gh-action-pypi-publish (maturin upload only authenticates with an API token, so it cannot do the OIDC exchange trusted publishing needs).

One-time setup: on PyPI, add a trusted publisher for the modelo project pointing at this repository and the workflow file release-pypi.yml with environment pypi; then create a GitHub environment named pypi. No API token is stored — the job authenticates with the OIDC token from id-token: write.

crates.io — .github/workflows/release-crates.yml

Runs the test suite and cargo package first, then cargo publish.

One-time setup: create a crates.io API token scoped to publish-update for this crate, and store it as the secret CARGO_REGISTRY_TOKEN in a GitHub environment named crates-io.

Local dry runs

cargo publish --dry-run
maturin build --release   # wheel lands in target/wheels/

License

MIT — see LICENSE. Copyright 2026 Helio Chissini de Castro dev@heliocastro.info. test

Metadata

Release files for python-modelo 0.11.1

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

Source distribution (sdist)

Source distribution for python-modelo 0.11.1
File Size Uploaded Provenance
python_modelo-0.11.1.tar.gz 159.3 kB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for python-modelo 0.11.1
File
python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp315-cp315-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 macOS 11.0+ ARM64 Details
python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
python_modelo-0.11.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
python_modelo-0.11.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
python_modelo-0.11.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
python_modelo-0.11.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
python_modelo-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
python_modelo-0.11.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
python_modelo-0.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
python_modelo-0.11.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
python_modelo-0.11.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details

Total release size: 21.9 MB

Release files / python_modelo-0.11.1.tar.gz

Download URL python_modelo-0.11.1.tar.gz
Size 159.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1e44a9e3e91f475464217d8eefca076de02b2273d8a5c0a1a0c9182e248b5390
BLAKE2b-256 checksum
How to use checksums
f9c8de796b9859aa688b5d61184b3f48c583660b0eb6f111e8f4b7408d88edec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.0 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
f1bd0beba0f34c13708ac49f5b0a9f2936753323a4b91922124cc58e731639ec
BLAKE2b-256 checksum
How to use checksums
9312211a5c14e0347912cf2e48fda5317f49aba503a0a7f5e65ef3e9ea6e5c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.0 MB
Tags Linux glibc 2.17+ ARM64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
6f26a024a32505054f8360d011ce7c3188c417e9503f33bc9abbe980171df6f9
BLAKE2b-256 checksum
How to use checksums
71fad04439562787ae62b1965ffb4464ec5356e81b92c6a8b76791ea321fbdc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 996.3 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
35c7f2734f5120401d1c7fac6cf65c3e2e6457f41381a6b0bbd2dd962d18825c
BLAKE2b-256 checksum
How to use checksums
e1a98a3c7e1c482c0d89205def132868587d02edc22120fc9a8665c55cf4601d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 996.6 kB
Tags CPython 3.15 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
e635797f311ff795fdae002417036ffa68516eadabe037853793bf0425bed9f1
BLAKE2b-256 checksum
How to use checksums
db2ce577158488a2e429a0c42a3925cf8c5860094e9d6016ee0584d64f0c645c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp315-cp315-macosx_11_0_arm64.whl

Download URL python_modelo-0.11.1-cp315-cp315-macosx_11_0_arm64.whl
Size 901.0 kB
Tags CPython 3.15 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a7fbb00194ea0d6e16f1a604a36dc72e1f43895dffde1d22158ec6ed71be526b
BLAKE2b-256 checksum
How to use checksums
f2253fd57d1622937dfd8470331d4ce2de813470758559df5350f243a97c7b3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 997.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
bdd4317e2674e0b20ddff3848e1f16305f83cab6cb0aad04c4bc274ab95e1730
BLAKE2b-256 checksum
How to use checksums
3f526fc35dfcda55e01e87d0b15154cf54a1313ec8716c1533d7a2c6a12ee7a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 996.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
037fa833bbbcfc8e67515b28b269a6e4078147b4a4f5c87e560d0366483a37a7
BLAKE2b-256 checksum
How to use checksums
1524273541617baabd6299f18a09ab41891ee60ce17729519742fffdfe71baf3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314-win_amd64.whl

Download URL python_modelo-0.11.1-cp314-cp314-win_amd64.whl
Size 814.8 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
9dfbd7f9a723fea404c5039c90a18473e225f3e2ff41ba135f797d0f00b239e4
BLAKE2b-256 checksum
How to use checksums
5671968fac9d2a8a665e0a1509b0638bd3f3cb2cf35db548181cbc68a42d26fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 996.0 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4f5e5db40afda704f83ff3b1f39df6deda74e001da44ca85241cb616236f931d
BLAKE2b-256 checksum
How to use checksums
bdd29299303ba7e99adfa1f6a75b78ff07b0b978f604b04fcf939028584c7c8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 997.8 kB
Tags CPython 3.14 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
099f1d230abf6bb210c48072cbab98a07ad5e245a7bc8470ac56f118c512f416
BLAKE2b-256 checksum
How to use checksums
a93d0f32181f9af9ed4d15e7946ac9be2e326deaddece31a7f04248f51738030
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp314-cp314-macosx_11_0_arm64.whl

Download URL python_modelo-0.11.1-cp314-cp314-macosx_11_0_arm64.whl
Size 901.1 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
06ecd88e7d88ad9e6d6d522c82257b900af3a2d4ece8eca6145ed54840dbc35f
BLAKE2b-256 checksum
How to use checksums
ea2eff65a9220151c798a596bddf7dae246a8af20e9fcde530d7ee436cf5f619
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp313-cp313-win_amd64.whl

Download URL python_modelo-0.11.1-cp313-cp313-win_amd64.whl
Size 813.1 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
52afe975b72da8887f7111775ccae2dd597a0423cceda8a0486ab91970add0b6
BLAKE2b-256 checksum
How to use checksums
b7a5f63e46b322b60f0fdaf656b219b9f870dd221c70455c020339516d28c5e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 994.0 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
acc4e78253e2b0b028727502326c3edac5b9938fbf2bcb6c4b4451b18bcbee5e
BLAKE2b-256 checksum
How to use checksums
b47ba174d7be538cfcff28c67045ab872ab60859f8b9ea0fe730ad5e58c588e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 993.8 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
78cc17953ec424c2b98b0c6a2cce67c16bd1a2e91236340049046e76aa39518a
BLAKE2b-256 checksum
How to use checksums
1468e1d0c8f3eecc54279e02708620877b34ed85531e632d7303511dc5e87c1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL python_modelo-0.11.1-cp313-cp313-macosx_11_0_arm64.whl
Size 900.0 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5716e1f4ebed9733d97b75ad987b72e9e22ce0184a9b344b61313f6e5ae994ce
BLAKE2b-256 checksum
How to use checksums
f67e7f5c89b5607fab11956509843c4e6a1e6f76723cafdd06ac0df68bd767ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp312-cp312-win_amd64.whl

Download URL python_modelo-0.11.1-cp312-cp312-win_amd64.whl
Size 815.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
fc31ab1c5f8f370191989272e91edb0068b7efddf2be4ba734b2afd51902a830
BLAKE2b-256 checksum
How to use checksums
e0a19bc0c1b6fd9a627f57b2e9f22bdd2b789aba722074d0beeb4e3e56d7444c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 994.9 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
e4a044ff2f7516c485d9968337b9be2fe6e09cc1f62df1a828b76ef1ab0ea436
BLAKE2b-256 checksum
How to use checksums
98b1d76ed17ac82f797ec49b42aceee99d5f4391f7fce5d0855adfceaac5af41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 996.8 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
7db9b7fcf460c8a8e294bad4eb530e0f9fec99a135227dd6fc9a235b677781db
BLAKE2b-256 checksum
How to use checksums
7893b6c9443503ab253dc892107703b9061d5ebcc0c43fc9eadf7a7bdd253465
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL python_modelo-0.11.1-cp312-cp312-macosx_11_0_arm64.whl
Size 901.7 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
23e41b959fe9fcd15c26b2c90d552fd3cc844cd3e1082976962818741ed7293b
BLAKE2b-256 checksum
How to use checksums
1dafd26776708865faf4f7a26fd2aa926c62f534a5f57dbfd3388e70d43723fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp311-cp311-win_amd64.whl

Download URL python_modelo-0.11.1-cp311-cp311-win_amd64.whl
Size 819.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
988d32a246034f3661ca8add0de25273ee63c588c7c7724130e8fbe70e8c0634
BLAKE2b-256 checksum
How to use checksums
ae93264cc5d42b9560733de1cc05af1ec78ce8206067facea48680baae12a4d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_modelo-0.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 997.5 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5a939fe1739d56dec5291048236ebf42a9a7216f3ade736743d34127f9dbcf2d
BLAKE2b-256 checksum
How to use checksums
4b91fceb28e0dc217bcd5c9935787053adbc2263e291b3f227cf034b6556d98e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL python_modelo-0.11.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.0 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
0b3fbe33899e3646fe77beb103d44260eddca428704b5c80307517ebb4465943
BLAKE2b-256 checksum
How to use checksums
7847e1fffceb16847316cd74ee72545388b25482c94594125234c85379cedc8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / python_modelo-0.11.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL python_modelo-0.11.1-cp311-cp311-macosx_11_0_arm64.whl
Size 907.4 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
76a3859b9d993b202cbb18ef29bd058063053f63eae6b4951e326b6fe437fa50
BLAKE2b-256 checksum
How to use checksums
bb806599205bde99cefc20592df629d5c55ec6d2da8a5d6f99da6cdf126f14ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for python-modelo 0.11.1

Provenance

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

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

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

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

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