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.1.tar.gz (837.8 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.1-cp314-cp314-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.14Windows x86-64

yara_orm-1.14.1-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.1-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.1-cp314-cp314-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13Windows x86-64

yara_orm-1.14.1-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.1-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.1-cp313-cp313-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

yara_orm-1.14.1-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.1-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.1-cp312-cp312-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

yara_orm-1.14.1-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.1-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.1-cp311-cp311-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

yara_orm-1.14.1-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.1-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.1-cp310-cp310-macosx_11_0_arm64.whl (5.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

yara_orm-1.14.1-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.1-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.1-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.1.tar.gz.

File metadata

  • Download URL: yara_orm-1.14.1.tar.gz
  • Upload date:
  • Size: 837.8 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.1.tar.gz
Algorithm Hash digest
SHA256 fc07bf02e6c76c9c0cae9878e8fd09a63b9c07f22d10f67c7a23480a0c910594
MD5 9ce286e5b262f612ffc8c4557a4fe15f
BLAKE2b-256 4ec27f225807a7906c211baef4a16c7779c7b6e21cfa8957c9be2007386a77b0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ba19ad1aa8db4f0fcce0bb0c536de5de4fea6512a0309d226b5d2fe442f98d22
MD5 3adebbe56406a24e56177a6ef6d63b2c
BLAKE2b-256 2bc0e3b0439228e7e682d1c153c09c76eb945ac6598ce552b92bc00bed50b7d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 433de9e014ef6ac5fbe124bf1a9b0622f3dad1edfd73a57d3bd873a8c98ab325
MD5 f482602e45693ea570e6ad4d18b1ff2b
BLAKE2b-256 d38a967c1c4156cec758cb8564f896b94ad304d1b8d3110d2dd7babd2dc0873e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a1517ed27622a38dca6720e5959b49eeb9b89fcee78762dc7ae3624abec49af8
MD5 39891e60fe9eda84d32d56ad8189346f
BLAKE2b-256 36a13efd435eb19a0c827e4aaa56973dc1ca62964230e0bbcb789a5a5a5457ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 14bb0a0f8f7d84e6b63d0068f2d4588885fe978ddec9235cf4b125e6c4aa0c43
MD5 f73d5451623895733b736bcdd23af5f7
BLAKE2b-256 f77b03d1aae6c8144e417ded60c5bfebe5c32bc96fe3b42498f2665b17c7311a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 418e1a85762a32f55ccffaa46af908b85501811c12f182d83d4627dffa277773
MD5 ec16df72a1be6123376c2ded3936d2f7
BLAKE2b-256 17f0e0bc1d93af954fe080f49120a2c6e2fba8755d5773a4d62444357b0b8ca1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1cb5848666f8eb977ebbfb76e70b9bd660bb197288f02df5868b063ead9c544b
MD5 4bffb5ca16ef7ba7782efd0496dcbd22
BLAKE2b-256 adf728a5aed0eae78ec4ba8a5a271aea8bde30bc8d14afe0e346c47fbbab81a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6f0dbe93e63087ad494663d13b5f2464e5cf6aaf5a937ac6163b0cf7a1ff5d46
MD5 8313764471a8469ae3bb5a1f9046f66f
BLAKE2b-256 4c1fbe07e67f46041718a2f9aed141a335d3845cbc9115dc196c78466b515a8c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa1b57813bdf9125809b754b2a1a4d8343b5dcb5c51749eb51fb7e7a20f01439
MD5 259815424bbf80a54c48edc42688a31e
BLAKE2b-256 16d5a535dafc9d99ad52a0d56a43c184ac1ea1cdecf5803ec6713fb44fb0c1f8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 302035184cd8d2577b4a2d1da4974bf6f112f4c82dfb4e2ef2703c167909c57c
MD5 0bdf3b029d1658be45599403e0242d1a
BLAKE2b-256 2c775120480c404d3e1369c1488bbe60d8d00e2ea045fc067ab2be7e9bda4f40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9c3229b31266eb6749e719803f149417efbb504117a2bbf10d0a2994ab24422
MD5 559c88d4f144e0dec24772cd4f18d1e3
BLAKE2b-256 85712a49be063b675cf73b4477b293dc5fcef359595bde9ea3eca1b1422e8b4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1aba8f1859bd37dee39d5dd39b824c3985230bd5bd9b226b3c664b960c39aca2
MD5 dd157bebee41e5bf3753051dd8b6a10a
BLAKE2b-256 9651150c2e2524483a5ef0800a73cada4a707ed955b9b527c876786707c941f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9172221a14c4f59c8102d9e8b7c72017e7f90f45fc0c32b3430709e00bd55699
MD5 5f292e6828dcb5d6caaae8e8faa374d9
BLAKE2b-256 38875a4ee6052ef6b5f0905fa880384cc81018b5dc03adba086b6d1dd2eecb73

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 098f1453c0532e07ba5760d1772620374e7d3ae15c8d6d7058e355a6a00ae3e5
MD5 dedd3d0515933edccf8e935eacf8e2f2
BLAKE2b-256 d59fbc7fc95d03043988b2e6cc04af37177f247d85b4deb616c463345895385f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d62075ad02e9fdd646b91a38701d1b625152b03c1b6d80268bc4ef7257ecfd3
MD5 04315c5cc890021adef34999d2d0e54e
BLAKE2b-256 f034c99101b7dc3b91f6ea7dfd9d84f0530a880cfb0cc91ffb40ce99d2bfa4cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 125194f2092d55eec1e6cb12ca22bcd2c10f9aa4e2673135c9d7994c8c1debfc
MD5 e697905d547a2b03f1bc67b239678b58
BLAKE2b-256 398f33e7fe9a20c5a1d1d244a73ad9af0e0951bf51d15a034537955dd53b5e6f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98b95dce7a64941bb54e69e71589365ec5967b92ffca97f78e4edcc56e4bfb48
MD5 44172e5e315fd9ad84625985c4183f22
BLAKE2b-256 941fb984edde24897c089d6c48988d07ec0aaf4f16a95e680a7213d8420e9c56

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0a5b1090d890d47bcb6e767cf5fa4e86ff95ed8ae35900f3e14d904dd9abbd82
MD5 fa721b1b9f6675934b375043700520cf
BLAKE2b-256 418790a5719467f1dc1a741783781bca80c880db74ceb506fd5977827c07c30a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 443e3a2ec674f1de5c46b04a598ac63371398d71d88ec7d26fad2b15f4fcc1fc
MD5 317698e9427441267322db0758aeed0b
BLAKE2b-256 3776510cdd2c321bbc716546edd326f44aaa59314c66b033b6ac99de06a37b7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 71907aa8b9ce5564523902980d64977ff7a5f2e02bfbd29d7d14c14b1a085a05
MD5 dd66ec559307939fefbd7c12c8aaf19b
BLAKE2b-256 ab92d4f4ed1ad6c9d34c254bc8c7c3ae7ce9a921788e325799a23e8e52c1e90e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7758c080119e714caf4d5cb785320f3a608f2ba5050ab883f18b972619f52006
MD5 a3e7a4171232d6611bce9f8acc6fe342
BLAKE2b-256 853e8702554d2f9712fc9e4c8b85eaf62e00b5ec2fa65cd0df0de79948e4f4af

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.14.1-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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 447a896df94f14128471db87381ad002338c7d160c8af153c57ef98d9c55fb79
MD5 927058e034962f57e3fddc74ba44d762
BLAKE2b-256 053abeec1172376c7fef6cd4411d781eb05cd16a8a06c9378d89d413e4ffc517

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6b120d018f6e88147672f64db0c27207481e0d719b06ff429a9a4b35662b7015
MD5 4ef9ba37b12e73abc58fdcf6d2302178
BLAKE2b-256 76d9e46671e3c431d146499ab80bbbbd574b25beae94d5d38805decdea37e929

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a7fe9c245ba22e124156e9b72dc645872c6d17c1851fe0b9d6b4daaf47362687
MD5 31d134f4034a231c56083463e9f200db
BLAKE2b-256 0e0477c11b37584f9106e7f66374abe3768ae62307d4dad366686e9b99d6e886

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.14.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bda6e02fb1873f50b84ae55af0f796228a1c27ffd9f8b95b219a9dac9eed28e0
MD5 42c216022d6fc6411142255359017f1b
BLAKE2b-256 f812633493d05c107af5bd6813c31411dadabc827a34d835454eb9245b8a1e45

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