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.18.tar.gz (279.0 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.18-cp314-cp314-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.14Windows x86-64

dirsql-0.3.18-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.18-cp314-cp314-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

dirsql-0.3.18-cp314-cp314-macosx_10_12_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

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

Uploaded CPython 3.13Windows x86-64

dirsql-0.3.18-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.18-cp313-cp313-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

dirsql-0.3.18-cp313-cp313-macosx_10_12_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

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

Uploaded CPython 3.12Windows x86-64

dirsql-0.3.18-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.18-cp312-cp312-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

dirsql-0.3.18-cp312-cp312-macosx_10_12_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

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

Uploaded CPython 3.11Windows x86-64

dirsql-0.3.18-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.18-cp311-cp311-manylinux_2_34_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

dirsql-0.3.18-cp311-cp311-macosx_10_12_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: dirsql-0.3.18.tar.gz
  • Upload date:
  • Size: 279.0 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.18.tar.gz
Algorithm Hash digest
SHA256 4872da713ffb4eeccac35baef9e8709f9b7cdbae980d803665f382bb02ee8b4e
MD5 23072ada182c618ebb0068ef4eeb3982
BLAKE2b-256 a627fe592cd762c67f93e9b65cef4dc3dda4c6e85186d37a4796164d279e279c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18.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.18-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.18-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.18-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 9fd680421dc396d0670094e3d2c56389a5c2047473251b1779e2a433add97e35
MD5 0ab7a20a4e921abe27536ed6211304f4
BLAKE2b-256 54d42b2e5220c0fa5980917edcd52fc3b9222084615c5c269e3487fe60a47d94

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 60a61f2b3976ed523f8f211bff7e048722b7dfdc4c92e00d367ac66ad90f52a0
MD5 98054d2b5c03f8ec7f629d27c655f695
BLAKE2b-256 3860e2e81c68e43d5499c314a83ae22cbba5b2b777bb72cb1a778b7f34d53a62

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp314-cp314-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 69cf3bb034c28cb4b555c70809ec9aaa7335873a1529731c3df1a126395537df
MD5 99d8bd16e1763981442386afb01449bc
BLAKE2b-256 909a4ec0f9f607f7f8df2a7430aaa7a2dc25ad49acf09a1d50c8a7e67a78e9fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ccee192c502abba603c6c0713f2b2c72f326c2b36aa40fbd71d1cb20825aff42
MD5 c9a4ee91269000679bd1a9a280b29953
BLAKE2b-256 ec0db4f22a66d195c4059d89ecebdb7b8bd54d62b02a5f7846c057bbbb7a9aca

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce6fa8011864cd7982f9020c4c4af5957603a4ee40de094e4e6945d754953f34
MD5 9298f07627533617fa42c3cb3a8c45cb
BLAKE2b-256 a12df8b899fc9e0bdf04db145121b908445c52c926ac86a08aca1639f9a21cb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.18-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.18-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 eefa55d6f03ae65d4b990a1ea8b80e325f9339020e21a84911cefcbf59204607
MD5 ebe808f38e2c70a53c6ee7e3f2022ef7
BLAKE2b-256 16d67c43f69e3ad0264165b257c94689df392817f56656f09c5bc017d0a1ca68

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1fee94a917f1e54c01a68c97af8b3e924bd0d985cc07c4bd0f011c0219eaa8ee
MD5 f97e8d23d05b2b52bea8d7e2d4bcba6f
BLAKE2b-256 af7446a3e8a1ffe5c57d12c01de09658fdb62bd9fc82b80c78184c7b8eeb35c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 320404ab1eb2302e8050cd63e3c98e5c7706af3c47d3c0328b109e1b48c746f2
MD5 197a6a9d3d554eeec0bbe45cca3b3212
BLAKE2b-256 4a15780d8625678c9414b2af86884a214805b6f09e82aec652c7e23f9de183e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56c8c4de5ec2b928ca4a8a92cc3ee6868979a97b96d145fe0812bc910ac41f29
MD5 36d6904e118a7a0a56d0742faa9678d7
BLAKE2b-256 f3e9d0a21ca1bcfa47fa934231ac08353246f6916a894300c39801ca4d77ce05

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 189447328cb94f6488259f92038f1b686aa04e09498c1a526120e275ae5e5d51
MD5 06ff64dd4c556beb43b2e2140aeb92e0
BLAKE2b-256 ebf438bb926e0da73d2015e0e009e5d6cc76a9fa11aad28c6cd0e660caf2f0d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.18-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.18-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 19cd803ea049cb071968c78da6e29ba3d8a98247534fad1f7a77db7d43e5a53b
MD5 4f7f767986844a0eb3c99c40c6810d76
BLAKE2b-256 ab0af76a9fad7d4e7f720d2d34eccce5ffe8062abd3411bb277224bf56cf0d7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 273f2f37896d158b602c1f01e50edd57c6ce50c39d49ad5f41fb9788b0c88bb7
MD5 79760ba19910bae426ab39bb59a8df62
BLAKE2b-256 049fa56b4693cea6bbf60f2e6e3c85941a8d3acd5c691dfd6de1346ffe87c132

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 60718b2029e2b3d6daa15f5eaba4b1584ac535cc99958f76a23b5198fd5e8d48
MD5 a47bb83606d1735aa88cc4d6a79e4f82
BLAKE2b-256 a311a2d890ca74ba8a5cf1597bb6021b1d6f2bd2b20358192c393a219aca716e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d2a0e2c412e2edb1c8bde99e23f30d175d446a19895a82ccf6fa756e35163fc3
MD5 e8ac86f2233ed11df27d61808e6dc4c0
BLAKE2b-256 d4c59bafd46cb15952a1be75d44630222bb08b45dc93e29df52c5d35b6a483ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6aee5244498e8a1546932a0840f7cb8d80b00837cbe047f417567751761e94fa
MD5 9302b5579f0f3ff9ce34451f33c47e4a
BLAKE2b-256 75b6e1cfd546286269b51db795e7636ea7b84cacecaabf7fa33611ccdd3523be

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dirsql-0.3.18-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.18-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d4c5274c2a29e39b7ec68f814743607187a07d5bcd58249a27af26a504338156
MD5 267b40ed8d13bca32123107067a624dd
BLAKE2b-256 82853c37c000c3183b68db623e7f24081e19f49dc6da837dbfd5d03a7fb7f9b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9e97d94e9d26edbfd1c3ba7c16304e7c2246cc2542d23ea25313837d26203e14
MD5 25a3fd4ffd97a68a08bfadd555e59e36
BLAKE2b-256 d49501ef942dfd011cb1c4d280a4971c317c88774145da4ce9c58269716841e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 6749523f81d9c2fc838aa7e7074bc46627926f5292e128a9d10ca91c7d485b8a
MD5 d627729069da97103ca6cdcdb222a09e
BLAKE2b-256 4e5036896bbebc436679fbc0821c425d3a62d22eaeec215285b7d426c77eca3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 abc7c54a965f98b56193444dcdb0af5f9fb350db2b3ded516de6de231c745a0d
MD5 dc924106cdc4a31b5fc80c22a2001bd8
BLAKE2b-256 215362f7e28ccb10351e1d7d279a88293d44d66b9765bae196bafc823d5ec0f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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.18-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dirsql-0.3.18-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b7c994cabc30de2fcdecf30569e0fe1e5efe7a83d7a8c7961d1de1145b76d500
MD5 8ebf4d30c7f1abb3da3636ee62e4f693
BLAKE2b-256 c2700046dcab7a1a3f6e1bf36f98eb62349d90e1e7a24e0d1af7a0283f4298f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for dirsql-0.3.18-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