dirsql 0.4.22__tar.gz → 0.4.23__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.22 → dirsql-0.4.23}/Cargo.lock +1 -1
- {dirsql-0.4.22 → dirsql-0.4.23}/PKG-INFO +1 -1
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/path-tables.md +11 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/Cargo.toml +1 -1
- {dirsql-0.4.22/packages/rust → dirsql-0.4.23/packages/python}/docs/reference/path-tables.md +11 -0
- dirsql-0.4.23/packages/python/e2e-attestations/claude-issue-951-0eease.json +7 -0
- dirsql-0.4.23/packages/rust/changelog.d/2026-08-20-unquoted-path-table-hint.md +3 -0
- {dirsql-0.4.22/packages/python → dirsql-0.4.23/packages/rust}/docs/reference/path-tables.md +11 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/db.rs +146 -1
- {dirsql-0.4.22 → dirsql-0.4.23}/Cargo.toml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/_async.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/_dirsql.pyi +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/discovered_fragments.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/discovery_disabled.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/fragment_path.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/user_passed_config.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/discover_plugins/with_discovered_plugins.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/main.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/cli/resolve_config_extensions.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/py.typed +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/resolve_config_extensions.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/dirsql/resolve_extension.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/AGENTS.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/explanation.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/getting-started.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/embed.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/persist.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/index.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/package.json +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/plugins.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/cli.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/http-api.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/docs/reference/sdk.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/CHANGELOG.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/MIGRATIONS.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-plugin-discovery.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-repeatable-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-29-restore-python-310.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-02-release-profile.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-02-scan-failures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-03-discovery-ext-resolution.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-03-manylinux-dynamic-binary.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-03-python-no-ignore.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-04-cast-lints.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-04-cli-in-process.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/conftest.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/AGENTS.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/explanation.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/getting-started.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/embed.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/persist.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/index.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/package.json +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/plugins.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/cli.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/http-api.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/docs/reference/sdk.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/e2e-attestations/claude-819-oneshot-timeout.json +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/e2e-attestations/claude-827-unquote-doubled-quotes.json +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/e2e-attestations/claude-github-issue-825-e4mhhp.json +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-29-restore-python-310.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-08-04-cli-in-process.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/src/lib.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/testing-conventions.toml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/conftest.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/e2e/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/dirsql.toml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/integration/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/integration/binding/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/integration/hermetic/__init__.py +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/CHANGELOG.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/Cargo.toml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/MIGRATIONS.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/benches/db_bench.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/benches/differ_bench.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/benches/matcher_bench.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/benches/scanner_bench.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-batch-ingest-transaction.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-chained-pre-post-query-hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-fan-out-file-table-matching.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-persist-wal.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-repeatable-builder-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-repeatable-cli-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-subcommand-local-config-flags.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-19-path-table-query-fallback.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-19-path-table-vtab.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-20-path-table-glob-semantics.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-20-schema-inference.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-21-on-file-flag.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-23-init-escalation-example.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-23-query-default-cli.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-29-on-file-failures-accumulate.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-02-drop-regex.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-02-per-file-scan-failures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-02-release-profile.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-03-gitignore-by-default.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-03-nested-default-ignores.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-04-cast-lints.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-04-cli-run-shim.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-04-configless-extension.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-10-dirsql-function.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-10-remove-query-hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-11-oneshot-query-no-timeout.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-11-persist-parsed-path-tables.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-11-retire-hook-timeout.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-08-12-unquote-inverts-quote-literal.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/explanation.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/getting-started.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/embed.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/persist.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/index.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/plugins.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/cli.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/columns.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/http-api.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/docs/reference/sdk.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-fan-out-file-table-matching.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-persist-wal.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-13-subcommand-local-config-flags.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-20-path-table-glob-semantics.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-23-init-escalation-example.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-23-query-default-cli.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-02-per-file-scan-failures.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-03-gitignore-by-default.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-03-nested-default-ignores.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-10-remove-query-hooks.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-11-oneshot-query-no-timeout.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-11-persist-parsed-path-tables.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/2026-08-11-retire-hook-timeout.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/migrations.d/README.md +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/bin/dirsql.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/execute.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/init.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/mod.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/router.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/run.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/serialize.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/cli/server.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/command.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/config.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/default_config.toml +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/differ.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/functions.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/infer.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/lib.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/matcher.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/parsed_cache.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/parsed_vtab.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/path_table.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/persist.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/scanner.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/sql_literal.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/vtab.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/src/watcher.rs +0 -0
- {dirsql-0.4.22 → dirsql-0.4.23}/pyproject.toml +0 -0
|
@@ -61,6 +61,17 @@ SELECT * FROM '**/*.md';
|
|
|
61
61
|
-- no such table: **/*.md; did you mean './**/*.md'?
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
+
**The quotes are required too.** A path is not a bare SQL identifier — `./` is
|
|
65
|
+
punctuation to SQLite's parser, so an unquoted path fails at parse time, before
|
|
66
|
+
dirsql ever sees a table name to resolve. Single or double quotes both work;
|
|
67
|
+
the error names the quoted form:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
SELECT * FROM ./;
|
|
71
|
+
-- near ".": syntax error in SELECT * FROM ./ at offset 14
|
|
72
|
+
-- hint: paths used as table names must be quoted; did you mean "./"?
|
|
73
|
+
```
|
|
74
|
+
|
|
64
75
|
### Paths outside the index root
|
|
65
76
|
|
|
66
77
|
Three other prefixes resolve, with their usual shell meanings:
|
|
@@ -4,7 +4,7 @@ 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.
|
|
7
|
+
version = "0.4.23"
|
|
8
8
|
# abi3 note: the `abi3-py310` pyo3 feature (below) builds ONE stable-ABI
|
|
9
9
|
# `cp310-abi3` wheel per platform that loads on every CPython >= 3.10
|
|
10
10
|
# (matching `pyproject.toml`'s `requires-python = ">=3.10"`), instead of
|
|
@@ -61,6 +61,17 @@ SELECT * FROM '**/*.md';
|
|
|
61
61
|
-- no such table: **/*.md; did you mean './**/*.md'?
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
+
**The quotes are required too.** A path is not a bare SQL identifier — `./` is
|
|
65
|
+
punctuation to SQLite's parser, so an unquoted path fails at parse time, before
|
|
66
|
+
dirsql ever sees a table name to resolve. Single or double quotes both work;
|
|
67
|
+
the error names the quoted form:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
SELECT * FROM ./;
|
|
71
|
+
-- near ".": syntax error in SELECT * FROM ./ at offset 14
|
|
72
|
+
-- hint: paths used as table names must be quoted; did you mean "./"?
|
|
73
|
+
```
|
|
74
|
+
|
|
64
75
|
### Paths outside the index root
|
|
65
76
|
|
|
66
77
|
Three other prefixes resolve, with their usual shell meanings:
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
**Fixed**
|
|
2
|
+
|
|
3
|
+
- **A path written unquoted where a table name goes now says so.** `dirsql "SELECT * FROM ./"` died on SQLite's raw `near ".": syntax error` with no indication that the fix was quoting the path. `./` is punctuation to SQLite's parser, so the statement never reached the `no such table` fallback the rest of path-table resolution rides on — the hints for a bare glob or a missing `files` table could not fire either. `query()` now widens SQLite's reported error offset over the surrounding path characters and, when the recovered token contains a `/`, appends `hint: paths used as table names must be quoted; did you mean "./"?` beneath the original error. Detection is conservative: a syntax error whose offending token holds no `/` (and any error SQLite reports without a token offset) is left exactly as it was. (#951)
|
|
@@ -61,6 +61,17 @@ SELECT * FROM '**/*.md';
|
|
|
61
61
|
-- no such table: **/*.md; did you mean './**/*.md'?
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
+
**The quotes are required too.** A path is not a bare SQL identifier — `./` is
|
|
65
|
+
punctuation to SQLite's parser, so an unquoted path fails at parse time, before
|
|
66
|
+
dirsql ever sees a table name to resolve. Single or double quotes both work;
|
|
67
|
+
the error names the quoted form:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
SELECT * FROM ./;
|
|
71
|
+
-- near ".": syntax error in SELECT * FROM ./ at offset 14
|
|
72
|
+
-- hint: paths used as table names must be quoted; did you mean "./"?
|
|
73
|
+
```
|
|
74
|
+
|
|
64
75
|
### Paths outside the index root
|
|
65
76
|
|
|
66
77
|
Three other prefixes resolve, with their usual shell meanings:
|
|
@@ -87,6 +87,43 @@ fn legacy_files_table_hint() -> String {
|
|
|
87
87
|
format!("{NO_SUCH_TABLE}{LEGACY_DEFAULT_TABLE}; did you mean FROM './'?")
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
+
/// The characters a bare filesystem path can be spelled with where a table
|
|
91
|
+
/// name goes. Widening SQLite's error offset over these recovers the whole
|
|
92
|
+
/// path from whichever character its tokenizer happened to reject.
|
|
93
|
+
fn is_path_char(c: char) -> bool {
|
|
94
|
+
c.is_alphanumeric() || matches!(c, '.' | '/' | '_' | '-' | '~' | '*' | '?')
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/// The bare path around `offset` in `sql`, if there is one.
|
|
98
|
+
///
|
|
99
|
+
/// SQLite reports the offset of the character it choked on, which is not where
|
|
100
|
+
/// the path starts: `FROM ./` rejects the leading `.`, while `FROM src/main.rs`
|
|
101
|
+
/// rejects the `/` in the middle. Widening in both directions recovers the same
|
|
102
|
+
/// token either way. A `/` is required, which keeps an ordinary syntax error
|
|
103
|
+
/// over an identifier or a number out of the hint.
|
|
104
|
+
fn path_token_at(sql: &str, offset: usize) -> Option<&str> {
|
|
105
|
+
if !sql.is_char_boundary(offset) {
|
|
106
|
+
return None;
|
|
107
|
+
}
|
|
108
|
+
let start = sql[..offset]
|
|
109
|
+
.char_indices()
|
|
110
|
+
.rev()
|
|
111
|
+
.take_while(|(_, c)| is_path_char(*c))
|
|
112
|
+
.last()
|
|
113
|
+
.map_or(offset, |(i, _)| i);
|
|
114
|
+
let end = offset
|
|
115
|
+
+ sql[offset..]
|
|
116
|
+
.find(|c: char| !is_path_char(c))
|
|
117
|
+
.unwrap_or(sql.len() - offset);
|
|
118
|
+
|
|
119
|
+
let token = &sql[start..end];
|
|
120
|
+
token.contains('/').then_some(token)
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
fn unquoted_path_hint(token: &str) -> String {
|
|
124
|
+
format!("hint: paths used as table names must be quoted; did you mean {token:?}?")
|
|
125
|
+
}
|
|
126
|
+
|
|
90
127
|
fn no_home_path_table(name: &str) -> String {
|
|
91
128
|
format!(
|
|
92
129
|
"path-table {name:?} cannot be resolved: no home directory for '~' \
|
|
@@ -678,7 +715,7 @@ impl Db {
|
|
|
678
715
|
Err(e) => e,
|
|
679
716
|
};
|
|
680
717
|
let Some((name, table)) = self.path_table_for(&error)? else {
|
|
681
|
-
return Err(error);
|
|
718
|
+
return Err(self.hint_unquoted_path(error));
|
|
682
719
|
};
|
|
683
720
|
if !attempted.insert(name.clone()) {
|
|
684
721
|
return Err(error);
|
|
@@ -787,6 +824,29 @@ impl Db {
|
|
|
787
824
|
}
|
|
788
825
|
}
|
|
789
826
|
|
|
827
|
+
/// Append the quoting hint when `error` is a syntax error over a bare
|
|
828
|
+
/// filesystem path. SQLite parses `./` as punctuation, so `FROM ./` dies in
|
|
829
|
+
/// the parser and never reaches the `no such table` fallback the rest of
|
|
830
|
+
/// this module rides on -- quoting the path is what gets it there.
|
|
831
|
+
fn hint_unquoted_path(&self, error: DbError) -> DbError {
|
|
832
|
+
match self.unquoted_path_hint_for(&error) {
|
|
833
|
+
Some(hint) => DbError::PathTable(format!("{error}\n{hint}")),
|
|
834
|
+
None => error,
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
/// The hint `error` earns, or `None` when it is not a syntax error over a
|
|
839
|
+
/// path. Without a root the fallback is off, so a quoted path would fail
|
|
840
|
+
/// too and the hint would be a dead end.
|
|
841
|
+
fn unquoted_path_hint_for(&self, error: &DbError) -> Option<String> {
|
|
842
|
+
self.path_table_root.as_ref()?;
|
|
843
|
+
let DbError::Sqlite(rusqlite::Error::SqlInputError { sql, offset, .. }) = error else {
|
|
844
|
+
return None;
|
|
845
|
+
};
|
|
846
|
+
let offset = usize::try_from(*offset).ok()?;
|
|
847
|
+
path_token_at(sql, offset).map(unquoted_path_hint)
|
|
848
|
+
}
|
|
849
|
+
|
|
790
850
|
fn hints_legacy_files_table(&self, name: &str) -> bool {
|
|
791
851
|
self.hint_legacy_files_table && name == LEGACY_DEFAULT_TABLE
|
|
792
852
|
}
|
|
@@ -2140,6 +2200,91 @@ mod tests {
|
|
|
2140
2200
|
assert_eq!(missing_table_name("no such table: "), None);
|
|
2141
2201
|
}
|
|
2142
2202
|
|
|
2203
|
+
#[test]
|
|
2204
|
+
fn path_token_at_recovers_a_path_from_its_first_character() {
|
|
2205
|
+
assert_eq!(
|
|
2206
|
+
path_token_at("SELECT * FROM ./docs/a.md", 14),
|
|
2207
|
+
Some("./docs/a.md")
|
|
2208
|
+
);
|
|
2209
|
+
}
|
|
2210
|
+
|
|
2211
|
+
#[test]
|
|
2212
|
+
fn path_token_at_widens_left_when_sqlite_points_mid_path() {
|
|
2213
|
+
assert_eq!(
|
|
2214
|
+
path_token_at("SELECT * FROM src/main.rs", 17),
|
|
2215
|
+
Some("src/main.rs")
|
|
2216
|
+
);
|
|
2217
|
+
}
|
|
2218
|
+
|
|
2219
|
+
#[test]
|
|
2220
|
+
fn path_token_at_stops_at_the_first_non_path_character() {
|
|
2221
|
+
assert_eq!(path_token_at("SELECT * FROM a/b, c", 15), Some("a/b"));
|
|
2222
|
+
}
|
|
2223
|
+
|
|
2224
|
+
#[test]
|
|
2225
|
+
fn path_token_at_ignores_a_token_with_no_slash() {
|
|
2226
|
+
assert_eq!(path_token_at("SELECT * FROM 1nvalid", 14), None);
|
|
2227
|
+
}
|
|
2228
|
+
|
|
2229
|
+
#[test]
|
|
2230
|
+
fn path_token_at_ignores_an_offset_inside_a_character() {
|
|
2231
|
+
// `é` is two bytes, so offset 15 splits it; slicing there would panic.
|
|
2232
|
+
assert_eq!(path_token_at("SELECT * FROM é/x", 15), None);
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
#[test]
|
|
2236
|
+
fn unquoted_path_hint_names_the_quoted_form() {
|
|
2237
|
+
assert_eq!(
|
|
2238
|
+
unquoted_path_hint("./"),
|
|
2239
|
+
r#"hint: paths used as table names must be quoted; did you mean "./"?"#
|
|
2240
|
+
);
|
|
2241
|
+
}
|
|
2242
|
+
|
|
2243
|
+
#[test]
|
|
2244
|
+
fn query_hints_at_quoting_for_an_unquoted_path() {
|
|
2245
|
+
let mut db = Db::new().unwrap();
|
|
2246
|
+
db.set_path_table_root(PathBuf::from("/nonexistent-dirsql-root"));
|
|
2247
|
+
|
|
2248
|
+
let err = db.query("SELECT * FROM ./").unwrap_err().to_string();
|
|
2249
|
+
|
|
2250
|
+
assert!(err.contains("syntax error"), "got: {err}");
|
|
2251
|
+
assert!(err.contains(r#"did you mean "./"?"#), "got: {err}");
|
|
2252
|
+
}
|
|
2253
|
+
|
|
2254
|
+
#[test]
|
|
2255
|
+
fn query_leaves_an_unquoted_path_unhinted_without_a_root() {
|
|
2256
|
+
let db = Db::new().unwrap();
|
|
2257
|
+
|
|
2258
|
+
let err = db.query("SELECT * FROM ./").unwrap_err().to_string();
|
|
2259
|
+
|
|
2260
|
+
assert!(err.contains("syntax error"), "got: {err}");
|
|
2261
|
+
assert!(
|
|
2262
|
+
!err.contains("did you mean"),
|
|
2263
|
+
"quoting leads nowhere without a root, got: {err}"
|
|
2264
|
+
);
|
|
2265
|
+
}
|
|
2266
|
+
|
|
2267
|
+
#[test]
|
|
2268
|
+
fn query_leaves_a_pathless_syntax_error_unhinted() {
|
|
2269
|
+
let mut db = Db::new().unwrap();
|
|
2270
|
+
db.set_path_table_root(PathBuf::from("/nonexistent-dirsql-root"));
|
|
2271
|
+
|
|
2272
|
+
let err = db.query("SELECT * FROM 1nvalid").unwrap_err().to_string();
|
|
2273
|
+
|
|
2274
|
+
assert!(!err.contains("did you mean"), "got: {err}");
|
|
2275
|
+
}
|
|
2276
|
+
|
|
2277
|
+
#[test]
|
|
2278
|
+
fn query_leaves_an_offsetless_syntax_error_unhinted() {
|
|
2279
|
+
let mut db = Db::new().unwrap();
|
|
2280
|
+
db.set_path_table_root(PathBuf::from("/nonexistent-dirsql-root"));
|
|
2281
|
+
|
|
2282
|
+
// "incomplete input" names no token, so there is no offset to widen from.
|
|
2283
|
+
let err = db.query("SELECT * FROM").unwrap_err().to_string();
|
|
2284
|
+
|
|
2285
|
+
assert!(!err.contains("did you mean"), "got: {err}");
|
|
2286
|
+
}
|
|
2287
|
+
|
|
2143
2288
|
#[test]
|
|
2144
2289
|
fn bare_glob_hint_names_the_dot_slash_form() {
|
|
2145
2290
|
assert_eq!(
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-13-rename-extract-to-on-file.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-20-drop-implicit-files-table.md
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-07-29-restore-python-310.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-03-discovery-ext-resolution.md
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/changelog.d/2026-08-03-manylinux-dynamic-binary.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
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/e2e-attestations/claude-819-oneshot-timeout.json
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/e2e-attestations/claude-github-issue-825-e4mhhp.json
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-13-rename-extract-to-on-file.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-20-drop-implicit-files-table.md
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-21-remove-glob-captures.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/migrations.d/2026-07-29-restore-python-310.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
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/__init__.py
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/dirsql.toml
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
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-batch-ingest-transaction.md
RENAMED
|
File without changes
|
{dirsql-0.4.22 → dirsql-0.4.23}/packages/rust/changelog.d/2026-07-13-chained-pre-post-query-hooks.md
RENAMED
|
File without changes
|