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 License: GPL-2.0-only (code) + CC-BY-4.0 (content) Python: 3.10+ Documentation

A surrogate single-node database for your tests. SecantusDB speaks the real MongoDB and PostgreSQL wire protocols on a real TCP socket, over the same WiredTiger storage engine MongoDB ships. Point your existing driver at it — pymongo, mongo-go-driver, mongosh, psycopg, psql, SQLAlchemy — and your application code doesn't know the difference, as long as it only needs single-node behaviour. No mongod or postgres to install, no port conflicts, parallel-test friendly, embedded in-process or as a standalone daemon.

Two ways to get it, depending on which server you want.

The Python servers come from PyPI and start in-process in two lines (the PostgreSQL one needs the sql extra):

pip install SecantusDB            # or "SecantusDB[sql]" for the PostgreSQL server
from pymongo import MongoClient
from secantus import SecantusDBServer

with SecantusDBServer(storage_path="./secantus-data") as server:  # port 0 = OS-assigned
    client = MongoClient(server.uri)
    db = client["mydb"]
    db["users"].insert_one({"_id": 1, "name": "Joe"})
    assert db["users"].find_one({"_id": 1})["name"] == "Joe"
import psycopg
from secantus.sql import SecantusPGServer

with SecantusPGServer(storage_path="./secantus-pg-data") as server:
    with psycopg.connect(server.uri, autocommit=True) as conn:
        conn.execute("CREATE TABLE users (id int PRIMARY KEY, name text)")
        conn.execute("INSERT INTO users VALUES (1, 'Joe')")
        assert conn.execute("SELECT name FROM users WHERE id = 1").fetchone() == ("Joe",)

The Rust servers are the fast ones, and they ship as Rust crates on crates.io, not inside the Python wheel:

cargo install secantus-mdb --version 0.5.3-beta.173   # MongoDB: the `secantusd-rs` daemon
cargo install secantus-pg --version 0.1.0-beta.3      # PostgreSQL: the `secantusd-pg` daemon
secantusd-rs --port 27017 --storage-path ./secantus-data

Both crates are pre-releases, so cargo install needs the --version: without it cargo stops at "nothing to install". The current versions are on the secantus-mdb and secantus-pg pages. Each crate is also a library: secantus_mdb::Server and secantus_pg::PgServer start a server inside a Rust test. Prebuilt archives of both Rust servers are attached to their tags on GitHub Releases.

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

The four servers

Two wire protocols, two implementations of each, one storage format. Reach for Rust to run it; reach for Python to read it.

Server Wire Run it as Role
Rust MongoDB server MongoDB secantusd-rs / secantus_mdb::Server The flagship. The secantus-mdb crate; prebuilt binaries per platform
Rust PostgreSQL server PostgreSQL secantusd-pg The newest. Prebuilt secantusd-pg binaries on GitHub Releases, and the secantus-pg crate
Python MongoDB server MongoDB SecantusDBServer / secantusd-py The readable reference — every operator, stage and error message lands here first
Python PostgreSQL server PostgreSQL SecantusPGServer / secantusd-py-pg The reference for the SQL surface, and still the most complete one

Each server is held to the real product it imitates — mongod for the two MongoDB servers, PostgreSQL for the two SQL servers — never to another SecantusDB server. See The two servers for what each one does not support yet.

Sharing one store. All four read and write the same on-disk format, but how they can share it depends on the pair:

  • The Python pair can share one Storage object in one process (SecantusPGServer(..., storage=mongo_server.storage)) and serve both protocols at once: a collection written with pymongo is queryable as a SQL table, JOINs and all, with no CREATE TABLE.
  • Separate processes — including the two Rust servers — can only hand a directory over, never serve it concurrently. WiredTiger takes an exclusive file lock, so a second server pointed at a directory that is already open exits rather than opening it. Between the Rust pair the hand-over works in one direction only: a table written by secantusd-pg reads back through secantusd-rs as a collection, but a pymongo-written collection is not visible to the Rust PostgreSQL server until something runs CREATE TABLE for it.

Storage engine

SecantusDB uses the same WiredTiger C library mongod ships — vendored at vendor/wiredtiger/ (mongodb-7.0.33) and built from source into the wheel. There is no re-implementation of the storage engine: B-trees, page eviction, write-ahead logging, durability, and on-disk format are all WiredTiger's.

The layers above storage — command dispatch, query planning, the operator engines — are where the servers differ. On a like-for-like benchmark the Rust MongoDB server runs within 1.0×–2.8× of mongod per operation (reads at the low end, multi-stage aggregation at the high end); the Python server runs 2×–27×. See docs/benchmark.md for the numbers and methodology. The right use is tests, dev, CI, containers, and single-node prototypes where conformance and WiredTiger durability matter more than per-operation latency.

