Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

SecantusDB — the SQLite of document databases

Status: beta Tests: 584 passing License: GPL-2.0-only (code) + CC-BY-4.0 (content) Python: 3.10+ Documentation

[!WARNING] Beta software.

SecantusDB is past initial proving but the Python API surface (CLI flags, public class signatures) may still shift before 1.0. The on-disk format is WiredTiger's — the same engine MongoDB uses — and the schema we layer on top (collection / index / oplog tables) has been stable across releases; the test suite runs against real on-disk WiredTiger storage and the persistence tests explicitly verify close-and-reopen round-trips. That said, we don't yet ship a migration tool or a formal compatibility guarantee, so please don't put production data here yet — production deployments that need durable data across upgrades should still run a real mongod.

Drop-in MongoDB for single-node applications. SecantusDB is a real MongoDB server written in Python: it speaks the MongoDB wire protocol on the same TCP socket a mongod would, so any standard MongoDB driver or tool — pymongo, mongo-go-driver, mongosh, mongodump / mongorestore — connects unchanged. Point a MongoClient at it and your application code doesn't know the difference, as long as the application only needs single-node behaviour. No mongod to install, no port conflicts, parallel-test friendly, embedded or as a standalone daemon (secantusd-py).

Single-node only by design: replica sets, sharding, and anything that depends on real cluster topology are out of scope. Within that single-node scope, SecantusDB is the database your driver thinks it's talking to — same handshake, same wire frames, same error codes.

from pymongo import MongoClient
from secantus import SecantusDBServer

# On-disk by default at ./secantus-data; pass storage_path=":memory:" for ephemeral.
with SecantusDBServer(port=27017) as server:
    client = MongoClient(server.uri)
    db = client["mydb"]
    db["users"].insert_one({"_id": 1, "name": "Joe"})
    assert db["users"].find_one({"_id": 1})["name"] == "Joe"

Storage engine

SecantusDB uses the same WiredTiger C library mongod ships — vendored at vendor/wiredtiger/ (mongodb-7.0.33), built from source into the wheel, called via WT's official Python SWIG bindings. There is no Python re-implementation of the storage engine: B-trees, page eviction, write-ahead logging, durability, on-disk format are all pure WiredTiger. Your data lives on the same battle-tested engine mongod uses.

That doesn't make SecantusDB as fast as mongod — the layers above storage (command dispatch, query planner, aggregation pipeline) are Python, and a like-for-like benchmark currently has SecantusDB ~1.2×–24× slower per operation than mongod. CRUD reads sit near the lower end of that; bulk update / delete and aggregation sit at the upper end where Python loop overhead dominates. See docs/benchmark.md for current numbers and methodology. The right use is tests, dev, embedded apps, and single-node prototypes where conformance + WT durability matter more than per-op latency.

What's in scope

Everything a single-node application needs from the wire — the handshake (hello / isMaster / ping / buildInfo / ...), CRUD (insert / find / update / delete / findAndModify / count / drop), cursors with getMore / killCursors, aggregation pipelines and the expression language they need, and change streams (single-node, oplog-backed; collection / db / cluster scope; resume tokens; fullDocument: "updateLookup"; pre-images via fullDocumentBeforeChange; blocking awaitData getMore). All backed by a real query planner with index acceleration — single-field, compound, mixed-direction, partial, TTL, sort — proper explain output (IXSCAN vs COLLSCAN), and a hash-join $lookup.

Authentication: SCRAM-SHA-256 — MongoDB's default since 4.0 — is implemented end-to-end on the wire, alongside native TLS / mTLS and the MONGODB-X509 cert-as-username mechanism. Off by default; flip SCRAM on with secantusd-py --auth (or SecantusDBServer(..., require_auth=True)), provision users with createUser, then connect with the standard MongoClient(uri, username=, password=) shape. See Authentication. Authorization (RBAC) is not enforced — an authenticated principal is currently treated as fully privileged — and LDAP / Kerberos / GSSAPI / AWS / OIDC auth mechanisms are out of scope.

What's out of scope: real replica sets, sharding, RBAC, auth mechanisms beyond SCRAM-SHA-256 / MONGODB-X509 (no LDAP / Kerberos / GSSAPI / AWS / OIDC), OP_COMPRESSED, text / hashed / wildcard indexes, and $where / $function / $accumulator / mapReduce (no embedded JS runtime). If you need those, run a real mongod. Native TLS + mTLS, multi-document transactions (with WiredTiger-native rollback), and geo support ($geoWithin / $geoIntersects / $near / $nearSphere, $geoNear, 2dsphere and 2d indexes) are all in scope and shipped.

