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

☂️ Transpiler / Transformer #974

Closed
14 of 51 tasks
Boshen opened this issue Oct 10, 2023 · 3 comments
Closed
14 of 51 tasks

☂️ Transpiler / Transformer #974

Boshen opened this issue Oct 10, 2023 · 3 comments
Assignees
Labels
A-transformer Area - Transformer / Transpiler

Comments

@Boshen
Copy link
Member

Boshen commented Oct 10, 2023

Contribution Instructions

The implementation is in crates/oxc_transformer.

To get started, take a look at the previous implementations.

The integrations tests are located in tasks/transform_conformance/src/lib.rs,
Run it with just watch 'run -p oxc_transform_conformance' or with a filter just watch "run -p oxc_transform_conformance -- --filter type-arguments".


Tasks

Third Party Plugins

Feature list

Legend:

  • [Syntax] means this is a syntax plugin, no code is required because it is supported by the parser.
  • [Regex] means this is a regex transform, which is not supported.
  • [Codegen] means the code generator is responsible for the feature.

@babel/preset-react

  • @babel/plugin-transform-react-jsx

@babel/preset-typescript

  • @babel/plugin-transform-typescript

@babel/preset-env

ES2024

  • [Regex] unicode-sets-regex

ES2023

Does not have any features.

ES2022

ES2021

ES2020

ES2019

  • optional-catch-binding
  • [Codegen] json-strings

ES2018

  • async-generator-functions
  • object-rest-spread
  • [Regex] unicode-property-regex
  • [Regex] dotall-regex
  • [Regex] named-capturing-groups-regex

ES2017

  • async-to-generator

ES2016

ES2015

@Boshen Boshen self-assigned this Oct 10, 2023
Boshen added a commit that referenced this issue Oct 10, 2023
@Boshen Boshen pinned this issue Oct 10, 2023
@Boshen Boshen changed the title Transpiler / Transformer ☂️ Transpiler / Transformer Oct 10, 2023
@Boshen Boshen added the A-transformer Area - Transformer / Transpiler label Oct 11, 2023
@Boshen
Copy link
Member Author

Boshen commented Oct 13, 2023

I'm going to start with https://github.com/babel/babel/blob/main/packages/babel-plugin-transform-nullish-coalescing-operator/src/index.ts, which is simple but requires adding new variables to the scope.

@rzvxa
Copy link
Contributor

rzvxa commented Mar 26, 2024

@Boshen Is there any reason why some of these parts aren't checked while having an implementation in the transformer? If it is simply outdated let me know to take over it and keep it in sync with our progress.

@Boshen
Copy link
Member Author

Boshen commented Mar 29, 2024

Closing in favor of the redo in #2859

@Boshen Boshen closed this as not planned Won't fix, can't repro, duplicate, stale Mar 29, 2024
@Boshen Boshen unpinned this issue Mar 29, 2024
@Boshen Boshen modified the milestone: Transformer Milestone 1 Mar 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-transformer Area - Transformer / Transpiler
Projects
None yet
Development

No branches or pull requests

2 participants