-
-
Notifications
You must be signed in to change notification settings - Fork 719
ci(ast_tools): run "AST Changes" CI task when dependency crates change #15603
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
ci(ast_tools): run "AST Changes" CI task when dependency crates change #15603
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
51525f7 to
a304eeb
Compare
CodSpeed Performance ReportMerging #15603 will not alter performanceComparing Summary
Footnotes
|
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 PR updates the "AST Changes" CI task to trigger when oxc_* dependency crates of ast_tools are modified, preventing generated code from getting out of sync when changes to dependencies (particularly the minifier) affect code generation.
- Adds TOML parsing to read
ast_toolsCargo.toml and extractoxc_*dependencies - Generates wildcard watch patterns (
crates/{crate}/src/**) for each dependency - Updates CI watch list to include dependency crate paths
Reviewed Changes
Copilot reviewed 4 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tasks/ast_tools/src/output/yaml.rs | Adds logic to parse Cargo.toml and extract oxc_* dependencies, generates watch paths for them |
| tasks/ast_tools/src/main.rs | Updates generate_ci_filter to accept Codegen parameter and pass it to yaml_watch_list |
| tasks/ast_tools/Cargo.toml | Adds toml workspace dependency for parsing Cargo.toml files |
| Cargo.toml | Adds toml = "0.9.8" to workspace dependencies |
| Cargo.lock | Adds toml crate and its dependencies (toml_datetime, toml_parser, toml_writer, winnow, serde_spanned) |
| .github/generated/ast_changes_watch_list.yml | Generated output showing new wildcard patterns for dependency crates (oxc_allocator, oxc_ast, oxc_ast_visit, oxc_codegen, oxc_data_structures, oxc_minifier, oxc_parser, oxc_span, oxc_syntax) |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
a304eeb to
328991f
Compare
Merge activity
|
#15603) #15565 made `oxc_ast_tools` depend on local workspace versions of various crates. Add those crates to the watch list for "AST Changes" CI task, so if changes are made in them, `ast_tools` codegen will run to ensure generated code has been updated to reflect those changes. In particular, this will prevent generated code getting out of sync when changes to minifier affect the generated code.
328991f to
fc439ed
Compare
#15565 made
oxc_ast_toolsdepend on local workspace versions of various crates. Add those crates to the watch list for "AST Changes" CI task, so if changes are made in them,ast_toolscodegen will run to ensure generated code has been updated to reflect those changes.In particular, this will prevent generated code getting out of sync when changes to minifier affect the generated code.