Skip to main content

Yara ORM

A fast, async Python ORM with a Rust engine — Tortoise-style models, querysets, relations and migrations for PostgreSQL, MySQL, MariaDB, SQLite, Oracle and Microsoft SQL Server.

CI PyPI Python Coverage Docs License: MIT Sponsor

📖 Documentation: vsdudakov.github.io/yara-orm

✍️ Deep dive: How the GIL, PyO3 & asyncio cooperate — how the Rust engine bridges Python's event loop without the GIL collapsing it.

Yara ORM is a high-performance async ORM for Python that pairs the ergonomics of a Django/Tortoise-style API — models, querysets, relations, aggregation and migrations — with a hot path (connection pooling, parameter binding, row decoding) written in compiled Rust (PyO3 + tokio). It is a drop-in-feel alternative to Tortoise ORM and async SQLAlchemy: 2–9× faster than popular pure-Python ORMs on common operations, with first-class PostgreSQL, MySQL, MariaDB and SQLite backends — plus Oracle and Microsoft SQL Server (both beta) — full type hints, and 100% test coverage.

from yara_orm import Model, YaraOrm, fields

class User(Model):
    id = fields.IntField(pk=True)
    name = fields.CharField(max_length=120)

await YaraOrm.init("postgres://localhost/app")
await YaraOrm.generate_schemas()
await User.create(name="Ada")
print(await User.filter(name__icontains="ad").count())

Highlights

  • Rust engine — pooling, binding and decoding in compiled code; the async bridge (PyO3 + tokio) keeps your event loop free.
  • 🧩 Familiar API — Tortoise/Django-style models, lazy chainable querysets, Q objects, aggregation, prefetch_related, transactions, signals. Coming from Tortoise? Most code moves across unchanged — see Migrating from Tortoise ORM.
  • 🗄️ Pluggable backends — PostgreSQL, MySQL/MariaDB and SQLite, plus beta Oracle and Microsoft SQL Server backends, selected by URL; a new database is one Rust trait + one Python dialect.
  • 🚚 Migrations — operation-based, auto-generated, backend-portable (makemigrations / upgrade / downgrade).
  • 🧪 Quality — fully typed, linted (ruff + ty) and 100% test coverage.

Installation

pip install yara-orm

Prebuilt wheels are published for Linux, macOS and Windows on CPython 3.9–3.14, so installation needs no Rust toolchain. (Installing the source distribution on an unsupported platform compiles the engine and requires a Rust toolchain — see Development.)

Quick start

import asyncio
from yara_orm import Model, YaraOrm, fields


class Tournament(Model):
    id = fields.IntField(pk=True)
    name = fields.CharField(max_length=100)
    created_at = fields.DatetimeField(auto_now_add=True)


class Event(Model):
    id = fields.IntField(pk=True)
    name = fields.CharField(max_length=100, index=True)
    tournament = fields.ForeignKeyField("Tournament", related_name="events")


async def main() -> None:
    await YaraOrm.init("postgres://localhost/app")   # or "mysql://…", "sqlite:///app.db"
    await YaraOrm.generate_schemas()

    cup = await Tournament.create(name="World Cup")
    await Event.create(name="Final", tournament=cup)

    # Lazy, chainable queries
    finals = await Event.filter(name__icontains="fin").order_by("-id")
    count = await Event.filter(tournament=cup).count()

    # Relations
    async for event in cup.events:
        print(event.name, "→", (await event.tournament).name)

    await YaraOrm.close()


asyncio.run(main())

Querying

# Lookups: exact, not, gt/gte/lt/lte, in, isnull, contains/icontains,
# startswith/endswith (+ case-insensitive `i` variants)
await User.filter(age__gte=18, name__icontains="a").order_by("-age").limit(10)

# Complex boolean filters with Q
from yara_orm import Q
await User.filter(Q(name="Ada") | Q(age__lt=30)).exclude(active=False)

# Aggregation + group by
from yara_orm import Count, Sum
await Author.annotate(books=Count("books")).filter(books__gte=1)
await Book.annotate(total=Sum("rating")).group_by("author_id").values("author_id", "total")

# Construction-free projections
await User.all().values("id", "name")
await User.all().values_list("name", flat=True)

Model methods: create, bulk_create, get, get_or_none, filter, exclude, all, annotate, prefetch_related, raw; instances save, delete, fetch_related.

