Skip to main content

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

Project description

SecantusDB — the SQLite of document databases

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

[!WARNING] Beta software.

SecantusDB is past initial proving but the Python API surface (CLI flags, public class signatures) may still shift before 1.0. The on-disk format is WiredTiger's — the same engine MongoDB uses — and the schema we layer on top (collection / index / oplog tables) has been stable across releases; the test suite runs against real on-disk WiredTiger storage and the persistence tests explicitly verify close-and-reopen round-trips. That said, we don't yet ship a migration tool or a formal compatibility guarantee, so please don't put production data here yet — production deployments that need durable data across upgrades should still run a real mongod.

Drop-in MongoDB for single-node applications. SecantusDB is a real MongoDB server written in Python: it speaks the MongoDB wire protocol on the same TCP socket a mongod would, so any standard MongoDB driver or tool — pymongo, mongo-go-driver, mongosh, mongodump / mongorestore — connects unchanged. Point a MongoClient at it and your application code doesn't know the difference, as long as the application only needs single-node behaviour. No mongod to install, no port conflicts, parallel-test friendly, embedded or as a standalone daemon (secantusdb).

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

from pymongo import MongoClient
from secantus import SecantusDBServer

# On-disk by default at ./secantus-data; pass storage_path=":memory:" for ephemeral.
with SecantusDBServer(port=27017) as server:
    client = MongoClient(server.uri)
    db = client["mydb"]
    db["users"].insert_one({"_id": 1, "name": "Joe"})
    assert db["users"].find_one({"_id": 1})["name"] == "Joe"

Storage engine

SecantusDB uses the same WiredTiger C library mongod ships — vendored at vendor/wiredtiger/ (mongodb-7.0.33), built from source into the wheel, called via WT's official Python SWIG bindings. There is no Python re-implementation of the storage engine: B-trees, page eviction, write-ahead logging, durability, on-disk format are all pure WiredTiger. Your data lives on the same battle-tested engine mongod uses.

That doesn't make SecantusDB as fast as mongod — the layers above storage (command dispatch, query planner, aggregation pipeline) are Python, and a like-for-like benchmark currently has SecantusDB ~8×–46× slower per operation than mongod. CRUD reads sit near the lower end of that; bulk update / delete and aggregation sit at the upper end where Python loop overhead dominates. See docs/benchmark.md for current numbers and methodology. The right use is tests, dev, embedded apps, and single-node prototypes where conformance + WT durability matter more than per-op latency.

What's in scope

Everything a single-node application needs from the wire — the handshake (hello / isMaster / ping / buildInfo / ...), CRUD (insert / find / update / delete / findAndModify / count / drop), cursors with getMore / killCursors, aggregation pipelines and the expression language they need, and change streams (single-node, oplog-backed; collection / db / cluster scope; resume tokens; fullDocument: "updateLookup"; pre-images via fullDocumentBeforeChange; blocking awaitData getMore). All backed by a real query planner with index acceleration — single-field, compound, mixed-direction, partial, TTL, sort — proper explain output (IXSCAN vs COLLSCAN), and a hash-join $lookup.

Authentication: SCRAM-SHA-256 — MongoDB's default since 4.0 — is implemented end-to-end on the wire. Off by default; flip on with secantusdb --auth (or SecantusDBServer(..., require_auth=True)), provision users with createUser, then connect with the standard MongoClient(uri, username=, password=) shape. See Authentication. Authorization (RBAC), x509, LDAP, Kerberos, and TLS are not implemented — an authenticated principal is currently treated as fully privileged.

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

Installation

pip install SecantusDB

Pre-built wheels are published for CPython 3.10, 3.11, 3.12, and 3.13 on:

  • macOS arm64 (Apple Silicon)
  • Linux x86_64 and aarch64 (manylinux2014 / glibc, and musllinux_1_2 / Alpine)
  • Windows AMD64

macOS Intel (x86_64) is not in the wheel matrix; use a from-source install if you need it.

WiredTiger is vendored inside the wheel — no separate package, no compile step, no system build tools required.

Building from source (unsupported platforms only)

If your platform isn't in the matrix above, pip install SecantusDB falls back to the sdist and compiles WiredTiger from source. That needs three native build tools on PATH:

  • cmake (>= 3.21)
  • ninja
  • swig (>= 4.0)
Platform Install prerequisites
macOS (Homebrew) brew install cmake ninja swig
Debian/Ubuntu sudo apt-get install -y cmake ninja-build swig
Fedora/RHEL sudo dnf install -y cmake ninja-build swig
Alpine apk add --no-cache cmake ninja swig build-base

See Installation for dev-install instructions.

Standalone daemon (drop-in mongod replacement)

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

secantusdb --host 127.0.0.1 --port 27017
# storage at ./secantus-data by default; pass --storage-path :memory:
# for an ephemeral temp dir cleaned up on shutdown.

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

