Skip to main content

A drop-in single-node MongoDB server in Python using the WiredTiger storage engine

Project description

SecantusDB — the SQLite of document databases

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

[!WARNING] Alpha software.

SecantusDB is in early development. The Python API surface (CLI flags, public class signatures) is still settling and may shift between point releases. 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


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.3.0a37.tar.gz (5.6 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.3.0a37-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.3.0a37-cp313-cp313-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

secantusdb-0.3.0a37-cp313-cp313-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a37-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

secantusdb-0.3.0a37-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

secantusdb-0.3.0a37-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

secantusdb-0.3.0a37-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

secantusdb-0.3.0a37-cp312-cp312-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

secantusdb-0.3.0a37-cp312-cp312-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a37-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

secantusdb-0.3.0a37-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

secantusdb-0.3.0a37-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

secantusdb-0.3.0a37-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

secantusdb-0.3.0a37-cp311-cp311-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

secantusdb-0.3.0a37-cp311-cp311-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a37-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

secantusdb-0.3.0a37-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

secantusdb-0.3.0a37-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

secantusdb-0.3.0a37-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10Windows x86-64

secantusdb-0.3.0a37-cp310-cp310-musllinux_1_2_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

secantusdb-0.3.0a37-cp310-cp310-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a37-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

secantusdb-0.3.0a37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

secantusdb-0.3.0a37-cp310-cp310-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file secantusdb-0.3.0a37.tar.gz.

File metadata

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

File hashes

Hashes for secantusdb-0.3.0a37.tar.gz
Algorithm Hash digest
SHA256 0f6e74e03686af9f2a699a8dda5b3fe4eed58f14c86041bbfaa51eb7cb437bc4
MD5 175f83c065b24bf6f87505ea3ca1ccc7
BLAKE2b-256 285446760c0985b746207fdd578af04957775a6a19d0d244b628ff978c3594ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37.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.3.0a37-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0472720040eba50060e742470c98303eed194f06bb0e38693ae660557d5086cb
MD5 7ecf9cbcc58a41d2e9869ddc6010295e
BLAKE2b-256 3fc317ba178756eae4046b119d8b3b789771e811038ca5d7d218b44d42a1b948

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6f34a5fe8cb420a71ec996ea7c83eca983ccd86646d20d24977bce25ba25f7fa
MD5 7493fa8b8dbd44a45db08d1e3a5bb701
BLAKE2b-256 edcd13826b745d2390337d34486803162f34716024c74ce7deff5cd10544b54d

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d0f3ac8462ae1291cfcecfd3f54ec9787e818a90f5aa791fc8a4fd39d8a92532
MD5 2945aba1d06a2400c9393959c4685cf5
BLAKE2b-256 cba876657a6f29a8234a93bc8b3715387526c496f8dba41415bf082d0b7cb953

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd391970e491acc312a4ff578148be24bcb8cecb07a719c4c164eace9096c218
MD5 f70cd56682da8196fe29a2f7f84a43a1
BLAKE2b-256 8b7ef6e63dd68482ffc244ca0cd872020314924cb6fa84f944f61b89dd5a2597

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b3af20c2175944148fc2c3d7e23899e6fb24c52ce2445a9b297e59867a3fbdf
MD5 ce0b101e685d7d394a58e6cb8660b8de
BLAKE2b-256 59e358661a07d88266d920035ea3b4b5ca0017f2e7666b57d96cc989db8a6d33

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aa65a476363f00f1a948aa52ab8c322dc5f297cdaabe8b1965e90e560e826d44
MD5 1026013dc4cf86140cfb01d5465a26cd
BLAKE2b-256 542e46fa5ff9b20bda0ea220166318394e4ea035d20269d5a75c04314750e06e

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 89f64d86f42484396a685100206a2eb50eb5108c2a31f4628aab4dd6afcef456
MD5 5216066b38321b3153aa60371da11110
BLAKE2b-256 38c8b12995891c6c5b54d9cc22887028e0405f7396a6b5ccf5f58f3d61bc0779

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e05c409402081a30b7e04f92af49a9056c70a89fe2f34851d2655f4a690cd915
MD5 745cd97a6407200673248e17a7bbbcbe
BLAKE2b-256 cb2d05cb5b4af4079517d8c701c8577ddf655c3ca6e7c35a21d1c0ab2e2eb7d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b059331a5edd2825a35848500beaa410cf08580fe151f1fa64d783c3bab9defa
MD5 f3b2964d74dd4144d56236d145b90c68
BLAKE2b-256 b6658fb93d80694d3dd7525acce25b56479586e61600f8c4b8199fd45cb2e546

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7b335994078e1f616093bc88526ad5ffb9316168e0d39d980e1de508544a809f
MD5 e64be53081420119a0f3690dcbb4d24d
BLAKE2b-256 98bd59763c76f78072efcf9df8a3b9576939ad7eda198043739e779ba9211505

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a9e8d3d896b854b78526d2eb71aa08480facf8a21bf8788087deac92c26cea3d
MD5 87c9714959dcbe510840b9700cdae849
BLAKE2b-256 3c0c3724c607f416f829d2ecf6dbba2ab4d66e5a6e807466c50f1980715149b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8afba617301088a3dc799184f1e056be7eb74d239f1917459fc0520febe39674
MD5 d93c30bb5a43085e2eb12a74de31cda1
BLAKE2b-256 52b38214d6639f33ed0b1ce5f43c5808ae658d397ee47936b2fb88ae07aeecbf

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3856f5d71d95e9b12c87b2b1cdffbd6b47226baad62450e019745fd4286633de
MD5 2c9e3405c0160dd31cf81155419a2c5e
BLAKE2b-256 5bad394e1f2a3fb6c2d85a0fa13d94f00f99d3461f2c3649faed79dae7a61b31

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3ec0b1883e761fdf80365d49515063acc6253dc193278a1665aa0b48b20f5c58
MD5 2286899b5b85585fff3555e0167c9451
BLAKE2b-256 a4e7aa4df5340874a41286419fe9e2e3dbad2b6648b9a771be2b40736655527e

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1f1f06f76eb8c905d51535cfe19a3c4dea5252c05550a1eb29a47773121a75b9
MD5 c4de1d37efbc38c95536fe924f15f9b8
BLAKE2b-256 cd29d965617974848819d1bffff28c6798581ec55c76989c95284a83e17800f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9f9090700d242595351b3e36de919ee833cf3bbfd53ca21bd9b3c2ffbef7a31a
MD5 d5ded8e1944dde7443f6864b12b03f30
BLAKE2b-256 a58456bd238efe1e736322b6a0c225849e8a6d62dd4e05b24a32c9a45b69214d

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e362059b88219b43c99bdd168cc0c0e4ce03100eaeb3d0ccce06bc74e551437d
MD5 0af680359a00f964ec99e2d02fb8c636
BLAKE2b-256 cce5aafa273bc76e0c2a61592755cbfce82eb2cac824d592126ce9be74ce99bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b4fdae6a9d34d35efb9e93680c42f5f383b805101b07be0abd8e446491618bd3
MD5 1451962f063f982a1987053418da3ae7
BLAKE2b-256 ba4e7b71565fb2cb211f5d3ffd4a834e329ecdf83b47e805a459e14ded389f0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c854ed7729511e8c1f9dbb867b2610c1c25d940a9eb49bef53bb46c98c220782
MD5 d8ab23873ce04d7a022a40121a8215ef
BLAKE2b-256 4bfef8fc253399b6c9fa7c13ca6372183b202057c4d1584e824a16bb73eb1655

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 908998229d7531ea9b6bac4bc078a4186ceed5831c6f4443e714eaf73e05fb4a
MD5 a38d89b03ef0a07e06c6f719f04ed910
BLAKE2b-256 16902b174596702b3e2aab31cd516efde42d6929bd75782d476005b4332b2883

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4750cc672b43d1652fb64f8640af8cb07bafc47602093eae35a706f6aa17af14
MD5 254fa7ebceada70442552abf9db41397
BLAKE2b-256 0182b0a9d97a32a61427d5214047f2d37a31bde756809ca0b427d83129971cb2

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 448225a5d8cbd943c983a7a049a85e3445e121ff0940b9b6fc62a76f570558be
MD5 1f435605f23eb67617941b11984731aa
BLAKE2b-256 7c04b031a1fa321e7da5c4fd60226260aa2275d8bd9ac987d03479eb9e1e79bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0d34907983c0f6fcb5866c78183cb3befc643d7ebdc53e81cd09337fb9f1e5a9
MD5 98e209431651d9355f958ef0d78aeeae
BLAKE2b-256 d8d7fdd2b8f484f54929964cdb5b8b5022313cb05fedc442e837d4e814fc9f73

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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.3.0a37-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.3.0a37-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc73085d6050f24e8a0e621c2045e0bb73907125d50b33beb4cc0301efead1f1
MD5 d1444f144908148ba91a71d1bae78acd
BLAKE2b-256 49da33709262fccd4adb86a2e67044bd8bd07b446a1dd96eca6a62c719268b74

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.3.0a37-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