What's in scope: MongoDB

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, multi-document transactions, 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, multikey, partial, sparse, TTL, sort — explain output (IXSCAN vs COLLSCAN), and geo support ($geoWithin / $geoIntersects / $near / $nearSphere, $geoNear, 2dsphere and 2d indexes).

The target is mongod 8.x, and the Rust server passes 99.5% of pymongo's own unmodified test suite (1,205 of 1,210 run, 2026-09-28). Twelve other official drivers run their suites against it too — see the conformance validation summary.

Security: SCRAM-SHA-256 authentication, the MONGODB-X509 cert-as-username mechanism, native TLS / mTLS, and role-based authorization with mongod's built-in roles. All off by default; turn auth on with --auth (or require_auth=True), provision users with createUser, then connect with the standard MongoClient(uri, username=, password=) shape. See Authentication.

What's out of scope: real replica sets, sharding, auth mechanisms beyond SCRAM / 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.

What's in scope: PostgreSQL

The subset of the PostgreSQL wire protocol real clients use — the extended query protocol (Parse / Bind / Describe / Execute), prepared statements and portals, text and binary formats, transactions with savepoints and two-phase commit, COPY, server-side cursors, LISTEN / NOTIFY, and the catalog tables a client introspects.

The Rust PostgreSQL server parses SQL with libpg_query — the real PostgreSQL grammar — and passes 5,545 of 5,729 of psycopg 3's own unmodified test suite (183 skipped, one failure that never reaches the wire). That gauge measures the protocol and the type system; the query language is narrower. Joins, aggregates, GROUP BY with GROUPING SETS, uncorrelated subqueries and CTEs, window functions, ALTER TABLE and ON CONFLICT work. Correlated subqueries, SELECT * over a join, CREATE INDEX, CREATE VIEW, triggers and EXPLAIN are still refused, with SQLSTATE 0A000 rather than a wrong answer.