mongosh mongodb://127.0.0.1:27017
mongodump --uri mongodb://127.0.0.1:27017 --out ./dump
from pymongo import MongoClient
client = MongoClient("mongodb://127.0.0.1:27017")  # same code as for mongod

The conformance gauges back this up: pymongo's own test suite and mongo-go-driver's own test suite run unmodified against SecantusDB — see pymongo validation report and Go-driver validation report.

Examples

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

from pymongo import MongoClient
from secantus import SecantusDBServer

# Ephemeral here so the snippet is self-contained; the production default
# is on-disk at ./secantus-data — drop storage_path or set a real path.
with SecantusDBServer(port=0, storage_path=":memory:") as server:
    client = MongoClient(server.uri)
    cellar = client["wine_cellar"]
    bottles = cellar["bottles"]

    # --- Insert ---
    bottles.insert_one(
        {"_id": 1, "name": "Pommard 2018", "region": "Burgundy", "year": 2018}
    )
    bottles.insert_many(
        [
            {"_id": 2, "name": "Brunello 2015", "region": "Tuscany", "year": 2015},
            {"_id": 3, "name": "Barolo 2017", "region": "Piedmont", "year": 2017},
            {"_id": 4, "name": "Pommard 2020", "region": "Burgundy", "year": 2020},
        ]
    )

    # --- Indexes ---
    bottles.create_index([("year", 1)])                     # single-field
    bottles.create_index([("region", 1), ("year", -1)])     # compound

    # --- Query ---
    drinkable_now = list(
        bottles.find({"year": {"$lte": 2018}}).sort("year")
    )
    assert [b["name"] for b in drinkable_now] == [
        "Brunello 2015",
        "Barolo 2017",
        "Pommard 2018",
    ]

    by_region = list(
        bottles.aggregate(
            [
                {"$group": {"_id": "$region", "count": {"$sum": 1}}},
                {"$sort": {"_id": 1}},
            ]
        )
    )

    # --- Drop ---
    bottles.drop()                              # one collection
    client.drop_database("wine_cellar")         # whole database

Documentation

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

  • Quickstart — embedding in tests, running standalone.
  • Architecture — the layered design.
  • Indexes — what find() and aggregate accelerate, explain semantics, hints, partial indexes, TTL.
  • Aggregation — supported pipeline stages and expression operators.
  • Compatibility — the divergences you should know about before you point an application at SecantusDB.
  • pymongo validation report — per-category pass / fail / skip rate from running pymongo's own test suite, unmodified, against SecantusDB. The submodule at vendor/pymongo-tests/ is checked out at the pinned upstream tag with zero local edits; a pytest plugin starts an embedded server and points pymongo's DB_IP/DB_PORT at it.
  • Go-driver validation report — same shape against mongo-go-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and runs go test with MONGODB_URI pointed at it. The Go driver underpins mongodump / mongorestore and most non-Python tooling, so this gauge catches type-strict wire bugs (int32 vs int64) that pymongo accepts silently.
  • Node-driver validation report — same shape against mongo-node-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and runs mocha with MONGODB_URI pointed at it. Initial baseline is restricted to the import-clean subset of unit tests because of an unrelated ESM/TypeScript loader quirk in node-mongodb-native v7.2.0; see node_validation/include_paths.py for the rationale.
  • Java-driver validation report — same shape against mongo-java-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and invokes the driver's bundled ./gradlew with -Dorg.mongodb.test.uri=mongodb://.... Initial baseline is the :bson:test module (BSON serialization, ~289 test files); the JDBC-style integration modules can be added to java_validation/include_modules.py as we widen.
  • Ruby-driver validation report — same shape against mongo-ruby-driver's own test suite, unmodified. Spawns a standalone SecantusDB daemon and runs bundle exec rspec with MONGODB_URI pointed at it. Initial baseline is the lite-spec subset — 90 files under spec/mongo/ and 9 YAML-runner files under spec/spec_tests/ that require 'lite_spec_helper'. Covers BSON, URI parsing, SCRAM-SHA-1/256 conversation framing, retry / heartbeat protocols, CMAP, error-class encoding, plus the cross-driver spec-test corpus for connection strings, server selection, SDAM, auth mechanisms, max-staleness, and read/write-concern document shapes. No real-mongod connection required — SecantusDB doesn't have to satisfy any cluster machinery for these. Auto-discovered by ruby_validation/include_paths.discover_lite().

Development

git clone https://github.com/jdrumgoole/SecantusDB.git
cd SecantusDB
uv sync --extra dev
uv run python -m pytest    # 584 tests, runs in parallel under pytest-xdist

Common workflows:

uv run python -m invoke fmt    # ruff format
uv run python -m invoke lint   # ruff check
uv run python -m invoke test   # pytest, parallel
uv run python -m invoke docs   # build Sphinx docs (warnings as errors)