SQL / PostgreSQL interface (opt-in)

SecantusDB can also speak SQL over the PostgreSQL wire protocol. Install the extra (pip install "secantus[sql]"), start a SecantusPGServer — optionally sharing the same storage as the MongoDB server — and connect with psql, pg8000, or SQLAlchemy over a postgresql:// URL:

from secantus.sql import SecantusPGServer

with SecantusPGServer(port=5432) as server:
    ...  # SELECT / INSERT / UPDATE / DELETE, JOIN, GROUP BY, transactions, ...

Or run it as a standalone daemon — pip install "secantus[sql]" puts a secantusd-py-pg script on your PATH:

secantusd-py-pg --host 127.0.0.1 --port 5432 --storage-path ./secantus-data

SQL is compiled down to the same query / aggregation engines the MongoDB side uses, so it inherits index acceleration and the type system. A collection written with pymongo is queryable as a SQL table with no CREATE TABLE (schema-on-read), nested documents surface as jsonb (->, ->>, #>), and BEGIN / COMMIT / ROLLBACK are real transactions. Auth (SCRAM-SHA-256) and TLS work the same as on the Mongo side. See SQL / PostgreSQL interface for the supported-SQL matrix and examples.

Installation

pip install SecantusDB

Pre-built wheels are published for CPython 3.10, 3.11, 3.12, and 3.13 on:

  • macOS arm64 (Apple Silicon)
  • Linux x86_64 and aarch64 (manylinux2014 / glibc, and musllinux_1_2 / Alpine)
  • Windows AMD64

macOS Intel (x86_64) is not in the wheel matrix; use a from-source install if you need it.

WiredTiger is vendored inside the wheel — no separate package, no compile step, no system build tools required.

Building from source (unsupported platforms only)

If your platform isn't in the matrix above, pip install SecantusDB falls back to the sdist and compiles WiredTiger from source. That needs three native build tools on PATH:

  • cmake (>= 3.21)
  • ninja
  • swig (>= 4.0)
Platform Install prerequisites
macOS (Homebrew) brew install cmake ninja swig
Debian/Ubuntu sudo apt-get install -y cmake ninja-build swig
Fedora/RHEL sudo dnf install -y cmake ninja-build swig
Alpine apk add --no-cache cmake ninja swig build-base

See Installation for dev-install instructions.

The Rust server (separate)

SecantusDB ships two separate servers on independent version lines: the pure-Python server (this package's SecantusDBServer) and a self-contained Rust server that speaks the same wire protocol off the GIL. You run one or the other — there is no in-process engine switching. The Python server is always pure-Python; the Rust engines live only in the Rust server.

The old in-process accelerator (SECANTUS_ENGINE=rust / SecantusDBServer(engine=...)) has been retired in favour of this two-server split.

The Rust side is a Cargo workspace under crates/: a pure-Rust engine crate (secantus-core, no PyO3) reused by the Rust server and the standalone secantusd-rs binary, plus a thin PyO3 bindings crate (secantus-core-py) that builds the secantus-core wheel — the vehicle that pins each Rust engine byte-for-byte against its pure-Python counterpart.

pip install "secantus[rust]"      # pulls the matching secantus-core wheel

The Python server is the conformance leader and the default choice: it passes 99.2% of pymongo's own test suite. The Rust server runs the same unmodified suite and currently passes 92.0% — it's faster per operation (see docs/benchmark.md) but is still closing the gap. The features the Rust server doesn't support yet — showExpandedEvents DDL change events, large change-event splitting, read / write-concern semantics, timeseries _id non-uniqueness — and a side-by-side of when to pick each server are spelled out in The two servers.

Standalone daemon (drop-in mongod replacement)

pip install puts a secantusd-py script on your PATH. Run it like you'd run mongod:

secantusd-py --host 127.0.0.1 --port 27017
# storage at ./secantus-data by default; pass --storage-path :memory:
# for an ephemeral temp dir cleaned up on shutdown.

The same pip install secantus also puts the standalone Rust server on your PATH as secantusd-rs (same flags, same wire protocol; see The two servers) — on Linux, macOS (Apple Silicon), and Windows. Intel-Mac wheels are pure-Python.

Then point any MongoDB driver or tool at it — no application code changes, just the URI:

mongosh mongodb://127.0.0.1:27017
mongodump --uri mongodb://127.0.0.1:27017 --out ./dump
from pymongo import MongoClient
client = MongoClient("mongodb://127.0.0.1:27017")  # same code as for mongod

The conformance gauges back this up: the official driver test suites run unmodified against SecantusDB — see the conformance validation summary.

Examples

A walk through the operations a typical application exercises — connect, insert, index, query, drop. Full version with explanations: examples in the docs.

from pymongo import MongoClient
from secantus import SecantusDBServer

# Ephemeral here so the snippet is self-contained; the production default
# is on-disk at ./secantus-data — drop storage_path or set a real path.
with SecantusDBServer(port=0, storage_path=":memory:") as server:
    client = MongoClient(server.uri)
    cellar = client["wine_cellar"]
    bottles = cellar["bottles"]

    # --- Insert ---
    bottles.insert_one(
        {"_id": 1, "name": "Pommard 2018", "region": "Burgundy", "year": 2018}
    )
    bottles.insert_many(
        [
            {"_id": 2, "name": "Brunello 2015", "region": "Tuscany", "year": 2015},
            {"_id": 3, "name": "Barolo 2017", "region": "Piedmont", "year": 2017},
            {"_id": 4, "name": "Pommard 2020", "region": "Burgundy", "year": 2020},
        ]
    )

    # --- Indexes ---
    bottles.create_index([("year", 1)])                     # single-field
    bottles.create_index([("region", 1), ("year", -1)])     # compound

    # --- Query ---
    drinkable_now = list(
        bottles.find({"year": {"$lte": 2018}}).sort("year")
    )
    assert [b["name"] for b in drinkable_now] == [
        "Brunello 2015",
        "Barolo 2017",
        "Pommard 2018",
    ]

    by_region = list(
        bottles.aggregate(
            [
                {"$group": {"_id": "$region", "count": {"$sum": 1}}},
                {"$sort": {"_id": 1}},
            ]
        )
    )

    # --- Drop ---
    bottles.drop()                              # one collection
    client.drop_database("wine_cellar")         # whole database

Admin web UI

An optional local console — browse collections, watch live metrics, tail change streams, inspect query plans, manage users, and take backups (including point-in-time recovery) against any SecantusDB or MongoDB-wire server you already have running.

pip install 'secantusdb[admin]'
secantus-admin --uri mongodb://127.0.0.1:27017
The SecantusDB admin dashboard: live server metrics, operation counters and per-second charts.

It's dev-tool shaped, not a production console: loopback-only, gated by a local token, with every script and stylesheet served from the package. See the admin UI docs for a tour of all 22 pages.

Documentation

Full docs are at secantusdb.com/docs — with the Rust server's own tree at secantusdb.com/docs/rust. Highlights:

  • Quickstart — embedding in tests, running standalone.
  • The two servers — Python vs Rust server, which to use, and what each doesn't support yet.
  • Architecture — the layered design.
  • Indexes — what find() and aggregate accelerate, explain semantics, hints, partial indexes, TTL.
  • Aggregation — supported pipeline stages and expression operators.
  • Compatibility — the divergences you should know about before you point an application at SecantusDB.
  • Conformance validation — every supported driver's own test suite (pymongo, Go, Node, Java, Ruby, Rust, and the PHP library + extension) run unmodified against SecantusDB, with a cross-driver summary table and a per-driver report for each. The other-language gauges catch wire-protocol bugs that pymongo's permissive client accepts silently (e.g. int32-vs-int64 cursor ids).

Development

git clone https://github.com/jdrumgoole/SecantusDB.git
cd SecantusDB
uv sync --extra dev
uv run python -m pytest    # 584 tests, runs in parallel under pytest-xdist

Common workflows:

uv run python -m invoke fmt    # ruff format
uv run python -m invoke lint   # ruff check
uv run python -m invoke test   # pytest, parallel
uv run python -m invoke docs   # build Sphinx docs (warnings as errors)

License

SecantusDB is dual-licensed:

  • Code — GPL-2.0-only. See LICENSE. SecantusDB bundles the WiredTiger storage engine (itself GPL-2/GPL-3), so the combined work is GPL.
  • Written contentCreative Commons Attribution 4.0 International (CC-BY 4.0). See LICENSE-DOCS. Covers README.md, everything under docs/, the validation reports, and pymongo_validation/README.md. Operational instructions to AI assistants (CLAUDE.md) and vendored third-party content (under vendor/) are out of scope.

Download files

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

Source Distribution

secantusdb-0.6.0b12.tar.gz (12.3 MB view details)

Uploaded Source

Built Distributions

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

secantusdb-0.6.0b12-cp313-cp313-win_amd64.whl (15.2 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_x86_64.whl (17.8 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_aarch64.whl (16.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

secantusdb-0.6.0b12-cp313-cp313-macosx_11_0_arm64.whl (15.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

secantusdb-0.6.0b12-cp312-cp312-win_amd64.whl (15.2 MB view details)

Uploaded CPython 3.12Windows x86-64

secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_x86_64.whl (17.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_aarch64.whl (16.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

secantusdb-0.6.0b12-cp312-cp312-macosx_11_0_arm64.whl (15.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

secantusdb-0.6.0b12-cp311-cp311-win_amd64.whl (15.2 MB view details)

Uploaded CPython 3.11Windows x86-64

secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_x86_64.whl (17.8 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_aarch64.whl (16.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

secantusdb-0.6.0b12-cp311-cp311-macosx_11_0_arm64.whl (15.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

secantusdb-0.6.0b12-cp310-cp310-win_amd64.whl (15.2 MB view details)

Uploaded CPython 3.10Windows x86-64

secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_x86_64.whl (17.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_aarch64.whl (16.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_aarch64.whl (16.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

secantusdb-0.6.0b12-cp310-cp310-macosx_11_0_arm64.whl (15.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file secantusdb-0.6.0b12.tar.gz.

File metadata

  • Download URL: secantusdb-0.6.0b12.tar.gz
  • Upload date:
  • Size: 12.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for secantusdb-0.6.0b12.tar.gz
Algorithm Hash digest
SHA256 0e4d4d17b298c3aac981270d1ab84637e62ece6ff97aefe0c3a8996eb2d59d4a
MD5 edb282e0a7c818810ec45253cf9bd7bb
BLAKE2b-256 a1c5e12175914ba4209b3ef058afc8d9e8d87725bf1c71bd5a2d04c9157b3498

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12.tar.gz:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c3e1bc958f072e8f4454cf4f0f537af88046c90777b64c67c8a50335a74c42c6
MD5 f63b1f98610dacdd983f84b66c50d8c6
BLAKE2b-256 bfc1e7bcf9f22bb824d521ee62f288c66eac2d3ae9f9c6cb1360ffc8c37541aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6b66a52a00b44486548f52dddf371ecf9b6b997d632904165c216d7ed73161f6
MD5 c01d46188761ee9043369a5125075c74
BLAKE2b-256 53c85f7eb417fea8c9e93e8c2c8f86460a7a43440cdef17450701ea25eb7cd4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a358a4c39f78ff8c0af1df8089c831fb0f1e667650c3daa36f241703b3151d35
MD5 c4330dfb3f83143410276182b21a0c57
BLAKE2b-256 29d07982d061675674dfd40bc6550e9ef0f837f78a306a69179aec7b481d7dac

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c732b36ba218112fa1873bc89af89e3815201550e3e1e78ec526ab72c77fc0cc
MD5 dd5050e73afb402c77fa622eb07a7d21
BLAKE2b-256 e328a25beba373927b8f8ead99ab2ca99f9b06100d17ef89af7813f0e1f318e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0ebfe7a896310531d7e86063abbd76291c10dae4edc7447d2df946889cd01299
MD5 12f9ca88dd582c8e8bf9a449412d2634
BLAKE2b-256 2819480351de5b0ee66e853480b5c114d1217c1c52d948a03598071b6db622eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2be87967ebdd85e19ed5430b106f21842c05f52e8f22b0e09a4c39350b77e3a7
MD5 4638c96739e375c326000b47517acb2a
BLAKE2b-256 bf64f5f67f766de1eed3e0b14eeb7fbefd63106183a667cc4cc8bb418040bd26

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 20eb733e4710e95db812dda0b8cfcad670ad10eda3c95260503a9a037b020f58
MD5 4d375d922add4360833ef524a215e79e
BLAKE2b-256 38c07e6e9d1cd436e23b3b6786d245c192d19a609c493771492d95d2a1cf63dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 de70243b093b8cd60bf1ab26c7e135a31fd4c3380766841f980587582b7a7338
MD5 935b33991879987022c48220ba317663
BLAKE2b-256 f4f243bba064795d0720566c62de37facedad464ab81a31886448ddf6fa1137c

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c1cab0c299df41c38f97e88ba44fbc6dbaa5c2f2b1b855d159bf6a5e2d494ca7
MD5 4acd75c070ec40bd70ccfe08e54be5ef
BLAKE2b-256 5a9ce6908d8ffcfa8bf1ac8bf799fc7eccb765065d30c98361f903042e82c2e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c6864a66d372abdb963b4722a4c0db6b17322735c2d9c5389ecda6c819548443
MD5 177ed98c98dd306c0cab65a278607428
BLAKE2b-256 83f0740a7f927f7289638b6add4a88afbf229c328eefbbcc2be10db8df3b5ab5

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 328601c912691270786a621eef33d03bb7c9f01424cc80719a6694f411bf475a
MD5 f076ea4044d16d9fbf649eb206cbaaa8
BLAKE2b-256 501fa3ccad228f1196708cc14d3f46974b877b4d0ff3aa4fc240c6d4731564f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 829fde21b6d23d3ace7d9016b7f5d941c66f8a4c7f28df77f9c2292f43f8a275
MD5 9af057a3d302684c2740a2d7d65cfd32
BLAKE2b-256 3afa0246263f140d6081c3bab3313d68f6e006e0a478c2ed79eb4e67c0e6ccce

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 968b6d22c3244e496551b65e79a2dbba831605dfef2199ccf490f3bcb237e519
MD5 95bb89b67f212518acb72ccf84a6eba2
BLAKE2b-256 e06570f1c3ca4fb94774e4f3de2315063faba05da6bee84c9aae2288b52accef

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3833fa787d05d5fd38ab7ec35d797896c2465ae338518f5c6311a550970c7f65
MD5 b5bd2a2872ed3a8640180673bdbec220
BLAKE2b-256 1983e2707245d4ab3233a1941708ddd60dcfd47ce125a5830999684b4e6dfb6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 41034f05b672043a34834815ab2311aa7bf8062eaf2e803fb353ff03e764ef21
MD5 b823b22dd5be847098c3a35f39ba8f14
BLAKE2b-256 c24b523ea400f7114e6f3e107cbc6ecf372f09144bae342da15f24b5f4430a51

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ca48aa793a328564c9ea77457a7ba4e0030a8f36a3da0e061bb9c181ecb685b2
MD5 227cc7e561ac8be677a2d3de60fb94c8
BLAKE2b-256 b459195b2de87c5b9e800ace3f7b5e4ca7e141128fec31b36b51352f805edeb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5528767e690121b96a4c96bbe072e546df5df58fba9ae83ea714f9d7e76d878b
MD5 61be0035931daf64d7d2471743857fb6
BLAKE2b-256 b61604f50e7eaffb508fab26640870ca0177a72e0d598da403a9425978b7968e

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ad88e9e20268c8f494da46face476e21540d4eae91b89ecb91a152dae4e0c5f
MD5 d46eb4147310dc3f2a4e8d9ec44581be
BLAKE2b-256 62eb8c4bc7a6a638f40a8f52e17337fbae1bb3102552a6cd967d1a60948705ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f18fd14b74dc5d1c3706b534825e485e5fbfba9abc39a3a71262f7a2ada7bf2e
MD5 8c9f0c92963675c0c0450105ecb4d9a5
BLAKE2b-256 e4cafb64725847489083ba24b6956afc42a8204f1e654c42d1ba0295c9dc7b18

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d0cbc529e1a6a562733a22dce9b4562d3a2a551b45e5f265f99d5c751ff52ab4
MD5 e1775103d9294b00fd8560d1fa14bd38
BLAKE2b-256 349fee85b0f97bcc61a1a588253203a56294025aa53b26082b023308e2565a7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7e7418a2f494ffb126445afff56fd18771a4b53b4536bd3934e26b0a775dd802
MD5 37ad37f5b0f8abb8babe2fd1a3ffdfd0
BLAKE2b-256 78e13fbc6dde37a70bb17dd3aeee1192f100617ead1a27546625ad038159c8a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 39735f62fb6281a546543fa843932373ef4a9ee8232a407c79b9f26ae1ec3301
MD5 2d1086cfc91af6d1c93fcecaa43cec23
BLAKE2b-256 1de0c41f75669144acb1bef4311441759cf5e5136eb3963f1d52d7588fe5b75a

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 878723fa7ce28702656b1b697a5e1b81350280113f1a15d78954083bb2eface6
MD5 f73bfb4f24fa60444fcb7cee618d9cb8
BLAKE2b-256 cd79a151a10753ee6e4807aaeeb1a4fb697877a2344ee3d6a2ea0f1d08111842

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secantusdb-0.6.0b12-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.6.0b12-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e198ae7dd65617cd2f9f0b639bdefd25ae61b84b1bacb7a0da887aa2857b7697
MD5 363c7e0ba8449bc80d3b45874a8d7def
BLAKE2b-256 09af41098c12a0cd1e5d5fbcab293cbea89e3f4db5c2d637f94ad84a3c77c0f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.6.0b12-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on jdrumgoole/SecantusDB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

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