Skip to content
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

feat(minifier): implement folding String.prototype.replace #6870

Conversation

camc314
Copy link
Contributor

@camc314 camc314 commented Oct 24, 2024

No description provided.

Copy link

graphite-app bot commented Oct 24, 2024

Your org has enabled the Graphite merge queue for merging into main

Add the label “0-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.

Copy link
Contributor Author

camc314 commented Oct 24, 2024

@camc314 camc314 marked this pull request as ready for review October 24, 2024 15:20
@github-actions github-actions bot added A-minifier Area - Minifier C-enhancement Category - New feature or request labels Oct 24, 2024
@camc314 camc314 force-pushed the c/10-24-feat_minifier_implement_folding_substring_string_fns branch from 36296b5 to bbb5d6a Compare October 24, 2024 15:29
@camc314 camc314 force-pushed the c/10-24-feat_minifier_implement_folding_string.prototype.replace branch from 513b956 to 3b5c899 Compare October 24, 2024 15:29
Copy link

codspeed-hq bot commented Oct 24, 2024

CodSpeed Performance Report

Merging #6870 will not alter performance

Comparing c/10-24-feat_minifier_implement_folding_string.prototype.replace (50744f3) with main (b075982)

Summary

✅ 30 untouched benchmarks

@graphite-app graphite-app bot added the 0-merge Merge with Graphite Merge Queue label Oct 25, 2024
Copy link

graphite-app bot commented Oct 25, 2024

Merge activity

@Boshen Boshen force-pushed the c/10-24-feat_minifier_implement_folding_substring_string_fns branch from bbb5d6a to fccf82e Compare October 25, 2024 01:30
@Boshen Boshen force-pushed the c/10-24-feat_minifier_implement_folding_string.prototype.replace branch from 3b5c899 to 50744f3 Compare October 25, 2024 01:30
Base automatically changed from c/10-24-feat_minifier_implement_folding_substring_string_fns to main October 25, 2024 01:34
@graphite-app graphite-app bot merged commit 50744f3 into main Oct 25, 2024
28 checks passed
@graphite-app graphite-app bot deleted the c/10-24-feat_minifier_implement_folding_string.prototype.replace branch October 25, 2024 01:38
Boshen added a commit that referenced this pull request Oct 26, 2024
## [0.34.0] - 2024-10-26

