Skip to main content

Ephemeral SQL index over a local directory

Project description

dirsql (Python SDK)

Ephemeral SQL index over a local directory. Watches a filesystem, ingests structured files into an in-memory SQLite database, and exposes a SQL query interface. The database is purely in-memory -- the filesystem is always the source of truth.

Documentation

Installation

pip install dirsql

Requires Python >= 3.12. Ships as a native extension (Rust via PyO3) -- binary wheels are provided for common platforms.

Each wheel also bundles the dirsql HTTP-server CLI as a console script, so pip install dirsql also gives you a dirsql command on $PATH. See the CLI guide.

Publishing (maintainers)

Handled by .github/workflows/publish.yml (invoked from minor-release.yml / patch-release.yml). For each target triple the build job cargo builds the Rust CLI with --features cli, stages the binary into dirsql/_binary/, runs maturin build (which picks the binary up via the [tool.maturin] include rule in pyproject.toml), and the wheels + sdist are then trusted-published to PyPI.

Quick Start

import asyncio
import json
import os
import tempfile
from dirsql import DirSQL, Table

async def main():
    # Create some data files
    root = tempfile.mkdtemp()
    os.makedirs(os.path.join(root, "comments", "abc"), exist_ok=True)
    os.makedirs(os.path.join(root, "comments", "def"), exist_ok=True)

    with open(os.path.join(root, "comments", "abc", "index.jsonl"), "w") as f:
        f.write(json.dumps({"body": "looks good", "author": "alice"}) + "\n")
        f.write(json.dumps({"body": "needs work", "author": "bob"}) + "\n")

    with open(os.path.join(root, "comments", "def", "index.jsonl"), "w") as f:
        f.write(json.dumps({"body": "agreed", "author": "carol"}) + "\n")

    # Define a table: DDL, glob pattern, and an extract function
    db = DirSQL(
        root,
        tables=[
            Table(
                ddl="CREATE TABLE comments (id TEXT, body TEXT, author TEXT)",
                glob="comments/**/index.jsonl",
                extract=lambda path: [
                    {
                        "id": os.path.basename(os.path.dirname(path)),
                        "body": row["body"],
                        "author": row["author"],
                    }
                    for line in open(path, encoding="utf-8").read().splitlines()
                    for row in [json.loads(line)]
                ],
            ),
        ],
    )
    await db.ready()

    # Query with SQL
    results = await db.query("SELECT * FROM comments WHERE author = 'alice'")
    # [{"id": "abc", "body": "looks good", "author": "alice"}]

asyncio.run(main())

Multiple Tables and Joins

db = DirSQL(
    root,
    tables=[
        Table(
            ddl="CREATE TABLE posts (title TEXT, author_id TEXT)",
            glob="posts/*.json",
            extract=lambda path: [json.loads(open(path, encoding="utf-8").read())],
        ),
        Table(
            ddl="CREATE TABLE authors (id TEXT, name TEXT)",
            glob="authors/*.json",
            extract=lambda path: [json.loads(open(path, encoding="utf-8").read())],
        ),
    ],
)
await db.ready()

results = await db.query("""
    SELECT posts.title, authors.name
    FROM posts JOIN authors ON posts.author_id = authors.id
""")

Ignoring Files

Pass ignore patterns to skip files during scanning and watching:

db = DirSQL(
    root,
    ignore=["**/drafts/**", "**/.git/**"],
    tables=[...],
)

Watching for Changes

DirSQL is async by default. The watch() method returns an async iterator of row-level change events.

import asyncio
import json
from dirsql import DirSQL, Table

async def main():
    db = DirSQL(
        "/path/to/data",
        tables=[
            Table(
                ddl="CREATE TABLE items (name TEXT)",
                glob="**/*.json",
                extract=lambda path: [json.loads(open(path, encoding="utf-8").read())],
            ),
        ],
    )
    await db.ready()

    # Query
    results = await db.query("SELECT * FROM items")

    # Watch for file changes (insert/update/delete/error events)
    async for event in db.watch():
        print(f"{event.action} on {event.table}: {event.row}")
        if event.action == "error":
            print(f"  error: {event.error}")