Relations

class Author(Model):
    name = fields.CharField(max_length=100)

class Book(Model):
    title = fields.CharField(max_length=200)
    author = fields.ForeignKeyField("Author", related_name="books")
    tags = fields.ManyToManyField("Tag", related_name="books")

book = await Book.create(title="Compilers", author=author)
await book.tags.add(tag1, tag2)        # m2m add / remove / clear

await book.author                       # forward FK (awaitable)
async for b in author.books: ...        # reverse manager
await Author.all().prefetch_related("books")   # no N+1

ForeignKeyField, OneToOneField, ManyToManyField, recursive self-FK, related_name, Prefetch(rel, queryset=...).

Transactions, signals & more

from yara_orm import in_transaction, atomic, pre_save, connections

async with in_transaction():            # commit on success, rollback on error
    await Account.create(name="A")
    async with in_transaction():        # nesting opens a savepoint
        await Account.create(name="B")  # rolls back independently on error

@atomic(isolation="SERIALIZABLE")       # isolation levels (PostgreSQL/MySQL)
async def transfer(): ...

@pre_save(User)                          # lifecycle signals
async def on_save(sender, instance, using_db, update_fields): ...

await connections.get("default").execute("INSERT ...", [..])   # manual SQL

Also: enum fields (IntEnumField/CharEnumField), column/table comments (description=, Meta.table_description), and multi-database routing via a Router over multiple named connections.

Backends

Backends are selected by the connection URL; the abstraction is a single Rust trait (Backend) plus a Python BaseDialect subclass:

await YaraOrm.init("postgres://user@localhost/db")     # PostgreSQL (tokio-postgres)
await YaraOrm.init("mysql://user:pass@localhost/db")   # MySQL/MariaDB (mysql_async)
await YaraOrm.init("sqlite:///path/to/app.db")          # SQLite (rusqlite)
await YaraOrm.init("oracle://user:pass@localhost:1521/FREEPDB1")  # Oracle 23ai — beta (oracle-rs)
await YaraOrm.init("mssql://user:pass@localhost:1433/db")  # SQL Server 2017+ — beta (tiberius)

The SQLite backend maps rich types (uuid/json/datetime/decimal) onto SQLite's storage classes and reconstructs them on read from the declared column type, so the model layer is identical across backends.

Oracle and Microsoft SQL Server (both beta) ride on the same model/queryset API — both on pure-Rust drivers (oracle-rs TNS and tiberius TDS, no OCI/ODBC/Instant Client, so the wheels stay self-contained). The shared cross-backend suite runs against a live SQL Server 2022 and Oracle 23ai in CI. See the backends guide for their type maps and the driver caveats that keep them out of the stable tier.

Migrations

A Django/Tortoise-style, operation-based migration system. Migrations are auto-generated from model changes and backend-portable — the same operations render to PostgreSQL, MySQL, SQLite, Oracle or SQL Server DDL at apply time. Applied migrations are tracked in an orm_migrations table.

# autodetect model changes -> migrations/0001_initial.py
python -m yara_orm --models myapp.models makemigrations --name initial

# preview SQL without running it (per the target dialect)
python -m yara_orm --db sqlite:///app.db --models myapp.models sqlmigrate 0001_initial

# apply / revert / inspect
python -m yara_orm --db postgres://localhost/app --models myapp.models upgrade
python -m yara_orm --db postgres://localhost/app --models myapp.models downgrade
python -m yara_orm --db postgres://localhost/app --models myapp.models history

Each migration is a class Migration(m.Migration) whose operations are built from live field objects: CreateModel, DeleteModel, AddField, RemoveField, AlterField, AddIndex, RemoveIndex, plus hand-written renames (RenameModel / RenameField / RenameIndex), constraints (AddConstraint / RemoveConstraint / RenameConstraint with UniqueConstraint / CheckConstraint) and RunSQL / RunPython for data migrations. makemigrations emits the idempotent analogs (CreateModelIfNotExists, AddFieldIfNotExists, …) and detects AlterField automatically. The same commands are available programmatically via yara_orm.MigrationManager.

Performance

