Skip to main content

An embeddable, MongoDB compatible, document database, built on WiredTiger

Project description

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 Status

[!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 (secantusdb).

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 ~8×–46× 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. Off by default; flip on with secantusdb --auth (or SecantusDBServer(..., require_auth=True)), provision users with createUser, then connect with the standard MongoClient(uri, username=, password=) shape. See Authentication. Authorization (RBAC), x509, LDAP, Kerberos, and TLS are not implemented — an authenticated principal is currently treated as fully privileged.

What's out of scope: real replica sets, sharding, RBAC, x509 / LDAP / Kerberos auth, TLS, text / wildcard indexes, $where, real transaction rollback. If you need those, run a real mongod. Geo support ($geoWithin / $geoIntersects / $near / $nearSphere, $geoNear, 2dsphere and 2d indexes) is in scope and shipped.

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.

Standalone daemon (drop-in mongod replacement)

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

secantusdb --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.

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: pymongo's own test suite and mongo-go-driver's own test suite run unmodified against SecantusDB — see pymongo validation report and Go-driver validation report.

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

Documentation

Full docs are in docs/; build them with uv run python -m invoke docs and open docs/_build/html/index.html. Highlights:

  • Quickstart — embedding in tests, running standalone.
  • 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.
  • pymongo validation report — per-category pass / fail / skip rate from running pymongo's own test suite, unmodified, against SecantusDB. The submodule at vendor/pymongo-tests/ is checked out at the pinned upstream tag with zero local edits; a pytest plugin starts an embedded server and points pymongo's DB_IP/DB_PORT at it.
  • Go-driver validation report — same shape against mongo-go-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and runs go test with MONGODB_URI pointed at it. The Go driver underpins mongodump / mongorestore and most non-Python tooling, so this gauge catches type-strict wire bugs (int32 vs int64) that pymongo accepts silently.
  • Node-driver validation report — same shape against mongo-node-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and runs mocha with MONGODB_URI pointed at it. Initial baseline is restricted to the import-clean subset of unit tests because of an unrelated ESM/TypeScript loader quirk in node-mongodb-native v7.2.0; see node_validation/include_paths.py for the rationale.
  • Java-driver validation report — same shape against mongo-java-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and invokes the driver's bundled ./gradlew with -Dorg.mongodb.test.uri=mongodb://.... Initial baseline is the :bson:test module (BSON serialization, ~289 test files); the JDBC-style integration modules can be added to java_validation/include_modules.py as we widen.

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.

Project details


Release history Release notifications | RSS feed

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.4.0b2.tar.gz (5.9 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.4.0b2-cp313-cp313-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.4.0b2-cp313-cp313-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

secantusdb-0.4.0b2-cp313-cp313-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

secantusdb-0.4.0b2-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

secantusdb-0.4.0b2-cp312-cp312-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.12Windows x86-64

secantusdb-0.4.0b2-cp312-cp312-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

secantusdb-0.4.0b2-cp312-cp312-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

secantusdb-0.4.0b2-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

secantusdb-0.4.0b2-cp311-cp311-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.11Windows x86-64

secantusdb-0.4.0b2-cp311-cp311-musllinux_1_2_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

secantusdb-0.4.0b2-cp311-cp311-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

secantusdb-0.4.0b2-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

secantusdb-0.4.0b2-cp310-cp310-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.10Windows x86-64

secantusdb-0.4.0b2-cp310-cp310-musllinux_1_2_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

secantusdb-0.4.0b2-cp310-cp310-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

secantusdb-0.4.0b2-cp310-cp310-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file secantusdb-0.4.0b2.tar.gz.

File metadata

  • Download URL: secantusdb-0.4.0b2.tar.gz
  • Upload date:
  • Size: 5.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for secantusdb-0.4.0b2.tar.gz
Algorithm Hash digest
SHA256 840119cade8f13169b7ed84c3d818930ea1f798e2c851c3f458659aafaeb1218
MD5 700a2d8c3ebc2d58e3ac1d76211305e6
BLAKE2b-256 f03bacef7c8aed70366f7272ad23d97e80b808b3b8f71ed870d7c000aaf21391

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2.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.4.0b2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 934db765bf5de389e9b4ca73696406193b39ca7b54a17bbeb69041dde5e5c08b
MD5 04268b6d9269fb16d1ace72e99bebb62
BLAKE2b-256 7e014f65758733e03b46d6e472d0c2121c0b5d582b28f69b6fb8e5889149bfa0

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ef87ef457251148eeca684f2075b74633b6e2d1dfdf626966a1e6c17cc68d1e2
MD5 af7e4e4a2f3fc061d0069ef1d9ab1d8b
BLAKE2b-256 d3db1e253e39e0917a2acf13f28c3a8c63dd6d4c8a46e3bee314c28b7e1424b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3f2aa752f2193f9606799cd4ae40d732c3c10545e0a05d7239746f6d7686e73d
MD5 15b34e5ecad4c15b6917046a73183f00
BLAKE2b-256 59ddfe0dd378e0adb63ff1987b5e6fbacf2fb48c46d291897e2ebd21653edf61

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 850a55224174c468a7adfdf5979efd13416e3aa6b8575bb618fbb78991a38579
MD5 6ae27243e1de133494530abd7b75eaa7
BLAKE2b-256 03d201a81afabcde4b3955df7153f955bd7a1b3f831c2b93f4c803e85f82d54b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_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.4.0b2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7a66961e7bad250f4941eb3079f9cc837e12a935aadfe73cd02bbcf1af1dca7a
MD5 9897a12e5573aa12dcd448c14c96581c
BLAKE2b-256 f9a48cf62085c6671ca3961c6c1a48d3320478deea6be642186a21c8838e5757

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_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.4.0b2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 67754138d9f9d5cb97fde5f430503dbc67a9d41cd7dcf6032b45974421f6d24f
MD5 735abd7042d141772070dc1fe88c3890
BLAKE2b-256 4bdf1259fdb5dc91b4bd2a66c6af733f1e05120f6dde2a51ffb4b7585d44e49b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3ae180caf474b779e83577896fe369d73d3dc5899b56bb956e0f6ccdfd62dd2c
MD5 cb212526f23d9b7030ebd8eceb6d2680
BLAKE2b-256 645941f6ef4aa30984e40f41fa546f6eb4403e71181afed7d725233ef0b5f78b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 28fc67c3a597744ec5f8133976684c8416edd275670a004efc480cdc5a695a62
MD5 b1abf9c5a83b0c3a06d603db06dbd301
BLAKE2b-256 d0eccf81cdbac9960f4d856ce7cb0dbe446e4b13dc9b96f1c13d6ccf079ba3c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1b3af40b6d858b2d14c310eb276bf5c89566d7ea483806e12be6d0c5bf109bec
MD5 d4ed76fb56f3bd055aec3db108bd2759
BLAKE2b-256 7346ac8484624c29eb3656a456b50e939fa1ae0c16376a53c999ce34177fc31b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c88fca0c281ff2d1f848b69fc2309d52666a303c545b2bc300ed4b60114711ad
MD5 9515657e16f4cc707f746105fcd9a9e7
BLAKE2b-256 a6aa68de02cf6a4d1f29509c414bbb2a2d1f9781a94d8e20f8eaf9035f72a32b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_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.4.0b2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2a3ad4405e45c34f7b22a41dd1c78d2fe5c816a0fab7f99566c1fb1c810ac1b5
MD5 4b3b3714094dc0140f4178441cca3756
BLAKE2b-256 1c393954321902d4774b8466c52b87f58babc3975829ee9a6d7de39c874e9339

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_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.4.0b2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 30cd8e982788db465ae052ccb4bf9f686944e8c74b5199fe8a218aff44b91c8f
MD5 77d985bdc5ecc93a5b9651b40fff95cb
BLAKE2b-256 af7bdafda8cdac7464512c263f7f7dcc98b77295fd951a5472863a038aa07a48

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3812d31aef6bec90ae3664417228a56e10b86a964f0886d3af3b779e5b0f489e
MD5 7c896cf774fa6c4af353084b58d38ddb
BLAKE2b-256 f98a49944021726425d29dfcfa5fd7747c61d459f57d1749f5a024437df58584

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 90386bb2465209500435826baccc8dd164cee20a310f66df77629e4c1303ca2e
MD5 3fec2419a940f5dc88e7f8b62949261e
BLAKE2b-256 bf6252fa3affca80b3c4a5032eec6a01bbd0666320320d800bd0ad50f30e1d10

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1b94411e9c9475e852a63cedb43caf41ade7eb8550df3167a1cf21cbe0e3d3d3
MD5 ea6617b2719b58970bfb47aa189ffb4e
BLAKE2b-256 6897074b19ee1bc814ed1492dc9cc6cbf8750da9d2020e682a8e876aa4437270

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0bdc4b28b325301484011644ae53ae9b46a9bbc22318b62d2ed1d3ca82d91db
MD5 c0c1763f8a7d6e7f88e367969630f27a
BLAKE2b-256 82cf93c3f387d6c443d4f960262d7ed8cf9a09657deb21cbbafee7c2a9ecbf91

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_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.4.0b2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2a592578cb12833cee4c16e9390a5ac2ad78aac5ae695b94349c0b51b1bfad92
MD5 2cc23e8ed31299ca450e37958efc6c8c
BLAKE2b-256 39165d027a57faa7e8b749bbb2c5f4c7c713944d4eb4ae20cf1e0336aa3325bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_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.4.0b2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2934452b3ec49f81cbd6fac6a10d90ccc3d417bc592cbc0362d188ae400e1981
MD5 4324612af8bf68e71f853ba5843b02f0
BLAKE2b-256 aaeddf1a3cc48ecc08b6a2745713918ca4ea0e66925b9475130d29e00ceb1f16

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6139eb2505d7d85f56bd946e16073f69f4c456fbb6e3033267db053227c22c06
MD5 936f4221f4231c7d18a0febf8d189a85
BLAKE2b-256 8e42ce2843342af8fdeb9484ad24a11d82cc9fe57b952db217490136a307faf1

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 89e9556379b9afb1cc9fa54e81dabc36923b35d1f13e09ab1d3a7fc6099ba817
MD5 971b3f5de221b740ad0b5a615a2bd063
BLAKE2b-256 34efb64dc0176476cc163c8557e3155591c1f2c588b818c0a82a2533e3860f3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b3fb5909fbde299fd749e2b0b9b438cc9c2b21610cc834c6ac8d5a95b28aacf6
MD5 0b7bf0f8f4f7b5fef8c13c181072b045
BLAKE2b-256 112af2b9eae6317ac3e7843a47fff5e6c4c4b7a26e9b9a1a07f312f0ad82b81e

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.4.0b2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 795c12bc06f02404c8c61e88d8fb14bf97d6b8ba8309b11babe52be08c54c85e
MD5 32eb85538572435f39620c55f9f638cd
BLAKE2b-256 086b214beb11384cefa2c2f26fe90a0b839d53f5f3792a58680581e85b7adca8

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_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.4.0b2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9824846f3b947bc587b519c1512479d957804488d1fe967c1049c158b10052a2
MD5 31dc7a420dbce262fc4a3dd465ae792a
BLAKE2b-256 b99b0f6b3835d8272a11a003c03eb791b6645ef7d4e5822958a9dc24a32450d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_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.4.0b2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.4.0b2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3a5a83f555d2d8fd30565915c03e7ca1b79af90f617d56d571dc89aa5d94416f
MD5 9653406f6a1c27d815accc33445b3b0d
BLAKE2b-256 c0082c6eb65e2c6cf249064242e29a9971f56bdf5bb6303046fae3ff88f4bf98

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.4.0b2-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.

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