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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

secantusdb-0.5.1b3-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.1b3-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.1b3-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.1b3.tar.gz.

File metadata

  • Download URL: secantusdb-0.5.1b3.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.1b3.tar.gz
Algorithm Hash digest
SHA256 46e63bd612b0c239c5fbebe1bc4710627b9a19ec82435ee10c3ed21ed7c86939
MD5 e5852ab8e2fc36309f7c3a4bfb023a74
BLAKE2b-256 3470cbef1c7f3e2c73edb694292e3bb8ea7c2c48a37a32f302c1594585cbe172

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 29efc04fafafc3df923529ef90a199542fe9cf508459394e9c0791124b6e1dca
MD5 16dc804180c9b2d09e258d50fa83ba2a
BLAKE2b-256 c64535e6f2791d7063cc95f203bca5ef5fe3ab5cba6f0532b27c99a5d722aad7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8c5cd3acebee541f879db4256d0d07bd9e9c0a87d9ca2d2d3261e37e26a3a707
MD5 96bdab7052082f4d31e80d7b6c790cd5
BLAKE2b-256 9924a1a9b277ea0d01ae2a08deaea73d61fb48d7099b32417c31f83d0f5bdef4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8d1ecd473ec2a7d1406186bbafb55a01107182804d77affdc27bad13aca03acd
MD5 ad5cb8705187d73ee19de2f749d0d77b
BLAKE2b-256 8e544e8066d11ea917fa293009eec6ba36cda9f1990816a9227a3bb292f695bf

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24cd38d30edb6e143cdd134c7f8b15ee77b23a27517651e888a7208f1f7e2a12
MD5 1921df3a332a2149f20853e8be185bf2
BLAKE2b-256 2300810d948a036eaa5ba8dea451bbaa6746eb4b932210e2c30b3f8ff97bf5dd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d35f5112df22252a8dd057d7bae6d578aa223d1f79489602a86cb0ac33dc9864
MD5 a7f4b9f69dbb0b35b262d25feb4fd8c3
BLAKE2b-256 7b5eda7ceec85afa060ec17ad0d2cfece42fc3287c848045bd2d44906b7b7ff0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 04c6dc251282f84d9834688ea71ef8105c1630093f5134cfe9b35e9f620e5e2c
MD5 adaa7d626a7142906b05e52660ee58b0
BLAKE2b-256 a33e1ae7f65d1de83bd1b7e4acd0ae3d5f57fa19f71257901a05b93ce8c7fd4a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 97ef65a084c46e221075e0f325e34e7ca570bd15fa1e9e9e3520428aeacce61f
MD5 7678eee4356f4022987d698b8998a6f0
BLAKE2b-256 25a682963a44828a0ab926c6412162b7a607730ddcd51c155f95c31fc8efe710

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4ddc50b6f6a0c1052b1f3e0653b64bafe0dce3944484682d37f6d2249444982f
MD5 1b356c2a1edd6893dff6c1f0cc14e6bb
BLAKE2b-256 1d814d7975aebf2e0a0357a03a1d6121165807c306c8b0d3765f5a87813e5177

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 926c581f83550574567f3dce0386aad9091c6a841e32834945fae8eb2a398b98
MD5 93bd074b3ab049d3d1c2a02437b3825c
BLAKE2b-256 a91a42a146861f9226cff7129d1e37ea4ed0b9f959ab902061e9dbe114744e35

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88a90fd5afdbf691e4832e46883bea79bd57179696726152ea11afcc4e2d2a40
MD5 b1c7d7cd8cc04d4d65b9b5c115333b09
BLAKE2b-256 9fe8de92dc31c0e65d895b562909130a7ab16b3188b9327c93f5b999e0c9429a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4f94e080365cf307c5766f64beeed1ca91d117acbe9592aa32843fe9de0e8465
MD5 ddd6309d850dc037e8c2435b9c1310d1
BLAKE2b-256 03a34938d18006e34886b9a526026c7c3aad3a45b956d540d11ab1fbb86d5061

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5d1096f8d99813711c9d253c14551dbc4183c67297aecc1443b0f1f16c73439
MD5 fc1961808a5f79feeef04722442f7ad6
BLAKE2b-256 f8251fca9c87e4137df8c267ca819134979ef4443ee4c754ec224e7016d69dc5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c531c624e818612100ded0f3e6cb35174d775b71220bc15070c61e37c440955f
MD5 4d94b2855791e407eb7c5b48351efc0f
BLAKE2b-256 9dd94ab9e822036f448b76b6768814aa5850f5afc4e25662cef304d64bd23691

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 04973555ebe66d303776a2fdf522c44e03667a33be844c29815d27779dcac3f1
MD5 df15942290c178c66e56203929fa6c13
BLAKE2b-256 1194f511dd9fdde910ca6c6757bb02ee0dbbd65662987c6dfb285748661f1afd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 859495209664780b07e109dbd625f0c74dbc636a722c57acedf13468f7cdfa46
MD5 bedc9c01c9939e81f1e1c65c5a651927
BLAKE2b-256 69f463b4887158de9b354d1d1392bbbbfad64764274488a0d314a52ffa95da30

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 16a4a62586ed013e79fdc16dc3ee53701e5849301a1e6afebb592a09dab8eac0
MD5 17f3e2f209dde154c312a1395951b9d2
BLAKE2b-256 63301cc2a394332077c54c5d3b9ed312b0902e86eb8bc6cf26f34fe03fdbc416

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 af613c962efb72b895b87cffe1b48ab01196b1a1be120b214501cd925e1f1b0c
MD5 e38643fc2ccfd5c6897532a328fd16d9
BLAKE2b-256 dd6847445e89335c7f0c2dab30048a56969c2a7243fa998999f314230cdc5c7c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7275d19e557d17ed33437304fcc42504396f8e0c59860a0aa243f846bd78d1a6
MD5 c0b406a5ddab79c3f4ee3ae4c9477950
BLAKE2b-256 2290934b874062e910f397bc0eb1258fe732109de0450a1a374f69ff49753435

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6744fc7f1668dfcc5c39251e96d3e921dadcf0bb101cb635ba3651c4e6d7130e
MD5 6ba810de742f6eb5521d06be4c3da26d
BLAKE2b-256 13fd53cf3ecf7f0b4eaa31c704f797c703b0465156f6893ae4ca0b5373c964db

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c30c328eb99f46914eef542a05719a3b7911652c06bda3c19460082a19b4be23
MD5 0e4a9ccaebcb0070564dce4f2f540b4d
BLAKE2b-256 a42fd117862409d198f6b04b0d837c643c76cc1d1e50b40fa3ca23bd3c09d5f5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 62a359a7ac522b900a7d58e39a29c0e3bdf7db15dee471d4386dfc050945334c
MD5 a98cd9175b180c6ec88916b3eca912d4
BLAKE2b-256 831f186a1007aae7bfdb828fe5997041445a0faa2cbbc6d9b50e470da87f096b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 932d18ba2c8bb13eb70720ceb2ea8768cf93d975f053f615eb8e44bce2ce7341
MD5 efa533fe894f029a5d0210c5246477ba
BLAKE2b-256 00bbbecb9276de74dcab9a96f02edff3a489f4d2a34cdb222573918859dab6fd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 48dc79d033f87f99210a17a6203aabd1cac39384e84bc54c39313e384983ba87
MD5 4cd4b7ad0a4c5d7a3531e92c63dc30d2
BLAKE2b-256 ec038173c6cda05e805d6e990957714c530be3b74594a61e1ee248f1285ebf09

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for secantusdb-0.5.1b3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 516b22eb8312e098a3c1abf302b51e8864b3aeaaf783eb2b75c851fe4313f035
MD5 05e0fe8b3868204cf62c825102b3327f
BLAKE2b-256 2a38ea5a71068c643a7dff90d18b28a88247051e56869d4f6ee40a1d85f463c2

See more details on using hashes here.

Provenance

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