Skip to content

Comments

feat(ast): add ContentHash trait; remove noop Hash implementation from Span#5451

Merged
graphite-app[bot] merged 1 commit intomainfrom
09-04-feat_ast_add_contenthash_trait
Sep 5, 2024
Merged

feat(ast): add ContentHash trait; remove noop Hash implementation from Span#5451
graphite-app[bot] merged 1 commit intomainfrom
09-04-feat_ast_add_contenthash_trait

Conversation

@rzvxa
Copy link
Contributor

@rzvxa rzvxa commented Sep 4, 2024

closes #5283

Also removes the noop Hash implementation on Span in favor of a real implementation.

Copy link
Contributor Author

rzvxa commented Sep 4, 2024

@codspeed-hq
Copy link

codspeed-hq bot commented Sep 4, 2024

CodSpeed Performance Report

Merging #5451 will not alter performance

Comparing 09-04-feat_ast_add_contenthash_trait (90facd3) with main (5187f38)

Summary

✅ 29 untouched benchmarks

@github-actions github-actions bot added A-linter Area - Linter A-ast Area - AST A-ast-tools Area - AST tools labels Sep 4, 2024
@rzvxa rzvxa force-pushed the 09-04-feat_ast_add_contenthash_trait branch 2 times, most recently from 5d8c77a to 599e2c0 Compare September 4, 2024 20:46
@rzvxa rzvxa marked this pull request as ready for review September 4, 2024 22:03
@Boshen Boshen changed the title feat(ast): add ContentHash trait. feat(ast): add ContentHash trait; remove noop Hash implementation from Span Sep 5, 2024
@Boshen
Copy link
Member

Boshen commented Sep 5, 2024

I'll test this in Rolldown before merging.

@Boshen Boshen self-assigned this Sep 5, 2024
@Boshen Boshen added the 0-merge Merge with Graphite Merge Queue label Sep 5, 2024 — with Graphite App
@graphite-app
Copy link
Contributor

graphite-app bot commented Sep 5, 2024

Merge activity

  • Sep 4, 11:33 PM EDT: Boshen added this pull request to the Graphite merge queue.
  • Sep 5, 3:40 AM UTC: The merge label '0-merge' was removed. This PR will no longer be merged by the Graphite merge queue
  • Sep 4, 11:46 PM EDT: The Graphite merge queue couldn't merge this PR because it was not satisfying all requirements (Failed CI: 'Test (ubuntu-latest)', 'Test (macos-14)', 'Clippy', 'Doc', 'Conformance', 'Benchmark (lexer)', 'Benchmark (parser)', 'Benchmark (transformer)', 'Benchmark (isolated_declarations)', 'Benchmark (semantic)', 'Benchmark (minifier)', 'Benchmark (codegen)', 'Benchmark (sourcemap)', 'Build Linter Benchmark', 'Test (windows-latest)', 'Check wasm32-unknown-unknown', 'AST Changes').
  • Sep 5, 1:14 AM EDT: Boshen added this pull request to the Graphite merge queue.
  • Sep 5, 1:25 AM EDT: Boshen merged this pull request with the Graphite merge queue.

