Skip to main content

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

Project description

SecantusDB

Status: alpha Tests: 584 passing License: GPL-2.0-only Python: 3.10+ Documentation Status

[!WARNING] Alpha software.

SecantusDB is in early development. The API surface and on-disk format can change between point releases. The wire-protocol behaviour and driver compatibility are stabilising — but if you adopt SecantusDB as a single-node mongod replacement today, be prepared to lose on-disk data on upgrade. 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 / geo / wildcard indexes, $where, real transaction rollback. If you need those, run a real mongod.

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.0a4.tar.gz (5.5 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.0a4-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.3.0a4-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.0a4-cp313-cp313-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a4-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.0a4-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.0a4-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

secantusdb-0.3.0a4-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.0a4-cp312-cp312-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a4-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.0a4-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.0a4-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

secantusdb-0.3.0a4-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.0a4-cp311-cp311-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a4-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.0a4-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.0a4-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

secantusdb-0.3.0a4-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.0a4-cp310-cp310-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.3.0a4-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.0a4-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.0a4-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.0a4.tar.gz.

File metadata

  • Download URL: secantusdb-0.3.0a4.tar.gz
  • Upload date:
  • Size: 5.5 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.0a4.tar.gz
Algorithm Hash digest
SHA256 68f38f2212403cab7d62acd5a2b97ffcf2b788f74503e492bcdb44e2971f1a6e
MD5 3d615d5254e5a455437dc19f9967ae08
BLAKE2b-256 4be9db7bced675045ddc3cb298beb4fd368371f7294957aa4ada63453b861bf3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 15a1a2fc264f65f6098dc0048998fc9fda0590de17dc080e42c483c4e5cd09f6
MD5 6aec738b425cbebdc0b0a2b1f9cc223e
BLAKE2b-256 1be58cccb80fe60c059dca58055bbe98cb8f9623c3ea5799acc940f151e0a5d9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dcd2205d6ac8f9cd8bc660bd2e778e10fe1420166a24922df9f733b20a0f17b0
MD5 6ff7cbd57f9ebc75cd5ee9b4a5b35700
BLAKE2b-256 d49cd4e5f5fabf652ee49e637c57bf99ec9631019737139cc749355dc967d3eb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f13137f3812923a7083cf023a50e2c9690dbe4359eb5a8593d38220953d57ccb
MD5 6587d20e38f4918d403ed0d80e38b1a8
BLAKE2b-256 86cbddf87e0365bdb25bacd52ebc68c6c1bd3ea1f13a47c71def4b2bfdd23b86

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4a4b88de7f1b72aaa9fa87f8d8baa8429d35e4770954f0e4a93e86281932546b
MD5 928f78f37e56d6d4e2b07d0d4db2eff6
BLAKE2b-256 186e214b1b8da949b9a54ad6717c6218280d41350b1dd44ff3cb21c79bd62837

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 619792bd5fdde3d17085a05f7abeb68ef61085aa4a49b85a33b82b17768e23b5
MD5 5fa20338669e4f2fa776f0395ba4c955
BLAKE2b-256 1e79fc29c3f95028cf8d64c4af6ded88e4991481b5170128a2bddb0677cac275

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 836be772e0cea25d7c51ff3c90682797f6ece65ae6cc3d83f79e499f95ec1068
MD5 44a1dbf6db40dd1c81fd5c9d8f1b4b52
BLAKE2b-256 b82dcc4039cfd85e957512f966c26b43a39fb56709dfa1756fbb7853dbb60157

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9593967e33a17c2dceb5a19f1cf17ece5bf85b1305883624e5c94798f0c6a828
MD5 fefda8ecc9e69decdd3774c0e45ea6f9
BLAKE2b-256 c5e6dbb0cfd6261c46a74b334dbcdd239ab88f1e93b91016a6ab12967d47fff7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 443447f63f1c2726dab1f2ea50c308df78833890f6b704d8ebd0c7d9b1899b47
MD5 c6575c1d2d3d4e639dbc8105e9ee943a
BLAKE2b-256 02403d6b520d12c73e1e1c17f1f77fc0a88ea2609d6a39b5745a814d43a10731

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 493c8179214625a282768fdfd5b26d39372e126a4308e988d902e8a4404fa313
MD5 f4d2f38af45e5bfc2f34dfa22626266a
BLAKE2b-256 6a12b72a815830d4d4f711b72ed56312304591048d214a7209440e8c5202b396

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1f9a844ce9c222dbdbb1dc221cec0a27656407d1486ce53852aa4ef018aca5b
MD5 d265051d23367e28723560dcde3f5829
BLAKE2b-256 02eb4e47c3fc0e229cf22852220587367a69e3aab965a4d06940ff7c4892a395

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6472049cfba5f006f86dec80a480a5797169f54b2a7b09c6f491bbaaff397683
MD5 710e17900fb2849b829ce9e1e05bea8d
BLAKE2b-256 91e001c8c7cd7ff265f650be8bd38b4e36eafd01d86c87624ac66e77c2f76c52

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0146214b63ac1c884835ca014c226f6f63da883c76b8048b819c1625ec9b1681
MD5 59307c80933f26ece4c14c41fdcacb71
BLAKE2b-256 dff12e2529ac994eb8db39d54958593f356dbc4b2de33de6327d13f61c563209

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 60467d4a03ce907d4f7ac3aec18608404935e2d157e60c4c242eefb535035422
MD5 8e08e93f2cf663e9154ee683f87b2698
BLAKE2b-256 eff5594db980ced049671c76ae203b9ce4728d2bb1e341528b6e95c733fa9a43

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1f4fb3a9990d961c49150eba9d90e07ff837813d857e301f605ce50d7b45a464
MD5 e3ab735b4f935b1e50df4ffb13a5ebf6
BLAKE2b-256 75954f50b4ea902795ac709bcd3d69b5a6cd10bc759a577d9d2e18f3fb07fa72

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3663cc4ea9db6998c4fe39d7490f3892fce444fb0c3d5b0304bbd965c66c208b
MD5 bd34cb616b2271479abfbb0573bae891
BLAKE2b-256 9e6d7eed876084604ef190376d687c62e7a9bcf02f09c6217b241b508f63e6c1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e941316876f42eed58553bf10bf25b717c57ebc1cb1aa00c210ce4af06c2518
MD5 4a40dd97f7b75516c21d330e2366dba3
BLAKE2b-256 665f762cad6f1809b82a623aaa8c1c34edc74cf75147ee409b087446d3258627

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 91fba58d629e6c25001de3c12519e30f3b37785b21968c6485ef6474c8fd8bc1
MD5 a8f0953bcea5caff1d3fe15362051832
BLAKE2b-256 b9801035a58de273e485b7000c20e37a8b5607b3f0a17b7be5d40892384f87b1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a32bae685d86e067b4d028204df9a7e14c5276d6b4eee3c11c79e5d0ec36f089
MD5 c5f6507837b8ffa2a7ad0f31dfa378df
BLAKE2b-256 6794c6128a3f42dc5d98e776aa5280cfe55cba1622b337aeb8d49315635142e0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 da2c05f0ed4e6fbb88f03fb2e7106a5f9f10cb3f2abd5e6055ee3aa6101adfdb
MD5 f2802681ac06aea3ecc0097a32d97dd4
BLAKE2b-256 0693e58e74f1f3e6b8976dd505095b47aab36147e3087c04abc9118ff5dfa201

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fc48df230b99d3c71bb0dd0bd53da7859181bdb0d24e7401d6524df2a6095de9
MD5 cba7deb4b0e4f902059b7c32ae521dd2
BLAKE2b-256 deb557154bde27a9b68f8879a82ba6a3c10c473c95d1afdfde6de4bb1a7dc0f0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 38a1f8bf4f22b507fa2f167d44f710ed128c877fcb162dd56132804e8fc67020
MD5 1523f37b913f2b67913603ae7def2a05
BLAKE2b-256 63eeeacaa0e4ee04c5bed4bce5cd1c1a83b203eade1a995324ddf59b24263d61

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4651313af3ed5b2caef14d65856540aeb6424c778f60593853757e30c45b9aff
MD5 5d676cc857a939132285c639557eb59a
BLAKE2b-256 6fc94267060e5d3d289076d55fa0ab829d16399633c6805d15a86e053cd0e107

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 09c7352f37d70dd95f9cb1ebc3f9d8196ccd98ac3143a8fcf494d38b93a1ab9e
MD5 938e32bba756b68b8b62147f3820a6aa
BLAKE2b-256 2570f77e31383ec31dd0db4dbab6a360a609e71a248e98b3f97bfbbdf2aace8e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4cfa1c64ac44bc21e234c73c9a414811580fc7f5b2576d03d7f8762afa7ec5bf
MD5 6ec3a76f6591be90372e471384616a62
BLAKE2b-256 c974bbf1a651ebac15a55cb39b210a9bd0dba6b345ba660754892fad7ba72a29

See more details on using hashes here.

Provenance

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