asyncio.run(main())

API Reference

Table(*, ddl, glob, extract)

Defines how files map to a SQL table.

  • ddl (str): A CREATE TABLE statement defining the schema.
  • glob (str): A glob pattern matched against file paths relative to root.
  • extract (Callable[[str], list[dict]]): A function receiving the matched file's absolute filesystem path and returning a list of row dicts. dirsql does not read file contents; a callback that needs the file body reads it itself (e.g. open(path, encoding="utf-8").read()). Each dict's keys must match the DDL column names.

DirSQL(root=None, *, tables=None, ignore=None, config=None)

Creates an in-memory SQLite database indexed from the directory at root. The constructor is sync and returns immediately; scanning runs in a background thread.

At least one of root or config must be supplied. When both root and config are passed (or config declares [dirsql].root), the explicit root wins and a warning is emitted on stderr.

  • root (str | None): Path to the directory to index. Optional when config supplies one.
  • tables (list[Table] | None): Programmatic table definitions. Appended to any tables in the config file.
  • ignore (list[str] | None): Glob patterns for paths to skip. Appended to any [dirsql].ignore patterns in the config file.
  • config (str | None): Optional path to a .dirsql.toml file. Its [[table]] entries, [dirsql].ignore, and optional [dirsql].root are merged into the constructor's inputs.

await DirSQL.ready()

Wait for the initial scan to complete. Idempotent -- safe to call multiple times. Raises any exception that occurred during init.

await DirSQL.query(sql) -> list[dict]

Execute a SQL query. Returns a list of dicts keyed by column name. Internal tracking columns (_dirsql_*) are excluded from results.

DirSQL.watch() -> AsyncIterator[RowEvent]

Returns an async iterator that yields RowEvent objects as files change on disk. Starts the filesystem watcher on first iteration.

RowEvent

Emitted by watch() when a file change produces row-level diffs.

  • table (str): The affected table name.
  • action (str): One of "insert", "update", "delete", "error".
  • row (dict | None): The new row (for insert/update) or deleted row (for delete).
  • old_row (dict | None): The previous row (for update only).
  • error (str | None): Error message (for error events).
  • file_path (str | None): The relative file path that triggered the event.

How It Works

The Rust core (rusqlite + notify + walkdir) does the heavy lifting:

  1. Startup scan: Walks the directory tree, matches files to tables via glob patterns, calls the user-provided extract function for each file, and inserts rows into an in-memory SQLite database.
  2. File watching: Uses the notify crate (inotify on Linux, FSEvents on macOS) to detect file creates, modifications, and deletions.
  3. Row diffing: When a file changes, the new rows are diffed against the previous rows for that file, producing granular insert/update/delete events.
  4. Python bindings: PyO3 exposes the Rust core as a native Python extension module. The async layer runs blocking operations in a thread pool via asyncio.to_thread.

License

MIT

Project details


Download files

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

Source Distribution

