Conversation
Your org has enabled the Graphite merge queue for merging into mainAdd the label “merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix. You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link. |
|
This stack of pull requests is managed by Graphite. Learn more about stacking. |
2ee7657 to
ec5bfd0
Compare
|
Not just |
CodSpeed Performance ReportMerging #4061 will improve performances by 6.49%Comparing Summary
Benchmarks breakdown
|
We already do this for the inherited enums, It also happens in Edit:Here is an example: oxc/crates/oxc_ast/src/generated/visit.rs Lines 2887 to 2895 in ec5bfd0 |
|
Thanks for the explanation, I see the root cause |
Your question actually showed me another edge case, |
|
Confirmed in Rolldown by testing locally. |
## [0.17.1] - 2024-07-06 ### Bug Fixes - aa585d3 ast_codegen, ast: Visit `ExpressionArrayElement` as `Expression`. (#4061) (rzvxa) - 564a75a codegen: Missing TypeParameters in TSConstructSignature (#4063) (michaelm) - adee728 isolated_declarations: Don't report an error for parameters if they are ObjectPattern or ArrayPattern with an explicit type (#4065) (michaelm) - 1b8f208 isolated_declarations: Correct emit for private static methods (#4064) (michaelm) - 719fb96 minifier: Omit dce `undefined` which can be a shadowed variable (#4073) (Boshen) - 150f4d9 napi/transform: Display error with spanned messages (Boshen) ### Performance - 7fe2a2f parser: Do not copy comments (#4067) (overlookmotel) ### Refactor - 8fa98e0 ast: Inline trivial functions and shorten code (#4066) (overlookmotel) - 65aee19 isolated-declarations: Reorganize scope tree (#4070) (Luca Bruno) Co-authored-by: Boshen <[email protected]>

hotfix for #4060
I just added an edge case, We can come back to it later on and make it a standard in our codegen.
The diff is big because it causes the code to reorder, The edge case generated code doesn't follow the order in which they are defined in the source of truth(eg
js.rs)