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.0a1.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.0a1-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

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

File metadata

  • Download URL: secantusdb-0.3.0a1.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.0a1.tar.gz
Algorithm Hash digest
SHA256 e71c21d0f133f147e76c720b02921150bff07e1b05582166351aaf67c770a5b5
MD5 9920e33a6a52659b79d7582134fa8e00
BLAKE2b-256 70de0e2b6d3a139dc53dd0ebdc70a282f889b5808bc3eccb4902b149b400777c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 86a95e876b41660b764d808954bf8a1565edafd029df2bb206e45f7321f23c64
MD5 fe490d2d22eb41a45f4754b72215809d
BLAKE2b-256 73c8503b8d41e573601b1d49de7f1a519d1f540f0e83b01a92034689b35eb184

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f31727e5612ab5b932644e1c11ba7881dba18442655efc4b48562cabf0b15653
MD5 903a15f75e7cf01d1d682ddfca696c41
BLAKE2b-256 168afb8037b745fd4e2d73aab93cff1a686c34900a1439d9aae25593e0eb88f6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bd89cf3995682dd17cd47443df9eb7933cf5fafade0536d2548b555cd9e64298
MD5 80ac51b00dde014b6d0f85a0c1f89655
BLAKE2b-256 f071638b2d49f4a9a662885dd1a7a2736d0d67d7aba400172b7b0bfcf38a3754

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c5ba58ab2ac97db6dcb1ec6cc6618a73522f3954b4ec6e56ee180d4c509391f8
MD5 015ee8fcd108c7afe8d82c7026fc41f7
BLAKE2b-256 780e450116e7888400ea76d7d4286fd5ec9207e13f29e4a8e25acac5ef821221

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c9fe2251a3ed55f9a0c3dd933895e7eac9e52a0bd25efd3f915770c0b2850ae0
MD5 cd26a2a2ea085d3f84caea22c81f906d
BLAKE2b-256 24c7fd21a30e094df124ef9ccfece1c00a039a119eb75916de5d5d33ec8978f7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 57e9689888d7710bc3c96272a73af120de65107e85a63962540fb547427ac5a9
MD5 9cb095266a8de88853b1f8323619934e
BLAKE2b-256 d1e517109de9138c1647a45d70dcfceb8298316c9fdfa168e50bc1ef5c0275bf

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 707e811de34c40c63be0bdf49933af3926ce885029f4ae60eeba0b19ee306730
MD5 d0d8b613f7577feaf2a5caafcd2fa374
BLAKE2b-256 2cda4802fc3ad57a692ee718e1be6ec0d77e66901cf0f53f22f3526a4253b98b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 05a4904c4ec967bb595ae109f7b290f860110fed1b8e35da59190d35d0233878
MD5 3c38bea5c61642b7de6925c6b00b9368
BLAKE2b-256 9efa3f8afae81fcc42993ddfa6c6201db219f672a3cea94d5011ce2fe7c1947c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 aaeb6e57b56d38fb14a984bfe43540c281d18f2a212691a7a6fd802b9ec3cdb5
MD5 21a7e301c4315fc61c20848d723fef0a
BLAKE2b-256 448da70736feb83c4be6e4e706c8749264fd2833cd7a365fa7bce72e5101eaae

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3d9077ea00b6f7e975dbcac74d373be8ee2b14980409cebc30c5cd3c80d92069
MD5 95877b379553f1509fb32832a80731ca
BLAKE2b-256 162a750cd41816a9bbe305fbf61fbe59f116efebadda6ea1c6f5feebe9529b00

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f1ed7a2fdf8c01e8a841a43798b88936331e415d89f5d27d6911b3fa961902a3
MD5 91ef722d81d0fb68a24045178676dfca
BLAKE2b-256 a2d1a657f477077483d2c1526490de694824049ff3229e70af03430922ea4535

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 599b993d336ef3cd3698f5b20e20cd58759ef7628fadc25f81ee90efb49f76ba
MD5 53eeb67251a0fa2702e511e16140c500
BLAKE2b-256 20dc1931fa669579a13bea868de977d21996062a3311ff86a33f800f50507c51

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0267f2cdfbc23b86514857f70db41df840c04c5d4ca67fcc6bdede5bf1c5a629
MD5 86ff79953efb50006c832ebd41fbd595
BLAKE2b-256 c7d08ee4bdae5254a82a3dea2de9bae06bdc41cedf05c923cd952e4320f6ce1d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0a9f39aa8dbb1e76a4e1ecf2f27818a4cc4bb5ccf62f394fdb22f13bc91d6d5c
MD5 b99661f73b24ede6d65895e0c9e51267
BLAKE2b-256 5de693329921a375c366c25645fea313b090fb42a8ceb8c0475cd0802b8ee4f9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9a946b12b9286eeb5441bb7aace07e8cf5d57969803292c5047019bab67ca6fe
MD5 23e2483855f2b23273ea7688be072b87
BLAKE2b-256 f86dd6570a2ed7773acbf213d0e8102304d9e21eca2c0269df82dfa55e2f9e50

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38aa8620653815fed722ac7a4afc78c3fcc85c2c200dea9d8d24b707404b73f6
MD5 9806566b6487e7e9c0b2d7b1b3e3cc2e
BLAKE2b-256 35cb5f3249bab5cbef7cb5641076b97a67c526893fe9f84509c214d1b8a2cf20

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8823e20e90c951e700d2fa844a5374fb5b1c85b724e4f969f560f92f94e1468c
MD5 199f286269c8330dab708c32422523bc
BLAKE2b-256 0b7965ba6fd6b3a653364b9567036265a5ad9cbc57009d3d87d8c98d060bf5c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 157a9b4dc1da1982a0116a2acf4d20853084fa590d3b669c125045ec176cfd28
MD5 3a53d682dacc9c2f882db195e8876c71
BLAKE2b-256 1ff3920a0a1a79260b47c1313b50dc89b18d21b6ed7909c54987c2b2e54f7659

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9cdab3ad7a04a5f14eda35098ccdaab306543085e0cb29f67fec602638641adf
MD5 55ad5d6e0677ef579e443b727610ea7c
BLAKE2b-256 c19c685bb68d63be2670faa15eeee8980077d6aa25d8abe5e362932486f54a5c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b8f8c04d5b77c709e148245187604da25a05e71a5b32552337f6f8c266b65e3c
MD5 bfb596075e67440239abf7c07003726a
BLAKE2b-256 1913c7a015a1f1e16c4bfbbd45c42f654debf5441b35eb79b56bb57d00c88540

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1edad23bae5beeca837b8c28bdebebdf77a2449f84f7a32f8ce886c12ecbbfcc
MD5 dafcfd4cfc0d28667634cc9ad6a31a08
BLAKE2b-256 9aa1c6d63ecd19c96e26551a77a5eac882ca3ccf9d0599f22c4f9628232c1538

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7e44c03c25afa793e1bfc89c6de68ad839ca233277ad7b0366436e87ecf7c3a1
MD5 ab682c1b73775c5307e8b6e019e1a6ca
BLAKE2b-256 ab1b52fb7f0d5879c48a73426fb86661a446d91bc77c0f0d0ad32cc9cd2791d2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b1015e9c4445251859056e3917c5265e3ad4c7e2d194cdc5221a314305b9c943
MD5 034c7b41d547d40bf6b13edcd7ad52d8
BLAKE2b-256 cb73b69ec122abdfb6e363f35771b2fdb4d2d044505dd7d6371d824b989de36f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.3.0a1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 096eeeacbf374b7b9a8da31824d5ac059547d019693dd455a941bc6a79d65ced
MD5 a274ad3973a8d4dbe53574d8e036b300
BLAKE2b-256 ed17a71c41c1066b41bdf7b81c835ddfa3245e5c13438b3ca573e4c0a6bac456

See more details on using hashes here.

Provenance

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