Skip to main content

Fast async Python ORM with a Rust engine — Tortoise-style models, querysets, relations and migrations for PostgreSQL and SQLite

Project description

Yara ORM

A fast, async Python ORM with a Rust engine — Tortoise-style models, querysets, relations and migrations for PostgreSQL and SQLite.

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 and SQLite backends, 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 and SQLite today, 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 "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)
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("sqlite:///path/to/app.db")        # SQLite (rusqlite)

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.

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 or SQLite 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, PostgreSQL 18, Python 3.12, 5000 rows — Yara ORM is fastest on every operation measured. Cells show Yara ORM's time and each competitor's slowdown factor (>1 means Yara ORM is faster). Full methodology in benchmarks/.

Yara ORM vs Tortoise, SQLAlchemy and Pony on PostgreSQL — latency per operation, log scale, lower is better

operation yara-orm vs Tortoise vs SQLAlchemy vs Pony
bulk_insert 11.0 ms 2.1× 6.2× 18.7×
single_insert 33.4 ms 2.5× 4.7× 1.8×
fetch_all 3.4 ms 4.7× 3.5× 8.9×
count 0.3 ms 2.1× 3.2× 1.7×
filter 2.2 ms 4.1× 10.0× 7.9×
get_by_pk 62.5 ms 3.1× 4.7× 1.3×
update 3.4 ms 1.1× 1.2× 36.5×
delete 0.7 ms 1.3× 1.6× 134.0×

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. Run it yourself with make bench.

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│
│     SqliteBackend ................. rusqlite│
│   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      # 4-way benchmark (needs `make bench-setup` once; Python ≤ 3.12 for Pony)

Requires a Rust toolchain (rustup) and a local PostgreSQL for the Postgres 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