Median of 5 runs, Python 3.12, 5000 rows, against eight other Python ORMs (Tortoise, SQLAlchemy, Pony, Django, Peewee, SQLObject, Ormar, Piccolo) — Yara ORM is fastest or tied on every operation across PostgreSQL, MySQL, MariaDB and SQLite, losing only to leaner in-process sync ORMs on single-row point reads. Times in ms, lower is better. Full methodology, speedup tables and per-op notes in benchmarks/ and the performance docs.

PostgreSQL 18

Yara ORM vs eight Python ORMs on PostgreSQL — latency per operation, log scale, lower is better

operation yara-orm tortoise sqlalchemy pony django peewee sqlobject ormar piccolo
bulk_insert 14.7 24.2 78.0 222.8 40.6 51.7 526.3 229.8 99.2
single_insert 34.4 80.7 153.1 61.8 40.5 47.1 53.5 167.4 89.5
fetch_all 3.6 17.0 29.4 34.5 9.1 11.9 26.6 56.7 4.3
count 0.3 0.6 1.0 0.4 0.4 0.3 0.3 5.4 0.4
group_by 0.7 1.0 1.6 2.4 1.0 0.8 0.6 - 1.0
filter 2.3 9.1 8.1 17.9 5.3 6.7 9.1 42.2 2.6
get_by_pk 65.1 196.3 292.6 85.3 115.7 114.1 23.8 333.1 196.1
update 3.3 3.6 4.0 120.8 3.4 3.4 3.3 15.0 3.5
delete 0.7 0.8 1.1 94.3 0.8 0.7 0.6 2.4 0.8

MySQL 8.4

Same workload against MySQL (Tortoise over asyncmy, SQLAlchemy/Ormar over aiomysql, the sync ORMs over pymysql; Piccolo has no MySQL backend):

Yara ORM vs seven Python ORMs on MySQL — latency per operation, log scale, lower is better

operation yara-orm tortoise sqlalchemy pony django peewee sqlobject ormar
bulk_insert 49.8 50.9 600.9 443.8 89.2 88.7 1185.8 221.7
single_insert 605.4 816.9 1058.2 904.5 848.3 795.2 875.4 1183.9
fetch_all 5.6 33.4 44.2 48.4 29.0 28.0 43.8 73.3
count 0.5 0.9 1.2 0.8 1.0 1.0 0.8 4.6
group_by 1.2 1.4 2.0 2.5 1.5 1.2 1.0 -
filter 3.3 17.4 15.8 25.3 15.6 14.8 17.1 30.5
get_by_pk 128.3 226.7 524.1 312.5 211.7 206.2 65.8 925.0
update 7.0 7.4 8.2 236.3 7.2 10.1 6.9 8.8
delete 5.2 4.8 5.4 210.0 6.4 5.0 5.1 7.2