Boshen pushed a commit that referenced this pull request Sep 5, 2024
… from `Span` (#5451)

closes #5283

Also removes the noop Hash implementation on `Span` in favor of a real implementation.
@Boshen Boshen force-pushed the 09-04-feat_ast_add_contenthash_trait branch from 599e2c0 to b2ec6e9 Compare September 5, 2024 03:40
@graphite-app graphite-app bot removed the 0-merge Merge with Graphite Merge Queue label Sep 5, 2024
… from `Span` (#5451)

closes #5283

Also removes the noop Hash implementation on `Span` in favor of a real implementation.
@rzvxa rzvxa force-pushed the 09-04-feat_ast_add_contenthash_trait branch from b2ec6e9 to 90facd3 Compare September 5, 2024 03:51
@Boshen Boshen added the 0-merge Merge with Graphite Merge Queue label Sep 5, 2024 — with Graphite App
@graphite-app graphite-app bot merged commit 90facd3 into main Sep 5, 2024
@graphite-app graphite-app bot deleted the 09-04-feat_ast_add_contenthash_trait branch September 5, 2024 05:25
This was referenced Sep 5, 2024
Boshen added a commit that referenced this pull request Sep 6, 2024
## [0.27.0] - 2024-09-06

- bd820f9 semantic: [**BREAKING**] Remove
`SymbolTable::get_symbol_id_from_name` and
`SymbolTable::get_scope_id_from_name` (#5480) (overlookmotel)

- cba93f5 ast: [**BREAKING**] Add `ThisExpression` variants to
`JSXElementName` and `JSXMemberExpressionObject` (#5466) (overlookmotel)

- 87c5df2 ast: [**BREAKING**] Rename `Expression::without_parentheses`
(#5448) (overlookmotel)

### Features

- e8bdd12 allocator: Add `AsMut` impl for `Box` (#5515) (overlookmotel)
- 90facd3 ast: Add `ContentHash` trait; remove noop `Hash`
implementation from `Span` (#5451) (rzvxa)
- 23285f4 ast: Add `ContentEq` trait. (#5427) (rzvxa)
- 59abf27 ast, parser: Add `oxc_regular_expression` types to the parser
and AST. (#5256) (rzvxa)
- 68a1c01 ast_tools: Add dedicated `Derive` trait. (#5278) (rzvxa)
- c782916 codegen: Print `type_parameters` in `TaggedTemplateExpression`
(#5438) (Dunqing)
- 4cb63fe index: Impl rayon related to trait for IndexVec (#5421)
(IWANABETHATGUY)
- ba4b68c minifier: Remove parenthesized expression for dce (#5439)
(Boshen)
- ed8ab6d oxc: Conditional expose `oxc_cfg` in `oxc` crate (#5524)
(IWANABETHATGUY)
- 91b39c4 oxc_diagnostic: Impl DerefMut for OxcDiagnostic (#5474)
(IWANABETHATGUY)
- 10279f5 parser: Add syntax error for hyphen in `JSXMemberExpression`
`<Foo.bar-baz />` (#5440) (Boshen)
- 0f50b1e semantic: Check for initializers in ambient
`VariableDeclaration`s (#5463) (DonIsaac)
- 62f7fff semantic: Check for non-declared, non-abstract object
accessors without bodies (#5461) (DonIsaac)
- 5407143 semantic: Check for non-declared, non-abstract class accessors
without bodies (#5460) (DonIsaac)
- 052e94c semantic: Check for parameter properties in constructor
overloads (#5459) (DonIsaac)
- 32d4bbb transformer: Add `TransformOptions::enable_all` method (#5495)
(Boshen)
- c59d8b3 transformer: Support all /regex/ to `new RegExp` transforms
(#5387) (Dunqing)
- cedf7a4 xtask: Impl `as_ast_kind` method for each variant (#5491)
(IWANABETHATGUY)

### Bug Fixes

- 0df1d9d ast, codegen, linter: Panics in fixers. (#5431) (rzvxa)
- fce549e diagnostics: Ignore `Interrupted` and `BrokenPipe` errors
while printing (#5526) (Boshen)
- ea7a52f napi/transform: Fix test (Boshen)
- 9b984b3 regex: Panic on displaying surrogated `UnicodeEscape`
characters. (#5469) (rzvxa)
- 88b7ddb regular_expression: Handle unterminated character class
(#5523) (leaysgur)
- 7a797ac semantic: Incorrect reference when `MemberExpression` used in
`TSPropertySignature` (#5525) (Dunqing)
- d8b9909 semantic: `IdentifierReference` within `TSPropertySignature`
cannot reference type-only import binding (#5441) (Dunqing)
- 8f9627d transformer: RegExp transform do not transform invalid regexps
(#5494) (overlookmotel)
- 2060efc transformer: RegExp transform don't transform all RegExps
(#5486) (overlookmotel)
- cfe5497 transformer: Do not create double reference in JSX transform
(#5414) (overlookmotel)
- 0617249 transformer/nullish-coalescing-operator: Incorrect reference
flags (#5408) (Dunqing)
- 0eb32a6 traverse: Invalid variable name generated by
`generate_uid_based_on_node` (#5407) (Dunqing)- b96bea4 Add back
lifetime (#5507) (IWANABETHATGUY)

### Performance

- bfabd8f syntax: Further optimize `is_identifier_name` (#5426)
(overlookmotel)
- aeda84f syntax: Optimize `is_identifier_name` (#5425) (overlookmotel)
- ed8937e transformer: Memoize rope instance (#5518) (Dunqing)
- bfab091 transformer: Store needed options only on `RegExp` (#5484)
(overlookmotel)
- b4765af transformer: Pre-calculate if unsupported patterns in RegExp
transform (#5483) (overlookmotel)
- 182ab91 transformer: Pre-calculate unsupported flags in RegExp
transform (#5482) (overlookmotel)

### Documentation

- 64db1b4 ast: Clarify docs for `RegExpPattern` (#5497) (overlookmotel)
- 3f204a9 span: Update docs about `ContentEq` `Vec` comparison speed
(#5478) (overlookmotel)- 00511fd Use `oxc_index` instead of `index_vec`
in doc comments (#5423) (IWANABETHATGUY)

### Refactor

- 9f6e0ed ast: Simplify `ContentEq` trait definition. (#5468) (rzvxa)
- a43e951 ast: Use loop instead of recursion (#5447) (overlookmotel)
- 2224cc4 ast: Renumber `JSXMemberExpressionObject` discriminants
(#5464) (overlookmotel)
- a952c47 ast: Use loop not recursion (#5449) (overlookmotel)
- d9d7e7c ast: Remove `IdentifierName` from `TSThisParameter` (#5327)
(overlookmotel)
- ccc8a27 ast, ast_tools: Use full method path for generated derives
trait calls. (#5462) (rzvxa)
- fdb8857 linter: Use "parsed pattern" in `no_div_regex` rule. (#5417)
(rzvxa)
- e7bd49d regular_expression: Correct typo (#5429) (overlookmotel)
- e4ed41d semantic: Change the reference flag to `ReferenceFlags::Type`
if it is used within a `TSTypeQuery` (#5444) (Dunqing)
- 94a6ac6 span: Use `Hasher` from `std` (#5476) (overlookmotel)
- b47aca0 syntax: Use `generate_derive` for `CloneIn` in types outside
of `oxc_ast` crate. (#5280) (rzvxa)
- a96866d transformer: Re-order imports (#5499) (overlookmotel)
- 6abde0a transformer: Clarify match in RegExp transform (#5498)
(overlookmotel)
- 09c522a transformer: RegExp transform report pattern parsing errors
(#5496) (overlookmotel)
- dd19823 transformer: RegExp transform do not take ownership of
`Pattern` then reallocate it (#5492) (overlookmotel)
- 2514cc9 transformer/react: Move all entry points to implementation of
Traverse trait (#5473) (Dunqing)
- c984219 transformer/typescript: Move all entry points to
implementation of Traverse trait (#5422) (Dunqing)

### Styling

- 2a43fa4 linter: Introduce the writing style from PR #5491 and reduce
the if nesting (#5512) (dalaoshu)

### Testing

- 340b535 linter/no-unused-vars: Arrow functions in tagged templates
(#5510) (Don Isaac)

Co-authored-by: Boshen <[email protected]>
@oxc-bot oxc-bot mentioned this pull request Sep 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

0-merge Merge with Graphite Merge Queue A-ast Area - AST A-ast-tools Area - AST tools A-linter Area - Linter

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ast: Derive Hash and PartialEq on AST node types

2 participants