Boshen
f903a225a8
feat(transformer): implement react-jsx-self ( #2946 )
2024-04-12 18:08:36 +08:00
Boshen
f3a28c61b9
chore(transform_conformance): enable typescript plugin snapshot
2024-04-11 20:06:53 +08:00
Boshen
3419306ac0
feat(transformer): add filename ( #2941 )
2024-04-11 18:43:51 +08:00
Boshen
07bd85e25d
chore(transform_conformance): clear the conformance snapshot
2024-04-11 14:09:59 +08:00
Boshen
d65eab3b8b
feat(transformer): add react preset ( #2921 )
2024-04-09 12:39:33 +08:00
Boshen
7710d8caf1
feat(transformer): add compiler assumptions ( #2872 )
...
closes #2869
2024-03-31 02:04:21 +00:00
Boshen
7034bcc47d
feat(transformer): add proposal-decorators ( #2868 )
2024-03-30 21:07:36 +08:00
Boshen
ffadcb08d9
feat(transformer): add react plugins ( #2867 )
2024-03-30 20:56:10 +08:00
Boshen
293b9f482a
feat(transformer): add transform-typescript boilerplate ( #2866 )
2024-03-30 20:48:35 +08:00
Boshen
c1a2958a5a
chore: remove oxc_transformer for a reimplementation ( #2865 )
...
closes #2860
2024-03-30 17:19:46 +08:00
Dunqing
d67100730b
feat(tasks/transforme_conformance): support for testing oxc's test cases ( #2835 )
...
Related to:
https://github.com/oxc-project/oxc/pull/2822#issuecomment-2021802212
Although `babel` has a lot of test cases, we still need to add edge
cases that `babel` doesn't have.
This PR will allow us to add out test cases to
`/root/oxc/tasks/transform_conformance/tests`. The directory structure
is consistent with `babel`
For example
```shell
# cd /root/oxc/tasks/transform_conformance/tests
- babel-transform-plugin–optional-catch-binding
- test
- fixtures
- your tests # add test cases here
```
2024-03-27 14:14:15 +08:00
Ali Rezvani
243131d7a4
feat(transformer): numeric separator plugin. ( #2795 )
...
[es2021 numeric
separator](https://babeljs.io/docs/babel-plugin-transform-numeric-separator )
2024-03-26 18:15:12 +08:00
Ali Rezvani
56493bd02b
feat(transformer): add transform literal for numeric literals. ( #2797 )
...
[es2015 transform
literals](https://babeljs.io/docs/babel-plugin-transform-literals )
---------
Co-authored-by: Dunqing <dengqing0821@gmail.com>
2024-03-26 16:27:32 +08:00
Dunqing
68e011c479
fix(tasks/transform-conformance) when the output file does not exist, the output content should be empty ( #2808 )
...
https://github.com/oxc-project/oxc/pull/2795#issuecomment-2018018675
2024-03-25 23:28:00 +08:00
underfin
d9b77d853b
refactor(sourcemap): change sourcemap name to take a reference ( #2779 )
2024-03-23 21:40:05 +08:00
Boshen
ef932a3c27
refactor(codegen): clean up API around building sourcemaps ( #2602 )
...
closes #2564
2024-03-04 16:03:33 +08:00
Dunqing
25e03cb0ef
feat(tasks/transformer): enable typescript when the typescript plugin is provided ( #2548 )
...
Babel has many test cases that are js files, but in ts syntax.
2024-03-01 21:04:55 +08:00
Dunqing
f760108094
feat(transformer): call build module record ( #2529 )
2024-02-28 14:35:35 +08:00
Andrew McClenaghan
e6d536cb9b
feat(codegen): configurable typescript codegen ( #2443 )
...
- Adds option to `CodegenOptions` - `enable_typescript` to enable output
of TS.
- Stops skipping output that is TS when `enable_typescript` is enabled
- Adds TS support to
- Function
- FormalParameter
- BindingPattern
- Adds basic tests for TS generation
---------
Co-authored-by: Boshen <boshenc@gmail.com>
2024-02-20 12:09:28 +08:00
Boshen
70a0076eed
refactor: remove global allocator from non-user facing apps ( #2401 )
...
The runtime performance gains does not out weight the compilation speed from
building the custom allocators, which takes about a minute to build on
slower machines.
2024-02-12 14:09:05 +08:00
Boshen
650f6c942f
refactor: use our forked version of miette::Reporter for tests ( #2266 )
2024-02-02 16:15:31 +08:00
Boshen
889837704c
feat(semantic): cfg prototype ( #2019 )
...
Co-authored-by: U9G <git@u9g.dev>
2024-01-25 20:19:35 +08:00
underfin
2794064eef
feat(transfrom): transform-json-strings ( #2168 )
...
The pr intends to implement the plugin
`babel-plugin-transform-json-strings`. But here is only mutate
`Directive`, the `StringLiteral` is not implement. It need to changed
the `StringLiteral` printer.
I'm intend to add the raw of `StringLiteral`, it will be mutate at
plugin, and using the `raw` to print `StringLiteral`. If you other
ideas, please let me know.
---------
Co-authored-by: Boshen <boshenc@gmail.com>
2024-01-25 10:39:02 +00:00
Dunqing
9e598ff650
feat(transformer): add decorators plugin ( #2139 )
2024-01-24 11:09:19 +08:00
Dunqing
7711f7abaf
feat(transformer/typescript): support only_remove_type_imports option ( #2077 )
2024-01-18 23:25:31 +08:00
Wenzhe Wang
32349af691
chore(tasks): remove redundant directory after exec ( #2069 )
2024-01-17 17:35:15 +08:00
underfin
78b427bc50
feat(transform): support es2015 new target ( #1967 )
...
Here implementing the es2015 new target transform, see detail at
https://babel.dev/docs/babel-plugin-transform-template-new-target .
Here has three kinds need to be distinguished.
- `NewTargetKind::Method`, it from `AstKind::ObjectMethod` or
`AstKind::MethodDefinitionKind::Get/Set/Method`. It will be transformed
to `void 0`.
- `NewTargetKind::Constructor`, is from `
AstKind::MethodDefinitionKind::Constructor`. It will be transformed to
`this.constructor`.
- `NewTargetKind::Function`, is from ` AstKind::Function`, here the
function is not the above function. It will be transformed to `this
instanceof _target ? this.constructor : void 0`, here `_target` comes
from the function name or is created by scope uid ident.
2024-01-10 23:59:56 +08:00
秦宇航
ae27a8d1e6
feat(transformer): add partial support for babel-plugin-transform-instanceof ( #1802 )
2023-12-25 15:06:41 +08:00
Dunqing
32db5d29b3
feat(tasks/transformer): add function name plugin ( #1676 )
...
The plugin is added at https://github.com/oxc-project/oxc/pull/1510 .
2023-12-15 11:29:34 +08:00
Dunqing
f58b6279c8
feat(transformer): add arrow_functions plugin ( #1663 )
2023-12-13 20:46:28 +08:00
Ken-HH24
e331cc2677
feat(transformer): duplicate keys ( #1649 )
2023-12-10 18:07:32 +08:00
Miles Johnson
6cbc5dd75b
feat(transformer): Start on function_name transform. ( #1510 )
...
Co-authored-by: Boshen <boshenc@gmail.com>
2023-12-04 13:35:44 +08:00
magic-akari
92c1d9d527
feat(transform): TypeScript Enum ( #1173 )
2023-11-28 10:33:01 +08:00
IWANABETHATGUY
b6393f052f
feat(transformer/react): handle babel 8 breaking removed-options ( #1489 )
...
1. removed options react jsx
2. Passed 4 test cases.
2023-11-22 11:01:40 +08:00
IWANABETHATGUY
f66e4d8ac3
feat(transformer): add transform property-literal plugin ( #1458 )
...
1. Add `transform-property-literal-plugin`
2. Passing 2 testcases.
---------
Co-authored-by: Wenzhe Wang <mysteryven@gmail.com>
2023-11-21 23:07:43 +08:00
IWANABETHATGUY
4fb4a85ab1
chore(transformer): 🤖 add diff section when conformance failed in filter mode ( #1488 )
2023-11-21 21:47:58 +08:00
Dunqing
472707c04e
feat(task/transformer-conformance): skip babel 8 unsupported test cases ( #1258 )
...
Prior to babel8, object merging would use `babelHelper.extend`, which
caused most tests to fail
2023-11-13 11:05:36 +08:00
Dunqing
8c624abf9c
feat(transformer/react-jsx): throw the pragma and pragmaFrag cannot be set when runtime is automatic error ( #1196 )
...
close : #1194
Here's a rough implementation of my idea of throwing an error.
2023-11-10 12:50:54 +08:00
Dunqing
d8864c15b0
fix(tasks/transform_conformance): only the filtered test cases should be included when passing a filter ( #1197 )
2023-11-08 17:03:01 +08:00
Dunqing
7d85492a03
feat(transformer/react-jsx): support the sourceType is a script ( #1192 )
2023-11-08 15:15:00 +08:00
Wenzhe Wang
f71cb9f1da
feat(transform): support TemplateLiteral of babel/plugin-transform-template-literals ( #1132 )
...
Co-authored-by: Boshen <boshenc@gmail.com>
2023-11-03 22:19:44 +08:00
Boshen
203cf37695
feat(transformer/react): read comment pragma @jsxRuntime classic / automatic ( #1133 )
...
closes #1120
2023-11-03 11:10:11 +08:00
Boshen
69150d812c
refactor(transformer): move Semantic into Transformer ( #1130 )
2023-11-02 13:10:15 +08:00
Wenzhe Wang
8105ee5872
feat(tasks): skip cases start with dot ( #1114 )
...
0effd92d88/packages/babel-helper-fixtures/src/index.ts (L223)
2023-10-30 23:34:43 +08:00
Wenzhe Wang
094dfa5604
feat: support filter exec snap ( #1084 )
...
Co-authored-by: Boshen <boshenc@gmail.com>
2023-10-29 05:39:32 +00:00
Boshen
d6ba8910ba
feat(transformer): add props null to React.createElement ( #1074 )
2023-10-28 15:59:46 +08:00
Wenzhe Wang
b5bfc361fc
feat(transform): transform jsx element name ( #1070 )
2023-10-27 08:13:40 +08:00
Boshen
d8f1a7fce6
feat(transformer): start implementing react jsx transform ( #1057 )
2023-10-26 17:27:05 +08:00
Wenzhe Wang
ae74e08141
chore(tasks): only use bun to run babel exec.js ( #1060 )
2023-10-25 22:33:20 +08:00
Wenzhe Wang
7192520d2b
feat(transformer_conformance): use bun to run babel exec.js test cases ( #1012 )
...
closes #999
Co-authored-by: Boshen <boshenc@gmail.com>
2023-10-25 03:06:07 +00:00