The Python PostgreSQL server has the wider SQL surface, including schema-on-read over MongoDB collections (nested documents surface as jsonb with ->, ->>, #>). It needs the sql extra:

pip install "SecantusDB[sql]"
secantusd-py-pg --host 127.0.0.1 --port 5432 --storage-path ./secantus-data

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 (manylinux_2_28 / glibc, and musllinux_1_2 / Alpine)
  • Windows AMD64

Each wheel carries both Python servers and WiredTiger itself — no separate package, no compile step, no system build tools required. It does not carry the Rust servers (see below). macOS Intel (x86_64) is not in the wheel matrix.

Both Rust servers install from crates.io: cargo install secantus-mdb --version 0.5.3-beta.173 and cargo install secantus-pg --version 0.1.0-beta.3. Each needs a Rust toolchain and builds WiredTiger as part of the crate.

Standalone archives of secantusd-rs (Linux x86_64, macOS arm64, Windows x86_64) and secantusd-pg (Linux x86_64, macOS arm64) are attached to the secantusdb-v* and secantusd-pg-v* tags on GitHub Releases, for when you want the server without Python at all.

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.

Standalone daemons (drop-in mongod / postgres replacements)

Installing the secantus-mdb crate puts secantusd-rs on your PATH (or unpack a release archive). Run it like you'd run mongod:

secantusd-rs --host 127.0.0.1 --port 27017 --storage-path ./secantus-data

The Rust PostgreSQL server comes from the secantus-pg crate or a release archive, and takes positional arguments:

secantusd-pg ./secantus-pg-data 127.0.0.1:5432

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

mongosh mongodb://127.0.0.1:27017
mongodump --uri mongodb://127.0.0.1:27017 --out ./dump
psql "host=127.0.0.1 port=5432 dbname=postgres user=postgres"

The Python reference servers run the same way as secantusd-py and secantusd-py-pg.

Examples

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

import tempfile

from pymongo import MongoClient
from secantus import SecantusDBServer

# A throwaway directory so the snippet is self-contained; pass a real
# path to keep the data across restarts.
with SecantusDBServer(storage_path=tempfile.mkdtemp()) 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 — Rust vs Python server, and what each doesn't support yet.
  • SQL / PostgreSQL interface — the supported SQL surface.
  • 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 — each official driver's own test suite run unmodified against SecantusDB, with a cross-driver summary table and a per-driver report. 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
git submodule update --init vendor/wiredtiger
./inv sync                     # uv sync --all-extras, rebuilding the Rust core
uv run python -m pytest        # 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 content — Creative 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.

Metadata

Release files for SecantusDB 0.7.0b2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for SecantusDB 0.7.0b2
File Size Uploaded Provenance
secantusdb-0.7.0b2.tar.gz 16.1 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for SecantusDB 0.7.0b2
File
secantusdb-0.7.0b2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
secantusdb-0.7.0b2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
secantusdb-0.7.0b2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
secantusdb-0.7.0b2-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
secantusdb-0.7.0b2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
secantusdb-0.7.0b2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
secantusdb-0.7.0b2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
secantusdb-0.7.0b2-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
secantusdb-0.7.0b2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
secantusdb-0.7.0b2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
secantusdb-0.7.0b2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
secantusdb-0.7.0b2-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
secantusdb-0.7.0b2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
secantusdb-0.7.0b2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
secantusdb-0.7.0b2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
secantusdb-0.7.0b2-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 87.3 MB

Release files / secantusdb-0.7.0b2.tar.gz

Download URL secantusdb-0.7.0b2.tar.gz
Size 16.1 MB
Tags Source
SHA-256 checksum
How to use checksums
8a9187259a55a759886011201b9dc7d919c23d6f41fd570a7985592d5a551bd8
BLAKE2b-256 checksum
How to use checksums
7189459f40af738030406283f05a3af98a5023e1b1d82e4b760d15793b0ce767
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-win_amd64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-win_amd64.whl
Size 2.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
7918b603557d8d06b1ffc91fb00040abf44d9afde2dd5c508ae56f5babf7b805
BLAKE2b-256 checksum
How to use checksums
9f072442151b81d3e10a3e5f7b5ef5f56da9f75e00f5484dfff401ca1b825817
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_x86_64.whl
Size 3.1 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2825137553bbc0cad7e069ff18eb8b2e44f1a98f30d3b764100edb633a598713
BLAKE2b-256 checksum
How to use checksums
cb943aec7d645849be2ae38028780a7b292174118044d3e3b1cf21a250dff8ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
f294053fe51511bf6778b228bfebc8a1f3c66755312b510ca22161892da3a0c3
BLAKE2b-256 checksum
How to use checksums
dacda0fbad6832f7a6f8263471949944598a04fb868301bdb02a726ddc0a7d28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
611d02455a512703fb2ddf2cca07e73d574952be025c928ce6dc52638a325390
BLAKE2b-256 checksum
How to use checksums
ff7215ebeff136e80083b0bc090382e53f2ec9317e743bdd4ce6841bd38d745b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
33f64e968377bee2cbffdcc2b4f93afced22e23c1bdc2f79456cdd2e0b768700
BLAKE2b-256 checksum
How to use checksums
3bc52fefc03eebe7bb3da41fea564c3bea6b9d566b9c06f85c471bf3a7d635f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp313-cp313-macosx_11_0_arm64.whl

Download URL secantusdb-0.7.0b2-cp313-cp313-macosx_11_0_arm64.whl
Size 2.8 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
64913a611db2bebc5067f80f49145fae5e957b2039170ac7a64774a53599d0c2
BLAKE2b-256 checksum
How to use checksums
1d9e38da44cff019bdd5253464678aed5adff0c670cea50e8431f6107535bb00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-win_amd64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-win_amd64.whl
Size 2.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
c7f3ec42b4c9a964af9b414b3ef1c98d742cf87a6410dd2fb86b849b1fc9f9f5
BLAKE2b-256 checksum
How to use checksums
701ec878eac1b1dc8d7bfd41d913138c28767f0e53165079d24798a5bd2e3ba3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_x86_64.whl
Size 3.1 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
474fe0d150ed900ff6d1c1db560cf8e0ae431bef7b3002aec42037b714617618
BLAKE2b-256 checksum
How to use checksums
ce292836ea9e2abc2aaf08d697928c51cba0ec3d97ea6de79d8dd2052e8b8212
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
25653f29321e2c23328b0129b2cc14f1c6e53fb00d5e037ea154417c3701dfb8
BLAKE2b-256 checksum
How to use checksums
a01004f39ab06210d44615b7fd0a9ddf927e19b88ff15c772f2d3993099cfd53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4b08b82a445af4c4a9906185913f04946819e77838c46471be2f79e7192a90ad
BLAKE2b-256 checksum
How to use checksums
967f9e241b5bf960a2f675aabe8993463d3ba694c5faacd36230b6c04dc434dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0af6c83508c449d98aba975b4227d16d7733c00d914b0c84d411f55d325e4234
BLAKE2b-256 checksum
How to use checksums
06028b873fa9c6da8e90b4a75a97c2568415fccbde2409d373f6c065f87ec2be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp312-cp312-macosx_11_0_arm64.whl

Download URL secantusdb-0.7.0b2-cp312-cp312-macosx_11_0_arm64.whl
Size 2.8 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
57d4fb02ad4e5c54e13bb91436fe5a4cf23322a2afe8f6228a45c832fc3d33d0
BLAKE2b-256 checksum
How to use checksums
e6175207b08606dead40aebe17092c6e14a530a10c36fd77fca1b93ff6012442
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-win_amd64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-win_amd64.whl
Size 2.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
7f1aa73d7abccf0e1fc231429a5660bc2136e7be58a9894dd15e06fa2962c5bc
BLAKE2b-256 checksum
How to use checksums
ead40a8af9928874c16150af3a29390dbc07c38b9aa8b1a667853f2c6bc461a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_x86_64.whl
Size 3.1 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
60b79ff18b9a5ffaa8a3635e9ab82680eb68df5fd484ca3c5b1ff85646f3dee3
BLAKE2b-256 checksum
How to use checksums
905e5c1aafc8ab7268b7e2b91eb3a31458fa4a3d8137b8d3997113b0ee208b90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
5ba3e71d085c08c9d79b9e10f0bb89df371f93d7295551740c63f0e0abcf81ab
BLAKE2b-256 checksum
How to use checksums
b0b7dc3d97010f1c2645bc27aef5ee71109a6939d7959ce2f0620b36a45c0d90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
50daf92fd72f83f5a95843d8f123c204534324e2264261d6442426b2d799d35d
BLAKE2b-256 checksum
How to use checksums
fe830cb83c8ba97ed1477fbd1a0cecf6e2ceb7100699b5cb3e564d9bd6a14635
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0ca48fb7df05b672bac6e5c28f2ccf64f8213005f5bdb3965985511c3137b83f
BLAKE2b-256 checksum
How to use checksums
e6373d1d87618217bddde45340a752631e504ade0d6e7d1e1f60bb0ee9dba0d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp311-cp311-macosx_11_0_arm64.whl

Download URL secantusdb-0.7.0b2-cp311-cp311-macosx_11_0_arm64.whl
Size 2.8 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c52436f2d099c3c702246060ad05a960c1cee0cba100e0f619b049ddc9f176be
BLAKE2b-256 checksum
How to use checksums
7f8e68e002c0418ff1c0630e50fa8630dce84894d872e13d905a5fba5904a37d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-win_amd64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-win_amd64.whl
Size 2.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4da1cec2a24c6bf354622da8bd523274070eabae67b2486e6555b9b6fd4cf538
BLAKE2b-256 checksum
How to use checksums
9f40cd04d23f90a5e1e38017d767a2222432619a4b11b574c1a093789a64774b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_x86_64.whl
Size 3.1 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
26ea1d55e0bbecd55adfa17a66a19eb43666a492b926ec27c6e913195091c112
BLAKE2b-256 checksum
How to use checksums
6390153699a1fad91a778fbbeccfafecda8e9df631b3a3661eff8655763784fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
773e9de763f6fac97c5f267e9a6c571be3c1d3bad1e582cf51d55e855869f563
BLAKE2b-256 checksum
How to use checksums
a8e80410d619fc57e95adde68b06a612145e6fc39fb26f84fc6a360d530d0cb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
bd13fd5a3aea0eb94c562a2e15af8ba6298bc7ecbd53c2661dfc497501ff8d61
BLAKE2b-256 checksum
How to use checksums
73c0ef6d9c1d4e56a096b30c61ebaab1fe7af3c13cd5d1cfeb29bad09e8fdc64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
60fa4e99f5b537cd1ade1c30c3079606c4369578499ce4ee563c6ae85e8be2bc
BLAKE2b-256 checksum
How to use checksums
6fc181433859b0c066d07bdb9e2d41f346e27db06c3d846b07ee0ef6f965f970
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / secantusdb-0.7.0b2-cp310-cp310-macosx_11_0_arm64.whl

Download URL secantusdb-0.7.0b2-cp310-cp310-macosx_11_0_arm64.whl
Size 2.8 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0017d0e3684d86bdfb936606579231eb83496f675a92be463c82118477b7e88d
BLAKE2b-256 checksum
How to use checksums
6d9d093e76ae6771236426093c9857e19b23eae9ab5de1a0f055df054a1d557c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Security for SecantusDB 0.7.0b2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 25 files in this release have been uploaded with provenance metadata.

Select from 25 files

Attestation for secantusdb-0.7.0b2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page