- 4618aa2 transformer: [**BREAKING**] Rename `TransformerOptions::react`
to `jsx` (#6888) (Boshen)

- 90c786c regular_expression: [**BREAKING**] Support ES2025 Duplicated
named capture groups (#6847) (leaysgur)

- 67a7bde napi/parser: [**BREAKING**] Add typings to napi/parser (#6796)
(ottomated)

### Features

- 1145341 ast_tools: Output typescript to a separate package (#6755)
(ottomated)
- 4429754 ecmascript: Constant eval `null` to number (#6879) (Boshen)
- fd57e00 ecmascript: Add abstract_relational_comparison to dce (#6846)
(Boshen)
- 8bcaf59 minifier: Late peeophole optimization (#6882) (Boshen)
- 860cbca minifier: Implement folding simple arrow fns (#6875) (camc314)
- c26020e minifier: Implement folding String.prototype.replaceAll
(#6871) (camc314)
- 50744f3 minifier: Implement folding String.prototype.replace (#6870)
(camc314)
- fccf82e minifier: Implement folding `substring` string fns (#6869)
(camc314)
- e6a5a1b minifier: Implement folding `charCodeAt` string fns (#6475)
(camc314)
- 0d0bb17 transformer: Complete the async-to-generator plugin (#6658)
(Dunqing)
- 419343b traverse: Implement `GetAddress` for `Ancestor` (#6877)
(overlookmotel)

### Bug Fixes

- a47c70e minifier: Fix remaining runtime bugs (#6855) (Boshen)
- 686727f minifier: Reference read has side effect (#6851) (Boshen)
- c658d93 minifier: Keep template literals with expressions (#6849)
(Boshen)
- 4dc5e51 transformer: Only run typescript plugin for typescript source
(#6889) (Boshen)
- 076f5c3 transformer/typescript: Retain ExportNamedDeclaration without
specifiers and declaration (#6848) (Dunqing)
- b075982 types: Change @oxc/types package name (#6874) (ottomated)

### Documentation

- 6eeb0e6 ast: Mention typescript-eslint, field ordering and shape
(#6863) (Boshen)
- 99e3b32 napi: Remove JSON.parse from example (#6836) (ottomated)

### Refactor

- adb5039 allocator: Add `impl GetAddress for Address` (#6891)
(overlookmotel)
- 3e7507f ast_tools: Reduce macro usage (#6895) (overlookmotel)
- 423d54c rust: Remove the annoying `clippy::wildcard_imports` (#6860)
(Boshen)
- 2d95009 transformer: Implement `Debug` on `StatementInjector` internal
types (#6886) (overlookmotel)
- c383c34 transformer: Make `StatementInjectorStore` methods generic
over `GetAddress` (#6885) (overlookmotel)
- 1f29523 transformer: Rename ReactJsx to Jsx (#6883) (Boshen)
- 333b758 transformer: `StatementInjectorStore` methods take
`&Statement` as target (#6858) (overlookmotel)
- c19996c transformer: Add `StatementInjectorStore::insert_many_before`
method (#6857) (overlookmotel)
- 7339dde transformer: `StatementInjectorStore::insert_many_after` take
an iterator (#6856) (overlookmotel)
- 4348eae transformer/typescript: Re-order visitor methods (#6864)
(overlookmotel)
- 3a56d59 transformer/typescript: Insert assignments after super by
`StatementInjector` (#6654) (Dunqing)
- a366fae traverse: Rename
`TraverseScoping::generate_binding_in_current_scope` (#6832)
(overlookmotel)
- 3b99fe6 traverse: Move `generate_binding` to `TraverseScoping` (#6831)
(overlookmotel)
- 60f487a traverse: `TraverseCtx::generate_binding` take an `Atom`
(#6830) (overlookmotel)

### Styling

- 262b2ed ast: Move crate doc comment to top of file (#6890)
(overlookmotel)

---------

Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Orenbek pushed a commit to Orenbek/oxc that referenced this pull request Oct 28, 2024
## [0.34.0] - 2024-10-26

- 4618aa2 transformer: [**BREAKING**] Rename `TransformerOptions::react`
to `jsx` (oxc-project#6888) (Boshen)

- 90c786c regular_expression: [**BREAKING**] Support ES2025 Duplicated
named capture groups (oxc-project#6847) (leaysgur)

- 67a7bde napi/parser: [**BREAKING**] Add typings to napi/parser (oxc-project#6796)
(ottomated)

### Features

- 1145341 ast_tools: Output typescript to a separate package (oxc-project#6755)
(ottomated)
- 4429754 ecmascript: Constant eval `null` to number (oxc-project#6879) (Boshen)
- fd57e00 ecmascript: Add abstract_relational_comparison to dce (oxc-project#6846)
(Boshen)
- 8bcaf59 minifier: Late peeophole optimization (oxc-project#6882) (Boshen)
- 860cbca minifier: Implement folding simple arrow fns (oxc-project#6875) (camc314)
- c26020e minifier: Implement folding String.prototype.replaceAll
(oxc-project#6871) (camc314)
- 50744f3 minifier: Implement folding String.prototype.replace (oxc-project#6870)
(camc314)
- fccf82e minifier: Implement folding `substring` string fns (oxc-project#6869)
(camc314)
- e6a5a1b minifier: Implement folding `charCodeAt` string fns (oxc-project#6475)
(camc314)
- 0d0bb17 transformer: Complete the async-to-generator plugin (oxc-project#6658)
(Dunqing)
- 419343b traverse: Implement `GetAddress` for `Ancestor` (oxc-project#6877)
(overlookmotel)

### Bug Fixes

- a47c70e minifier: Fix remaining runtime bugs (oxc-project#6855) (Boshen)
- 686727f minifier: Reference read has side effect (oxc-project#6851) (Boshen)
- c658d93 minifier: Keep template literals with expressions (oxc-project#6849)
(Boshen)
- 4dc5e51 transformer: Only run typescript plugin for typescript source
(oxc-project#6889) (Boshen)
- 076f5c3 transformer/typescript: Retain ExportNamedDeclaration without
specifiers and declaration (oxc-project#6848) (Dunqing)
- b075982 types: Change @oxc/types package name (oxc-project#6874) (ottomated)

### Documentation

- 6eeb0e6 ast: Mention typescript-eslint, field ordering and shape
(oxc-project#6863) (Boshen)
- 99e3b32 napi: Remove JSON.parse from example (oxc-project#6836) (ottomated)

### Refactor

- adb5039 allocator: Add `impl GetAddress for Address` (oxc-project#6891)
(overlookmotel)
- 3e7507f ast_tools: Reduce macro usage (oxc-project#6895) (overlookmotel)
- 423d54c rust: Remove the annoying `clippy::wildcard_imports` (oxc-project#6860)
(Boshen)
- 2d95009 transformer: Implement `Debug` on `StatementInjector` internal
types (oxc-project#6886) (overlookmotel)
- c383c34 transformer: Make `StatementInjectorStore` methods generic
over `GetAddress` (oxc-project#6885) (overlookmotel)
- 1f29523 transformer: Rename ReactJsx to Jsx (oxc-project#6883) (Boshen)
- 333b758 transformer: `StatementInjectorStore` methods take
`&Statement` as target (oxc-project#6858) (overlookmotel)
- c19996c transformer: Add `StatementInjectorStore::insert_many_before`
method (oxc-project#6857) (overlookmotel)
- 7339dde transformer: `StatementInjectorStore::insert_many_after` take
an iterator (oxc-project#6856) (overlookmotel)
- 4348eae transformer/typescript: Re-order visitor methods (oxc-project#6864)
(overlookmotel)
- 3a56d59 transformer/typescript: Insert assignments after super by
`StatementInjector` (oxc-project#6654) (Dunqing)
- a366fae traverse: Rename
`TraverseScoping::generate_binding_in_current_scope` (oxc-project#6832)
(overlookmotel)
- 3b99fe6 traverse: Move `generate_binding` to `TraverseScoping` (oxc-project#6831)
(overlookmotel)
- 60f487a traverse: `TraverseCtx::generate_binding` take an `Atom`
(oxc-project#6830) (overlookmotel)

### Styling

- 262b2ed ast: Move crate doc comment to top of file (oxc-project#6890)
(overlookmotel)

---------

Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
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-minifier Area - Minifier C-enhancement Category - New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant