@lzehrung/codegraph 2.3.31 → 3.0.0
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.
- package/README.md +33 -141
- package/codegraph-skill/codegraph/SKILL.md +8 -6
- package/dist/agent/artifact.d.ts +2 -0
- package/dist/agent/artifact.d.ts.map +1 -1
- package/dist/agent/artifact.js.map +1 -1
- package/dist/agent/call-hierarchy.js +2 -4
- package/dist/agent/call-hierarchy.js.map +1 -1
- package/dist/agent/explore.d.ts +1 -1
- package/dist/agent/explore.d.ts.map +1 -1
- package/dist/agent/explore.js +3 -2
- package/dist/agent/explore.js.map +1 -1
- package/dist/agent/refactor-plan.js +2 -4
- package/dist/agent/refactor-plan.js.map +1 -1
- package/dist/agent/rename-preview.d.ts.map +1 -1
- package/dist/agent/rename-preview.js +4 -3
- package/dist/agent/rename-preview.js.map +1 -1
- package/dist/agent/search.d.ts.map +1 -1
- package/dist/agent/search.js +5 -3
- package/dist/agent/search.js.map +1 -1
- package/dist/agent/semantic-symbols.d.ts.map +1 -1
- package/dist/agent/semantic-symbols.js +2 -3
- package/dist/agent/semantic-symbols.js.map +1 -1
- package/dist/agent/session.d.ts +3 -0
- package/dist/agent/session.d.ts.map +1 -1
- package/dist/agent/session.js +10 -2
- package/dist/agent/session.js.map +1 -1
- package/dist/agent/type-hierarchy.js +2 -4
- package/dist/agent/type-hierarchy.js.map +1 -1
- package/dist/agent/workspace-symbols.d.ts.map +1 -1
- package/dist/agent/workspace-symbols.js +2 -3
- package/dist/agent/workspace-symbols.js.map +1 -1
- package/dist/agent-tools.d.ts +0 -4
- package/dist/agent-tools.d.ts.map +1 -1
- package/dist/agent-tools.js +3 -6
- package/dist/agent-tools.js.map +1 -1
- package/dist/analysis-summary.d.ts +8 -4
- package/dist/analysis-summary.d.ts.map +1 -1
- package/dist/analysis-summary.js +15 -66
- package/dist/analysis-summary.js.map +1 -1
- package/dist/bin/cli.js +51145 -41770
- package/dist/bin/query-index-worker.js +122 -82
- package/dist/cli/affected.d.ts.map +1 -1
- package/dist/cli/affected.js +4 -1
- package/dist/cli/affected.js.map +1 -1
- package/dist/cli/command-catalog.js +1 -1
- package/dist/cli/command-catalog.js.map +1 -1
- package/dist/cli/command-table.d.ts.map +1 -1
- package/dist/cli/command-table.js +9 -17
- package/dist/cli/command-table.js.map +1 -1
- package/dist/cli/context.js +10 -10
- package/dist/cli/context.js.map +1 -1
- package/dist/cli/drift.d.ts +0 -2
- package/dist/cli/drift.d.ts.map +1 -1
- package/dist/cli/drift.js +0 -1
- package/dist/cli/drift.js.map +1 -1
- package/dist/cli/graph-delta.d.ts +0 -2
- package/dist/cli/graph-delta.d.ts.map +1 -1
- package/dist/cli/graph-delta.js +0 -4
- package/dist/cli/graph-delta.js.map +1 -1
- package/dist/cli/graph-queries.d.ts.map +1 -1
- package/dist/cli/graph-queries.js +27 -1
- package/dist/cli/graph-queries.js.map +1 -1
- package/dist/cli/graph.d.ts +0 -3
- package/dist/cli/graph.d.ts.map +1 -1
- package/dist/cli/graph.js +4 -14
- package/dist/cli/graph.js.map +1 -1
- package/dist/cli/help.d.ts +34 -34
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +9 -14
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/impact.d.ts +0 -2
- package/dist/cli/impact.d.ts.map +1 -1
- package/dist/cli/impact.js +0 -1
- package/dist/cli/impact.js.map +1 -1
- package/dist/cli/index.d.ts +0 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -6
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/inspect.d.ts +0 -2
- package/dist/cli/inspect.d.ts.map +1 -1
- package/dist/cli/inspect.js +5 -8
- package/dist/cli/inspect.js.map +1 -1
- package/dist/cli/invocation-context.d.ts +0 -3
- package/dist/cli/invocation-context.d.ts.map +1 -1
- package/dist/cli/invocation-context.js +4 -16
- package/dist/cli/invocation-context.js.map +1 -1
- package/dist/cli/navigation.d.ts +0 -2
- package/dist/cli/navigation.d.ts.map +1 -1
- package/dist/cli/navigation.js +0 -1
- package/dist/cli/navigation.js.map +1 -1
- package/dist/cli/options.d.ts.map +1 -1
- package/dist/cli/options.js +4 -14
- package/dist/cli/options.js.map +1 -1
- package/dist/cli/review.d.ts +0 -2
- package/dist/cli/review.d.ts.map +1 -1
- package/dist/cli/review.js +0 -5
- package/dist/cli/review.js.map +1 -1
- package/dist/cli/root-policy.d.ts +0 -2
- package/dist/cli/root-policy.d.ts.map +1 -1
- package/dist/cli/root-policy.js +0 -8
- package/dist/cli/root-policy.js.map +1 -1
- package/dist/cli/server.d.ts.map +1 -1
- package/dist/cli/server.js +0 -2
- package/dist/cli/server.js.map +1 -1
- package/dist/drift/artifact.d.ts.map +1 -1
- package/dist/drift/artifact.js +15 -18
- package/dist/drift/artifact.js.map +1 -1
- package/dist/drift/compare.js +1 -1
- package/dist/drift/compare.js.map +1 -1
- package/dist/drift/git.d.ts.map +1 -1
- package/dist/drift/git.js +0 -1
- package/dist/drift/git.js.map +1 -1
- package/dist/drift/snapshot.d.ts.map +1 -1
- package/dist/drift/snapshot.js +5 -7
- package/dist/drift/snapshot.js.map +1 -1
- package/dist/drift/types.d.ts +2 -2
- package/dist/drift/types.d.ts.map +1 -1
- package/dist/drift/types.js.map +1 -1
- package/dist/duplicates/unit-cache.d.ts +0 -1
- package/dist/duplicates/unit-cache.d.ts.map +1 -1
- package/dist/duplicates/unit-cache.js +3 -11
- package/dist/duplicates/unit-cache.js.map +1 -1
- package/dist/duplicates/units.d.ts +5 -5
- package/dist/duplicates/units.d.ts.map +1 -1
- package/dist/duplicates/units.js +25 -88
- package/dist/duplicates/units.js.map +1 -1
- package/dist/graph-builder.d.ts +0 -6
- package/dist/graph-builder.d.ts.map +1 -1
- package/dist/graph-builder.js +6 -11
- package/dist/graph-builder.js.map +1 -1
- package/dist/graph-edge-collector.d.ts +4 -6
- package/dist/graph-edge-collector.d.ts.map +1 -1
- package/dist/graph-edge-collector.js +31 -26
- package/dist/graph-edge-collector.js.map +1 -1
- package/dist/graphs/angularjs.d.ts.map +1 -1
- package/dist/graphs/angularjs.js +2 -1
- package/dist/graphs/angularjs.js.map +1 -1
- package/dist/graphs/edge-resolution.d.ts +4 -1
- package/dist/graphs/edge-resolution.d.ts.map +1 -1
- package/dist/graphs/edge-resolution.js +24 -76
- package/dist/graphs/edge-resolution.js.map +1 -1
- package/dist/graphs/specifiers.d.ts +4 -13
- package/dist/graphs/specifiers.d.ts.map +1 -1
- package/dist/graphs/specifiers.js +80 -173
- package/dist/graphs/specifiers.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/ast.d.ts +20 -0
- package/dist/graphs/symbol-graph-detailed/ast.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/ast.js +154 -15
- package/dist/graphs/symbol-graph-detailed/ast.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts +60 -8
- package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/edge-passes.js +997 -168
- package/dist/graphs/symbol-graph-detailed/edge-passes.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/import-aliases.d.ts +2 -1
- package/dist/graphs/symbol-graph-detailed/import-aliases.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/import-aliases.js +150 -7
- package/dist/graphs/symbol-graph-detailed/import-aliases.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/member-chains.d.ts +1 -0
- package/dist/graphs/symbol-graph-detailed/member-chains.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/member-chains.js +3 -1
- package/dist/graphs/symbol-graph-detailed/member-chains.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts +141 -25
- package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/receiver-calls.js +1015 -166
- package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed.js +449 -46
- package/dist/graphs/symbol-graph-detailed.js.map +1 -1
- package/dist/graphs/symbol-graph.d.ts +2 -0
- package/dist/graphs/symbol-graph.d.ts.map +1 -1
- package/dist/graphs/symbol-graph.js +34 -16
- package/dist/graphs/symbol-graph.js.map +1 -1
- package/dist/graphs/types.d.ts +0 -4
- package/dist/graphs/types.d.ts.map +1 -1
- package/dist/graphs.d.ts +1 -1
- package/dist/graphs.d.ts.map +1 -1
- package/dist/impact/call-compatibility/providers/index.d.ts +4 -4
- package/dist/impact/call-compatibility/providers/index.d.ts.map +1 -1
- package/dist/impact/call-compatibility/providers/index.js +6 -6
- package/dist/impact/call-compatibility/providers/index.js.map +1 -1
- package/dist/impact/call-compatibility/providers/types.d.ts +2 -0
- package/dist/impact/call-compatibility/providers/types.d.ts.map +1 -1
- package/dist/impact/call-compatibility/types.d.ts +6 -0
- package/dist/impact/call-compatibility/types.d.ts.map +1 -1
- package/dist/impact/call-compatibility.d.ts.map +1 -1
- package/dist/impact/call-compatibility.js +316 -526
- package/dist/impact/call-compatibility.js.map +1 -1
- package/dist/impact/map.js +1 -0
- package/dist/impact/map.js.map +1 -1
- package/dist/impact/reference-cache.d.ts.map +1 -1
- package/dist/impact/reference-cache.js +2 -2
- package/dist/impact/reference-cache.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/indexer/ambiguous-resolution.d.ts +11 -0
- package/dist/indexer/ambiguous-resolution.d.ts.map +1 -0
- package/dist/indexer/ambiguous-resolution.js +19 -0
- package/dist/indexer/ambiguous-resolution.js.map +1 -0
- package/dist/indexer/build-cache/module-cache.d.ts +39 -1
- package/dist/indexer/build-cache/module-cache.d.ts.map +1 -1
- package/dist/indexer/build-cache/module-cache.js +218 -21
- package/dist/indexer/build-cache/module-cache.js.map +1 -1
- package/dist/indexer/build-cache/options.d.ts +30 -44
- package/dist/indexer/build-cache/options.d.ts.map +1 -1
- package/dist/indexer/build-cache/options.js +32 -71
- package/dist/indexer/build-cache/options.js.map +1 -1
- package/dist/indexer/build-cache/project-snapshot.d.ts +3 -3
- package/dist/indexer/build-cache/project-snapshot.d.ts.map +1 -1
- package/dist/indexer/build-cache/project-snapshot.js +164 -84
- package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
- package/dist/indexer/build-cache/reports.d.ts +0 -2
- package/dist/indexer/build-cache/reports.d.ts.map +1 -1
- package/dist/indexer/build-cache/reports.js +0 -97
- package/dist/indexer/build-cache/reports.js.map +1 -1
- package/dist/indexer/build-cache/resolver-environment.d.ts.map +1 -1
- package/dist/indexer/build-cache/resolver-environment.js +32 -2
- package/dist/indexer/build-cache/resolver-environment.js.map +1 -1
- package/dist/indexer/build-cache.d.ts +2 -2
- package/dist/indexer/build-cache.d.ts.map +1 -1
- package/dist/indexer/build-cache.js +2 -2
- package/dist/indexer/build-cache.js.map +1 -1
- package/dist/indexer/build-index.d.ts.map +1 -1
- package/dist/indexer/build-index.js +656 -71
- package/dist/indexer/build-index.js.map +1 -1
- package/dist/indexer/build-workers.d.ts.map +1 -1
- package/dist/indexer/build-workers.js +9 -9
- package/dist/indexer/build-workers.js.map +1 -1
- package/dist/indexer/call-hierarchy.js +1 -1
- package/dist/indexer/call-hierarchy.js.map +1 -1
- package/dist/indexer/callable-identity.d.ts +24 -0
- package/dist/indexer/callable-identity.d.ts.map +1 -0
- package/dist/indexer/callable-identity.js +111 -0
- package/dist/indexer/callable-identity.js.map +1 -0
- package/dist/indexer/compilation-units.d.ts +103 -0
- package/dist/indexer/compilation-units.d.ts.map +1 -0
- package/dist/indexer/compilation-units.js +607 -0
- package/dist/indexer/compilation-units.js.map +1 -0
- package/dist/indexer/cpp-callables.d.ts +25 -0
- package/dist/indexer/cpp-callables.d.ts.map +1 -0
- package/dist/indexer/cpp-callables.js +562 -0
- package/dist/indexer/cpp-callables.js.map +1 -0
- package/dist/indexer/declaration-visibility.d.ts +43 -2
- package/dist/indexer/declaration-visibility.d.ts.map +1 -1
- package/dist/indexer/declaration-visibility.js +158 -2
- package/dist/indexer/declaration-visibility.js.map +1 -1
- package/dist/indexer/expand-star-imports.d.ts +6 -1
- package/dist/indexer/expand-star-imports.d.ts.map +1 -1
- package/dist/indexer/expand-star-imports.js +131 -37
- package/dist/indexer/expand-star-imports.js.map +1 -1
- package/dist/indexer/finalize.d.ts.map +1 -1
- package/dist/indexer/finalize.js +0 -1
- package/dist/indexer/finalize.js.map +1 -1
- package/dist/indexer/import-resolution-tables.d.ts +72 -0
- package/dist/indexer/import-resolution-tables.d.ts.map +1 -0
- package/dist/indexer/import-resolution-tables.js +137 -0
- package/dist/indexer/import-resolution-tables.js.map +1 -0
- package/dist/indexer/import-types.d.ts +54 -0
- package/dist/indexer/import-types.d.ts.map +1 -1
- package/dist/indexer/import-types.js +24 -1
- package/dist/indexer/import-types.js.map +1 -1
- package/dist/indexer/imports/context.d.ts +16 -1
- package/dist/indexer/imports/context.d.ts.map +1 -1
- package/dist/indexer/imports/import-binding-tables.d.ts +13 -1
- package/dist/indexer/imports/import-binding-tables.d.ts.map +1 -1
- package/dist/indexer/imports/import-binding-tables.js +149 -30
- package/dist/indexer/imports/import-binding-tables.js.map +1 -1
- package/dist/indexer/imports/js-text-imports.js +4 -4
- package/dist/indexer/imports/js-text-imports.js.map +1 -1
- package/dist/indexer/imports/native-captures.d.ts.map +1 -1
- package/dist/indexer/imports/native-captures.js +24 -6
- package/dist/indexer/imports/native-captures.js.map +1 -1
- package/dist/indexer/imports/python.d.ts +10 -2
- package/dist/indexer/imports/python.d.ts.map +1 -1
- package/dist/indexer/imports/python.js +128 -112
- package/dist/indexer/imports/python.js.map +1 -1
- package/dist/indexer/imports/text-import-extractors.d.ts.map +1 -1
- package/dist/indexer/imports/text-import-extractors.js +68 -19
- package/dist/indexer/imports/text-import-extractors.js.map +1 -1
- package/dist/indexer/imports.d.ts +3 -4
- package/dist/indexer/imports.d.ts.map +1 -1
- package/dist/indexer/imports.js +116 -72
- package/dist/indexer/imports.js.map +1 -1
- package/dist/indexer/incremental-plan.d.ts +33 -0
- package/dist/indexer/incremental-plan.d.ts.map +1 -1
- package/dist/indexer/incremental-plan.js +203 -1
- package/dist/indexer/incremental-plan.js.map +1 -1
- package/dist/indexer/locals-and-exports.d.ts +3 -2
- package/dist/indexer/locals-and-exports.d.ts.map +1 -1
- package/dist/indexer/locals-and-exports.js +659 -78
- package/dist/indexer/locals-and-exports.js.map +1 -1
- package/dist/indexer/member-selection.d.ts +46 -0
- package/dist/indexer/member-selection.d.ts.map +1 -0
- package/dist/indexer/member-selection.js +169 -0
- package/dist/indexer/member-selection.js.map +1 -0
- package/dist/indexer/name-lookup-policies/c-family.d.ts +7 -0
- package/dist/indexer/name-lookup-policies/c-family.d.ts.map +1 -0
- package/dist/indexer/name-lookup-policies/c-family.js +137 -0
- package/dist/indexer/name-lookup-policies/c-family.js.map +1 -0
- package/dist/indexer/name-lookup-policies/csharp-using-static.d.ts +11 -0
- package/dist/indexer/name-lookup-policies/csharp-using-static.d.ts.map +1 -0
- package/dist/indexer/name-lookup-policies/csharp-using-static.js +136 -0
- package/dist/indexer/name-lookup-policies/csharp-using-static.js.map +1 -0
- package/dist/indexer/name-lookup-policies/implicit-self.d.ts +10 -0
- package/dist/indexer/name-lookup-policies/implicit-self.d.ts.map +1 -0
- package/dist/indexer/name-lookup-policies/implicit-self.js +119 -0
- package/dist/indexer/name-lookup-policies/implicit-self.js.map +1 -0
- package/dist/indexer/name-lookup-policies/index.d.ts +3 -0
- package/dist/indexer/name-lookup-policies/index.d.ts.map +1 -0
- package/dist/indexer/name-lookup-policies/index.js +132 -0
- package/dist/indexer/name-lookup-policies/index.js.map +1 -0
- package/dist/indexer/name-lookup-policies/php.d.ts +3 -0
- package/dist/indexer/name-lookup-policies/php.d.ts.map +1 -0
- package/dist/indexer/name-lookup-policies/php.js +82 -0
- package/dist/indexer/name-lookup-policies/php.js.map +1 -0
- package/dist/indexer/name-resolution-types.d.ts +101 -0
- package/dist/indexer/name-resolution-types.d.ts.map +1 -0
- package/dist/indexer/name-resolution-types.js +2 -0
- package/dist/indexer/name-resolution-types.js.map +1 -0
- package/dist/indexer/name-resolution.d.ts +57 -0
- package/dist/indexer/name-resolution.d.ts.map +1 -0
- package/dist/indexer/name-resolution.js +204 -0
- package/dist/indexer/name-resolution.js.map +1 -0
- package/dist/indexer/navigation-cpp.d.ts +58 -0
- package/dist/indexer/navigation-cpp.d.ts.map +1 -0
- package/dist/indexer/navigation-cpp.js +935 -0
- package/dist/indexer/navigation-cpp.js.map +1 -0
- package/dist/indexer/navigation-goto.d.ts +115 -3
- package/dist/indexer/navigation-goto.d.ts.map +1 -1
- package/dist/indexer/navigation-goto.js +2469 -190
- package/dist/indexer/navigation-goto.js.map +1 -1
- package/dist/indexer/navigation-local.d.ts +21 -2
- package/dist/indexer/navigation-local.d.ts.map +1 -1
- package/dist/indexer/navigation-local.js +520 -63
- package/dist/indexer/navigation-local.js.map +1 -1
- package/dist/indexer/navigation-php.d.ts +66 -0
- package/dist/indexer/navigation-php.d.ts.map +1 -1
- package/dist/indexer/navigation-php.js +287 -4
- package/dist/indexer/navigation-php.js.map +1 -1
- package/dist/indexer/navigation-provenance.d.ts +1 -1
- package/dist/indexer/navigation-provenance.d.ts.map +1 -1
- package/dist/indexer/navigation-provenance.js +4 -13
- package/dist/indexer/navigation-provenance.js.map +1 -1
- package/dist/indexer/navigation-references.d.ts +73 -6
- package/dist/indexer/navigation-references.d.ts.map +1 -1
- package/dist/indexer/navigation-references.js +661 -67
- package/dist/indexer/navigation-references.js.map +1 -1
- package/dist/indexer/navigation-resolve.d.ts +46 -2
- package/dist/indexer/navigation-resolve.d.ts.map +1 -1
- package/dist/indexer/navigation-resolve.js +599 -193
- package/dist/indexer/navigation-resolve.js.map +1 -1
- package/dist/indexer/navigation.d.ts +29 -2
- package/dist/indexer/navigation.d.ts.map +1 -1
- package/dist/indexer/navigation.js +1092 -153
- package/dist/indexer/navigation.js.map +1 -1
- package/dist/indexer/parse-context.d.ts +2 -3
- package/dist/indexer/parse-context.d.ts.map +1 -1
- package/dist/indexer/parse-context.js +8 -21
- package/dist/indexer/parse-context.js.map +1 -1
- package/dist/indexer/php-namespace-symbols.d.ts +66 -0
- package/dist/indexer/php-namespace-symbols.d.ts.map +1 -0
- package/dist/indexer/php-namespace-symbols.js +342 -0
- package/dist/indexer/php-namespace-symbols.js.map +1 -0
- package/dist/indexer/reference-candidates.d.ts.map +1 -1
- package/dist/indexer/reference-candidates.js +13 -7
- package/dist/indexer/reference-candidates.js.map +1 -1
- package/dist/indexer/reference-context.d.ts +2 -0
- package/dist/indexer/reference-context.d.ts.map +1 -1
- package/dist/indexer/reference-context.js +4 -0
- package/dist/indexer/reference-context.js.map +1 -1
- package/dist/indexer/scope-nodes.d.ts +92 -13
- package/dist/indexer/scope-nodes.d.ts.map +1 -1
- package/dist/indexer/scope-nodes.js +212 -20
- package/dist/indexer/scope-nodes.js.map +1 -1
- package/dist/indexer/scope-types.d.ts +29 -1
- package/dist/indexer/scope-types.d.ts.map +1 -1
- package/dist/indexer/scope.d.ts +2 -3
- package/dist/indexer/scope.d.ts.map +1 -1
- package/dist/indexer/scope.js +968 -47
- package/dist/indexer/scope.js.map +1 -1
- package/dist/indexer/shared-owner-identity.d.ts +53 -0
- package/dist/indexer/shared-owner-identity.d.ts.map +1 -0
- package/dist/indexer/shared-owner-identity.js +460 -0
- package/dist/indexer/shared-owner-identity.js.map +1 -0
- package/dist/indexer/shared.d.ts +1 -1
- package/dist/indexer/shared.d.ts.map +1 -1
- package/dist/indexer/shared.js +1 -1
- package/dist/indexer/shared.js.map +1 -1
- package/dist/indexer/star-import-precedence.d.ts +113 -0
- package/dist/indexer/star-import-precedence.d.ts.map +1 -0
- package/dist/indexer/star-import-precedence.js +402 -0
- package/dist/indexer/star-import-precedence.js.map +1 -0
- package/dist/indexer/symbols.d.ts +3 -1
- package/dist/indexer/symbols.d.ts.map +1 -1
- package/dist/indexer/symbols.js +58 -18
- package/dist/indexer/symbols.js.map +1 -1
- package/dist/indexer/ts-callables.d.ts +42 -0
- package/dist/indexer/ts-callables.d.ts.map +1 -0
- package/dist/indexer/ts-callables.js +233 -0
- package/dist/indexer/ts-callables.js.map +1 -0
- package/dist/indexer/types.d.ts +41 -26
- package/dist/indexer/types.d.ts.map +1 -1
- package/dist/indexer/unused-exports.d.ts +13 -0
- package/dist/indexer/unused-exports.d.ts.map +1 -0
- package/dist/indexer/unused-exports.js +159 -0
- package/dist/indexer/unused-exports.js.map +1 -0
- package/dist/indexer/workspace-symbols.d.ts.map +1 -1
- package/dist/indexer/workspace-symbols.js +3 -2
- package/dist/indexer/workspace-symbols.js.map +1 -1
- package/dist/indexer.d.ts +3 -8
- package/dist/indexer.d.ts.map +1 -1
- package/dist/indexer.js +1 -1
- package/dist/indexer.js.map +1 -1
- package/dist/languages/callable-arity.d.ts +223 -0
- package/dist/languages/callable-arity.d.ts.map +1 -0
- package/dist/languages/callable-arity.js +1199 -0
- package/dist/languages/callable-arity.js.map +1 -0
- package/dist/languages/definitions/c-family.d.ts.map +1 -1
- package/dist/languages/definitions/c-family.js +30 -1
- package/dist/languages/definitions/c-family.js.map +1 -1
- package/dist/languages/definitions/c.d.ts +4 -0
- package/dist/languages/definitions/c.d.ts.map +1 -1
- package/dist/languages/definitions/c.js +19 -0
- package/dist/languages/definitions/c.js.map +1 -1
- package/dist/languages/definitions/cpp.d.ts.map +1 -1
- package/dist/languages/definitions/cpp.js +12 -0
- package/dist/languages/definitions/cpp.js.map +1 -1
- package/dist/languages/definitions/csharp.d.ts.map +1 -1
- package/dist/languages/definitions/csharp.js +2 -8
- package/dist/languages/definitions/csharp.js.map +1 -1
- package/dist/languages/definitions/go.d.ts.map +1 -1
- package/dist/languages/definitions/go.js +3 -0
- package/dist/languages/definitions/go.js.map +1 -1
- package/dist/languages/definitions/javascript.d.ts.map +1 -1
- package/dist/languages/definitions/javascript.js +10 -1
- package/dist/languages/definitions/javascript.js.map +1 -1
- package/dist/languages/definitions/js-family.d.ts +1 -1
- package/dist/languages/definitions/js-family.d.ts.map +1 -1
- package/dist/languages/definitions/js-family.js +7 -1
- package/dist/languages/definitions/js-family.js.map +1 -1
- package/dist/languages/definitions/php.d.ts.map +1 -1
- package/dist/languages/definitions/php.js +5 -1
- package/dist/languages/definitions/php.js.map +1 -1
- package/dist/languages/definitions/typescript.d.ts.map +1 -1
- package/dist/languages/definitions/typescript.js +8 -1
- package/dist/languages/definitions/typescript.js.map +1 -1
- package/dist/languages/definitions/zig.d.ts.map +1 -1
- package/dist/languages/definitions/zig.js +8 -0
- package/dist/languages/definitions/zig.js.map +1 -1
- package/dist/lifecycle/manifest.d.ts.map +1 -1
- package/dist/lifecycle/manifest.js +0 -1
- package/dist/lifecycle/manifest.js.map +1 -1
- package/dist/mcp/handlers.js +14 -7
- package/dist/mcp/handlers.js.map +1 -1
- package/dist/native/byte-index.d.ts +6 -0
- package/dist/native/byte-index.d.ts.map +1 -1
- package/dist/native/byte-index.js +11 -6
- package/dist/native/byte-index.js.map +1 -1
- package/dist/native/contracts.d.ts +2 -3
- package/dist/native/contracts.d.ts.map +1 -1
- package/dist/native/execution.d.ts +9 -9
- package/dist/native/execution.d.ts.map +1 -1
- package/dist/native/execution.js +37 -77
- package/dist/native/execution.js.map +1 -1
- package/dist/native/js-bridge.d.ts +2 -15
- package/dist/native/js-bridge.d.ts.map +1 -1
- package/dist/native/js-bridge.js +2 -15
- package/dist/native/js-bridge.js.map +1 -1
- package/dist/native/query-results.js +2 -2
- package/dist/native/query-results.js.map +1 -1
- package/dist/native/runtime.d.ts +12 -12
- package/dist/native/runtime.d.ts.map +1 -1
- package/dist/native/runtime.js +24 -69
- package/dist/native/runtime.js.map +1 -1
- package/dist/native/tree-sitter-native.d.ts +3 -3
- package/dist/native/tree-sitter-native.d.ts.map +1 -1
- package/dist/native/tree-sitter-native.js +2 -2
- package/dist/native/tree-sitter-native.js.map +1 -1
- package/dist/presets.d.ts.map +1 -1
- package/dist/presets.js +0 -4
- package/dist/presets.js.map +1 -1
- package/dist/review/candidates.d.ts.map +1 -1
- package/dist/review/candidates.js +1 -1
- package/dist/review/candidates.js.map +1 -1
- package/dist/review/deleted.d.ts +3 -3
- package/dist/review/deleted.d.ts.map +1 -1
- package/dist/review/deleted.js +82 -32
- package/dist/review/deleted.js.map +1 -1
- package/dist/review/report.d.ts +1 -0
- package/dist/review/report.d.ts.map +1 -1
- package/dist/review/report.js +1 -1
- package/dist/review/report.js.map +1 -1
- package/dist/review.d.ts.map +1 -1
- package/dist/review.js +3 -20
- package/dist/review.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +0 -5
- package/dist/session.js.map +1 -1
- package/dist/sql/navigation.d.ts.map +1 -1
- package/dist/sql/navigation.js +2 -1
- package/dist/sql/navigation.js.map +1 -1
- package/dist/sql/source-graph.d.ts.map +1 -1
- package/dist/sql/source-graph.js +2 -2
- package/dist/sql/source-graph.js.map +1 -1
- package/dist/sqlite/schema.d.ts +1 -1
- package/dist/sqlite/schema.d.ts.map +1 -1
- package/dist/sqlite/schema.js +8 -2
- package/dist/sqlite/schema.js.map +1 -1
- package/dist/sqlite/write.js +2 -2
- package/dist/sqlite/write.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/util/bloom-filter.d.ts +8 -1
- package/dist/util/bloom-filter.d.ts.map +1 -1
- package/dist/util/bloom-filter.js +15 -2
- package/dist/util/bloom-filter.js.map +1 -1
- package/dist/util/glob.d.ts +32 -0
- package/dist/util/glob.d.ts.map +1 -0
- package/dist/util/glob.js +137 -0
- package/dist/util/glob.js.map +1 -0
- package/dist/util/graph-edges.d.ts +19 -1
- package/dist/util/graph-edges.d.ts.map +1 -1
- package/dist/util/graph-edges.js +30 -4
- package/dist/util/graph-edges.js.map +1 -1
- package/dist/util/identifiers.d.ts +15 -0
- package/dist/util/identifiers.d.ts.map +1 -1
- package/dist/util/identifiers.js +35 -0
- package/dist/util/identifiers.js.map +1 -1
- package/dist/util/member-access-tables.d.ts +61 -4
- package/dist/util/member-access-tables.d.ts.map +1 -1
- package/dist/util/member-access-tables.js +139 -19
- package/dist/util/member-access-tables.js.map +1 -1
- package/dist/util/member-access.d.ts +17 -0
- package/dist/util/member-access.d.ts.map +1 -1
- package/dist/util/member-access.js +98 -3
- package/dist/util/member-access.js.map +1 -1
- package/dist/util/project-files.d.ts +2 -10
- package/dist/util/project-files.d.ts.map +1 -1
- package/dist/util/project-files.js +29 -51
- package/dist/util/project-files.js.map +1 -1
- package/dist/util/python-type-checking.d.ts +18 -0
- package/dist/util/python-type-checking.d.ts.map +1 -0
- package/dist/util/python-type-checking.js +160 -0
- package/dist/util/python-type-checking.js.map +1 -0
- package/dist/util/resolution/cargo-targets.d.ts +11 -0
- package/dist/util/resolution/cargo-targets.d.ts.map +1 -1
- package/dist/util/resolution/cargo-targets.js +174 -13
- package/dist/util/resolution/cargo-targets.js.map +1 -1
- package/dist/util/resolution/csharp.d.ts +33 -1
- package/dist/util/resolution/csharp.d.ts.map +1 -1
- package/dist/util/resolution/csharp.js +145 -30
- package/dist/util/resolution/csharp.js.map +1 -1
- package/dist/util/resolution/jvm.d.ts +7 -3
- package/dist/util/resolution/jvm.d.ts.map +1 -1
- package/dist/util/resolution/jvm.js +56 -38
- package/dist/util/resolution/jvm.js.map +1 -1
- package/dist/util/resolution/php.d.ts.map +1 -1
- package/dist/util/resolution/php.js +35 -8
- package/dist/util/resolution/php.js.map +1 -1
- package/dist/util/resolution/python.d.ts +9 -0
- package/dist/util/resolution/python.d.ts.map +1 -1
- package/dist/util/resolution/python.js +46 -0
- package/dist/util/resolution/python.js.map +1 -1
- package/dist/util/resolution/rust.d.ts +0 -1
- package/dist/util/resolution/rust.d.ts.map +1 -1
- package/dist/util/resolution/rust.js +95 -35
- package/dist/util/resolution/rust.js.map +1 -1
- package/dist/util/resolution/specifier-targets.d.ts +44 -0
- package/dist/util/resolution/specifier-targets.d.ts.map +1 -0
- package/dist/util/resolution/specifier-targets.js +152 -0
- package/dist/util/resolution/specifier-targets.js.map +1 -0
- package/dist/util/resolution-candidates.d.ts +5 -0
- package/dist/util/resolution-candidates.d.ts.map +1 -1
- package/dist/util/resolution-candidates.js +16 -3
- package/dist/util/resolution-candidates.js.map +1 -1
- package/dist/util/resolution.d.ts +2 -1
- package/dist/util/resolution.d.ts.map +1 -1
- package/dist/util/resolution.js +101 -15
- package/dist/util/resolution.js.map +1 -1
- package/dist/util/specifiers.d.ts +29 -1
- package/dist/util/specifiers.d.ts.map +1 -1
- package/dist/util/specifiers.js +56 -8
- package/dist/util/specifiers.js.map +1 -1
- package/dist/util/trivia.d.ts.map +1 -1
- package/dist/util/trivia.js +49 -30
- package/dist/util/trivia.js.map +1 -1
- package/dist/util/workspace.d.ts.map +1 -1
- package/dist/util/workspace.js +32 -4
- package/dist/util/workspace.js.map +1 -1
- package/docs/mcp.md +3 -2
- package/package.json +5 -7
- package/dist/impact/call-compatibility/providers/profiles.d.ts +0 -80
- package/dist/impact/call-compatibility/providers/profiles.d.ts.map +0 -1
- package/dist/impact/call-compatibility/providers/profiles.js +0 -164
- package/dist/impact/call-compatibility/providers/profiles.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { brotliCompressSync, brotliDecompressSync, constants as zlibConstants } from "node:zlib";
|
|
2
2
|
import crypto from "node:crypto";
|
|
3
|
+
import { isRubyLoadForm } from "../../util/specifiers.js";
|
|
3
4
|
import fs from "node:fs";
|
|
4
5
|
import fsp from "node:fs/promises";
|
|
5
6
|
import path from "node:path";
|
|
@@ -10,13 +11,14 @@ import { errorMessage } from "../../util/errors.js";
|
|
|
10
11
|
import { SqliteDatabase, clearNodeSqliteUnavailableForTests, isNodeSqliteUnavailableError, isNodeSqliteUsable, markNodeSqliteUnavailable, nodeSqliteUnavailableError, } from "../../sqlite-driver.js";
|
|
11
12
|
import { buildBloomFilterFromSource } from "../../util/bloom-filter.js";
|
|
12
13
|
import { createSqliteTableIfMissing, ensureSqliteVersionedTableSchema, recreateSqliteTable, sqliteTableColumns, } from "../../util/sqlite-schema.js";
|
|
14
|
+
import { callableIdentityWithFile, isCallableIdentity } from "../callable-identity.js";
|
|
13
15
|
import { assertFilePathWithinRoot, fileIdentityKey, isAbsoluteFilePath, isFilePathWithinRoot, normalizePath, } from "../../util/paths.js";
|
|
14
16
|
import { lruMapGet, lruMapSet } from "../../util/lru-map.js";
|
|
15
17
|
import { initCacheReport } from "./reports.js";
|
|
16
18
|
import { cacheRoot } from "./location.js";
|
|
17
19
|
import { getImplementationFingerprint } from "./options.js";
|
|
18
|
-
//
|
|
19
|
-
const PARSED_CACHE_VERSION =
|
|
20
|
+
// v9: Java static member and owner facts restrict static star imports.
|
|
21
|
+
const PARSED_CACHE_VERSION = 9;
|
|
20
22
|
const MODULE_CACHE_SCHEMA_VERSION = 2;
|
|
21
23
|
const MODULE_CACHE_TABLE = "module_cache";
|
|
22
24
|
const MODULE_CACHE_SCHEMA_VERSION_KEY = "module_cache.schema_version";
|
|
@@ -29,6 +31,33 @@ const MODULE_CACHE_COLUMNS = [
|
|
|
29
31
|
];
|
|
30
32
|
const MAX_MEMORY_CACHE_ENTRIES = 5000;
|
|
31
33
|
const memoryCache = new Map();
|
|
34
|
+
/**
|
|
35
|
+
* Projects that lost a module payload to LRU eviction, with the count of the latest eviction.
|
|
36
|
+
* A build without a manifest finds deleted or rewritten files through the cached rows.
|
|
37
|
+
* An evicted row hides them, so the build re-resolves the project's declaration-language importers.
|
|
38
|
+
* Each project has one entry. A complete build removes it.
|
|
39
|
+
*/
|
|
40
|
+
const rootsWithEvictedPayloads = new Map();
|
|
41
|
+
/** Counts payload evictions. A build compares it to detect an eviction during the build. */
|
|
42
|
+
let memoryEvictionSerial = 0;
|
|
43
|
+
/** True when the memory cache evicted a payload of the project. */
|
|
44
|
+
export function memoryCacheLostPayloads(projectRoot) {
|
|
45
|
+
return rootsWithEvictedPayloads.has(normalizePath(projectRoot));
|
|
46
|
+
}
|
|
47
|
+
/** The current eviction count. Pass it to `settleMemoryCacheEvictions` when a build ends. */
|
|
48
|
+
export function memoryCacheEvictionSerial() {
|
|
49
|
+
return memoryEvictionSerial;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Clear the eviction state of the project after a complete build restored its rows.
|
|
53
|
+
* Keep the state if the project lost another payload after `sinceSerial`.
|
|
54
|
+
*/
|
|
55
|
+
export function settleMemoryCacheEvictions(projectRoot, sinceSerial) {
|
|
56
|
+
const root = normalizePath(projectRoot);
|
|
57
|
+
const lastEviction = rootsWithEvictedPayloads.get(root);
|
|
58
|
+
if (lastEviction !== undefined && lastEviction <= sinceSerial)
|
|
59
|
+
rootsWithEvictedPayloads.delete(root);
|
|
60
|
+
}
|
|
32
61
|
let cachedExecutionFingerprint;
|
|
33
62
|
let cachedExecutionHash;
|
|
34
63
|
function memoryCacheKey(projectRoot, file) {
|
|
@@ -36,8 +65,10 @@ function memoryCacheKey(projectRoot, file) {
|
|
|
36
65
|
}
|
|
37
66
|
export function clearMemoryCache() {
|
|
38
67
|
memoryCache.clear();
|
|
68
|
+
rootsWithEvictedPayloads.clear();
|
|
39
69
|
}
|
|
40
70
|
function clearMemoryCacheForProject(projectRoot) {
|
|
71
|
+
rootsWithEvictedPayloads.delete(normalizePath(projectRoot));
|
|
41
72
|
const prefix = `${normalizePath(projectRoot)}::`;
|
|
42
73
|
for (const key of memoryCache.keys()) {
|
|
43
74
|
if (key.startsWith(prefix)) {
|
|
@@ -170,6 +201,7 @@ export function getDiskModuleCache(projectRoot, opts) {
|
|
|
170
201
|
version = excluded.version,
|
|
171
202
|
payload = excluded.payload,
|
|
172
203
|
updated_at = excluded.updated_at`),
|
|
204
|
+
remove: db.prepare("DELETE FROM module_cache WHERE file = ?"),
|
|
173
205
|
clearLiveFiles: db.prepare("DELETE FROM live_module_cache_files"),
|
|
174
206
|
insertLiveFile: db.prepare("INSERT OR IGNORE INTO live_module_cache_files(file) VALUES (?)"),
|
|
175
207
|
pruneStaleFiles: db.prepare("DELETE FROM module_cache WHERE NOT EXISTS (SELECT 1 FROM live_module_cache_files WHERE file = module_cache.file)"),
|
|
@@ -296,13 +328,13 @@ export function fileSignatureFromSource(source, gitSig) {
|
|
|
296
328
|
const cacheSig = gitSig ?? contentHash;
|
|
297
329
|
return { sig, cacheSig, contentHash, ...(gitSig ? { gitSig } : {}) };
|
|
298
330
|
}
|
|
299
|
-
export async function cacheSignatureForFile(file, sigInfo
|
|
331
|
+
export async function cacheSignatureForFile(file, sigInfo) {
|
|
300
332
|
let contentSignature = sigInfo.gitSig ?? sigInfo.contentHash;
|
|
301
333
|
if (!contentSignature) {
|
|
302
334
|
contentSignature = await fileContentHash(file);
|
|
303
335
|
sigInfo.contentHash = contentSignature;
|
|
304
336
|
}
|
|
305
|
-
const runtimeFingerprint = getNativeRuntimeFingerprint(
|
|
337
|
+
const runtimeFingerprint = getNativeRuntimeFingerprint();
|
|
306
338
|
const implementationFingerprint = getImplementationFingerprint();
|
|
307
339
|
const executionFingerprint = `${runtimeFingerprint}\0${implementationFingerprint}`;
|
|
308
340
|
if (executionFingerprint !== cachedExecutionFingerprint || !cachedExecutionHash) {
|
|
@@ -328,10 +360,31 @@ function isModuleIndex(value) {
|
|
|
328
360
|
return false;
|
|
329
361
|
const mod = value;
|
|
330
362
|
return (typeof mod.file === "string" &&
|
|
363
|
+
(mod.docstringsChecked === undefined || typeof mod.docstringsChecked === "boolean") &&
|
|
331
364
|
Array.isArray(mod.exports) &&
|
|
332
365
|
Array.isArray(mod.imports) &&
|
|
333
366
|
mod.imports.every(hasValidImportBindingRanges) &&
|
|
334
|
-
Array.isArray(mod.locals)
|
|
367
|
+
Array.isArray(mod.locals) &&
|
|
368
|
+
mod.locals.every(hasValidCallableSymbol) &&
|
|
369
|
+
mod.exports.every((entry) => {
|
|
370
|
+
if (!entry || typeof entry !== "object")
|
|
371
|
+
return false;
|
|
372
|
+
const local = entry;
|
|
373
|
+
return local.type !== "local" || hasValidCallableSymbol(local.target);
|
|
374
|
+
}));
|
|
375
|
+
}
|
|
376
|
+
function hasValidCallableSymbol(value) {
|
|
377
|
+
if (!value || typeof value !== "object")
|
|
378
|
+
return false;
|
|
379
|
+
const symbol = value;
|
|
380
|
+
const callableValid = symbol.kind === "function"
|
|
381
|
+
? isCallableIdentity(symbol.callable)
|
|
382
|
+
: symbol.callable === undefined || isCallableIdentity(symbol.callable);
|
|
383
|
+
return (callableValid &&
|
|
384
|
+
(symbol.javaPackagePrivate === undefined || typeof symbol.javaPackagePrivate === "boolean") &&
|
|
385
|
+
(symbol.javaProtectedMember === undefined || typeof symbol.javaProtectedMember === "boolean") &&
|
|
386
|
+
(symbol.jvmTypeOwnerStartIndex === undefined || typeof symbol.jvmTypeOwnerStartIndex === "number") &&
|
|
387
|
+
(symbol.jvmStaticMember === undefined || typeof symbol.jvmStaticMember === "boolean"));
|
|
335
388
|
}
|
|
336
389
|
/**
|
|
337
390
|
* Rejects cached bindings whose optional token ranges are structurally invalid. Mirrors the
|
|
@@ -343,7 +396,17 @@ function hasValidImportBindingRanges(value) {
|
|
|
343
396
|
const binding = value;
|
|
344
397
|
return ((binding.explicitAlias === undefined || typeof binding.explicitAlias === "boolean") &&
|
|
345
398
|
isOptionalRange(binding.importedRange) &&
|
|
346
|
-
isOptionalRange(binding.localRange)
|
|
399
|
+
isOptionalRange(binding.localRange) &&
|
|
400
|
+
(binding.jvmTypeOwnerStartIndex === undefined || typeof binding.jvmTypeOwnerStartIndex === "number") &&
|
|
401
|
+
(binding.jvmTypeWildcardName === undefined || typeof binding.jvmTypeWildcardName === "string") &&
|
|
402
|
+
(binding.jvmStaticWildcardName === undefined || typeof binding.jvmStaticWildcardName === "string") &&
|
|
403
|
+
(binding.jvmPackageFiles === undefined ||
|
|
404
|
+
(Array.isArray(binding.jvmPackageFiles) && binding.jvmPackageFiles.every((file) => typeof file === "string"))) &&
|
|
405
|
+
(binding.jvmPackageLanguageId === undefined ||
|
|
406
|
+
binding.jvmPackageLanguageId === "java" ||
|
|
407
|
+
binding.jvmPackageLanguageId === "kotlin") &&
|
|
408
|
+
(binding.jvmSamePackage === undefined || typeof binding.jvmSamePackage === "boolean") &&
|
|
409
|
+
(binding.rubyLoadForm === undefined || isRubyLoadForm(binding.rubyLoadForm)));
|
|
347
410
|
}
|
|
348
411
|
function isOptionalRange(value) {
|
|
349
412
|
return value === undefined || isRange(value);
|
|
@@ -381,13 +444,28 @@ function transformModulePaths(projectRoot, module, toRelative) {
|
|
|
381
444
|
const transform = (file) => toRelative
|
|
382
445
|
? cacheRelativePath(projectRoot, file)
|
|
383
446
|
: assertFilePathWithinRoot(projectRoot, cacheAbsolutePath(projectRoot, file), "Persisted cache path");
|
|
447
|
+
const transformedSymbol = (local) => {
|
|
448
|
+
const file = transform(local.file);
|
|
449
|
+
return {
|
|
450
|
+
...local,
|
|
451
|
+
file,
|
|
452
|
+
...(local.callable ? { callable: callableIdentityWithFile(local.callable, local.file, file) } : {}),
|
|
453
|
+
};
|
|
454
|
+
};
|
|
384
455
|
if (!toRelative) {
|
|
385
456
|
module.file = transform(module.file);
|
|
386
|
-
for (const local of module.locals)
|
|
387
|
-
|
|
457
|
+
for (const local of module.locals) {
|
|
458
|
+
const file = transform(local.file);
|
|
459
|
+
if (local.callable)
|
|
460
|
+
local.callable = callableIdentityWithFile(local.callable, local.file, file);
|
|
461
|
+
local.file = file;
|
|
462
|
+
}
|
|
388
463
|
for (const entry of module.exports) {
|
|
389
464
|
if (entry.type === "local") {
|
|
390
|
-
|
|
465
|
+
const file = transform(entry.target.file);
|
|
466
|
+
if (entry.target.callable)
|
|
467
|
+
entry.target.callable = callableIdentityWithFile(entry.target.callable, entry.target.file, file);
|
|
468
|
+
entry.target.file = file;
|
|
391
469
|
}
|
|
392
470
|
else {
|
|
393
471
|
transformPersistedExportFromModule(projectRoot, entry, false);
|
|
@@ -396,22 +474,30 @@ function transformModulePaths(projectRoot, module, toRelative) {
|
|
|
396
474
|
for (const binding of module.imports) {
|
|
397
475
|
if (typeof binding.resolved === "string")
|
|
398
476
|
binding.resolved = transform(binding.resolved);
|
|
477
|
+
if (binding.kind === "star" && binding.jvmPackageFiles)
|
|
478
|
+
binding.jvmPackageFiles = binding.jvmPackageFiles.map(transform);
|
|
399
479
|
}
|
|
400
480
|
return module;
|
|
401
481
|
}
|
|
402
482
|
return {
|
|
403
483
|
...module,
|
|
404
484
|
file: transform(module.file),
|
|
405
|
-
locals: module.locals.map(
|
|
485
|
+
locals: module.locals.map(transformedSymbol),
|
|
406
486
|
exports: module.exports.map((entry) => {
|
|
407
487
|
if (entry.type === "local") {
|
|
408
|
-
return { ...entry, target:
|
|
488
|
+
return { ...entry, target: transformedSymbol(entry.target) };
|
|
409
489
|
}
|
|
410
490
|
const copy = { ...entry };
|
|
411
491
|
transformPersistedExportFromModule(projectRoot, copy, true);
|
|
412
492
|
return copy;
|
|
413
493
|
}),
|
|
414
|
-
imports: module.imports.map((binding) =>
|
|
494
|
+
imports: module.imports.map((binding) => ({
|
|
495
|
+
...binding,
|
|
496
|
+
...(typeof binding.resolved === "string" ? { resolved: transform(binding.resolved) } : {}),
|
|
497
|
+
...(binding.kind === "star" && binding.jvmPackageFiles
|
|
498
|
+
? { jvmPackageFiles: binding.jvmPackageFiles.map(transform) }
|
|
499
|
+
: {}),
|
|
500
|
+
})),
|
|
415
501
|
};
|
|
416
502
|
}
|
|
417
503
|
/**
|
|
@@ -473,7 +559,24 @@ export function loadAllCachedModules(projectRoot, opts) {
|
|
|
473
559
|
return null;
|
|
474
560
|
}
|
|
475
561
|
}
|
|
476
|
-
|
|
562
|
+
/** Best-effort decode of a superseded disk row; null when the payload cannot be read. */
|
|
563
|
+
function rehydrateStaleModuleRow(projectRoot, row) {
|
|
564
|
+
try {
|
|
565
|
+
const parsed = JSON.parse(brotliDecompressSync(row.payload).toString("utf8"));
|
|
566
|
+
if (!isModuleIndex(parsed))
|
|
567
|
+
return null;
|
|
568
|
+
return transformModulePaths(projectRoot, parsed, false);
|
|
569
|
+
}
|
|
570
|
+
catch {
|
|
571
|
+
return null;
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
/**
|
|
575
|
+
* Load the cached module for `file` at `sig`.
|
|
576
|
+
* `previouslyCached` is true when the cache held any entry for the file. A miss then means the file changed.
|
|
577
|
+
* `staleMod` is that older entry, when it can be decoded.
|
|
578
|
+
*/
|
|
579
|
+
export function loadModuleFromCache(projectRoot, file, sig, opts, report, diskCacheAvailable = true) {
|
|
477
580
|
const mode = opts?.cache ?? "off";
|
|
478
581
|
const cacheReport = initCacheReport(report, mode);
|
|
479
582
|
const cacheEnabled = mode !== "off";
|
|
@@ -485,58 +588,111 @@ export function tryLoadFromCache(projectRoot, file, sig, opts, report, diskCache
|
|
|
485
588
|
lruMapGet(memoryCache, key);
|
|
486
589
|
if (cacheEnabled && cacheReport)
|
|
487
590
|
cacheReport.hits += 1;
|
|
488
|
-
return entry.mod;
|
|
591
|
+
return { mod: entry.mod, previouslyCached: true, staleMod: null };
|
|
489
592
|
}
|
|
490
593
|
memoryCache.delete(key);
|
|
594
|
+
if (cacheEnabled && cacheReport)
|
|
595
|
+
cacheReport.misses += 1;
|
|
596
|
+
return { mod: null, previouslyCached: true, staleMod: entry.mod };
|
|
491
597
|
}
|
|
492
598
|
if (cacheEnabled && cacheReport)
|
|
493
599
|
cacheReport.misses += 1;
|
|
494
|
-
return null;
|
|
600
|
+
return { mod: null, previouslyCached: false, staleMod: null };
|
|
495
601
|
}
|
|
496
602
|
if (mode === "disk") {
|
|
497
603
|
if (!diskCacheAvailable) {
|
|
498
604
|
if (cacheEnabled && cacheReport)
|
|
499
605
|
cacheReport.misses += 1;
|
|
500
|
-
return null;
|
|
606
|
+
return { mod: null, previouslyCached: false, staleMod: null };
|
|
501
607
|
}
|
|
502
608
|
if (!isNodeSqliteUsable()) {
|
|
503
609
|
const error = nodeSqliteUnavailableError() ?? new Error("node:sqlite is unavailable");
|
|
504
610
|
reportMissingNodeSqlite(opts?.logLevel, error);
|
|
505
611
|
if (cacheEnabled && cacheReport)
|
|
506
612
|
cacheReport.misses += 1;
|
|
507
|
-
return null;
|
|
613
|
+
return { mod: null, previouslyCached: false, staleMod: null };
|
|
508
614
|
}
|
|
615
|
+
let previouslyCached = false;
|
|
616
|
+
let staleMod = null;
|
|
509
617
|
try {
|
|
510
618
|
const cache = getDiskModuleCache(projectRoot, opts);
|
|
511
619
|
const row = cache.load.get(cacheRelativePath(projectRoot, file));
|
|
620
|
+
previouslyCached = !!row;
|
|
512
621
|
if (row && row.sig === sig && row.version === PARSED_CACHE_VERSION) {
|
|
513
622
|
const parsed = JSON.parse(brotliDecompressSync(row.payload).toString("utf8"));
|
|
514
623
|
if (isModuleIndex(parsed)) {
|
|
515
624
|
const rehydrated = transformModulePaths(projectRoot, parsed, false);
|
|
516
625
|
if (cacheEnabled && cacheReport)
|
|
517
626
|
cacheReport.hits += 1;
|
|
518
|
-
return rehydrated;
|
|
627
|
+
return { mod: rehydrated, previouslyCached: true, staleMod: null };
|
|
519
628
|
}
|
|
520
629
|
}
|
|
630
|
+
if (row)
|
|
631
|
+
staleMod = rehydrateStaleModuleRow(projectRoot, row);
|
|
521
632
|
}
|
|
522
633
|
catch (error) {
|
|
523
634
|
if (isNodeSqliteUnavailableError(error)) {
|
|
524
635
|
reportMissingNodeSqlite(opts?.logLevel, error);
|
|
525
|
-
return null;
|
|
636
|
+
return { mod: null, previouslyCached, staleMod };
|
|
526
637
|
}
|
|
527
638
|
}
|
|
528
639
|
if (cacheEnabled && cacheReport)
|
|
529
640
|
cacheReport.misses += 1;
|
|
641
|
+
return { mod: null, previouslyCached, staleMod };
|
|
642
|
+
}
|
|
643
|
+
return { mod: null, previouslyCached: false, staleMod: null };
|
|
644
|
+
}
|
|
645
|
+
/** Files with a row in the memory module cache, including files that the current build omits. */
|
|
646
|
+
export function listMemoryCachedModuleFiles(projectRoot) {
|
|
647
|
+
const prefix = normalizePath(projectRoot) + "::";
|
|
648
|
+
const files = [];
|
|
649
|
+
for (const key of memoryCache.keys()) {
|
|
650
|
+
if (key.startsWith(prefix))
|
|
651
|
+
files.push(key.slice(prefix.length));
|
|
652
|
+
}
|
|
653
|
+
return files;
|
|
654
|
+
}
|
|
655
|
+
/**
|
|
656
|
+
* The cached row for `file` at any signature.
|
|
657
|
+
* Unlike `loadModuleFromCache`, it does not delete the row and does not count a hit or miss.
|
|
658
|
+
*/
|
|
659
|
+
export function peekCachedModule(projectRoot, file, opts) {
|
|
660
|
+
const mode = opts?.cache ?? "off";
|
|
661
|
+
if (mode === "memory") {
|
|
662
|
+
const entry = memoryCache.get(memoryCacheKey(projectRoot, file));
|
|
663
|
+
return entry ? { sig: entry.sig, mod: entry.mod } : null;
|
|
664
|
+
}
|
|
665
|
+
if (mode !== "disk" || !isNodeSqliteUsable() || !diskModuleCacheExists(projectRoot, opts))
|
|
666
|
+
return null;
|
|
667
|
+
try {
|
|
668
|
+
const cache = getDiskModuleCache(projectRoot, opts);
|
|
669
|
+
const row = cache.load.get(cacheRelativePath(projectRoot, file));
|
|
670
|
+
if (!row || row.version !== PARSED_CACHE_VERSION)
|
|
671
|
+
return null;
|
|
672
|
+
const mod = rehydrateStaleModuleRow(projectRoot, row);
|
|
673
|
+
return mod ? { sig: row.sig, mod } : null;
|
|
674
|
+
}
|
|
675
|
+
catch {
|
|
676
|
+
return null;
|
|
530
677
|
}
|
|
531
|
-
|
|
678
|
+
}
|
|
679
|
+
export function tryLoadFromCache(projectRoot, file, sig, opts, report, diskCacheAvailable = true) {
|
|
680
|
+
return loadModuleFromCache(projectRoot, file, sig, opts, report, diskCacheAvailable).mod;
|
|
532
681
|
}
|
|
533
682
|
export function writeModulesToCache(projectRoot, writes, opts) {
|
|
534
683
|
if (!writes.length)
|
|
535
684
|
return;
|
|
536
685
|
const mode = opts?.cache ?? "off";
|
|
537
686
|
if (mode === "memory") {
|
|
687
|
+
const root = normalizePath(projectRoot);
|
|
538
688
|
for (const write of writes) {
|
|
539
|
-
|
|
689
|
+
const key = memoryCacheKey(projectRoot, write.file);
|
|
690
|
+
if (!memoryCache.has(key) && memoryCache.size >= MAX_MEMORY_CACHE_ENTRIES) {
|
|
691
|
+
const oldest = memoryCache.values().next();
|
|
692
|
+
if (!oldest.done)
|
|
693
|
+
rootsWithEvictedPayloads.set(oldest.value.root, ++memoryEvictionSerial);
|
|
694
|
+
}
|
|
695
|
+
lruMapSet(memoryCache, key, { version: PARSED_CACHE_VERSION, sig: write.sig, mod: write.mod, root }, MAX_MEMORY_CACHE_ENTRIES);
|
|
540
696
|
}
|
|
541
697
|
}
|
|
542
698
|
else if (mode === "disk") {
|
|
@@ -577,4 +733,45 @@ export function writeModulesToCache(projectRoot, writes, opts) {
|
|
|
577
733
|
export function writeToCache(projectRoot, file, sig, mod, opts) {
|
|
578
734
|
writeModulesToCache(projectRoot, [{ file, sig, mod }], opts);
|
|
579
735
|
}
|
|
736
|
+
/**
|
|
737
|
+
* Delete cache rows. A build uses this in two cases:
|
|
738
|
+
* - Stale importers: delete the rows before the rebuild. A failed rebuild or cache write then cannot leave a row that a later build reuses.
|
|
739
|
+
* - Deleted files: delete the rows after a successful full build. The next unchanged build is then fully warm.
|
|
740
|
+
*
|
|
741
|
+
* Returns false when a disk row could not be deleted. The caller must then keep its previous state.
|
|
742
|
+
*/
|
|
743
|
+
export function removeModulesFromCache(projectRoot, files, opts) {
|
|
744
|
+
if (!files.length)
|
|
745
|
+
return true;
|
|
746
|
+
const mode = opts?.cache ?? "off";
|
|
747
|
+
if (mode === "memory") {
|
|
748
|
+
for (const file of files)
|
|
749
|
+
memoryCache.delete(memoryCacheKey(projectRoot, file));
|
|
750
|
+
}
|
|
751
|
+
else if (mode === "disk") {
|
|
752
|
+
if (!isNodeSqliteUsable()) {
|
|
753
|
+
const error = nodeSqliteUnavailableError() ?? new Error("node:sqlite is unavailable");
|
|
754
|
+
reportMissingNodeSqlite(opts?.logLevel, error);
|
|
755
|
+
return false;
|
|
756
|
+
}
|
|
757
|
+
if (!diskModuleCacheExists(projectRoot, opts))
|
|
758
|
+
return true;
|
|
759
|
+
try {
|
|
760
|
+
const cache = getDiskModuleCache(projectRoot, opts);
|
|
761
|
+
cache.db.transaction(() => {
|
|
762
|
+
for (const file of files)
|
|
763
|
+
cache.remove.run(cacheRelativePath(projectRoot, file));
|
|
764
|
+
})();
|
|
765
|
+
}
|
|
766
|
+
catch (error) {
|
|
767
|
+
if (isNodeSqliteUnavailableError(error)) {
|
|
768
|
+
reportMissingNodeSqlite(opts?.logLevel, error);
|
|
769
|
+
return false;
|
|
770
|
+
}
|
|
771
|
+
logWithLevel(opts?.logLevel, "warn", "Warning: Failed to remove modules from cache:", error);
|
|
772
|
+
return false;
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
return true;
|
|
776
|
+
}
|
|
580
777
|
//# sourceMappingURL=module-cache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-cache.js","sourceRoot":"","sources":["../../../src/indexer/build-cache/module-cache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"module-cache.js","sourceRoot":"","sources":["../../../src/indexer/build-cache/module-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,60 +5,46 @@ import type { BuildOptions } from "../types.js";
|
|
|
5
5
|
export { normalizeLanguageExtensions } from "../../languages.js";
|
|
6
6
|
/**
|
|
7
7
|
* Bump whenever indexing or graph construction changes what a cached artifact would
|
|
8
|
-
* contain.
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* Epoch
|
|
14
|
-
*
|
|
15
|
-
* Epoch
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* Epoch
|
|
20
|
-
* Epoch
|
|
21
|
-
* Epoch
|
|
22
|
-
*
|
|
23
|
-
* Epoch
|
|
24
|
-
*
|
|
25
|
-
* Epoch
|
|
26
|
-
* Epoch
|
|
27
|
-
* Epoch
|
|
28
|
-
* Epoch
|
|
29
|
-
*
|
|
30
|
-
* Epoch
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* refuses cross-module binds for hidden names, first-party hits are realpath-confined,
|
|
34
|
-
* JVM/C#/PHP/Python symbol indexes are scoped to the nearest language manifest,
|
|
35
|
-
* a directory hit becomes a file edge only for real module directories (Python
|
|
36
|
-
* `__init__` packages, PEP 420 namespace directories, and Go package directories),
|
|
37
|
-
* a leading BOM no longer discards tsconfig path mappings, lone-CR sources report
|
|
38
|
-
* real line numbers, and cached modules persist `declaredContainers` so a consumer
|
|
39
|
-
* whose declaring file changed elsewhere is re-resolved on an incremental build.
|
|
8
|
+
* contain. Old caches with a different epoch are discarded.
|
|
9
|
+
* Epoch 71 binds C# `using N;` to a file that declares `N` even when several do, and never to a
|
|
10
|
+
* path-like file in another language.
|
|
11
|
+
* Epoch 72 persists per-module docstring-check availability and preserves JSDoc from collapsed
|
|
12
|
+
* TypeScript overload signatures.
|
|
13
|
+
* Epoch 73 captures documentation on regex-fallback CommonJS exports and rejects malformed
|
|
14
|
+
* docstring-check markers in persisted modules.
|
|
15
|
+
* Epoch 74 binds CommonJS fallback function exports to their assignment, not to a
|
|
16
|
+
* same-named local, and records synthetic definitions at their export properties.
|
|
17
|
+
* Epoch 75 re-resolves warm-cache import bindings after declaration-language files are added,
|
|
18
|
+
* changed, or deleted. Older rows can keep bindings from an old file set.
|
|
19
|
+
* Epoch 76 stores canonical callable identities and their call-form arities in module rows.
|
|
20
|
+
* Epoch 77 updates Ruby relative imports, JVM reference candidates, and inherited member selection.
|
|
21
|
+
* Epoch 78 gives TypeScript functions declared in a block body their own callable key scope.
|
|
22
|
+
* Epoch 79 gives a C++ declaration without `static` the file-scoped key of a same-file `static` one.
|
|
23
|
+
* Epoch 80 indexes Java static members by their declaring type and keeps static wildcards distinct
|
|
24
|
+
* from JVM package and type-on-demand imports.
|
|
25
|
+
* Epoch 81 ignores nested JVM declarations when resolving package-qualified named imports.
|
|
26
|
+
* Epoch 82 marks non-public Java static members package-restricted for static imports.
|
|
27
|
+
* Epoch 83 stores Java package-private instance and protected member visibility.
|
|
28
|
+
* Epoch 84 resolves the visible first segment of a C++ qualified name before the direct path.
|
|
29
|
+
* Epoch 85 classifies Python TYPE_CHECKING imports as type-only and resolves declared-typed field chains.
|
|
30
|
+
* Epoch 86 removes the reduced-mode import recovery and native runtime option from persisted
|
|
31
|
+
* cache identity; stale modules and graph edges must be rebuilt with required native parsing.
|
|
32
|
+
* Epoch 87 removes obsolete graph and incremental options from persisted cache identity.
|
|
40
33
|
*/
|
|
41
|
-
export declare const CORE_ALGORITHM_EPOCH =
|
|
34
|
+
export declare const CORE_ALGORITHM_EPOCH = 87;
|
|
42
35
|
/**
|
|
43
36
|
* Bump whenever a language behavior hook changes. Hook source text is deliberately
|
|
44
37
|
* not fingerprinted because bundling rewrites it; this epoch invalidates caches
|
|
45
38
|
* consistently across the CLI and library build shapes.
|
|
46
|
-
* Epoch
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* Epoch 7 adds SCSS declaration scope, TypeScript named function expression self-binding,
|
|
50
|
-
* and C# positional record component locals.
|
|
51
|
-
* Epoch 8 makes implicit member scope opt-in per language, adds C# method and constructor
|
|
52
|
-
* parameter locals, Java constructor and spread-parameter declaration names, PHP block
|
|
53
|
-
* scope, Ruby query-driven locals, JavaScript type-only imports, and Ruby and PHP
|
|
54
|
-
* dynamic-import heuristics.
|
|
39
|
+
* Epoch 11 exports nested Ruby constants by qualified path, captures PHP promoted constructor
|
|
40
|
+
* properties, scopes Ruby block parameters, reads Go selector `field_identifier` names, and skips
|
|
41
|
+
* TypeScript parameter type annotations when binding names.
|
|
55
42
|
*/
|
|
56
|
-
export declare const LANGUAGE_BEHAVIOR_EPOCH =
|
|
43
|
+
export declare const LANGUAGE_BEHAVIOR_EPOCH = 11;
|
|
57
44
|
export type ManifestBuildOptions = {
|
|
58
45
|
cache?: BuildOptions["cache"];
|
|
59
46
|
cacheStrict?: boolean;
|
|
60
47
|
useBloomFilters?: boolean;
|
|
61
|
-
incrementalStrict?: boolean;
|
|
62
48
|
nativeRuntimeFingerprint?: string;
|
|
63
49
|
implementationFingerprint?: string;
|
|
64
50
|
coreAlgorithmEpoch?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;CAC3C,CAAC;AAyDF;;;;;;;;GAQG;AACH,eAAO,MAAM,qCAAqC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,kBAAkB,EAAE,IAAI,CAAC,CAmBlG,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAe1F;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAIrD;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D;AAmDD,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,oBAAoB,CAE/E;AAqCD,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,WAAW,EAAE,YAAY,GAAG,SAAS,GACpC,MAAM,EAAE,CA4BV;AAED,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAOjF;AAED,wBAAgB,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAevF"}
|