Modelly: agent-based modeling in Python
Modelly is an agent-based modeling (ABM) framework for Python. Declare a typed scenario, give your agents behaviour, run the world forward in time, then measure, replay and publish it. Seeded runs, numpy-backed agents, grids, networks and continuous space, discrete-event time, pandas data collection, browser visualization. Fast by construction, reproducible by default.
Documentation · Tutorials · Examples · Coming from Mesa · Changelog · Roadmap
Status: stable, Python 3.12+. Every public package (core, space, time, data,
behaviour, scenarios, batch, viz) follows semantic versioning; there is no experimental
area. The current version is modelly.__version__.
pip install modelly-abm
python -c "import modelly; print(modelly.__version__)" # the import name is modelly
Then run the wealth-exchange example, which prints its Gini coefficient.
Vision
Agent-based models are how researchers study systems whose behaviour emerges from many interacting parts: markets, epidemics, ecosystems, cities, opinions. The models are easy to describe and hard to keep correct, reproducible and fast. Modelly exists to remove that gap.
What we are building
- A research instrument, not a toy. Every run is seeded, every parameter lives in a typed scenario, every dataset lands in pandas. A result you got once is a result you can get again.
- Fast by construction. The hot paths of a simulation (activating agents, moving them, looking up neighbours, recording data) are measured, benchmarked in CI, and written so the cost per agent-step stays flat as models grow. Performance is a feature with a test, not a hope.
- Small, readable modules. A researcher should be able to open any file and understand it in one sitting. Files stay under 300 lines, functions under 25, and the rule is enforced by a script, not by goodwill. The Pelloux guidelines are the contract.
- One mental model from notebook to cluster. The same scenario object drives a quick look in a notebook, a browser visualization, a parameter sweep and a batch of replications.
Where we are going. The engine keeps one Python object per agent, which is what makes models
easy to write, and moves the heavy lifting into arrays: Column attributes give the model a numpy
view of every agent, continuous space answers neighbour queries for the whole population with one
KD-tree, and the roadmap adds vectorised step phases and parallel replications out of the box.
The performance audit records what has been done and what is next.
Why Modelly
Modelly gives you the boring, load-bearing parts as small composable objects, so your model file reads like the description of the system instead of the plumbing around it:
| Building block | What it gives you |
|---|---|
| Scenario | Parameters as a typed class: one run, one seed, one config object |
| Agents | Agent classes with a step(), grouped in ordered AgentSets |
| Columns | Attributes stored in numpy arrays, readable per agent and as a whole |
| Space | Orthogonal / hexagonal grids, cells, networks, Voronoi meshes, continuous space |
| Time | Discrete ticks, events, generators and priorities in one scheduler |
| Data | Reporters and datasets that land in pandas, ready to plot |
| Front end | Browser visualization (Solara), static charts, notebooks |
No global state, no hidden step order, no bespoke loops: reproducibility is the default.
Install
Modelly requires Python 3.12+ and is published on PyPI as
modelly-abm.
python -m venv .venv && source .venv/bin/activate
pip install modelly-abm
Add extras for what you need:
pip install "modelly-abm[viz]" # + solara, matplotlib, altair
pip install "modelly-abm[network]" # + networkx
pip install "modelly-abm[rec]" # network + viz: what the bundled examples need
To work on Modelly itself, install from a clone instead: see Development.
To depend on Modelly from your own project, add it to pyproject.toml (the distribution is
modelly-abm, the import is modelly):
dependencies = ["modelly-abm>=1.3"]
The full walkthrough, from an empty folder to a tested and replicated model, is docs/using_modelly_in_your_project.md.
A model in 30 seconds
Agents wander a grid and hand one unit of wealth to a random cellmate. Inequality emerges.
The same code ships as example.py.
from modelly import Model
from modelly.space import CellAgent, OrthogonalMooreGrid
from modelly.scenarios import Scenario
class WealthScenario(Scenario):
"""Everything that can vary between runs lives here."""
n: int = 120
width: int = 12
height: int = 12
class MoneyAgent(CellAgent):
def __init__(self, model, cell):
super().__init__(model)
self.cell = cell
self.wealth = 1
def step(self):
self.cell = self.cell.neighborhood.select_random_cell()
cellmates = [a for a in self.cell.agents if a is not self]
if self.wealth > 0 and cellmates:
self.random.choice(cellmates).wealth += 1
self.wealth -= 1
class WealthModel(Model):
def __init__(self, scenario: WealthScenario = WealthScenario):
super().__init__(scenario=scenario)
self.grid = OrthogonalMooreGrid(
(scenario.width, scenario.height), random=self.random
)
MoneyAgent.create_agents(
self,
scenario.n,
self.random.choices(self.grid.all_cells.cells, k=scenario.n),
)
def step(self):
self.agents.shuffle_do("step") # every agent, in random order
@property
def gini(self):
x = sorted(a.wealth for a in self.agents)
n = len(x)
weighted = sum(xi * (n - i) for i, xi in enumerate(x))
return 1 + 1 / n - 2 * weighted / (n * sum(x))
model = WealthModel()
for _ in range(100):
model.step()
print(model.gini) # 0.0 at the start, about 0.6 after 100 ticks
Three pieces, and nothing else: a scenario of inputs, agents that know one thing each, and a model that owns the world and advances it.
Record it, then look at it
from modelly.data.collector import DataCollector
class WealthModel(Model):
def __init__(self, scenario: WealthScenario = WealthScenario):
super().__init__(scenario=scenario)
# ... grid and agents as above ...
self.datacollector = DataCollector(
model_reporters={"Gini": "gini"}, # anything reachable from the model
agent_reporters={"Wealth": "wealth"}, # anything on each agent
)
def step(self):
self.agents.shuffle_do("step")
self.datacollector.collect(self) # one row per tick
model_vars = model.datacollector.get_model_vars_dataframe() # Gini per tick
agent_vars = model.datacollector.get_agent_vars_dataframe() # wealth per agent per tick
agent_vars.groupby("Step")["Wealth"].mean().plot()
Both frames are plain pandas, so everything you already know how to do keeps working.
Attribute reporters are gathered in C (operator.attrgetter), so a string reporter is the fast
path, not just the convenient one.
Vectorise the bulk work
An agent-based model has two kinds of work: what one agent does in its step, which is Python
by nature, and what the model does to all agents at once (aggregate, filter, record, update),
which should be numpy. Declare a Column and the attribute lives in a model-owned array: the
agent keeps reading and writing it as before, and the model gets a zero-copy view of everyone.
import numpy as np
from modelly import Agent, Column, Model
class MoneyAgent(Agent):
wealth = Column(int, default=1) # one numpy array for the whole class
def step(self):
other = self.random.choice(self.model.agents.to_list())
if self.wealth > 0: # per-agent access works as before
other.wealth += 1
self.wealth -= 1
class WealthModel(Model):
@property
def gini(self):
x = np.sort(self.columns[MoneyAgent].wealth) # view, no copy
n = len(x)
return 1 + 1 / n - 2 * np.sum(x * (n - np.arange(n))) / (n * x.sum())
def tax(self):
w = self.columns[MoneyAgent].wealth
w[w > 10] -= 1 # bulk update, in place
def rich(self):
table = self.columns[MoneyAgent]
return table.where(table.wealth > 10) # an AgentSet
Nothing else changes: model.agents, shuffle_do, DataCollector and the examples work the
same, and attribute reporters on a column are recorded straight from the array. Measured on
10,000 agents:
| Operation | Plain attribute | Column |
|---|---|---|
| Gini coefficient | 1.09 ms | 0.03 ms |
Count agents with wealth > 0 |
0.94 ms | 0.008 ms |
| Mean wealth | 0.47 ms | 0.009 ms |
Decrement every wealth > 5 |
0.15 ms | 0.004 ms |
DataCollector.collect, one reporter |
0.95 ms | 0.46 ms |
One agent.wealth read inside step |
6 ns | 27 ns |
The last row is the trade-off: use columns for attributes you aggregate, filter, record or update
in bulk; a plain attribute is still the cheapest thing to touch inside step. In the Boltzmann
example the object loop is unchanged within noise while the model-level work is 30x cheaper.
The whole population at once
Two more operations run over everyone in one call, so a model can move its population-wide phases out of the per-agent loop:
# A whole-population step for the sheep: decrement, die, reproduce, no per-agent loop.
table = self.columns[Sheep]
table.energy -= 1
table.remove_where(table.energy < 0)
table.do_where(table.draw(0.04), "spawn_offspring") # one seeded draw per sheep
# Continuous space: one KD-tree answers the whole flock, same snapshot for all.
lists = self.space.neighbors_within(radius=5.0)
for boid in self.agents:
boid.neighbors = lists[boid]
draw uses the model's seeded numpy generator, so the run stays reproducible. neighbors_within
is O(n log n) for the whole flock instead of one O(n) scan per agent, is periodic on a torus, and
is cached while no position changes. The Boids example uses it: 2,000 boids go from 98 ms to
42 ms per step.
Replications in parallel
from modelly.scenarios import RunConfiguration, run_scenarios
scenarios = WealthScenario(n=5000, rng=1).spawn_replications(32) # 32 independent seeds
store = run_scenarios(scenarios, RunConfiguration(WealthModel, until=200), workers=8)
Each replication carries its own seed derived from the base scenario, so the sweep is
reproducible; workers= spreads it over processes.
For a plain factorial experiment, run_grid is the one-call version: every combination times
the replicates, each run with its own seed, results in design order whatever the number of
workers, so the DataFrame is identical to the sequential loop's.
from modelly import run_grid
def season(task): # a notebook function works: on Linux the workers are forked
model = Orchard(budget=task["budget"], invasion=task["invasion"], rng=task["seed"])
model.run_for(100)
return {"harvested": model.harvested, "rotten": model.rotten}
results = run_grid(
season, {"budget": [0, 150, 300, 600], "invasion": [3, 10, 30]}, replicates=3
)
Populations as cohorts
When individuals in the same state face the same probabilities (an insect's stage, age and
sex), one row with a count replaces them all, and each per-individual draw becomes one
binomial draw per row with exactly the same law. CohortTable holds such a population with no
agent objects; the stage-structured playbook runs 213x faster than its individual Mesa
version and agrees with it statistically.
from modelly import CohortTable
insects = CohortTable(model.rng, stage=np.int8, age=np.int16, female=bool)
insects.add(500, stage=EGG)
insects.thin(daily_survival[insects["stage"]]) # Binomial(count, s) per row
insects.split(0.5, where=emerging, stage=ADULT, female=True) # sex at emergence
eggs = insects.draw(lay_prob, where=mature_females).sum() * clutch
Modelly, Mesa, NetLogo or Agents.jl?
| Modelly | Mesa | NetLogo | Agents.jl | |
|---|---|---|---|---|
| Language | Python | Python | NetLogo | Julia |
| Authoring model | Model, Agent, AgentSet, typed Scenario |
Model, Agent, AgentSet |
turtles, patches, links | ABM, agent structs |
| Per-agent attributes in arrays | Column: one numpy array per attribute, zero-copy views |
no | no | yes |
| Population-wide operations | draw, do_where, remove_where, one KD-tree query per step |
per-agent loops | built-in primitives | vectorised |
| Time | ticks, scheduled events, generators, priorities, hybrid ABM/DES | ticks, events | ticks | ticks, events |
| Reproducibility | one seed on the scenario, derived seeds per replication | model seed | run seed | model RNG |
| Data out | pandas, incremental frames | pandas | CSV, BehaviorSpace | DataFrames.jl |
| Visualization | Solara in the browser, matplotlib, altair | Solara | built-in GUI | Makie |
| Moving from Mesa | codemod plus a construct-by-construct guide | – | – | – |
Pick Modelly when you want Mesa's authoring model with numpy underneath, measured performance, and a scenario object that makes every run reproducible. Pick NetLogo for teaching and its GUI, Agents.jl when the rest of your stack is Julia.
Coming from Mesa
Modelly's authoring model is the one Mesa 3 users know (Model, Agent, AgentSet,
DataCollector), with one grid system and no schedulers. A codemod does the mechanical part of a
move and reports the rest, each line pointing at a section of the guide:
python -m modelly.migrate path/to/your/model/ # dry run: diff plus report
python -m modelly.migrate path/to/your/model/ --write # apply the rewrites
It rewrites imports to the domain-package paths (modelly.space, modelly.time, modelly.data,
modelly.batch, modelly.viz), agent constructors and scheduler attributes, and flags scheduler classes,
legacy grid calls, batch_run, simulators and seed= for you to decide. The construct-by-construct
map, for Mesa 2.x and 3.x, is docs/migrating_from_mesa.md.
Checking a model
A static check finds the bugs that break reproducibility (random draws outside the model's
generators, wall-clock values, a missing super().__init__, loops over sets) and the loops that
make a step O(N²) (an agent scanning self.model.agents, nested population loops):
python -m modelly.lint path/to/your/model/ # exits 1 on findings, so it works in CI
python -m modelly.lint --explain MDL101 # why a rule matters, with a fix
python -m modelly.lint --diff src/ # the safe fixes (MDL001, 002, 003, 009) as a diff
python -m modelly.lint --fix src/ # apply them, then report what is left
A new project starts clean: modelly new my-model --template grid (or network, continuous,
cohort) writes a package with a seeded scenario, an agent and a model, a determinism test, the
lint settings and a README with an ODD outline. See
docs/new_project.md.
In Jupyter, %load_ext modelly.ipython adds %modelly lint and %modelly profile, and a model
displays its scenario, time and population by agent class.
Every tool is also one command: python -m modelly --help (or modelly --help once installed)
lists them, and modelly lint src/ is python -m modelly.lint src/. Every rule, with the fix, is in docs/lint.md.
Its runtime companion runs the model and shows where each step's time goes: every
AgentSet.do / shuffle_do call by agent class and method, with its cost per agent,
DataCollector.collect, scheduled events, births and deaths, plus hints that point at lint codes:
python -m modelly.profile path/to/model.py:MyModel --steps 100 --param n=5000
From Python, with modelly.profile.Profiler(model) as prof: model.run_for(100), then
prof.report() or prof.to_dataframe(). See docs/profile.md.
Checkpoints
A long run can be saved and resumed bit for bit, in the same process or a new one:
model.run_for(50)
model.save("run.ckpt") # agents, spaces, events, data, both generators
model = WolfSheep.load("run.ckpt") # only load files you trust: it is a pickle
model.run_for(50) # identical to running 100 steps in one go
model.checkpoint_every(100, "run-{time:05.0f}.ckpt")
See docs/checkpoints.md.
Architecture
- Scenario to Model. Inputs enter through one typed object; the model owns state, seed, RNG and time.
- Model to AgentSet / Space / Time. Agents live in sets, act inside some space, and are driven by the scheduler.
- Model to Dataset. Reporters sample the model and its agents on intervals you choose.
- Dataset to Visualize / Analyze / Reproduce. Same data, three exits: a browser app, a dataframe, or a seeded re-run.
Package layout
One package per domain; each __init__.py lists its public names in __all__.
| Package | What it holds |
|---|---|
modelly.core |
Agent, Model, AgentSet, Column, FastRandom, exceptions |
modelly.space |
cells, orthogonal and hex grids, networks, Voronoi, property layers, continuous space (modelly.space.continuous) |
modelly.time |
Schedule, events, event generators, priorities, signals (modelly.time.signals) |
modelly.data |
DataCollector, reporters, dataset recorders (modelly.data.recorders) |
modelly.behaviour |
timed actions (actions), continuous states and thresholds (states), meta-agents (meta_agents) |
modelly.scenarios |
Scenario, RunConfiguration, run_scenarios, result stores |
modelly.batch |
run_batch, run_grid, CohortTable |
modelly.viz |
Solara app, space renderer, matplotlib and altair backends, command console |
modelly.lint |
python -m modelly.lint, static checks for models |
modelly.profile |
python -m modelly.profile and Profiler, where a running model's time goes |
modelly.migrate |
python -m modelly.migrate, the Mesa codemod |
modelly._native |
the compiled modules (fastrng.c, fastloop.c), each with a pure-Python twin |
The top-level names (modelly.Agent, modelly.Model, modelly.DataCollector, modelly.Column,
modelly.CohortTable, modelly.FastRandom, modelly.run_batch, modelly.run_grid) import from
modelly directly.
How the engine stays fast
The data structures are chosen for the operations a simulation actually performs, and each choice is backed by a measurement in docs/performance.md.
| Structure | Backed by | Why |
|---|---|---|
AgentSet (every view) |
ordered dict keyed on weakref.ref |
O(1) membership and removal, stable order for reproducible shuffles, no zombie agents; half the cost of WeakKeyDictionary |
model.agents (the registry) |
ordered dict keyed on the agent |
Strong references where the lifecycle is explicit; views downgrade to weak sets in one place |
Cell.agents |
list |
Cells hold a handful of agents; append and remove beat any indexed structure at that size |
| Cell neighbourhoods | per-cell dict cache |
One lookup per query; invalidating one cell never touches another, and a discarded grid is freed |
| Empty cells in any discrete space | swap-remove list + index | O(1) random empty cell at any fill level, built lazily the first time a space turns out to be dense |
| Property layers | np.ndarray per layer |
Vectorised updates on the array, per-cell accessors on the cells, one source of truth |
| Continuous space | one np.ndarray of positions, one KD-tree per step |
Per-agent queries are numpy; neighbors_within answers the whole population in one periodic tree query |
| Event queue | heapq with lazy cancellation and compaction |
O(log n) scheduling that never degrades under repeated cancel/reschedule |
Benchmarks
Two questions, two methods, both in the repository.
Same code on both frameworks. A research notebook written for Mesa 2.3, ported with the
codemod and nothing else changed, identical seeds, outputs checked bit-identical, CPU time
pinned and alternating: with its compiled random core Modelly is 12% faster than Mesa 2.3
(paired runs at 0.877 to 0.884 of Mesa's time, identical output in every chunk). With the
pure-Python FastRandom it is 1.3 to 3.8% faster, and 1.5 to 2% behind with the standard
library's generator. The method and every round are in
docs/performance.md.
Same model, each framework's own idiom. benchmarks/playbooks/ holds eight models written
twice: for Mesa 2.3 the way its API intends, and for Modelly with columns, vectorised phases,
CellIndex and one KD-tree per step. The runner executes both in their own environments,
pinned to one core, alternating rounds, checks that the implementations agree in distribution
(Welch's t-test over shared seeds, every statistic) and that each is deterministic. CPU seconds
of the steps at the large size, median of three rounds, this machine:
| Playbook | Agents | Mesa 2.3 | Modelly | Speed-up |
|---|---|---|---|---|
| Grid epidemic (SIR, random walk, synchronous) | 20,000 | 11.54 s | 0.21 s | 56x |
| Predator-prey with grass (births and deaths every step) | ~5,500 | 3.90 s | 0.47 s | 8.3x |
| Flocking in continuous space | 4,000 | 27.91 s | 0.72 s | 39x |
| Virus on a random network | 30,000 | 8.70 s | 0.20 s | 44x |
| Stage-structured insect population, individuals | ~26,000 | 2.83 s | 0.65 s | 4.3x |
Same population as a CohortTable (binomial thinning) |
~26,000 | 2.83 s | 0.013 s | 213x |
| Schelling segregation (moves to random empty cells) | ~32,000 | 3.23 s | 0.12 s | 27x |
Boltzmann wealth exchange, Gini by a DataCollector |
10,000 | 1.51 s | 0.20 s | 7.4x |
| Sugarscape, constant growback (vision, best sugar in sight) | 1,600 to ~680 | 5.57 s | 0.18 s | 32x |
Where Modelly keeps Mesa's data structure (agents held in cell lists, modelly-cells in the
results) the gap closes to 1.4 to 1.9x on the epidemic and predator-prey models: the layout is
where the time is, not the interpreter. (Schelling and Sugarscape with cell lists stay 15x and
6.3x ahead, from the O(1) empty-cell index and cached neighbourhoods.)
Every vectorised phase rests on a stated equivalence argument, in
docs/vectorised_phases.md; the full tables with the agreement
checks are in benchmarks/playbooks/results/README.md.
Future roadmap
What is shipped: columns, vectorised step phases (draw, do_where, remove_where), one
KD-tree query for a whole continuous population, an O(1) empty-cell index on every discrete
space, process-pool replications, incremental data frames, and compiled do / shuffle_do
loops and neighbourhood walk (modelly/_native/fastloop.c). What comes next, in order of
expected impact; each item keeps today's authoring model, you still write a Model, an
Agent subclass and a Scenario:
- Vectorised movement on grids. A coordinate column plus a vectorised neighbourhood lookup, so a grid model can move its whole population in one numpy operation.
- Shared-memory replications. Fan a sweep over one large model out to processes without copying the column store.
- Compiled cell moves. An optional compiled path for the cell move, the last Python-bound cost of a per-agent step now that the agent-set loops and the neighbourhood walk are compiled.
- Live dashboards. The incremental data frame is the first piece; a streaming view that updates per tick without re-reading history is the next.
Built-in examples
Real, runnable models that ship with the package, good reading material for the patterns above.
| Model | Shows | Path |
|---|---|---|
| Boltzmann Wealth | Money exchange on a grid, emerging inequality | modelly/examples/basic/boltzmann_wealth_model |
| Schelling | Segregation from local tolerance thresholds | modelly/examples/basic/schelling |
| Conway's Game of Life | Cellular automaton, cell-state transitions | modelly/examples/basic/conways_game_of_life |
| Virus on Network | SIR epidemic on a contact network | modelly/examples/basic/virus_on_network |
| Boid Flockers | Continuous space, alignment and cohesion | modelly/examples/basic/boid_flockers |
| Wolf Sheep | Predator and prey ecology on a grid | modelly/examples/advanced/wolf_sheep |
| Sugarscape G1MT | Resource harvesting, trade and growth | modelly/examples/advanced/sugarscape_g1mt |
| Epstein Civil Violence | Regime shifts from agent state | modelly/examples/advanced/epstein_civil_violence |
| Prisoner's Dilemma | Pairwise strategic interaction | modelly/examples/advanced/pd_grid |
| Alliance Formation | Network structure and group formation | modelly/examples/advanced/alliance_formation |
Run one:
solara run modelly/examples/basic/boltzmann_wealth_model/app.py # browser UI
Documentation
| Where | What |
|---|---|
| Documentation site | remipelloux.github.io/Modelly: everything below, rendered and searchable |
| Use it in your project | docs/using_modelly_in_your_project.md: install, layout, model, data, replications |
| Migrating from Mesa | docs/migrating_from_mesa.md: construct-by-construct map, plus python -m modelly.migrate |
| Tutorials | docs/tutorials/: 12 notebooks, from your first model to hybrid ABM/DES |
| Overview | docs/overview.md: the object model, end to end |
| Performance audit | docs/performance.md: measurements, what changed, what is next |
| Best practices | docs/best-practices.md |
| Starting a project | docs/new_project.md: modelly new and its templates |
| Checking a model | docs/lint.md: the python -m modelly.lint rules, --fix and --diff |
| Profiling a model | docs/profile.md: python -m modelly.profile, the report and its hints |
| Checkpoints | docs/checkpoints.md: save a run, resume it bit for bit |
| API reference | docs/apis/: agents, agent sets, columns, model, space, time, data, migrate |
| Changelog | CHANGELOG.md: what each release added, changed and fixed |
The tutorials are executable: open them locally, in Colab, or through Binder (links at the top of each notebook).
Development
git clone https://github.com/RemiPelloux/Modelly.git && cd Modelly
pip install -e ".[dev]"
bash scripts/ci-local.sh # lint, format, tests, size audit: the same gate as CI
bash scripts/ci-local.sh --list # stage names, run a subset with: ci-local.sh lint test
python -m modelly.dev gate # the same gate without bash: Windows, macOS and Linux
bash scripts/build-native.sh # compile modelly/_native in place; MODELLY_PURE_PYTHON=1 forces the Python twins
The coverage badge at the top of this page is produced by that gate: the test stage measures
coverage and rewrites docs/images/badges/coverage.svg, so commit the badge with your change.
Code discipline is written down in pelloux-guidelines.md: small files,
short functions, surgical changes, conventional commits. scripts/audit-pelloux.sh enforces the
size limits against pelloux-baseline.json; legacy oversized files are listed there and may shrink
but never grow. The repository layout and how the brand assets are generated are in
CONTRIBUTING.md.
Contributing
Issues, ideas and pull requests are welcome on the issue tracker. If you are adding a feature, opening a ticket first is the fastest route: it keeps the patch small and reviewable.
Everything you need is in CONTRIBUTING.md: local setup, tests, the lint and format commands CI runs, docs, and how a pull request is reviewed. By taking part you agree to our Code of Conduct.
Citing
If Modelly contributes to a publication, cite it with the metadata in CITATION.cff (GitHub shows a "Cite this repository" button that formats it for you).
License
Modelly is released under the Apache License 2.0. Third-party attribution is recorded in NOTICE.
Modelly: build the system, run the world, watch what emerges.
Metadata
Release files for modelly-abm 1.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| modelly_abm-1.3.1.tar.gz | 2.2 MB | With provenance | Details |
Built distributions (wheels)
Total release size: 42.7 MB
Release files / modelly_abm-1.3.1.tar.gz
| Download URL | modelly_abm-1.3.1.tar.gz |
|---|---|
| Size | 2.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ad44409e0f440770a1a00ba7aa384954b25478c90949d525ca8aad9e684b98e8
|
|
BLAKE2b-256 checksum How to use checksums |
e5c36b6a7499d042098be286c44042aece40bbd29bb872a65467b7e316d2de40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-py3-none-any.whl
| Download URL | modelly_abm-1.3.1-py3-none-any.whl |
|---|---|
| Size | 791.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
edfd60dc265d0ea18d02e39fe17b6b129614ea36f1ac5b232a6627bcb9161277
|
|
BLAKE2b-256 checksum How to use checksums |
17f2557ba9949c996d7a8054963d679ebfa09644c3ba879f047881dcf0f023e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-win_arm64.whl |
|---|---|
| Size | 820.2 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Windows ARM64 |
|
SHA-256 checksum How to use checksums |
ad182d879876fa9fca963ae0f37955de4bb019a2d8b3934e56605ab1f4e90f7d
|
|
BLAKE2b-256 checksum How to use checksums |
bb82c14afad91739fe3b97be4d463c4751bf6ce5d70a6134134ea58e92a2d8c5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-win_amd64.whl |
|---|---|
| Size | 820.7 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c040ef487b7485d8369466426543b93f18ec8528966a57072ca5db8b721dde4f
|
|
BLAKE2b-256 checksum How to use checksums |
ef87315951770aeee573c08e92bdb1d0b26a22177c59b244306a9c5d65d0074a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 832.8 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
fa4844395b38874162b2734ed82ffe9157d8cbdf6439de0686e58145318ee8dc
|
|
BLAKE2b-256 checksum How to use checksums |
233b5a43e1652f34a90f97c58da946afdfdffb6c84802343248249a1255b5cd0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 837.1 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
fba0d190091873ce644b8df5a4c1d2a7c178c806a1f0770bbddab864fa51cba0
|
|
BLAKE2b-256 checksum How to use checksums |
b706864d47b64758222ced22f053ff56ee4219f04ffaef172842444a57d20831
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 831.5 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
151424f5f89c7a84ca4f7a7fe5e90f35f6236e18a2d6a5cc165a94d2f0f746e0
|
|
BLAKE2b-256 checksum How to use checksums |
fd5b3c7ec3db86aa99c037e717157b25d80cb4a4c88eee12ff454cfae4b98122
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 837.5 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
6f1818d91f0e7f812cf6cf8cc89b54b3a00251537339870af75ffd27b58b2dda
|
|
BLAKE2b-256 checksum How to use checksums |
a6c113baa203094ba3a161190adae285c141e6228ee840d5855535666c7177f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-macosx_11_0_arm64.whl |
|---|---|
| Size | 840.9 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c2356c80676b63cf8da1b427e09e16c3981de0feaeabbed9f7812b180af7e51a
|
|
BLAKE2b-256 checksum How to use checksums |
81dfc39f50a9b2f784d54a79fbadc6669d762284cb5c82c3c10ec3ba00620ca5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315t-macosx_10_15_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315t-macosx_10_15_x86_64.whl |
|---|---|
| Size | 822.3 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
591042b21489a0572f6f089d48f574d2c3870b7413a7d9690475b86b47811a35
|
|
BLAKE2b-256 checksum How to use checksums |
ab1652527a66bdeab0d81ffaa9556a86d8fe189a78d2c9099df0b78c6e803da5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-win_arm64.whl |
|---|---|
| Size | 818.4 kB |
| Tags | CPython 3.15 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
3221e20d5e972077410e4494a3879645481abf6922d94c517c1ea2686242a862
|
|
BLAKE2b-256 checksum How to use checksums |
8ae2277550e62ea535e4c933e4525a085c22f0a032b447124150dbfb9391ad38
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-win_amd64.whl |
|---|---|
| Size | 818.9 kB |
| Tags | CPython 3.15 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
80382d433346fb655bcd71582a972312ceb0cac70ee38102cebde990e71c4fc0
|
|
BLAKE2b-256 checksum How to use checksums |
c5af3ba3e021c89a3e363843e904a7c9c2a74338b452748820e4400a784f311d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 830.4 kB |
| Tags | CPython 3.15 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
2d73551169f778ed09f92a3e1d1156eb71c47ef5a66286d4f87f78923e716638
|
|
BLAKE2b-256 checksum How to use checksums |
c0ace4b84534eaebc087089ca9ef3d1140c83e910697f3039084943363de5f1c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 833.9 kB |
| Tags | CPython 3.15 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
566b898a04c91a48de563a7c44527b62ee2d64bc8de7a6460b8452c0a7bf8d30
|
|
BLAKE2b-256 checksum How to use checksums |
cda95c4c473412a7230a43ebb98cf5a122062df63562b7c970f01a32ff068429
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 829.1 kB |
| Tags | CPython 3.15 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
b69ccedda1b704e780b970dff0f0be0504688d57a96a9829a0a1d62a31effa85
|
|
BLAKE2b-256 checksum How to use checksums |
63cadd47f9aef427804e6131cd65d3396d39a58d3d7c036ec5c7172660b0ab30
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 833.6 kB |
| Tags | CPython 3.15 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
564a61a6969fbbccada37eab4f9d3161e8c5536fd46636c26af0de2513a335d2
|
|
BLAKE2b-256 checksum How to use checksums |
0497c3dfa4ee6e35faa816cdffa1a0ac53e4dffc7bd4894dbc96d0aeaabe2c10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-macosx_11_0_arm64.whl |
|---|---|
| Size | 838.2 kB |
| Tags | CPython 3.15 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3ec15bfff873aa2cba276766d2c82fe1e3e936d6a7a8497f7afdce83cf45d89b
|
|
BLAKE2b-256 checksum How to use checksums |
5091835d274f6b7ccf36b1b80faccf2a69feee705ba24a65b57ac37a560e3dd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp315-cp315-macosx_10_15_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp315-cp315-macosx_10_15_x86_64.whl |
|---|---|
| Size | 821.1 kB |
| Tags | CPython 3.15 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
9c168c609cd40a1bf0a15c11b6dc6379e82124c18bdc3fc67f5de0d99edba8e4
|
|
BLAKE2b-256 checksum How to use checksums |
5722f4250945fa72b2edfe6aa1c955fdfda9a6388da0307ce87fc575d1acb172
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-win_arm64.whl |
|---|---|
| Size | 820.2 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Windows ARM64 |
|
SHA-256 checksum How to use checksums |
5acd80ec0cb11a189d3e04212b0d45d4dbe390cfb7befe90da75f90ba5185d25
|
|
BLAKE2b-256 checksum How to use checksums |
4b0a48fb0aa9d291f6685a0a2de1ce399142a624f2d192ede4a9753860aa217c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-win_amd64.whl |
|---|---|
| Size | 820.7 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Windows x86-64 |
|
SHA-256 checksum How to use checksums |
f7ce0b464bdb6e150a1ef37e33889fe9e81268f1f677e11287dea8ede613657f
|
|
BLAKE2b-256 checksum How to use checksums |
003b7c80bb35382bcb1350722657dc4a0566f8be1a865dcd0164bc253368a175
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 833.0 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
b3c1035df3cb2f3a787ec17b05b95b52fc88be5d2efb3c8c7e6865938084fdab
|
|
BLAKE2b-256 checksum How to use checksums |
6207725a4e29b9d196655403714df22dc28b7831b6929c15f39fe29c8edccc8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 837.3 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
8b60d6b7b21b3c9c5d136e898b954975b204665d9d8588788fa2f2705ae2b000
|
|
BLAKE2b-256 checksum How to use checksums |
f61b69a37579f4eb5510adbd41515b642415db6d8c8a91e52f24653a07cf2859
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 831.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
3b5c616d6e2b95d47909f1bce83845d353fdc0b213676b6ce1543c161d1c97da
|
|
BLAKE2b-256 checksum How to use checksums |
db51177f4beedfbcc56d2b5e04a324fd41d6075b1ed891b1c43f9c2ad8245924
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 837.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
ad14298a48ebf646b3fb5dac322ec4408c06daa08f90e8bd85e30e7206f4e774
|
|
BLAKE2b-256 checksum How to use checksums |
2cb004e7195ab6ac91bb8d3f52049839f15c1f21903772cf0b6258365c15a11e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-macosx_11_0_arm64.whl |
|---|---|
| Size | 841.3 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
aa4b7fe2ca8051e877eb44332d912fa3121c94659232d6511d6356b1300bddec
|
|
BLAKE2b-256 checksum How to use checksums |
536bd19245ad3517b5a4e04c21ec2c7cef17a881482189e633035783aa749961
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314t-macosx_10_15_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314t-macosx_10_15_x86_64.whl |
|---|---|
| Size | 822.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
39f560596bbdd7296e5eaef56f2d99bc71f9c7284973d8a9646dd01591673c1e
|
|
BLAKE2b-256 checksum How to use checksums |
5ea657c78e35a5b18f4da1a8bedce1af69779c0e994d92e2e94fc348810f3ffc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-win_arm64.whl |
|---|---|
| Size | 818.4 kB |
| Tags | CPython 3.14 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
4a80ae7f1903903b992b67f5ed79f16b34c50028ed2072cf4243bc95c78d10bc
|
|
BLAKE2b-256 checksum How to use checksums |
bf8263fca218ec957a0fdcceafcd6fc82f48a075b6414e81a454e737b2ed8d5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 819.0 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c702e8ee82b36ffebe09e95707e2ff17c81576955b17456a56f2bd734c74bc24
|
|
BLAKE2b-256 checksum How to use checksums |
f26c3ceb5ca428babe4f7bbbdb326f2a0cad7cd65d8a1f546d368d88333991c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 830.4 kB |
| Tags | CPython 3.14 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
d2db5d837167a4aa86a6989ca9c5ff312d31d0a6d3daec2a995fe34644507315
|
|
BLAKE2b-256 checksum How to use checksums |
b018e7f08c31b76d9a52bccff92c036d2610f9ffb267620f7455837f10ea4608
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 833.9 kB |
| Tags | CPython 3.14 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
55bda238dae59ddd89748caeac941ec11164b5a3734f929dd4c1e71b2e20e0af
|
|
BLAKE2b-256 checksum How to use checksums |
834fad41c411a201e839e2c8541d960d1f28a15cc1015337a832545c84c994a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 829.1 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
f40c685d8df0601bacc161b78a20722f6d2ba8fb16acd379527c2147ff90fc58
|
|
BLAKE2b-256 checksum How to use checksums |
0148850fbaf30ba6e3a529fa522bf78e33dc76b7de4b455fb79856418ed19a10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 833.6 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3085a593ef271298c306dd6e93f4bfcfd75cfc7a7920355f01f1aefc1e4c2302
|
|
BLAKE2b-256 checksum How to use checksums |
434a83948ffd2cb05efeea378f1e44402d14013a2e5b29f711881215bd4486ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 838.2 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
273abef5e0347809d7642abdafdcf3d9b0e7fb34c589ea6b3e9a68a0ac40674a
|
|
BLAKE2b-256 checksum How to use checksums |
c5ed9ad4105163e08b084fb2a8ee9d69aa808818add7bdf35e870aea1b4fc69f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 821.1 kB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
a9527299d067c3caa156a7145c28c39d9e8bac4de9dc2633b38523a0036540ce
|
|
BLAKE2b-256 checksum How to use checksums |
ad6792b280827141206d4c8911b3ce915fc88964ebe09f87b8a0d9331f8a8d97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-win_arm64.whl |
|---|---|
| Size | 818.9 kB |
| Tags | CPython 3.13 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
794e6aa8afef6b6cdec6ba1c27c1e465343cf610ef1b1e2f14be446be7fd2761
|
|
BLAKE2b-256 checksum How to use checksums |
dbc8412c0b415b42640b7e6948aab68d9ce58ab66b5bc819479745eef23ec994
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 819.5 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
3fb54aa5fe523bfe662868eeee8f7f7f517fb2dffc845fe2cb69b0e9b14d6c4a
|
|
BLAKE2b-256 checksum How to use checksums |
51da560f7e3b9cf5ea5d26cee0e2af2a8884fde15106a29a2a11417da959ce1b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 830.3 kB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
0e83786efdfb86f2cc234c3e2747408920235426b9fa832aeb962591056d5a3b
|
|
BLAKE2b-256 checksum How to use checksums |
ed0328e51fc1277fe550beac858b1eae40daa016eaa58fe2b7fe5be588b3b0f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 833.5 kB |
| Tags | CPython 3.13 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
065a8eb9a96249e63cc94c51c19291c980ce91a29302a61888d2af7a99896802
|
|
BLAKE2b-256 checksum How to use checksums |
66237125b2e25c93ea570ae1cf6fe9ac609669b63c137c2e74ea2d7b224a822a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 829.0 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
f980d8a2c3da80057f4bb73c1d9d9cc90feea29d27e0b0c20776cdeefe197512
|
|
BLAKE2b-256 checksum How to use checksums |
bf6270a159ff034d0a7d8a264179a0f4f71aa0128504ef8329ef7d78c6bfe6b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 833.4 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
50dcd3475284cd423f7e49f1a331e36b0767c86a6b2198b6a6ad326f55a31954
|
|
BLAKE2b-256 checksum How to use checksums |
73dcb36ae39d1dcb02e729548493ed4dca2beaa223cc13565495aed0e8568f8f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 838.2 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4119f3e8e3b786095a1e01a10f1b145a827b67ffe9b4b92787a5b01d50ebf0e1
|
|
BLAKE2b-256 checksum How to use checksums |
ca843af9d85f4cb2e12a0b1e6829920d86cee2412c4718d5888c1b99b80e7ca3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 820.9 kB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
d279840e69c70099e5348c391c76b68e99b72d9e3e5a076d79820f27bfe91241
|
|
BLAKE2b-256 checksum How to use checksums |
d96f15242d8bed0fe4364acb7cb1e43aead6a3a2f9cb53784ad260f85e5a6547
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-win_arm64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-win_arm64.whl |
|---|---|
| Size | 819.0 kB |
| Tags | CPython 3.12 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
6e01599daab44aba2bba67a0032a39eeabfce5b944b2e65f3be281976641abd6
|
|
BLAKE2b-256 checksum How to use checksums |
b217918cec90266623dbd8648dfdc6d7ca19d14d644751030b4b1b4150f38828
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-win_amd64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 819.5 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
17be40d3c807bd90643eacf1b4ce41faaabf7fc54087d0e5dbc6f6f829f16128
|
|
BLAKE2b-256 checksum How to use checksums |
9ec8883b46d2f45165fbb2d3cc3362ae57d1bc510ba9751c1361f17799ffcfff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 830.1 kB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
d20742e0b7ea01d23b23e3a8b2e028eb5f238d8ac5e5d206b1b62f519742a9e7
|
|
BLAKE2b-256 checksum How to use checksums |
7cbe6b4d58792c08185af8f60b5da1a802c95c94c62d77ee3c388534b9966bcb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 833.1 kB |
| Tags | CPython 3.12 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
38a5c9957f8055b12f5f6c452127e5fedb60114e86041e99174c98e0ebcb4f4a
|
|
BLAKE2b-256 checksum How to use checksums |
c834709551c79a46dd02893ca52bdf3cc96bffe1499e3bf2401cc0d022cb3b89
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 828.9 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
40382d3b6204d22f33bc7e805ac0ae257a0d139055a167ca438241488d6d1898
|
|
BLAKE2b-256 checksum How to use checksums |
a81ac8545fb30b7eaa3fdc9fb37ef236e4c4ffe9cd1cc34c43532964d25791cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 833.2 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
62e04c213e8423c2413fc9da60e696faaa398b782b3a54ccb59d98f07f8ab996
|
|
BLAKE2b-256 checksum How to use checksums |
6806ad2712ad80dbbe8fc4e92ac69af41310b28642f764f386632e8959b36a6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 823.7 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e3ef21692f73f9b43c715624ec120edbad67ab58d1d860900db1f89fb0b9b687
|
|
BLAKE2b-256 checksum How to use checksums |
af4f1c189fbdeb9d0a0bb1a9e116ac33651dd1ccfda4f09cc5b932fd628c4dc9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logRelease files / modelly_abm-1.3.1-cp312-cp312-macosx_10_13_x86_64.whl
| Download URL | modelly_abm-1.3.1-cp312-cp312-macosx_10_13_x86_64.whl |
|---|---|
| Size | 822.3 kB |
| Tags | CPython 3.12 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
51219f1101de2fff7dc280e0557aecd119e036fd1379a81de6fa36305598f23e
|
|
BLAKE2b-256 checksum How to use checksums |
57094915316d3f55ec60b6e9478b458c34ac4612baca64a72a9054c95f448734
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 24, 2026.
Transparency logSecurity for modelly-abm 1.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 50 files in this release have been uploaded with provenance metadata.
Attestation for modelly_abm-1.3.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.