dirsql-0.3.20.tar.gz (288.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dirsql-0.3.20-cp314-cp314-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.14Windows x86-64

dirsql-0.3.20-cp314-cp314-manylinux_2_34_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

dirsql-0.3.20-cp314-cp314-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

dirsql-0.3.20-cp314-cp314-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dirsql-0.3.20-cp314-cp314-macosx_10_12_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dirsql-0.3.20-cp313-cp313-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.13Windows x86-64

dirsql-0.3.20-cp313-cp313-manylinux_2_34_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

dirsql-0.3.20-cp313-cp313-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

dirsql-0.3.20-cp313-cp313-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dirsql-0.3.20-cp313-cp313-macosx_10_12_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dirsql-0.3.20-cp312-cp312-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.12Windows x86-64

dirsql-0.3.20-cp312-cp312-manylinux_2_34_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

dirsql-0.3.20-cp312-cp312-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

dirsql-0.3.20-cp312-cp312-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dirsql-0.3.20-cp312-cp312-macosx_10_12_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dirsql-0.3.20-cp311-cp311-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.11Windows x86-64

dirsql-0.3.20-cp311-cp311-manylinux_2_34_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

dirsql-0.3.20-cp311-cp311-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

dirsql-0.3.20-cp311-cp311-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dirsql-0.3.20-cp311-cp311-macosx_10_12_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file dirsql-0.3.20.tar.gz.

File metadata

  • Download URL: dirsql-0.3.20.tar.gz
  • Upload date:
  • Size: 288.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dirsql-0.3.20.tar.gz
Algorithm Hash digest
SHA256 7a7f8a5b61f3c97069d47835dc55bcbac7c22502722ee6bbc98fc13ef790fbba
MD5 f0f9428f3ef5d531b9633c0464f0f47b
BLAKE2b-256 c321f5216aaf87437ffc7fd546449003f2af561681013116cfa17f2f3ce7a308

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20.tar.gz:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.20-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dirsql-0.3.20-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 d9b6ae7201a4e10c32f9d787859cdc05110e326db6a482e467383c870d80220e
MD5 e65ffa4f81f462b9baa73d9e57f3e8be
BLAKE2b-256 b174b697394129de4b8a01d432a633f3128c29302e67b21b6f8015e5d79ed89f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp314-cp314-win_amd64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 83535837f4742aa18489a37f594664d63c308c0d981e3622b76fdb51e30c6656
MD5 c00e840b43961c48e1cfa1e737629f74
BLAKE2b-256 a4898f785b15ba9fbcf7997a9dddb4f03ce8e0380a26ff2fa3c21a0da831ce6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp314-cp314-manylinux_2_34_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp314-cp314-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 c6133d4dffa53960debe4ec2eb8acb724afbed002a92a27dc637f7e770b2a4b1
MD5 80ed631b32eb664d410899ec8f0b9527
BLAKE2b-256 311d15600fb3730d5515ac5b99f4cbd7e8f02d431c85be08923a70cd9c15ac6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp314-cp314-manylinux_2_34_aarch64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9882737c19e03970411362fd947eeaf7283f5fe5b1819b095f4ca439dc45de3d
MD5 bdaf54a40c2d65e4ed7819b92fc31f11
BLAKE2b-256 33ca66c31d18df2b028903890a1ea5a89253c67a220049d6ff2b64122195dcf4

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f5beea3dd579f4eccc8552a02b7b9cb75bf73f039a4eb907a0702d8d58dc5c4f
MD5 0661e8bddc525b7657502e461561463f
BLAKE2b-256 81ec05f54e78e847752a0a376c75b1074c601af4763a6d3f7317521472d53412

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.20-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dirsql-0.3.20-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 53b28d385ccfa60b4f2e91a96054ac45cd5d0bc718c1ee1ba9f092b2ec4e8862
MD5 d46a2e9f13e91e297a15b0f49f4a4309
BLAKE2b-256 5899e4d7d6460208cedc9d93ea4698741c40f1526619b115aed6a95d0685284f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp313-cp313-win_amd64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 5ee8cec957601e2977543643227ee6659ec9299419ae00d20092a36a247475b6
MD5 173d3f15c67b837adba6eca73b176adc
BLAKE2b-256 914a1cc22b8cbb0200d2fab26374ef76d711054ef592331d14766689b438b46d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 8b3cd6feeb6e386ea0384e686a0aa096ed89e7f41ff0b1bbdcf0e5da13a87d0a
MD5 3b923bb3589d362a686432b7ba3fa2ca
BLAKE2b-256 88daaaf87dca4f134ef515495148f5637419b0a0fbb7b6b0a8f8fe157f3ca051

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp313-cp313-manylinux_2_34_aarch64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bb6a54257a4a989883bf28098c0a17005b90e43fabd86ec9893b42ff363521be
MD5 5890bb3049b508b60d1637f502a3321a
BLAKE2b-256 0872c8476109d06da2a16a54b5016b0a7f6820b7b89f7e083ea70740069f1e56

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f46ccde5e2049c66daaf098e42698f91aa89cc6a9db1509bccc1bcaf7a93d233
MD5 2f29c34f86c77a21529a122538c49c03
BLAKE2b-256 f91d14a9fb95df8f0d3d9ce4ac3c76f3223d4d2049a31a9dc9116e100d86d3b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.20-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dirsql-0.3.20-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e607cee2d6f13bf45928b96714b7b640333088f0a0ea70bde39e66dffc877d8c
MD5 9c5e574bc9e814d4bced72dc4b8a7f87
BLAKE2b-256 65bb63bdcf61916c0d830861807c1155adbe9f601c90d79d6412a346ea93b361

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp312-cp312-win_amd64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 e4c404ecc2b34090360cd81a240413d8c7a1ea4b2aff668ed990febe80be34f4
MD5 1267ab26bbcf5f2930658797b0b6c934
BLAKE2b-256 0a04fed9e2e96aa32c083056d8142a9fb0b2abcfa9e236322c97118ac6c34f82

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 dd490b874de73e01043be029029f2b24a161292dd632853ca296b59a75f3b739
MD5 15f0dfa0907d10cb97fdb6c17085823f
BLAKE2b-256 e9f1df46123d09a5e495d96c7868fa992e467f694c9a253ff959dcb087d9db5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp312-cp312-manylinux_2_34_aarch64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5f45e748885d6f4b9ba45219060fbde10f67e5caf7ac5548d6cad60288a424ee
MD5 028ead6a0d61eb0488246beb04d1f439
BLAKE2b-256 5fbb5f082437bce175ed7cb6b2c97fc7679cc6120b531d69120c8e11f402fd2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 52797499fa996538fde2aebf4e87b1cfd1989a3af27f7fe82cd567e19acc53fb
MD5 5de98a7750794cdfd7933981a3637807
BLAKE2b-256 3c0d15b389cfe717a80a9ef6f0ab4364e38db18c421c79a167a513ddef8848e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.20-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dirsql-0.3.20-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1bfb168a7c917f85b361a2bb9e29788556d2c2d7bf352aa7d7e5a930ef47afac
MD5 a9cdc18f8b3afd3ee019d80e5929b1df
BLAKE2b-256 9cf58b423817fa3406edc1dda465cb0a50dccd69ba16e488e2a036b2cc4259a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp311-cp311-win_amd64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 fc87a2086da03ac5189dc14710431f0c4096050177d887fc78d097f8aafe9e01
MD5 44d135752cf868c5c1627c4369a27111
BLAKE2b-256 18176484b066364e8edb2b45c625b66bab57ac92ce45a75e9316d843fc95c0e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 3cb281c613c4a559f9e5c3541d23d91b5e290d9f3f328df145b532d635b91bb2
MD5 2270fd6f8cee6afcbfb690f66cacbbbc
BLAKE2b-256 6bd26ba272bcf95c83c8bbc81a41112d72a603722bdab662858a7936b16c2c95

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp311-cp311-manylinux_2_34_aarch64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 702761585099a4eeaa22396816c31821afc83698c000b5bb1cc2f80c9e511e1b
MD5 71d81b3e5c3160db7c1560cd9e809607
BLAKE2b-256 d00df3127ba59da64442e6a06e5cace93c3e4aec222fb75684afb4c35b169b9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on thekevinscott/dirsql

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dirsql-0.3.20-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.20-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b9b3b0f080cf5edecb5ea0d14c5172d5f46b2afd327f2a34973f824c4c67a259
MD5 4deda64f559fa404842dd8b039eb7ace
BLAKE2b-256 c0d8112b9e3a5586ede32c075aa35f5ee626373a5d5e02c1047731e26a064163

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.20-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on thekevinscott/dirsql

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