-
Notifications
You must be signed in to change notification settings - Fork 10
[Query] Does Call #2139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Query] Does Call #2139
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request introduces a new "Does Call" query feature that enables checking whether a function calls another function matching specified constraints. The PR includes:
- Implementation of the new
does-callquery with support for name-based and id-based constraints with logical operators (and, or) - Refactoring of call graph generation to improve accuracy of call relationships
- Comprehensive test coverage for the new query functionality
- Dependency updates including esbuild, release-it, and various development tools
- Auto-generated documentation updates reflecting timing changes
Reviewed changes
Copilot reviewed 29 out of 33 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
src/queries/catalog/does-call-query/does-call-query-format.ts |
New query format definition with constraint types and CLI parser |
src/queries/catalog/does-call-query/does-call-query-executor.ts |
Query executor implementing constraint matching and call graph traversal |
test/functionality/dataflow/query/does-call-query.test.ts |
Comprehensive tests for the new query including recursion, aliasing, and logical operators |
src/dataflow/graph/call-graph.ts |
Significant refactoring to improve call graph accuracy with better handling of untargeted calls and aliases |
src/dataflow/internal/process/functions/call/unnamed-call-handling.ts |
Changed edge type from Calls to Reads for unnamed function calls |
src/dataflow/internal/linker.ts |
Added DefinedByOnCall to link read bits |
package.json |
Updated dependencies including esbuild, license-checker, and release-it |
| Multiple test files | Adjusted expectations for call graph edges based on refactored logic |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
This pull request is included in v2.8.0 (see Release v2.8.0 (Call-Graphs, Roxygen 2 Support, Many Plugins, Registrations, Exceptions and Hooks)). |
Uh oh!
There was an error while loading. Please reload this page.