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.0b3.tar.gz (6.0 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.0b3-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

secantusdb-0.5.0b3-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.0b3-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

secantusdb-0.5.0b3-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.0b3-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.0b3-cp313-cp313-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

secantusdb-0.5.0b3-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

secantusdb-0.5.0b3-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.0b3-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

secantusdb-0.5.0b3-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.0b3-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.0b3-cp312-cp312-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

secantusdb-0.5.0b3-cp311-cp311-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows x86-64

secantusdb-0.5.0b3-cp311-cp311-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

secantusdb-0.5.0b3-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

secantusdb-0.5.0b3-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.0b3-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.0b3-cp311-cp311-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

secantusdb-0.5.0b3-cp310-cp310-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.10Windows x86-64

secantusdb-0.5.0b3-cp310-cp310-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

secantusdb-0.5.0b3-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.5.0b3-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.0b3-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.0b3-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.0b3.tar.gz.

File metadata

  • Download URL: secantusdb-0.5.0b3.tar.gz
  • Upload date:
  • Size: 6.0 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.0b3.tar.gz
Algorithm Hash digest
SHA256 de3ce6f9eaa38af867cd69007ec057398d8b37361e6dc598fae16b573eb52fd2
MD5 06e05761e44c88b219415f231b269cf9
BLAKE2b-256 9dbf51c00ea9c7448e6781bf084e03601ad493154deafe583d3219fe01e0cff3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e623eb5d95ab715c79d2e494ed1b04e93cb47de20b2b765fd92cf94fb5896f21
MD5 348754e9db87536698150193e9f05160
BLAKE2b-256 9d23c79835fba5e148c40c7d8b2f5529ed362b9f0badd71dfacc885fe4e2a6e9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 682cef312553e1cb90f3e909e11a15cf8f01423b33ac7fbb966def0491bde7b7
MD5 f66c1a750c6ec9a80ecfbe4cd03d89bf
BLAKE2b-256 bea24652689f04fb6edb9722b20c4bec889d78a4ee2c1d7eaa6d8fbc7f02ccba

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ca68206ca0469cf3666764a4e606c5829ed8cb42ac90cd5f96a2827b0b44c8fc
MD5 764f51b3f2576ced52c1892e98e5df80
BLAKE2b-256 ee32df6e53b2951dc717c1f8aeaa3e1bc9f201f5e037e07e4262cd1fbbf2c281

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08708fb8f8e91742353d5ee3e951d078f6b8d9996f03c7c19603fa39a647fedf
MD5 2a6364a1802c183c2892c41e8f443d36
BLAKE2b-256 00e040c815f47af071eb8d37a866c64e54a11151e421849f0cceeba03f37d281

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 55f9d41e74b1cd70196213f81c547525b3f0d97fc0a9b97b3152bfc6908ef04f
MD5 173286e9614d5db28ea02596d539c733
BLAKE2b-256 f5e20a379874c3dd6bad627d23e0b7ec15354cf3bade2e108825b433cec72a93

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e83195472ba48b68d0c23b8ce68e76d0cfcc132cd9062292726301e889f06013
MD5 5051e5da01e48d918553b72f4d6cd435
BLAKE2b-256 2006ff6d7a31b62b4ae65d5e1bb1b84d7ea60139961c34d675b1a90dfe76bcf1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b1febba60b9fa519e6fb1c2804b573e63d883d7bb07c6c7a691d80487cb144cb
MD5 02f35f5d639b4f8a59484e96064688ae
BLAKE2b-256 c9e6ae17602173a92b0ee0df4f39da7596b18080afe192ba1fa9f81d529e29e3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a01855c4f87d5f51702bd3d1afa8ad06a06e168aae4c5ceffc80ee2519a4f82a
MD5 8792ea65bcc65d11de0eb9875939ce2f
BLAKE2b-256 7409d9e936537b8c064a20048b0901b0caeab35df62ae5bb4b119b9d9eeafced

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 205898eb9f3716e9b61df4258c2dce37d8a88501f979b36d49b010789af21aa7
MD5 9fc25790155655d30602e76cfe792f56
BLAKE2b-256 1a06ecb8426f2d0ac773c8e5b46649db8e8bf68123e478598fd17cea93732c85

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efbb664c93c17cbe788f2fc6a267fbb56642caa268e6539145ccc862134341d3
MD5 b8af80276f4ea74a7ccc0b68e07e4baa
BLAKE2b-256 e5eaf7f036adad0ceb7056f4cecf01f2fee8f6c20317d4826c9b6b178556e0bc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 21972e952c45971dd54be8ad8e15d6635454909236928150686535807eccf32f
MD5 8b484456e4be63c59bb8447108e7a64d
BLAKE2b-256 a4924bba0f66c8b129c52f552988529a721ab55c6ae63fec8d042f0f11153185

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1bd319b60a50c08753b28c58def7e94350bb7250cabe7cccc4be254bdd56f817
MD5 cd38a5da9d7e704e80f2c2322cf877fc
BLAKE2b-256 af1b055252ef64fdccf17c4b6bd5b2bb1671ebded4701a8aa96c2254231925fe

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d3c6f7fe1eee9bbe6d23787e1d529bb9c5e47c531ddb77fdd6fb234b499c7bc3
MD5 1f9d0c954bf1653dd3e5fc3f802f213d
BLAKE2b-256 0d6d1a79a2c99f36123edb5f13558a8baa3484bc654d165ec326f5bde9bb7725

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a18afa49a15d25cd7731de2fc0979394bd16ef086a0dbde7ed46602fc424bcbd
MD5 2986592c5e9e2f42dca66f438b937f96
BLAKE2b-256 8250cf8e342ba56c03f6006657a2b5408c656d65813dfea88720410199431b26

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4049f513593330762a06ff44acfab3f4a39404fa7c08aff95f2258a2c0c5fdc6
MD5 70828c5dc0976ae26f9c811006028d65
BLAKE2b-256 f597468e887f5e0f6faec877703ca9b7ad86f6d338bc92bbfe0163a209877e0d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 edf9032aabc72360cef32b3ad030fffb48dedcf6b66c910cb60232ae520d4c41
MD5 111b32be6058073fbf60a196298b2abc
BLAKE2b-256 a77cf65faf99605b8ba1298c34e83cfdea5fe750e2c4e44512debf8d3c608702

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 67c50b2ad87c3cd49946a710715b4ad9ab7e2a103c4877b8fa46d31b755abfee
MD5 b577824259ada1be5e70fabab6d6312b
BLAKE2b-256 3f473266f706336ed26a6b7f8b72761db079b9287a18c7c7d6beb5a762514f4a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e14c306ad5c179bbd8ba640661118d52e979cf85ba52667d7b6fd28726f75d2
MD5 2884193337167c7e560035674a37ed36
BLAKE2b-256 4e69c2aee943a5af8303b812f32a0e1cc01bd1c3d552b97709fb9526dcc5e7af

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 373144f22de576e22d0c61414ff7088b517d2420e9945c718497c54a6c536cb3
MD5 17ab30c2fe52d2a5dc78d817430a535e
BLAKE2b-256 013ec5b961b76c79a3b23023be91c26748dabf6ddce0407c5387e174683e6ff0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8415e01be973d2d013991ceaa557c67fd1d0ae9b00c028e4e7db5d66d939c433
MD5 f988b8e9ee089f1e4a1a6596c4e3f764
BLAKE2b-256 b464db5e1634e1d1134bcd5b93bc1f55f7028a55959c62bf01e5c922f221bf49

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6a4420ffba25466b90277066eded1dca89057e8bfbf0f648f55ec3ac7d250de0
MD5 0723136558f39467880d00bcf6369f27
BLAKE2b-256 70bc2884429920f164db62659511ec5432ac0adaa242ed5926dd67c345322026

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 17fc5a5ee33170f8e77912a76b2f283e60bb06fe875c973b14791088313792e2
MD5 ed0783f63322a693bb8927ccd7543439
BLAKE2b-256 8776c4638b2539cc834d84d3749f61485804aee3b95551b4761c5cf2cd64b827

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a4cdffa4a559278e44b1e8b4948d40ed483542e460ae7aea510b0911f94d32d9
MD5 5a04c5f598ad95fd13d6ad26348050eb
BLAKE2b-256 126dcfc0cc832d897c32c3b47cb6fa19c59ec1e7f273d17c7d4e6a0087c28ce3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.0b3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22c4182d5bb35cb476cf2f6e12515f2aebda2d0866afa3d4f075fb4fc6f6cef6
MD5 623f01de04027c5fea869095823682cf
BLAKE2b-256 6d679477c559ee70fbf8523d02ea1768fc8f6455c591d0bce0990db78b0e4b4d

See more details on using hashes here.

Provenance

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