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.1b15.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.1b15-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.5.1b15-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.1b15-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b15-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.1b15-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.1b15-cp313-cp313-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

secantusdb-0.5.1b15-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.1b15-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b15-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.1b15-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.1b15-cp312-cp312-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

secantusdb-0.5.1b15-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.1b15-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b15-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.1b15-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.1b15-cp311-cp311-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

secantusdb-0.5.1b15-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.1b15-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b15-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.1b15-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.1b15-cp310-cp310-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: secantusdb-0.5.1b15.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.1b15.tar.gz
Algorithm Hash digest
SHA256 3f5abba069716c44f0d68445db1689e719881aab84e20f25ba575d1a3a6978f6
MD5 54d4d81b02371456b0a7ed6baea7b28e
BLAKE2b-256 6a052c81fad2e1b47e611e6f6dd52dd34f388bef5c04f9c60b754cb9e7050cda

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 aec768091fd0e21725b42a0f1e55eb60be804fb03b11e34695dc3ffa6874ab82
MD5 779c5a8209541c4be8a83668f209969a
BLAKE2b-256 f1b400aab3e13d777a9fd2fcae61f111f0fd63328b227109d8e793f07261f94b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5820b71ba912e6d405863d3a7f2ac03716c7fe5c78c31663210fb24c5f7ee410
MD5 52c25b088a727c3be1685cac2256ffc0
BLAKE2b-256 c9c1af454887ec41e8cef512ebbd235e7a0d37f0ce7a4995c3beda67120adde8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d30582057f62e5efa9570755eb15bbe81fcfd5e5572ddb5c905601536fb083bc
MD5 81aa95b1235c477a9df8c00b85c49437
BLAKE2b-256 a7818d0279c90da8f4568ffafb430dc693e6bc426c52f7743f4c497b992813f4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ea177e573cf16494b7c4dfcce41a4693c740ef4c6d8f513374f6dbc9f18ca36
MD5 e9ecf1b85f468daf712886dcade370de
BLAKE2b-256 5c2bf34c1c4372fe06bc0661e2d10f40ff5561c0551d7353d785350085175e24

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0daea89b12a2072363609a1170a4815ec48a07f4afb7268213d295d1aa614e05
MD5 a273f06743c34ef9b1857fe5a04ef807
BLAKE2b-256 d0f264f917a031038f95d570103e8c019051f6a82f67e368a05be84efe23d1f3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a351663872939641e3a60586037a5c769f84bf067329ddf0a5a1bf968c9a6ca0
MD5 60af3d391eecb8854db462a3f6d8e685
BLAKE2b-256 845c4cefff0e659b4c40e3b6a869d7c7da2cd1139d29860bc076e00a0bf1d6fc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b0a15cb1c266855eba9382b4d23d273f9aa7fdd8bc5686f18a706ffbdc161878
MD5 4adb098a3f0ab11693ff8d271eda10fd
BLAKE2b-256 4209b078b137c68b0f59fbaa789164a69a11e8bdde184f835dbe0ef4462cccfb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6a4f32ceb2aabb203a02e285e3673afd6454c4c1f63875eafe8dd53ba1105386
MD5 a5096bf616f0cffce16ce0e80e069e56
BLAKE2b-256 2ce11caeff1a1deb1e73312c0658feeece436fc3c39f444caebf7895b5267e53

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 87da409f37bc8758a064726913a5b6c492f6a875a68cc1bfc38db3e3fd80c356
MD5 529246e5ded9025ea00b503d98565f99
BLAKE2b-256 72df93bf028c7990703590617a2c4c4104bc8aa31c8429b25b3e59cb1cb0b494

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7e36345b4bcedce6a9ff9735da1234f4b915fcbb2c7a53f6d6d7f355cbc54033
MD5 e623002a05cd8dd0b94739cba14aa734
BLAKE2b-256 e0687d6c00fbf7a680df80b5d1b4ac827c85440eb6a9f842fa9bc91332e2f4a9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 944aaed9b8b525b8c848b219ab4470b293ee17217ca108580b1bac923faeed82
MD5 83f6ec3b16129142c96556c78d37580e
BLAKE2b-256 131ffb9b6fa5ae67373e3cfd6da524910be8ea0da1373c7ecde82e319239871f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 be6f18f7f477026d8df543fb18976ea7d9782d527b3d21b59fcf3ecefc52e23c
MD5 19f6519ef50d773ffa68d11b80f02f6d
BLAKE2b-256 1321fb4837490f8bf4826cfd18f23cad93b08808929251c91fc5817e8e3a3e34

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fb17c46907bda459bdd2ebab16b030d550844c0e6f993d6795b99bb9e7f9d472
MD5 716e0ff1d86f38103f7f7b8e00925b5a
BLAKE2b-256 bad735ea098fd47763538b33b8fbe75a414f96c594110b3b68f7c6e038058f79

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 86eca6cc302356cda46f6e0478565edcf054456e887e5a6848d80769a948028a
MD5 ca38515d6472e4cff06931c7f4d7d615
BLAKE2b-256 7440bebf513a38e70454f9d3e77017a8304c75c81e0a11344f59d0e31a04a180

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6f7523af933a07949ed8dba8852118043ead0d4aa9e9a0361839a33c26b22f68
MD5 516b6f775d70d5662d530c2c0c8dcd8c
BLAKE2b-256 9a48dcf9709201adc8662d398225c9ff61a3c5e1938099b5edfd43be0733b135

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 16bccdc57d09e146a2d749bbd108788a88227c3deb381904f1d49dbfeba1f003
MD5 6c76d78bbaecc0f5d9b2e30247a01cd7
BLAKE2b-256 f61cdacd7b84b40e60dfc90399ff30382456fc281937d7218e788a16744c2db9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 09087a57dcdbbac387170282167ab3523f3215256edd8e83b76e05789b7f0fb1
MD5 80fbfa4564e18b9890407db80718661e
BLAKE2b-256 46f04b415460e1570de94845b2e8117d775d4c65d8c8f37fdc60c1422f247c26

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 75c07f91ec33f37f27bb597b8b5bd64b86efcfc7c98c4841a1171ad89e50bf61
MD5 0b4d79600fe284dfd03f11a404499737
BLAKE2b-256 a7adcd136b876ab83199e31822c8872e58913e575673a938f079b77d23e29047

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 00510901d6619300ee33964804dd81e2630c8bccaaab698c928fa6961a6c7ac6
MD5 c6b1b9c168051319b1319f76a2164002
BLAKE2b-256 f61c0b7dcf0fbd0242f9dd99f94db64df60a89a5f78516f1fca80924af4d1e15

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7bcee50ab75827755f6a6b1b24cd573fdeb89fa2a877b1574db044cc2ef1e6ba
MD5 df8caf288c53e261d66eec8e4226a5f0
BLAKE2b-256 c92bedc9e30d41d8539ba2205b690112e6988741e0b5e0f170d7ce8343f4ac20

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8f1c0db622962aa478ac08392070182c3432539047c190211b91b56f496438e9
MD5 5903cf9874d6051172b1101185738849
BLAKE2b-256 6157438225ae8746c3271b6efeae67ea843f27d5b34800462d0dcd5ea09509c2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc5e633468f08b6f74ec34eafe25d01de70250a0c447271b2e51d3f2e09c3612
MD5 d3367e7fb9671e43ba18f77c55dd3fba
BLAKE2b-256 7b89ee67e0261d8b5810f2244b3fd3592ec89a11962816ab7a552a76db20de2e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2c5a44d9cac53ac971d105d28881c34cf653ec4587039efa66fe09dbb43711f0
MD5 7554237a75ac6f94dd71a5b07e3e9740
BLAKE2b-256 65892141fffb5cf016cd4851ce6b1aa07c8c705fb15487567f8d3e96283692e5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b15-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5f92cfab26bc6157a6b1066a124632cd871b5d7513b91a7aa32c8fcb4a8b27e4
MD5 82387b85cc2409f8918ad958204a07d9
BLAKE2b-256 a070a79f48e144eb459224bda26a7dec29cc044886d3a798d9979f173a8484a8

See more details on using hashes here.

Provenance

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