(single_insert ~0.6–1.2 s is dominated by InnoDB's per-commit fsync — every ORM pays it; get_by_pk and single_insert include the Docker-network round trip.)

MariaDB 11

Every competitor connects through its MySQL driver; yara-orm auto-detects MariaDB and uses its RETURNING dialect. Piccolo has no MySQL backend:

Yara ORM vs seven Python ORMs on MariaDB — latency per operation, log scale, lower is better

operation yara-orm tortoise sqlalchemy pony django peewee sqlobject ormar
bulk_insert 30.5 41.5 99.0 455.0 87.7 59.5 1257.2 191.2
single_insert 392.8 304.8 430.8 329.6 343.6 367.3 359.8 555.3
fetch_all 5.5 34.0 42.5 47.9 28.4 30.4 44.9 72.8
count 0.5 0.8 1.2 0.7 0.7 0.8 0.7 4.7
group_by 1.3 1.3 2.1 2.2 1.5 1.1 0.9 -
filter 3.2 17.8 16.0 24.5 15.5 14.7 16.9 31.9
get_by_pk 123.3 228.7 534.1 310.7 214.5 206.0 66.0 916.1
update 3.8 3.3 6.5 265.9 4.3 4.3 4.2 7.6
delete 3.2 3.2 3.3 249.9 3.3 3.0 2.9 3.6

(MariaDB's single_insert ~390 ms is markedly faster than MySQL 8's — a lighter default commit path.)

SQLite

Yara ORM vs eight Python ORMs on SQLite — latency per operation, log scale, lower is better

operation yara-orm tortoise sqlalchemy pony django peewee sqlobject ormar piccolo
bulk_insert 7.9 14.4 612.7 51.0 58.1 30.7 223.1 158.0 78.8
single_insert 32.6 29.3 240.0 128.3 139.0 114.7 139.9 323.2 259.1
fetch_all 3.4 39.7 28.8 51.0 16.3 12.5 44.9 54.8 9.1
count 0.1 0.3 0.7 0.2 0.2 0.1 0.1 1.7 0.5
group_by 0.5 0.8 1.4 1.5 0.9 0.7 0.5 - 1.0
filter 2.0 20.5 7.7 26.2 8.5 6.7 17.3 19.6 5.1
get_by_pk 47.4 87.5 330.9 30.7 83.6 77.7 13.3 501.8 359.5
update 0.6 0.5 1.8 43.1 1.3 1.2 1.2 1.6 1.4
delete 0.4 0.4 1.2 36.3 0.9 0.7 0.8 1.3 1.2

Yara ORM wins everything throughput-shaped (fetch_all 2.7–16×, filter 2.5–13×, bulk_insert 1.8–77×) and trails only the latency-bound point reads, where the per-statement asyncio bridge costs tens of µs against in-process sync ORMs (SQLObject and Pony on get_by_pk) — the opt-in sqlite://...?sync_fast_path=1 URL flag removes that bridge entirely (point queries ~7× faster).

Speed comes from the Rust hot path, positional row decoding (no per-row dict or column-name allocation), compiled-SQL + prepared-statement caching, and connection pooling (see Performance). Run it yourself with make bench / make bench-mysql / make bench-sqlite.

Architecture

┌─────────────────────────────────────────────┐
│ Python  (python/yara_orm) ................. │
│   Model / metaclass ....... schema + ORM API│
│   QuerySet ................ lazy SQL builder│
│   fields .................... abstract types│
│   dialects ................ per-DB SQL rules│
└───────────────┬─────────────────────────────┘
                │  sql + params  (PyO3 / asyncio bridge)
┌───────────────▼─────────────────────────────┐
│ Rust  (rust/src)  →  yara_orm._engine ..... │
│   Engine ...................... async facade│
│   Backend trait .............. pluggable DBs│
│     PgBackend ............... tokio-postgres│
│     MySqlBackend ................ mysql_async│
│     SqliteBackend ................. rusqlite│
│     OracleBackend ............... oracle-rs│
│     MsSqlBackend .................. tiberius│
│   Value .................. Py⇆Rust⇆SQL types│
└─────────────────────────────────────────────┘
  • Rust owns pooling (deadpool), binding, type conversion and decoding.
  • Python owns the model layer and SQL generation.
  • Adding a database = a new Backend impl + scheme match in rust/src/backend/mod.rs, plus a BaseDialect subclass in python/yara_orm/dialects.py. The model layer never changes.

Development

git clone https://github.com/vsdudakov/yara-orm
cd yara-orm
make dev        # create .venv313 and install dev tools (maturin, ruff, ty, pytest)
make build      # compile the Rust engine into the venv (maturin develop)
make lint       # ruff check + ruff format --check + ty
make test       # pytest against $DB (default postgres://localhost/orm_demo)
make cov        # tests with the 100% coverage gate
make bench      # cross-ORM benchmark (needs `make bench-setup` once; Python ≤ 3.12 for Pony)
make bench-mysql   # same comparison on MySQL
make bench-sqlite  # same comparison on SQLite

Requires a Rust toolchain (rustup), a local PostgreSQL for the Postgres tests and a local MySQL for the MySQL tests; the SQLite tests are self-contained.

Contributing

Issues and pull requests are welcome. Please run make lint and make cov (both must be green — lint clean and 100% coverage) before opening a PR.

Sponsor

Yara ORM is MIT-licensed and developed in the open. If it saves your project time — or you'd like to support continued work on the Rust engine, backends and docs — please consider sponsoring on GitHub. Every bit helps and is hugely appreciated. ❤️

License

MIT © Yara ORM contributors

Download files

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

Source Distribution

yara_orm-1.14.0.tar.gz (835.1 kB view details)

Uploaded Source

Built Distributions

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

yara_orm-1.14.0-cp314-cp314-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.14Windows x86-64

yara_orm-1.14.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp314-cp314-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

yara_orm-1.14.0-cp313-cp313-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.13Windows x86-64

yara_orm-1.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp313-cp313-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

yara_orm-1.14.0-cp312-cp312-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.12Windows x86-64

yara_orm-1.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp312-cp312-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

yara_orm-1.14.0-cp311-cp311-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.11Windows x86-64

yara_orm-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp311-cp311-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

yara_orm-1.14.0-cp310-cp310-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.10Windows x86-64

yara_orm-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp310-cp310-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

yara_orm-1.14.0-cp39-cp39-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.9Windows x86-64

yara_orm-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

yara_orm-1.14.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

yara_orm-1.14.0-cp39-cp39-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file yara_orm-1.14.0.tar.gz.

File metadata

  • Download URL: yara_orm-1.14.0.tar.gz
  • Upload date:
  • Size: 835.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0.tar.gz
Algorithm Hash digest
SHA256 e4853a7f8860ae892d951de752766bdb3892a456fa54c17b0b99c398952acddf
MD5 62caafc519a2d6d4e7085df4ea590ce8
BLAKE2b-256 de2884087d68b0e6e7425acc2ebbbbd885e3eaea60c5df799b5d1d866494fb6e

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 5de5899babcc0f6696eb1e4cedac6e65cc6396119b16d8c9ec1e19f3fc118257
MD5 3aeff821cb6b7186930aa4a8c73a7cec
BLAKE2b-256 a573fc355f14813cf0a5a73963f6e0d0bdb5192b67dec2cee88c42360ffac75d

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e62a30e754230fa2ba7f5b8d9fc559d6e4ef84be2457c68a63d0c743b550368c
MD5 14a781f8244b6c04768ffdf86b1b7f96
BLAKE2b-256 a8d2e2f4eda78584909d09845d6ad74701b0d8028ee3e33326e7be6f7db5ab34

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2df3cd90ab57a31f7abc3744723bc7d3955e24763a91a5b2ffe81d283fb5388c
MD5 d856955a33c39a0f749e627d520f8bde
BLAKE2b-256 7f6b9c8070dcc55913b4ed82cef581a252b38cba82dc3b5381515719ef28d596

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6dcd13ca109f75594bb2804b74efc39bf2af48c153b504b089985d06863856cc
MD5 688b7cad501ba048683940b55d60dd3c
BLAKE2b-256 ee5eb3c336179e78d055c4b1dfb2be4f00d204f2aa488ebe3f7290ee7956ae02

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 dc170a0c819dc023e022f66a837903fb8071d97b0db51eeafecbb713aa00fc91
MD5 e473d04d9510576c8039ab3c7031bdfb
BLAKE2b-256 05a9874b002fb69c752ff94b6343c8d95686e5615ed1f6a570194b7e3eba0231

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 63c6fe32a5009244e432faa55b1ec70554326c637707348deadf6986e647c916
MD5 f49661240ed9517bb34a6de1e6f6b116
BLAKE2b-256 6257e3558b9eeb56882884871f07bef1440e299bed3bbca6cdca93411898086f

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 47c57267e02d5000dbe2b804c1a06471e387c31f2c2ea043115a0f9482ffa922
MD5 4814cba76db64a864e653355bab84d74
BLAKE2b-256 6961d87bbcefd02103af918239c6271269f652451c26a69cc0139e907a86a619

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 746ece922c921c3c9a08d852f5bc6b7ce0299f860e87579edb769ea2ff55a94d
MD5 cad174f86af6bb2a2649d4e4d370dd50
BLAKE2b-256 f9030e238c384918709351eb66b3483431aa9da8fa7344fa3ec5e3c17e37e120

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7253311015447c1c042df50e226e01344573bae8550d1dd3426a0b4c1e6dd0ce
MD5 c245614d82488376a7295c52e7c1a1ae
BLAKE2b-256 985dda55440597326edee11c36138f051766a0e1976225c6e1f9b78995025fdf

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 638d10c12f4e8153ef835533cc4590fb77a36d01bcf956b912ac9b885b7e16a8
MD5 ba93230bd7bfaedab1e35d38d0c76723
BLAKE2b-256 6263f564669a41d53f1072bc9975e584780958f351ab26ae3e46c12eff99b9a4

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f9f0b44718f3e1885be2bae1310fe41adb490cdcc3e9213c96431c2a640ccc85
MD5 6c8823ba129d4d6027d2844bd8fcfbc7
BLAKE2b-256 ef09cb19c2f08b6c1b201f8561480f6e534d0faa5528ecba2ddd545d23f08377

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c7ae40fd15a742a2543741368139e455ebddb422fad56af170c40ceae97c071b
MD5 2e54192dc728088ea7e860cd6535d61f
BLAKE2b-256 4e7ea789f7296aef6cbb225548055f089f8281ba7374aebdd54a09125d058c18

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 14b423ab7fc91de0bbbce822a8c16316c96ca4ef5323dd0473ad6fe12bcd0547
MD5 9aabfcc7eb7784b701a72135bc377abf
BLAKE2b-256 5a57ece65f4c43b8a94123db76abecfa9f4f77d562e7513b1c815663be49d530

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 37d32a9d267d24fb7fb206552e8a18c9609d7ce601e27a01fb884fe1c2d35dbb
MD5 f437d53fb3d19708742991b9e99c140e
BLAKE2b-256 babe714bd92a55ed8b0a918562d865929adc0eed56f6c97e43d7c8108cdaf2ae

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3e0e2d7ce05d1a599f319c55eae1784203a6364c5ab589bcd1b6211a4aa2be2d
MD5 b5b9812a6a85fb726fa742197e69936c
BLAKE2b-256 1fcb4fbf3b9a7f6df1dc698f6ad5fa66b658bc7db13aaae5bb55f9494059e57e

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3be05539db8de3ff2a8c6e747b3d11e132237de5797d6c4980ca3bbf49118275
MD5 372fef2d0f4fc6d3801dc6dd71c57a4f
BLAKE2b-256 c0aefbb7f2c716f36b175c7ba42f6a1f6415583a2b9e52b2ba08b9b4245d8a37

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 517ce7336d33ee15b419d5cc899bfa0ebeb217c3ad1ca6aebe6c5b8784c75416
MD5 7477015e5bca71105831fd9aec2bcbc2
BLAKE2b-256 2d1567ee9e1529cb06d2e97520fad4c4a87d50c8d6ed54b586dad6a2e387145e

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 054dc2a3e06316f4f3b46a3b7367049c7fe84cd37197eff9b5317ba380160699
MD5 5375e8eaaa28521854e86f52ffbec2e2
BLAKE2b-256 ab5dfcce38580c44f50608298865773555af86d014d274478b9aee0b85a501ec

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c25312da29cb897dae2347647d6b9c1c93964d6cbac909d4ba14251f26869dbf
MD5 365ac0490d8902fe85f8244d6f11365e
BLAKE2b-256 e90d0da23572a9664d6640fbf3ac8e489cc96c2344d77344d646bf2c939f3941

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c89937c009c0f01b5b6f7f67b8710b49d0d841c6fe30feb0c63f2605a44898df
MD5 be61f8f81a137d89ea02e13b77b6efea
BLAKE2b-256 faee54d8c7602fcb34fd980d6820907eb3a2e665da212827ec906d5e484812bc

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: yara_orm-1.14.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for yara_orm-1.14.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 12053f5b54bbcbb0d8d15b6f71bcf17cf7a2ea60a5301f3ba22fdbc931d7a1ed
MD5 083c614dd912135b4c7c7c79ffe4f080
BLAKE2b-256 825f7f756e9981bdd825d7340a5b9d77aeefda5f0e2a9b8ee37bff659973a880

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 54114810216dd1f21fa5594d4f3a5dd3a65259f696dbcfc24eeb79231a66b4c6
MD5 9511c916d6cace43afc0b57fab920d68
BLAKE2b-256 1d86c21bc76af00c6fffcc50f279165e6448ea4de6ab283bb01c3cbbbe151bce

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bab806a5acf8d6c4bfd907583941fb5241986c3a03f95b1de39b9abde57aa08d
MD5 35beace995104dd5dd77292d76946d42
BLAKE2b-256 6047280693b4bcef4019c89435e2cb1995e7beb3546c7b17f6dd22e6548cefac

See more details on using hashes here.

File details

Details for the file yara_orm-1.14.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for yara_orm-1.14.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 512569eb59f9546505e59120da58045079667d8b13752c3b263a3518fbdb161e
MD5 89af4e9ca8e32753a9b3d66a8b4c9592
BLAKE2b-256 0e03f055b1b233fdb5303fd340de57f806a3cc7d260929b7090510c8f544ee28

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page