License

SecantusDB is dual-licensed:

  • Code — GPL-2.0-only. See LICENSE. SecantusDB bundles the WiredTiger storage engine (itself GPL-2/GPL-3), so the combined work is GPL.
  • Written contentCreative Commons Attribution 4.0 International (CC-BY 4.0). See LICENSE-DOCS. Covers README.md, everything under docs/, the validation reports, and pymongo_validation/README.md. Operational instructions to AI assistants (CLAUDE.md) and vendored third-party content (under vendor/) are out of scope.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

secantusdb-0.5.1b4.tar.gz (6.1 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.5.1b4-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.5.1b4-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

secantusdb-0.5.1b4-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

secantusdb-0.5.1b4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

secantusdb-0.5.1b4-cp313-cp313-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

secantusdb-0.5.1b4-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

secantusdb-0.5.1b4-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

secantusdb-0.5.1b4-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

secantusdb-0.5.1b4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

secantusdb-0.5.1b4-cp312-cp312-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

secantusdb-0.5.1b4-cp311-cp311-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows x86-64

secantusdb-0.5.1b4-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

secantusdb-0.5.1b4-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

secantusdb-0.5.1b4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

secantusdb-0.5.1b4-cp311-cp311-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

secantusdb-0.5.1b4-cp310-cp310-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.10Windows x86-64

secantusdb-0.5.1b4-cp310-cp310-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

secantusdb-0.5.1b4-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

secantusdb-0.5.1b4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

secantusdb-0.5.1b4-cp310-cp310-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file secantusdb-0.5.1b4.tar.gz.

File metadata

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

File hashes

Hashes for secantusdb-0.5.1b4.tar.gz
Algorithm Hash digest
SHA256 68df5527d984769ee24f6cc33062f319290a6909c0fb5a2acd48fd97774e2379
MD5 3e020d0930b132a33f3cdeeb86e6a0eb
BLAKE2b-256 83470c4578af5f922d90819c0c9aa1c4dcbd4670bfcde6179946191bc92076e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4.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.5.1b4-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3ece35fb77f36e06ffaa2682bcef421113213b34db05c79836a2978af0308af0
MD5 394f48f649e93af2cde5fa78ff2fef79
BLAKE2b-256 3de715563f4babfc8473d4443789843461e4f4e355c1ab4e28bf9449276410f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4dccb7c2756122a942c5b720347ca138f56127c339c8e37f04fe52ee7f77c77f
MD5 c69c2c68133227cea2282ad831d4112b
BLAKE2b-256 fc654f5c1b83492cdbdf198190c79bc4a259d60bf31d81e3aec0d30b0c056060

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3a0841d3eb4c50e740b1477508716478e71fef23e4fa8b22942a6b818bf5f371
MD5 f703ae458a90d26cd66ad3f6a5061400
BLAKE2b-256 a3486c7444f21cc1c2ec6a80d196557080054b1addd5a50cd51b788632923984

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f2533909f6fb3a312712dda44d6375a0f1cf37960ba3eed52c487605c51a203
MD5 1ef6a45327ebad83fab04de9335f8ab8
BLAKE2b-256 0803a20c2cac383d0d372d3459a0cc2f6b6709807456b41119785f1aa6c9fdd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bb6fb86aa94a00ab8647a123277ca1a7294cef9a3f299c441b14514adefb4acc
MD5 e2d7d2586a82639d5d620500002692f2
BLAKE2b-256 4240aeae7e51dff0c7ccbdff14e1065ebf38d423e9a9327435d6dfb7fa100959

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0b9fea53de41393837a7a94b73ee08d172453575a10cc78106cab42ba78e8bdb
MD5 51ed2377f5d804222b700f3f797dc7e4
BLAKE2b-256 059c6272ce3c1a1724e260a0751a545265a26f875af3223dce53dc0e5f274a02

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9d4c84e4ffc46f22b3096a4c38a264f33ffe7667f5f93e6bdd2e627588599d0e
MD5 f85ca22b4955053e5a04561c236e3f6b
BLAKE2b-256 3c272490a191e8022bba7c748703dc33327b641ed1c20bfcbea6f4ec8f41fdd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ea82528c80aef6dc27ee3a6f3561724a733d7cddb8e67d471e409fed682d8d08
MD5 36152b5af58576acd5a1837284a39628
BLAKE2b-256 fe7e68df24a821508e7308808310b8dcb75f2ceff71761d557b6c4c314acad11

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ee1a7347f57ce50740c072433440fadbc2596e84b2f53e669cfc9d3ae5ad6eab
MD5 b579c581c73e077d67a35f90d8e49c2e
BLAKE2b-256 6cd574b073b1c4a3d97a37fb309b9c0dbcc214561e2a3ddac34bf2e2a258d795

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 361758cc3b45dd112db1632f6b1683b10af8be9c2e83492e3c39fd3f6eda73d0
MD5 4885dd9882913a38019781a1953c39af
BLAKE2b-256 801cf5682ee36b4d6e6d492ef90738e94b68af47a1470ed9937415d342a0b118

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1e1862475e8945651c49ba9b334ff1874228880de3f8d6ad048d0da041f74f38
MD5 56b134693a42db986361437e8b9ae90e
BLAKE2b-256 ccfb58d98de797737c58d269342992d1a57f43634786c3bf29ac324a235b3fef

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3fd29d8af1424a39cd85df500807beab1d6bc92b309b41a3d159af6cd8ac4231
MD5 ab500db18384ca5d4b31116cd3c11f11
BLAKE2b-256 737275fb3d7ed1cb2ddb30befa68d73472f04bf9389a18b0dafa736e0951c387

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1d76ae75effc13f888480d29c22c0446608b1059cbddbac90b32bf7387f1f6b4
MD5 ee6d2d144cdc78bcea3a56b9354d13c3
BLAKE2b-256 f2e7cf2c02f0b5ccab0dd4c6be181b3bfd79a87711d11b9faa52b19a35737835

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b131e9f0784972b661a17815e7cece4ca7bfb1e8cbb3e9dd102fea8ac43be64c
MD5 dbf0e4e63495289d15f8c8f677aaf4a3
BLAKE2b-256 d72c8d43650d01288fd8c307cddba797f8de982edcc4a17593574f499609841f

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 05a124c671beafd3e8727f9b4b2e4cfcc5b8fa4f1de67d9328fc8099611a49b4
MD5 0d9cccd07b3ebd18e528cffcb6584a34
BLAKE2b-256 97b9a41d2426da417c56542480925b0785f1764bd70931124a054d4b4acca39e

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 698a78acba2ebc319432d3303639178354055d9822b89b255f399de6b083a936
MD5 60a6e986bf0f70648e4a6e45d85fac97
BLAKE2b-256 9db7ec6dbc5a82b2814c92d3de04292537d47b3b8236986c7de2baa182f6819a

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7422dd4635e4bb324dd83019ea5354067514f0a4c44077cb27e9d0d7c06fea63
MD5 39812323973ac24c5b277f16a03d3caf
BLAKE2b-256 3e830a7033674add66f9d924490ec30b236d9c490ab2fd8c72f4ddfcedfc2e9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 31bd9924d0ac1d377a2a1558dd6a93f408942e6a835c7045d97f13ade3205c85
MD5 d533a4dc452d230093e59f8ca6fbdf2e
BLAKE2b-256 7338dbc28d31aa969d6386cb1a1536d754651c295f8de0e1c2e6f487e0fae7dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b99ed3b454b80e8993236dd6502c9fc6378316480ddd24907c50ee2b07f4fb87
MD5 632e34d5409ee90c65464e1311cdd1ba
BLAKE2b-256 4eede137c081c263b30bbd1ea01d4d8f7b21110b49872bef8614a684763c12dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f1b68536043360143d9be858846e49afaca278b2fdab4ffd1735e68c19f7c436
MD5 c1815bf5b559697c51e4fcbb000e0add
BLAKE2b-256 0f963f8423f4ebae763f7d45b28b2d252256591f41badd3b2ca76983c1de9266

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c2546fb7897f8325b35eff77dd4519bb2861bebc6f590d05c7247d4bbbbec1ce
MD5 58c056cc97efbe0ad60ac68c5562a2c7
BLAKE2b-256 be0722381510a232a3ac8ece2fa8fb4f12cc8144df6ea70f349298375048c5ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 231e8221bdaff4e1cede9b22fdaf13419d12f5a7be83f9f5bc6f32da0e998526
MD5 3010f55cab27e318f8653539d3026485
BLAKE2b-256 a829b27b3d2c79d4ec7670f4552c2ffd14b257929c0bdb913789616f53411112

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 66ea96cc7656a613186dad30cde4f469e0e58d7699fb4671a76cf39f406cd896
MD5 d2a2251e5a227e1e9f81ad8b49e0d784
BLAKE2b-256 765a41955452b21684e075f5afe51ecec44560f57f4be84aec965fba0623978d

See more details on using hashes here.

Provenance

The following attestation bundles were made for secantusdb-0.5.1b4-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.5.1b4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for secantusdb-0.5.1b4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 574c91f3312055d52e0ecbf020a9f14a52b446d3e12b3d6c151276112274a0a0
MD5 3a8c365deb56b3e5e60711a5e026bcb0
BLAKE2b-256 7105e0fbc2c62f4c38ccdf8391455904e16fb0758f6be510db9855d0514ea9d0

See more details on using hashes here.

Provenance

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