dirsql 0.4.91__tar.gz → 0.4.93__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.91 → dirsql-0.4.93}/Cargo.lock +2 -2
- {dirsql-0.4.91 → dirsql-0.4.93}/PKG-INFO +1 -1
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/Cargo.toml +1 -1
- dirsql-0.4.93/packages/python/changelog.d/2026-10-06-config-dotnames.md +3 -0
- dirsql-0.4.93/packages/python/changelog.d/2026-10-06-config-links.md +3 -0
- dirsql-0.4.93/packages/python/e2e-attestations/claude-1258-config-dotnames.json +7 -0
- dirsql-0.4.93/packages/python/e2e-attestations/claude-1258-config-links.json +7 -0
- dirsql-0.4.93/packages/python/migrations.d/2026-10-06-config-dotnames.md +41 -0
- dirsql-0.4.93/packages/python/migrations.d/2026-10-06-config-links.md +43 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/Cargo.toml +1 -1
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/matcher.rs +56 -4
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/scanner.rs +56 -16
- {dirsql-0.4.91 → dirsql-0.4.93}/Cargo.toml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/README.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/_async.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/_dirsql.pyi +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/discover_plugins/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/discover_plugins/discovered_fragments.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/discover_plugins/discovery_disabled.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/discover_plugins/fragment_path.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/discover_plugins/with_discovered_plugins.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/main.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/cli/resolve_config_extensions.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/plan_entry_path.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/py.typed +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/read_config.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/resolve_configs_extension_specs.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/resolve_extension.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/dirsql/resolve_package.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/AGENTS.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/context/.gitattributes +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/context/recipes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/context/troubleshooting.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/context/usage.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/explanation.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/getting-started.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/agent-skill.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/embed.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/persist.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/query-json.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/search-indexes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/index.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/package.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/plugins.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/cli.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/hooks.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/http-api.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/docs/reference/sdk.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/CHANGELOG.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/MIGRATIONS.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/README.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-13-plugin-discovery.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-13-repeatable-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-29-restore-python-310.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-02-release-profile.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-02-scan-failures.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-03-discovery-ext-resolution.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-03-manylinux-dynamic-binary.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-03-python-no-ignore.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-04-cast-lints.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-04-cli-in-process.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-20-curtaincall-dev-dependency.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-20-declared-table-name.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-04-config-paths-from-argv-module.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-05-config-extension-loader-split.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-05-resolve-config-extensions-split.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-05-resolve-extension-split.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-09-launcher-config-path-scan.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-17-extension-resolution-via-core.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-18-export-scan-failure.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-18-flatten-row-event-in-core.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-18-programmatic-extension-plan.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-20-sigint-ends-a-run-in-progress.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-24-query-rows-in-projection-order.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-02-readme-docs-host.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-03-one-glob-rule-for-config-globs.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-03-path-table-directory-one-level.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-04-path-table-dotfiles-hidden.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-brace-groups-follow-bash.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-cli-context.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-gitignore-requires-repo.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-path-table-node-modules-named.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-path-table-symlinks.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-path-table-trailing-slash.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-05-unbalanced-brackets-literal.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-config-braces.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-config-directory.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-config-gitignore.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-config-globs-anchor-at-the-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-one-glob-compiler.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-plugin-no-default-records.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-watch-broadcast.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-10-06-zero-match-config-table-warning.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/README.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/conftest.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/.vitepress/config.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/AGENTS.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/context/.gitattributes +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/context/recipes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/context/troubleshooting.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/context/usage.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/explanation.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/getting-started.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/agent-skill.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/embed.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/persist.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/query-json.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/search-indexes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/index.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/package.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/plugins.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/cli.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/hooks.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/http-api.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/docs/reference/sdk.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/bot-1397-watch-broadcast.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/bot-1398-inotify-error.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/bot-1399-server-cors.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/bot-1401-watch-scope.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/bot-1407-child-place-depth.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/cc-keen-knuth-f11gyq.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1056-py-ofpf9.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1066-p1-resolve-extension.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1078-argv-config-paths-core.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1079-p2-resolve-config-extensions.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1080-share-vtab-scaffolding.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1081-indicatif-progress.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1096-watch-moved-dir.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1109-watch-moved-out.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1119-ext-plan.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1120-py-ext.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1122-ext-cleanup.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1130-codec-crates.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1131-flatten-row-event.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1139-sse-flatten.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1140-scan-failure-export.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1148-clippy-all-targets.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1164-sigint-fatal.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1170-projection-order.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1172-on-file-path.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1173-py-projection-order.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1184-win-rel-paths.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1185-win-abs-table-names.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1186-win-test-harness.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1196-join-index.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1199-glob-prefix.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1201-single-walk.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1204-embed-batch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1207-win-argv-quote.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1208-win-nonverbatim-paths.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1215-on-file-batch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1216-on-file-cleanup.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1223-config-glob-rule.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1223-dir-one-level.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1225-plugin-no-default.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1226-stale-docs.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1232-anchor-plumbing.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1232-config-anchor.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1232-multi-watch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1232-zero-match.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1238-parallel-walk.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1241-content-prefetch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1243-ingest-perf.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1249-dotfiles.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1256-symlinks.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1257-trailing-slash.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1258-config-braces.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1258-config-directory.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1258-config-gitignore.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1258-one-pattern.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1262-brace-literal.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1264-context.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1267-posix-classes.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1268-unbalanced-brackets.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1269-utf8-chars.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1271-node-modules-named.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1272-ancestor-gitignore.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1273-walk-prune.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1285-ingest-fast.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1286-nested-repo.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1305-glob-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1308-glob-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1310-glob-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1311-glob-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1312-glob-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1318-lazy-stat.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1320-walk-speed.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1322-walk-readdir.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1325-parallel-walk.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1326-stream-rows.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-python-dirsql-patch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-python-extensions-patch.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-scanner-effects.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-scanner-gitignore.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-vtab-prefetch-flag.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1330-vtab-read.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-1351-dot-dirs.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-819-oneshot-timeout.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-827-unquote-doubled-quotes.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-epic-953-slice2-reedline.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-epic-953-slice3-format.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-epic-953-stacked-prs-x59wm3.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-github-issue-825-e4mhhp.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-issue-951-0eease.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-issue-962-0jjrfv.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-issue-986-red-test-e7sjrb.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-1034-cachesplit.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-1042-py12.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-956-xzen74.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-957-lrm0z6-worker-calls.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-957-lrm0z6.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/e2e-attestations/claude-tackle-975-n8mc2h.json +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-13-drop-cwd-config-auto-detect.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-13-rename-extract-to-on-file.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-13-sdk-default-baked-in-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-20-drop-implicit-files-table.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-21-remove-glob-captures.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-24-hookless-table-config-error.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-24-remove-stat-fact-injection.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-07-29-restore-python-310.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-08-04-cli-in-process.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-08-20-declared-table-name.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-09-20-sigint-ends-a-run-in-progress.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-09-24-query-rows-in-projection-order.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-02-readme-docs-host.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-03-one-glob-rule-for-config-globs.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-03-path-table-directory-one-level.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-04-path-table-dotfiles-hidden.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-brace-groups-follow-bash.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-cli-context.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-gitignore-requires-repo.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-path-table-node-modules-named.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-path-table-symlinks.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-path-table-trailing-slash.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-05-unbalanced-brackets-literal.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-config-braces.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-config-directory.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-config-gitignore.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-config-globs-anchor-at-the-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-one-glob-compiler.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-plugin-no-default-records.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-watch-broadcast.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/2026-10-06-zero-match-config-table-warning.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/migrations.d/README.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/src/lib.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/testing-conventions.toml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/conftest.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/e2e/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/e2e/fixtures/dirsql_plugin_fixture/dirsql.toml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/e2e/speed_of_light.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/integration/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/integration/binding/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/python/tests/integration/hermetic/__init__.py +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/CHANGELOG.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/MIGRATIONS.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/README.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/benches/db_bench.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/benches/differ_bench.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/benches/matcher_bench.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/benches/scanner_bench.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/context/.gitattributes +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/context/recipes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/context/troubleshooting.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/context/usage.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/explanation.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/getting-started.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/agent-skill.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/define-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/embed.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/load-extension.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/parse-files-into-columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/persist.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/query-json.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/query-without-config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/search-indexes.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/skip-files.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/howto/write-a-plugin.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/index.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/plugins.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/cli.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/columns.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/config.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/hooks.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/http-api.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/path-tables.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/docs/reference/sdk.md +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/bin/dirsql.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/brace.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/context.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/execute.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/init.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/mod.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/repl.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/router.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/run.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/serialize.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/server.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/cli/table.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/command.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/config.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/db.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/default_config.toml +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/differ.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/extension_resolution.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/functions.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/infer.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/launcher.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/lib.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/listing.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/on_file.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/parsed_vtab.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/path_table.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/persist.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/posix_class.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/progress.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/row_event_flat.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/sql_literal.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/tree_walk.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/vtab.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/vtab_scaffold.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/packages/rust/src/watcher.rs +0 -0
- {dirsql-0.4.91 → dirsql-0.4.93}/pyproject.toml +0 -0
|
@@ -552,7 +552,7 @@ checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
|
|
|
552
552
|
|
|
553
553
|
[[package]]
|
|
554
554
|
name = "dirsql"
|
|
555
|
-
version = "0.4.
|
|
555
|
+
version = "0.4.93"
|
|
556
556
|
dependencies = [
|
|
557
557
|
"assert_cmd",
|
|
558
558
|
"axum",
|
|
@@ -603,7 +603,7 @@ dependencies = [
|
|
|
603
603
|
|
|
604
604
|
[[package]]
|
|
605
605
|
name = "dirsql-py-ext"
|
|
606
|
-
version = "0.4.
|
|
606
|
+
version = "0.4.93"
|
|
607
607
|
dependencies = [
|
|
608
608
|
"dirsql",
|
|
609
609
|
"pyo3",
|
|
@@ -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.93"
|
|
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
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"command": "uv run python -m pytest tests/e2e/glob_speed_dotfiles_test.py tests/e2e/glob_speed_recursive_test.py tests/e2e/glob_speed_matchers_test.py tests/e2e/query_contract_test.py -x -q",
|
|
3
|
+
"ran_at": 1791335904,
|
|
4
|
+
"exit_code": 0,
|
|
5
|
+
"commit": "dd146cf1e0f60982d186b8393e96ca484fb4b0b8",
|
|
6
|
+
"branch": "claude/1258-config-dotnames"
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"command": "uv run python -m pytest tests/e2e/glob_speed_symlink_test.py tests/e2e/glob_speed_node_modules_test.py tests/e2e/glob_speed_dotfiles_test.py tests/e2e/glob_speed_matchers_test.py tests/e2e/query_contract_test.py -x -q",
|
|
3
|
+
"ran_at": 1791338642,
|
|
4
|
+
"exit_code": 0,
|
|
5
|
+
"commit": "81890d53f01c2d6e6e833e0748a6ff952e3382c5",
|
|
6
|
+
"branch": "claude/1258-config-links"
|
|
7
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
### A config glob hides dot-named entries unless it spells them
|
|
2
|
+
|
|
3
|
+
#### Summary
|
|
4
|
+
|
|
5
|
+
`glob = "**/*.md"` used to match `.env.md` and everything under `.hid/`. It
|
|
6
|
+
now matches neither, as a path-table and bash (with `dotglob` off) do. A config
|
|
7
|
+
that read dot-named files without naming them loses those rows.
|
|
8
|
+
|
|
9
|
+
#### Required changes
|
|
10
|
+
|
|
11
|
+
| Before | After |
|
|
12
|
+
| --- | --- |
|
|
13
|
+
| `glob = "**/*.md"` (included `.hid/z.md`) | `glob = ".hid/*.md"` or `glob = "{*,.hid}/*.md"` |
|
|
14
|
+
|
|
15
|
+
#### Deprecations removed
|
|
16
|
+
|
|
17
|
+
_None._
|
|
18
|
+
|
|
19
|
+
#### Behavior changes without code changes
|
|
20
|
+
|
|
21
|
+
- A dot-named component matches only where the glob spells a dot (`.hid`,
|
|
22
|
+
`.*`).
|
|
23
|
+
- A glob that names the dot directory (`.hid/*.md`) is unchanged.
|
|
24
|
+
|
|
25
|
+
#### Verification
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
cd "$(mktemp -d)"
|
|
29
|
+
mkdir .hid
|
|
30
|
+
echo '[{"p":"a"}]' > a.json
|
|
31
|
+
echo '[{"p":"h"}]' > .hid/h.json
|
|
32
|
+
cat > .dirsql.toml <<'TOML'
|
|
33
|
+
[[table]]
|
|
34
|
+
name = "t"
|
|
35
|
+
glob = "**/*.json"
|
|
36
|
+
ddl = "CREATE TABLE t (p TEXT)"
|
|
37
|
+
on-file = "jq -sc add"
|
|
38
|
+
TOML
|
|
39
|
+
dirsql query "SELECT p FROM t" -c .dirsql.toml
|
|
40
|
+
# expected: [{"p":"a"}]
|
|
41
|
+
```
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
### Config globs skip node_modules unless named, and follow symlinks
|
|
2
|
+
|
|
3
|
+
#### Summary
|
|
4
|
+
|
|
5
|
+
`glob = "**/*.js"` used to list files under any `node_modules`; it now does
|
|
6
|
+
not, unless a component of the glob is `node_modules`. Symlinked files and
|
|
7
|
+
directories, which a config glob used to ignore, are now followed as in a
|
|
8
|
+
path-table and in bash.
|
|
9
|
+
|
|
10
|
+
#### Required changes
|
|
11
|
+
|
|
12
|
+
| Before | After |
|
|
13
|
+
| --- | --- |
|
|
14
|
+
| `glob = "**/*.js"` (included `node_modules/`) | `glob = "node_modules/**/*.js"` to list it |
|
|
15
|
+
|
|
16
|
+
#### Deprecations removed
|
|
17
|
+
|
|
18
|
+
_None._
|
|
19
|
+
|
|
20
|
+
#### Behavior changes without code changes
|
|
21
|
+
|
|
22
|
+
- A glob with no `node_modules` component never matches under one.
|
|
23
|
+
- A symlinked file or directory the glob reaches now yields rows.
|
|
24
|
+
|
|
25
|
+
#### Verification
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
cd "$(mktemp -d)"
|
|
29
|
+
mkdir real node_modules
|
|
30
|
+
echo '[{"p":"r"}]' > real/r.json
|
|
31
|
+
echo '[{"p":"n"}]' > node_modules/n.json
|
|
32
|
+
ln -s real linkdir
|
|
33
|
+
cat > .dirsql.toml <<'TOML'
|
|
34
|
+
[[table]]
|
|
35
|
+
name = "t"
|
|
36
|
+
glob = "**/*.json"
|
|
37
|
+
ddl = "CREATE TABLE t (p TEXT)"
|
|
38
|
+
on-file = "jq -sc add"
|
|
39
|
+
TOML
|
|
40
|
+
dirsql query "SELECT p FROM t" -c .dirsql.toml
|
|
41
|
+
# expected: no row from node_modules; rows for real/ (symlinked linkdir/ is
|
|
42
|
+
# reached by `linkdir/*.json`, not by `**`)
|
|
43
|
+
```
|
|
@@ -6,7 +6,7 @@ description = "Ephemeral SQL index over a local directory"
|
|
|
6
6
|
# version stays for the binding crates (publish = false). The literal
|
|
7
7
|
# intentionally lags the published version: putitoutthere rewrites it to
|
|
8
8
|
# the planned release version at build time and never commits it back.
|
|
9
|
-
version = "0.4.
|
|
9
|
+
version = "0.4.93"
|
|
10
10
|
edition.workspace = true
|
|
11
11
|
# Literal `license` (not `license.workspace = true`) because
|
|
12
12
|
# putitoutthere's preflight check reads `[package].license` directly
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
use crate::posix_class::expand_posix_classes;
|
|
2
|
-
use crate::scanner::{PathGlob, compile_glob};
|
|
2
|
+
use crate::scanner::{PathGlob, compile_glob, compile_globs};
|
|
3
3
|
use globset::GlobBuilder;
|
|
4
4
|
use regex::{Regex, RegexBuilder};
|
|
5
|
+
use std::ffi::OsStr;
|
|
5
6
|
use std::path::Path;
|
|
6
7
|
|
|
7
8
|
#[derive(Debug, thiserror::Error)]
|
|
@@ -79,23 +80,30 @@ pub struct MatchResult {
|
|
|
79
80
|
pub table_name: String,
|
|
80
81
|
}
|
|
81
82
|
|
|
83
|
+
const NODE_MODULES: &str = "node_modules";
|
|
84
|
+
|
|
82
85
|
#[derive(Clone)]
|
|
83
86
|
struct PatternEntry {
|
|
84
87
|
pattern: PathGlob,
|
|
85
88
|
table_name: String,
|
|
89
|
+
names_node_modules: bool,
|
|
86
90
|
}
|
|
87
91
|
|
|
88
92
|
/// Maps file paths to table names based on glob patterns.
|
|
89
93
|
/// Every matching pattern fires: a file matching N patterns yields N
|
|
90
94
|
/// `MatchResult`s (one per table), so a file can belong to multiple tables.
|
|
91
|
-
/// An ignore list filters paths entirely.
|
|
92
|
-
/// patterns are accepted and behave like `*`.
|
|
95
|
+
/// An ignore list filters paths entirely.
|
|
93
96
|
#[derive(Clone)]
|
|
94
97
|
pub struct TableMatcher {
|
|
95
98
|
entries: Vec<PatternEntry>,
|
|
96
99
|
ignore_set: Vec<Pattern>,
|
|
97
100
|
ignore_dir_set: Vec<Pattern>,
|
|
98
101
|
gitignore: bool,
|
|
102
|
+
walk: PathGlob,
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
fn has_node_modules_component(path: &Path) -> bool {
|
|
106
|
+
path.components().any(|c| c.as_os_str() == NODE_MODULES)
|
|
99
107
|
}
|
|
100
108
|
|
|
101
109
|
impl TableMatcher {
|
|
@@ -106,8 +114,11 @@ impl TableMatcher {
|
|
|
106
114
|
entries.push(PatternEntry {
|
|
107
115
|
pattern: compile_glob(pattern)?,
|
|
108
116
|
table_name: table_name.to_string(),
|
|
117
|
+
names_node_modules: pattern.split('/').any(|c| c == NODE_MODULES),
|
|
109
118
|
});
|
|
110
119
|
}
|
|
120
|
+
let globs: Vec<&str> = mappings.iter().map(|(pattern, _)| *pattern).collect();
|
|
121
|
+
let walk = compile_globs(&globs)?;
|
|
111
122
|
|
|
112
123
|
let mut ignore_set = Vec::new();
|
|
113
124
|
let mut ignore_dir_set = Vec::new();
|
|
@@ -123,6 +134,7 @@ impl TableMatcher {
|
|
|
123
134
|
ignore_set,
|
|
124
135
|
ignore_dir_set,
|
|
125
136
|
gitignore: false,
|
|
137
|
+
walk,
|
|
126
138
|
})
|
|
127
139
|
}
|
|
128
140
|
|
|
@@ -142,13 +154,29 @@ impl TableMatcher {
|
|
|
142
154
|
pub fn match_all(&self, path: &Path) -> Vec<MatchResult> {
|
|
143
155
|
self.entries
|
|
144
156
|
.iter()
|
|
145
|
-
.filter(|entry|
|
|
157
|
+
.filter(|entry| {
|
|
158
|
+
entry.pattern.is_match_unhidden(path)
|
|
159
|
+
&& (entry.names_node_modules || !has_node_modules_component(path))
|
|
160
|
+
})
|
|
146
161
|
.map(|entry| MatchResult {
|
|
147
162
|
table_name: entry.table_name.clone(),
|
|
148
163
|
})
|
|
149
164
|
.collect()
|
|
150
165
|
}
|
|
151
166
|
|
|
167
|
+
/// The one glob a walk for every table at once follows.
|
|
168
|
+
pub(crate) fn walk_glob(&self) -> &PathGlob {
|
|
169
|
+
&self.walk
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/// Whether the walk may skip a directory called `name` outright: it is
|
|
173
|
+
/// `node_modules` and no table's glob names it.
|
|
174
|
+
pub(crate) fn prunes_directory(&self, name: &OsStr) -> bool {
|
|
175
|
+
name == NODE_MODULES
|
|
176
|
+
&& !self.entries.is_empty()
|
|
177
|
+
&& !self.entries.iter().any(|e| e.names_node_modules)
|
|
178
|
+
}
|
|
179
|
+
|
|
152
180
|
/// Returns true if the path matches any ignore pattern.
|
|
153
181
|
pub fn is_ignored(&self, path: &Path) -> bool {
|
|
154
182
|
self.ignore_set.iter().any(|p| p.is_match(path))
|
|
@@ -188,6 +216,30 @@ mod tests {
|
|
|
188
216
|
assert!(matcher.with_gitignore(true).respects_gitignore());
|
|
189
217
|
}
|
|
190
218
|
|
|
219
|
+
#[test]
|
|
220
|
+
fn node_modules_is_skipped_unless_a_table_names_it() {
|
|
221
|
+
let matcher =
|
|
222
|
+
TableMatcher::new(&[("**/*.js", "all"), ("node_modules/*.js", "nm")], &[]).unwrap();
|
|
223
|
+
assert_eq!(names(&matcher, "pkg/a.js"), vec!["all"]);
|
|
224
|
+
assert_eq!(
|
|
225
|
+
names(&matcher, "pkg/node_modules/a.js"),
|
|
226
|
+
Vec::<String>::new()
|
|
227
|
+
);
|
|
228
|
+
assert_eq!(names(&matcher, "node_modules/a.js"), vec!["nm"]);
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
#[test]
|
|
232
|
+
fn the_walk_prunes_node_modules_only_while_no_table_names_it() {
|
|
233
|
+
let name = OsStr::new("node_modules");
|
|
234
|
+
let plain = TableMatcher::new(&[("**/*.js", "t")], &[]).unwrap();
|
|
235
|
+
let naming = TableMatcher::new(&[("node_modules/*.js", "t")], &[]).unwrap();
|
|
236
|
+
let none = TableMatcher::new(&[], &[]).unwrap();
|
|
237
|
+
assert!(plain.prunes_directory(name));
|
|
238
|
+
assert!(!plain.prunes_directory(OsStr::new("src")));
|
|
239
|
+
assert!(!naming.prunes_directory(name));
|
|
240
|
+
assert!(!none.prunes_directory(name));
|
|
241
|
+
}
|
|
242
|
+
|
|
191
243
|
#[test]
|
|
192
244
|
fn match_all_returns_empty_for_no_match() {
|
|
193
245
|
let matcher = TableMatcher::new(&[("*.csv", "data")], &[]).unwrap();
|
|
@@ -104,7 +104,7 @@ fn scan_below(
|
|
|
104
104
|
// regardless of the absolute root directory.
|
|
105
105
|
let walker = Walk {
|
|
106
106
|
ignore: matcher,
|
|
107
|
-
glob:
|
|
107
|
+
glob: Some(matcher.walk_glob()),
|
|
108
108
|
gitignore,
|
|
109
109
|
in_repo: repo.is_some(),
|
|
110
110
|
frames: repo.map_or_else(Vec::new, |top| {
|
|
@@ -236,7 +236,7 @@ enum Kind {
|
|
|
236
236
|
}
|
|
237
237
|
|
|
238
238
|
impl PathGlob {
|
|
239
|
-
fn spells_dot_name(&self, name: &OsStr) -> bool {
|
|
239
|
+
pub(crate) fn spells_dot_name(&self, name: &OsStr) -> bool {
|
|
240
240
|
self.spelled_dot_names
|
|
241
241
|
.iter()
|
|
242
242
|
.any(|p| p.is_match(Path::new(name)))
|
|
@@ -246,6 +246,17 @@ impl PathGlob {
|
|
|
246
246
|
self.files.iter().any(|p| p.is_match(rel_path))
|
|
247
247
|
}
|
|
248
248
|
|
|
249
|
+
/// [`is_match`](Self::is_match), and every dot-named component of the path
|
|
250
|
+
/// is one the glob spells.
|
|
251
|
+
pub(crate) fn is_match_unhidden(&self, rel_path: &Path) -> bool {
|
|
252
|
+
self.is_match(rel_path)
|
|
253
|
+
&& rel_path
|
|
254
|
+
.components()
|
|
255
|
+
.map(|c| c.as_os_str())
|
|
256
|
+
.filter(|name| is_dot_named(name))
|
|
257
|
+
.all(|name| self.spells_dot_name(name))
|
|
258
|
+
}
|
|
259
|
+
|
|
249
260
|
fn has_components(&self) -> bool {
|
|
250
261
|
!self.components.is_empty()
|
|
251
262
|
}
|
|
@@ -307,7 +318,16 @@ impl PathGlob {
|
|
|
307
318
|
/// it a lone `*` would cross `/` and the explicit non-recursive spelling would
|
|
308
319
|
/// silently recurse. `**` still crosses separators.
|
|
309
320
|
pub fn compile_glob(pattern: &str) -> Result<PathGlob, GlobError> {
|
|
310
|
-
|
|
321
|
+
compile_globs(&[pattern])
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
/// One [`PathGlob`] over every word of every pattern: the walk a set of
|
|
325
|
+
/// tables shares, entering what any of them could reach.
|
|
326
|
+
pub fn compile_globs(patterns: &[&str]) -> Result<PathGlob, GlobError> {
|
|
327
|
+
let words: Vec<String> = patterns
|
|
328
|
+
.iter()
|
|
329
|
+
.flat_map(|pattern| crate::brace::expand(pattern))
|
|
330
|
+
.collect();
|
|
311
331
|
let mut files = Vec::new();
|
|
312
332
|
let mut spelled_dot_names = Vec::new();
|
|
313
333
|
for word in &words {
|
|
@@ -392,7 +412,11 @@ fn walk(
|
|
|
392
412
|
visit: &mut dyn FnMut(PathBuf, &Path),
|
|
393
413
|
) {
|
|
394
414
|
let rel = start.strip_prefix(root).unwrap_or(start);
|
|
395
|
-
let states = walker.glob.map_or_else(Vec::new,
|
|
415
|
+
let states = walker.glob.map_or_else(Vec::new, |glob| {
|
|
416
|
+
rel.components().fold(glob.start(), |states, component| {
|
|
417
|
+
glob.step(&states, component.as_os_str(), Kind::Dir)
|
|
418
|
+
})
|
|
419
|
+
});
|
|
396
420
|
let place = Place {
|
|
397
421
|
walk: walker,
|
|
398
422
|
dir: start.to_path_buf(),
|
|
@@ -579,6 +603,7 @@ impl Walk<'_> {
|
|
|
579
603
|
/// `.gitignore` files in force.
|
|
580
604
|
fn admits(&self, depth: usize, is_dir: bool, name: &OsStr, path: &Path, rel: &Path) -> bool {
|
|
581
605
|
should_descend(depth, is_dir, name, rel, self.ignore)
|
|
606
|
+
&& !(is_dir && self.ignore.prunes_directory(name))
|
|
582
607
|
&& self.admits_name(name)
|
|
583
608
|
&& (self.frames.is_empty() || !is_gitignored(&self.frames, path, is_dir))
|
|
584
609
|
}
|
|
@@ -1018,7 +1043,7 @@ mod tests {
|
|
|
1018
1043
|
fs::create_dir_all(root.path().join("a").join("node_modules").join("pkg")).unwrap();
|
|
1019
1044
|
fs::create_dir_all(root.path().join("a").join(RESERVED_DIR)).unwrap();
|
|
1020
1045
|
fs::write(root.path().join("a").join("f.md"), "").unwrap();
|
|
1021
|
-
let ignore = TableMatcher::new(&[], &["**/node_modules/**"]).unwrap();
|
|
1046
|
+
let ignore = TableMatcher::new(&[(".dirsql/*", "t")], &["**/node_modules/**"]).unwrap();
|
|
1022
1047
|
let a = root.path().join("a");
|
|
1023
1048
|
let mut dirs = scan_dirs(root.path(), &a, &ignore);
|
|
1024
1049
|
dirs.sort();
|
|
@@ -1040,7 +1065,7 @@ mod tests {
|
|
|
1040
1065
|
fn explore_enters_a_dirsql_directory_below_the_top_level() {
|
|
1041
1066
|
let root = tempfile::tempdir().unwrap();
|
|
1042
1067
|
fs::create_dir_all(root.path().join("a").join(RESERVED_DIR)).unwrap();
|
|
1043
|
-
let ignore = TableMatcher::new(&[], &[]).unwrap();
|
|
1068
|
+
let ignore = TableMatcher::new(&[("**/.dirsql/*", "t")], &[]).unwrap();
|
|
1044
1069
|
let top = Place {
|
|
1045
1070
|
walk: walk_with(&ignore, None, Vec::new()),
|
|
1046
1071
|
dir: root.path().to_path_buf(),
|
|
@@ -1393,16 +1418,31 @@ mod tests {
|
|
|
1393
1418
|
}
|
|
1394
1419
|
|
|
1395
1420
|
#[test]
|
|
1396
|
-
fn
|
|
1397
|
-
let ignore = TableMatcher::new(&[], &[]).unwrap();
|
|
1398
|
-
let walk = walk_with(&ignore,
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1421
|
+
fn a_table_walk_skips_a_node_modules_directory_no_table_names() {
|
|
1422
|
+
let ignore = TableMatcher::new(&[("**/*.js", "t")], &[]).unwrap();
|
|
1423
|
+
let walk = walk_with(&ignore, Some(ignore.walk_glob()), Vec::new());
|
|
1424
|
+
let admits = |is_dir, name: &str| {
|
|
1425
|
+
walk.admits(
|
|
1426
|
+
1,
|
|
1427
|
+
is_dir,
|
|
1428
|
+
OsStr::new(name),
|
|
1429
|
+
Path::new(name),
|
|
1430
|
+
Path::new(name),
|
|
1431
|
+
)
|
|
1432
|
+
};
|
|
1433
|
+
assert!(!admits(true, "node_modules"));
|
|
1434
|
+
assert!(admits(false, "node_modules"));
|
|
1435
|
+
assert!(admits(true, "src"));
|
|
1436
|
+
}
|
|
1437
|
+
|
|
1438
|
+
#[test]
|
|
1439
|
+
fn a_match_with_an_unspelled_dot_component_is_hidden() {
|
|
1440
|
+
let glob = compile_glob("**/*.md").unwrap();
|
|
1441
|
+
assert!(glob.is_match_unhidden(Path::new("sub/b.md")));
|
|
1442
|
+
assert!(!glob.is_match_unhidden(Path::new(".env.md")));
|
|
1443
|
+
assert!(!glob.is_match_unhidden(Path::new(".hid/z.md")));
|
|
1444
|
+
let spelled = compile_glob(".hid/*.md").unwrap();
|
|
1445
|
+
assert!(spelled.is_match_unhidden(Path::new(".hid/z.md")));
|
|
1406
1446
|
}
|
|
1407
1447
|
|
|
1408
1448
|
#[test]
|
|
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
|
|
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.91 → dirsql-0.4.93}/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.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-20-drop-implicit-files-table.md
RENAMED
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-21-remove-glob-captures.md
RENAMED
|
File without changes
|
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-24-remove-stat-fact-injection.md
RENAMED
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-07-29-restore-python-310.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-03-discovery-ext-resolution.md
RENAMED
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-03-manylinux-dynamic-binary.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-20-curtaincall-dev-dependency.md
RENAMED
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-08-20-declared-table-name.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-05-resolve-extension-split.md
RENAMED
|
File without changes
|
{dirsql-0.4.91 → dirsql-0.4.93}/packages/python/changelog.d/2026-09-09-launcher-config-path-scan.md
RENAMED
|
File without changes
|
|
File without changes
|