dirsql 0.4.0__tar.gz → 0.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dirsql-0.4.0 → dirsql-0.4.1}/Cargo.lock +1 -1
- {dirsql-0.4.0 → dirsql-0.4.1}/PKG-INFO +3 -2
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/_dirsql.pyi +2 -2
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/binary_path.py +4 -1
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/resolve_config_extensions.py +21 -3
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/Cargo.toml +5 -5
- dirsql-0.4.1/packages/python/changelog.d/2026-07-29-restore-python-310.md +3 -0
- dirsql-0.4.1/packages/python/e2e-attestations/claude-tackle-698-bz6ere.json +7 -0
- dirsql-0.4.1/packages/python/migrations.d/2026-07-29-restore-python-310.md +50 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/pyproject.toml +11 -2
- dirsql-0.4.0/packages/python/e2e-attestations/chore-681-ruff-016.json +0 -7
- {dirsql-0.4.0 → dirsql-0.4.1}/Cargo.toml +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/__init__.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/_async.py +0 -0
- {dirsql-0.4.0/packages/python/tests/integration/binding → dirsql-0.4.1/dirsql/cli}/__init__.py +0 -0
- {dirsql-0.4.0/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture → dirsql-0.4.1/dirsql/cli/discover_plugins}/__init__.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/discover_plugins/discovered_fragments.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/discover_plugins/discovery_disabled.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/discover_plugins/fragment_path.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/discover_plugins/user_passed_config.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/discover_plugins/with_discovered_plugins.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/is_windows.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/main.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/cli/resolve_config_extensions.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/py.typed +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/dirsql/resolve_extension.py +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/AGENTS.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/explanation.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/getting-started.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/embed.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/persist.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/index.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/migrations.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/package.json +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1}/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/cli.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/columns.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/config.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/hooks.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/http-api.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1}/docs/reference/sdk.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/CHANGELOG.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/MIGRATIONS.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-plugin-discovery.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1/packages/python}/changelog.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-repeatable-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1/packages/python}/changelog.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/conftest.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/AGENTS.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/explanation.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/getting-started.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/embed.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/persist.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/index.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/migrations.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/package.json +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/python}/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/cli.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/columns.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/hooks.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/http-api.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/docs/reference/sdk.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1/packages/python}/migrations.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.0/packages/rust → dirsql-0.4.1/packages/python}/migrations.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/src/lib.rs +0 -0
- {dirsql-0.4.0/packages/python/tests/integration/hermetic → dirsql-0.4.1/packages/python/tests}/__init__.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/tests/conftest.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/tests/e2e/__init__.py +0 -0
- {dirsql-0.4.0/dirsql/cli/discover_plugins → dirsql-0.4.1/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture}/__init__.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/dirsql.toml +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/python/tests/integration/__init__.py +0 -0
- {dirsql-0.4.0/dirsql/cli → dirsql-0.4.1/packages/python/tests/integration/binding}/__init__.py +0 -0
- {dirsql-0.4.0/packages/python/tests → dirsql-0.4.1/packages/python/tests/integration/hermetic}/__init__.py +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/CHANGELOG.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/Cargo.toml +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/MIGRATIONS.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/benches/db_bench.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/benches/differ_bench.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/benches/matcher_bench.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/benches/scanner_bench.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-batch-ingest-transaction.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-chained-pre-post-query-hooks.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-fan-out-file-table-matching.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-persist-wal.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1/packages/rust}/changelog.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-repeatable-builder-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-repeatable-cli-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-subcommand-local-config-flags.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-19-path-table-query-fallback.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-19-path-table-vtab.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1/packages/rust}/changelog.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-20-path-table-glob-semantics.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-20-schema-inference.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-21-on-file-flag.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-23-init-escalation-example.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-23-query-default-cli.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/explanation.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/getting-started.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/embed.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/persist.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/index.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/migrations.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/cli.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/columns.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/hooks.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/http-api.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1/packages/rust}/docs/reference/sdk.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-fan-out-file-table-matching.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-persist-wal.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1/packages/rust}/migrations.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-subcommand-local-config-flags.md +0 -0
- {dirsql-0.4.0/packages/python → dirsql-0.4.1/packages/rust}/migrations.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-20-path-table-glob-semantics.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-23-init-escalation-example.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-23-query-default-cli.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/README.md +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/bin/dirsql.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/execute.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/init.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/mod.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/router.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/serialize.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/cli/server.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/command.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/config.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/db.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/default_config.toml +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/differ.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/infer.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/lib.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/matcher.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/parsed_vtab.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/path_table.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/persist.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/scanner.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/vtab.rs +0 -0
- {dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/src/watcher.rs +0 -0
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dirsql
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.1
|
|
4
|
+
Requires-Dist: tomli>=2 ; python_full_version < '3.11'
|
|
4
5
|
Summary: Ephemeral SQL index over a local directory
|
|
5
6
|
Keywords: sql,filesystem,directory,sqlite,index
|
|
6
7
|
Author: Kevin Scott
|
|
7
8
|
License-Expression: MIT
|
|
8
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.10
|
|
9
10
|
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
10
11
|
|
|
11
12
|
# `dirsql` (Python SDK)
|
|
@@ -11,9 +11,9 @@ same PR -- and ``PARITY.md`` is the canonical reminder.
|
|
|
11
11
|
|
|
12
12
|
from collections.abc import Callable
|
|
13
13
|
from os import PathLike
|
|
14
|
-
from typing import Any,
|
|
14
|
+
from typing import Any, TypedDict
|
|
15
15
|
|
|
16
|
-
from typing_extensions import override
|
|
16
|
+
from typing_extensions import NotRequired, override
|
|
17
17
|
|
|
18
18
|
__version__: str
|
|
19
19
|
|
|
@@ -9,7 +9,10 @@ from dirsql.cli.is_windows import is_windows
|
|
|
9
9
|
|
|
10
10
|
def binary_path() -> str:
|
|
11
11
|
name = "dirsql.exe" if is_windows() else "dirsql"
|
|
12
|
-
|
|
12
|
+
# Chained rather than `joinpath("_binary", name)`: multi-segment joinpath
|
|
13
|
+
# is 3.11+, and `files()` returns a bare `Traversable` for non-filesystem
|
|
14
|
+
# loaders.
|
|
15
|
+
path = files("dirsql").joinpath("_binary").joinpath(name)
|
|
13
16
|
if not path.is_file():
|
|
14
17
|
raise FileNotFoundError(
|
|
15
18
|
f"bundled `{name}` not found at {path}. The dirsql PyPI wheel "
|
|
@@ -14,11 +14,29 @@ Shared by the ``DirSQL`` constructor (``config=`` path) and the CLI launcher
|
|
|
14
14
|
from __future__ import annotations
|
|
15
15
|
|
|
16
16
|
import os
|
|
17
|
-
import
|
|
17
|
+
import sys
|
|
18
|
+
from importlib import import_module
|
|
18
19
|
|
|
19
20
|
from .resolve_extension import is_bare_name, resolve_extension_path
|
|
20
21
|
|
|
21
22
|
|
|
23
|
+
def _load_toml_module():
|
|
24
|
+
"""Return the TOML parser module for the running interpreter.
|
|
25
|
+
|
|
26
|
+
``tomllib`` is stdlib only on 3.11+; on 3.10 the ``tomli`` backport it was
|
|
27
|
+
derived from (a version-gated dependency) provides the same surface.
|
|
28
|
+
Imported by name so a unit test can exercise both arms on any
|
|
29
|
+
interpreter -- a literal ``import tomllib`` is unreachable on 3.10 no
|
|
30
|
+
matter what ``sys.version_info`` claims.
|
|
31
|
+
"""
|
|
32
|
+
if sys.version_info >= (3, 11):
|
|
33
|
+
return import_module("tomllib")
|
|
34
|
+
return import_module("tomli")
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
_toml = _load_toml_module()
|
|
38
|
+
|
|
39
|
+
|
|
22
40
|
def _load_extension_entries(config_path):
|
|
23
41
|
"""Return ``(entries, base_dir)`` for a config's ``[[dirsql.extension]]``.
|
|
24
42
|
|
|
@@ -29,8 +47,8 @@ def _load_extension_entries(config_path):
|
|
|
29
47
|
return None
|
|
30
48
|
try:
|
|
31
49
|
with open(config_path, "rb") as f:
|
|
32
|
-
doc =
|
|
33
|
-
except (OSError,
|
|
50
|
+
doc = _toml.load(f)
|
|
51
|
+
except (OSError, _toml.TOMLDecodeError):
|
|
34
52
|
# Leave a malformed / unreadable config for the core to report.
|
|
35
53
|
return None
|
|
36
54
|
|
|
@@ -4,10 +4,10 @@ name = "dirsql-py-ext"
|
|
|
4
4
|
# pypi/maturin handler can rewrite it via `write-version` before
|
|
5
5
|
# `maturin build`. `pyproject.toml` declares `dynamic = ["version"]`
|
|
6
6
|
# and maturin reads this field. Mirrors `packages/rust/Cargo.toml`.
|
|
7
|
-
version = "0.4.
|
|
8
|
-
# abi3 note: the `abi3-
|
|
9
|
-
# `
|
|
10
|
-
# (matching `pyproject.toml`'s `requires-python = ">=3.
|
|
7
|
+
version = "0.4.1"
|
|
8
|
+
# abi3 note: the `abi3-py310` pyo3 feature (below) builds ONE stable-ABI
|
|
9
|
+
# `cp310-abi3` wheel per platform that loads on every CPython >= 3.10
|
|
10
|
+
# (matching `pyproject.toml`'s `requires-python = ">=3.10"`), instead of
|
|
11
11
|
# one wheel per interpreter. putitoutthere's `wheel-abi` detector (#401)
|
|
12
12
|
# reads the abi3 feature straight off this direct `pyo3` dependency and
|
|
13
13
|
# collapses the per-version build fan to a single wheel -- no
|
|
@@ -23,7 +23,7 @@ crate-type = ["cdylib", "rlib"]
|
|
|
23
23
|
|
|
24
24
|
[dependencies]
|
|
25
25
|
dirsql.workspace = true
|
|
26
|
-
pyo3 = { version = "0.28", features = ["extension-module", "generate-import-lib", "abi3-
|
|
26
|
+
pyo3 = { version = "0.28", features = ["extension-module", "generate-import-lib", "abi3-py310"], optional = true }
|
|
27
27
|
|
|
28
28
|
[features]
|
|
29
29
|
default = []
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
**Added**
|
|
2
|
+
|
|
3
|
+
- **Python 3.10 is supported again.** `requires-python` drops back to `>=3.10`, reversing the 0.3.6 raise to `>=3.11` — that raise was release tooling, not the API, and putitoutthere#401 cleared it by collapsing dirsql's abi3 wheel to a single row built on the newest interpreter. The pyo3 feature moves `abi3-py311` → `abi3-py310` in lock-step, so the wheel tag becomes `cp310-abi3` and still loads on every CPython from 3.10 up. `resolve_config_extensions` picks up the `tomli` backport (a new `python_version < "3.11"` dependency) since `tomllib` is stdlib only on 3.11+, and `binary_path` stops relying on 3.11's multi-segment `Traversable.joinpath`. The unit / integration / binding CI matrices gain a 3.10 leg so the declared floor is exercised rather than asserted. (#698)
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
### Python 3.10 support restored (#698)
|
|
2
|
+
|
|
3
|
+
#### Summary
|
|
4
|
+
|
|
5
|
+
`requires-python` is lowered from `>=3.11` back to `>=3.10`, reversing the drop
|
|
6
|
+
made in 0.3.6 ("Python 3.10 support dropped"). No public API changes: this is a
|
|
7
|
+
packaging/installability change plus the wheel-tag change that follows it.
|
|
8
|
+
|
|
9
|
+
The 0.3.6 drop was forced by release tooling, not by the codebase — putitoutthere's
|
|
10
|
+
multi-version wheel fan ran an `import tomllib` verify step on every row, so the
|
|
11
|
+
3.10 row crashed the release build. Since putitoutthere#401 a wheel detected as
|
|
12
|
+
Python-version-independent (dirsql's pyo3 `abi3-pyXY` feature, read off
|
|
13
|
+
`packages/python/Cargo.toml`) collapses to a single wheel row built on the
|
|
14
|
+
**newest** resolved interpreter, so that verify step never runs on 3.10 again.
|
|
15
|
+
|
|
16
|
+
#### Required changes
|
|
17
|
+
|
|
18
|
+
_None._ Every 3.11+ install keeps resolving and installing exactly as before.
|
|
19
|
+
|
|
20
|
+
| Before | After | Action |
|
|
21
|
+
| ------ | ----- | ------ |
|
|
22
|
+
| `pip install dirsql` on 3.10 → `Requires-Python >=3.11`, no candidate | resolves and installs | None — upgrading Python is no longer required. |
|
|
23
|
+
| Wheel filename `…-cp311-abi3-<platform>.whl` | `…-cp310-abi3-<platform>.whl` | Only if you **pin or hash exact wheel filenames** (lockfile with hashes, vendored artifact mirror, CI cache key): re-resolve so the new `cp310-abi3` name is recorded. |
|
|
24
|
+
|
|
25
|
+
#### Deprecations removed
|
|
26
|
+
|
|
27
|
+
_None._
|
|
28
|
+
|
|
29
|
+
#### Behavior changes without code changes
|
|
30
|
+
|
|
31
|
+
- Installs now succeed on CPython 3.10; the package previously refused to
|
|
32
|
+
resolve there.
|
|
33
|
+
- The published wheel is tagged `cp310-abi3` instead of `cp311-abi3`. It is
|
|
34
|
+
still one stable-ABI wheel per platform, loadable on every CPython from the
|
|
35
|
+
tagged version up — 3.11 through 3.14 keep installing the same artifact shape.
|
|
36
|
+
- On 3.10 only, `dirsql` pulls in one new runtime dependency, `tomli>=2` (the
|
|
37
|
+
backport `tomllib` was derived from). It is not installed on 3.11+.
|
|
38
|
+
|
|
39
|
+
#### Verification
|
|
40
|
+
|
|
41
|
+
```console
|
|
42
|
+
$ python3.10 -m pip install dirsql
|
|
43
|
+
$ python3.10 -c "import dirsql; print(dirsql.__version__)"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
```python
|
|
47
|
+
# On 3.10 the config parser transparently uses the backport:
|
|
48
|
+
import dirsql.resolve_config_extensions as rce
|
|
49
|
+
print(rce._toml.__name__) # -> 'tomli' on 3.10, 'tomllib' on 3.11+
|
|
50
|
+
```
|
|
@@ -11,13 +11,19 @@ name = "dirsql"
|
|
|
11
11
|
dynamic = ["version"]
|
|
12
12
|
description = "Ephemeral SQL index over a local directory"
|
|
13
13
|
license = "MIT"
|
|
14
|
-
requires-python = ">=3.
|
|
14
|
+
requires-python = ">=3.10"
|
|
15
15
|
authors = [
|
|
16
16
|
{ name = "Kevin Scott" },
|
|
17
17
|
]
|
|
18
18
|
repository = "https://github.com/thekevinscott/dirsql"
|
|
19
19
|
keywords = ["sql", "filesystem", "directory", "sqlite", "index"]
|
|
20
20
|
readme = "README.md"
|
|
21
|
+
dependencies = [
|
|
22
|
+
# `tomllib` is stdlib only on 3.11+; `resolve_config_extensions` falls back
|
|
23
|
+
# to the backport it was derived from. Drop this the day the floor reaches
|
|
24
|
+
# 3.11 again.
|
|
25
|
+
'tomli>=2; python_version < "3.11"',
|
|
26
|
+
]
|
|
21
27
|
|
|
22
28
|
# Dev/test dependencies live in a PEP 735 dependency-group (not a
|
|
23
29
|
# `[project.optional-dependencies]` extra) so a plain `uv sync` installs them
|
|
@@ -90,7 +96,10 @@ exclude = [
|
|
|
90
96
|
]
|
|
91
97
|
|
|
92
98
|
[tool.ty.environment]
|
|
93
|
-
python-
|
|
99
|
+
# Tracks `requires-python`: type-check against the FLOOR so a 3.11-only symbol
|
|
100
|
+
# (`tomllib`, `StrEnum`, `typing.Self`) fails here rather than at a user's
|
|
101
|
+
# import on the oldest supported interpreter.
|
|
102
|
+
python-version = "3.10"
|
|
94
103
|
|
|
95
104
|
# ruff 0.16.0 formats Python code blocks in Markdown by default. Keep ruff
|
|
96
105
|
# scoped to Python source (its effective scope under the prior pin): the README
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0/packages/python/tests/integration/binding → dirsql-0.4.1/dirsql/cli}/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-13-sdk-default-baked-in-config.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-24-hookless-table-config-error.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-13-sdk-default-baked-in-config.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-21-remove-glob-captures.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-24-hookless-table-config-error.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/migrations.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/dirsql.toml
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0/dirsql/cli → dirsql-0.4.1/packages/python/tests/integration/binding}/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-batch-ingest-transaction.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-chained-pre-post-query-hooks.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-fan-out-file-table-matching.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-repeatable-builder-config.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-sdk-default-baked-in-config.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-13-subcommand-local-config-flags.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-19-path-table-query-fallback.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-20-path-table-glob-semantics.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-23-init-escalation-example.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-24-hookless-table-config-error.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/changelog.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-fan-out-file-table-matching.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-sdk-default-baked-in-config.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-13-subcommand-local-config-flags.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-20-path-table-glob-semantics.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-23-init-escalation-example.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-24-hookless-table-config-error.md
RENAMED
|
File without changes
|
{dirsql-0.4.0 → dirsql-0.4.1}/packages/rust/migrations.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|