Project details


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.6.0.tar.gz (356.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.6.0-cp314-cp314-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.14Windows x86-64

yara_orm-1.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp314-cp314-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

yara_orm-1.6.0-cp313-cp313-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.13Windows x86-64

yara_orm-1.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp313-cp313-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

yara_orm-1.6.0-cp312-cp312-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.12Windows x86-64

yara_orm-1.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp312-cp312-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

yara_orm-1.6.0-cp311-cp311-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.11Windows x86-64

yara_orm-1.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp311-cp311-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

yara_orm-1.6.0-cp310-cp310-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.10Windows x86-64

yara_orm-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp310-cp310-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

yara_orm-1.6.0-cp39-cp39-win_amd64.whl (2.4 MB view details)

Uploaded CPython 3.9Windows x86-64

yara_orm-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

yara_orm-1.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

yara_orm-1.6.0-cp39-cp39-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: yara_orm-1.6.0.tar.gz
  • Upload date:
  • Size: 356.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.6.0.tar.gz
Algorithm Hash digest
SHA256 ddbb349d4d3b6fa4ab2901bec448d2d03291bb7be538c1cf4dd5789e688012b7
MD5 bf71974efa558111f2558a4650ab4c2c
BLAKE2b-256 52f4b1ebd6601ff3807d31c601ca3c2d3c2e60b446b8bfaaad6b10cc1cd60141

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 22f7f7437ab07f5cc48128d56ef2547b63d919ced5d33ec7549c4d6b324e532d
MD5 dbec4879b1f34d5038c2d2660f6a3267
BLAKE2b-256 7e6299efcd3591b8f3b079925bb8eee9a21e7a1ca8aa40af8317393e5d55c099

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d70b289cebdf1faafad3f6df02d47e0af6ac6ca74f01e688e77f244978379f4e
MD5 f840ca1f3ffdc9e0f7b7caa74e4c0f4d
BLAKE2b-256 5429f89ab55386c74e2e6dc3ffa7e2ecc05e6add2f58e546403b008f33af81f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 25beaad20965466aea7563195a1db608569b3c721c5ef3a420ad790b42798baf
MD5 f319612fc7458f8322da663712463871
BLAKE2b-256 97b57c864ed80648a7756705e7901ac453d1e0b85efbb78178cc27989adf0c19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8869c4c216912bc49dfaf8628a1e8a515dd0fae4e3db5e3c36509638b14e930
MD5 0d393fc9aa3111b6fd5665796317e9c0
BLAKE2b-256 d29e984ec728c1a32da8ddeb551d87b0763d1d21dcf336928c801aae3d20af62

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 eee1b280d28697c301f5a232d8e5b95d5a1c9a568c0028bdad897e57db778b3c
MD5 479e9c2b86c92a459a1d49b5597ceba7
BLAKE2b-256 9efbcf6acf788fbb184fda1f401b0f491629d453bd8f615d1c39607e1acd5d25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 50e6d4df09be09b98790c7ec20201fbc5d747ee8fb3a6f11b0aa6662652a5e1e
MD5 635cf47b05fe36c6212e31feca528545
BLAKE2b-256 f3b49497df019d76f494458143e6adfe45b3e9893421035761c55b394c7fafcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 68e7a30d414e47404a898fc8a812e57aa4516c91c85746a13d6be6c57a9af4bb
MD5 37e7d1dcaaf9c312f1eb643230b35cd0
BLAKE2b-256 fcf630618682a1be1c6992a399b47018cc8b6f03dbc7845c1679e7ff9312dbee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4d8ab4181cebaf65aeed0e465eed037239b6acf85c0eb5cb4b9d7f1f87eee403
MD5 8612ae40b2e863d0cbee4c9391815247
BLAKE2b-256 6dc00a3a83b2697eded673be85b0fa7483836c51e92f57a43268e2b463aa61b5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f89a4661894482cba887cbffe3bd8922c021db5f9bf92ae9e100c10cb787f096
MD5 791ba5fc9c7620b9ab3d1e9a10609633
BLAKE2b-256 0a3eb82ef3e2ee454e6cc3eb3c1e9a592b0e9aea8ef0fc4c5ea4f6e0e206033d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6469d12fe488c21ce515d2d417a5804b087e8d22d78757141c9d27da44a9d015
MD5 05510524d13d3d25cc245db232e6b4e1
BLAKE2b-256 659c43cbe031121747e90cd206d1d7d7cb885f784b72782facf1c401d0fcaf74

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1ce4cd43da6ce54cf2bb35bbfb3d874eed753399bbacb5abfdf3591346312236
MD5 b1717f44c66153e8bd1fba80a8336c39
BLAKE2b-256 715cf2c4af08498a79822fd74de7ed93be12944fb7283085d782f1a03f2aa5a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 25f4915203c832b5a7d5ff23b56a1bb73c74d14f8f2863870547e97353398b7f
MD5 09bce1e612bdf95841cfae15ea3db624
BLAKE2b-256 699fb14d18ee1bea691fb505afd151a6aeec72f839a18dc4742367d8e0b12c3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 16383b6346771a228a81f39fd27c0f8df21de9555a6601c49805698740ef063a
MD5 52055819e343644548ed286395b74e52
BLAKE2b-256 4415e3394a2a66d5979fc83eaca3beb0106674044aec6dd26ac57de9a3a04602

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c5711ba45a4371d74a6ce05562841461bb6e86e1a212d6842e4f8bccb603831d
MD5 a66aa75c476b07f7787b06786ab1de6b
BLAKE2b-256 67a917113fba6970eba7c4e2dcdbc01e467e6bd9db2b9ac3060fb3aa60aff49b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 29d8d9c663f184ea66e15d19bb55adf88ae361d98564d36eae7a3c141a246161
MD5 dae54f46fa9c0af51f628958e89fe043
BLAKE2b-256 247236a6896826ef8b0d826cce95826ca7678a13bcfbc0bd7086ac42d9bae760

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ead4c753daa7c751149485ff5128d844f3b25683250d9fe6c5162736cc28264c
MD5 d80ef0cd8d68cd62a81b90dc70ff8ad8
BLAKE2b-256 6b169c21244db852ec40945739561d6f5356e6373d9ab64b62d3f69b3771f7fa

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 77df88b1f5d25ed8f3fba24855f20ab595d7394d49938d7d0ddb1e2297bf72f0
MD5 c565e26b7d001764d34745fa60448aa1
BLAKE2b-256 a82a086e75ce3f9505cfa9c068c14469865f2562a12d937cd0f46e2f3af29cdb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ce813cd17589dc918cd626312dde2800872b4cd5e18b883f01dd636c6378434
MD5 1ef670442c112227ef2114c84663243f
BLAKE2b-256 835cc8552479bbb79fc7c54bb73fec8af48fd592dc230fd6ff7b947b10cc8df7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 25490a9b99d0870fdaae8b15f0fe1ade49a8341a78fa78799ebc7a9d697691e6
MD5 766a0496b4034e1eff68c59d8593debe
BLAKE2b-256 0c980c93799870b38031b8c31dde5a5548b7ab56cbc136d0354e68e7d70e9f4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2460c07030e2e1e0f2273f611a8246ff26190deec8a8a3d82883d552e2211111
MD5 e9a5f1f4fd5f99f61c7f4bf1cefc5e1d
BLAKE2b-256 33d597aad72374cdcf491622f5e9c0f81d2cce16a2549287232c71ee10f9e71d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yara_orm-1.6.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.4 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.6.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ae5de7ae69c152395d7094d1414b21d09cd3d902fda34454fb2f0ad420e72343
MD5 b8b432d39b36f1eaf798dc41fcb4bfe3
BLAKE2b-256 97ee702a0a6dbcc2d0a64984ee2940f596747559cdae1eafc8f5811b0fefb56d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b287e31954260dcb22fc316142c005b0f259ba73e898f65c68640051540986eb
MD5 cc0fd1e003a5e9ca6878d74459d3ad63
BLAKE2b-256 156d6667e5f15d43645231fd2bcbd8991f1316c450dcc8d10e9bef54bc0365ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 26e06d63078b32db699a055ce74526374ee355b77bc9bb1cd92adaf31ef02bb8
MD5 5f2b82dfafd106aa11302c2f67f725f8
BLAKE2b-256 94a586a1ba8174a2adefe4335c7f712cf985d3b8d4c8ee81e4fc50ba481471e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for yara_orm-1.6.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 746bf75204e8370cdee85f04f6ca533673d3d0dd1d171b909af016de8b83fe2a
MD5 c931e3b5eccdd698d18b8cee1757f6cc
BLAKE2b-256 82881f101ec819d884bf603abce5041bb7fa94b5d1d2bdf3fdbd47b71f0aeac4

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 Pingdom Monitoring Sentry Error logging StatusPage Status page