David Sherret
da62c73239
refactor(es/ast): Change TaggedTpl to have a Tpl ( #1114 )
...
swc_ecma_ast:
- Make `TaggedTpl` have `Tpl`.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-03-25 20:09:36 +09:00
강동윤
9445c109f9
fix(es/codegen): Fix codegen of arrow expressions. ( #1452 )
...
swc_ecma_codegen:
- Fix codegen of arrow functions. (#1451 )
2021-03-20 15:30:54 +09:00
Alexander van Ratingen
06cb4b89cb
fix(es/codegen): Fix SX spread props ( #1463 )
2021-03-11 11:24:31 +09:00
강동윤
bc07215d4d
fix(es/parser): Fix lexing of template literals. ( #1450 )
...
swc_ecma_parser:
- Fix lexing of template literals. (denoland/deno#9620 )
- Ensure that denoland/deno#9650 is not a bug of parser.
2021-03-03 17:46:36 +09:00
강동윤
7f5bfdcc00
fix(bundler): Fix bugs ( #1382 )
...
swc_bundler:
- Improve performance
- Use `Vec<AHashSet<usize>>` instead of `AHashSet<(usize, usize)>`.
- Fix statement orderings. (denoland/deno#9464 )
- Fix wrapped esm mixed with circular imports. (denoland/deno#8224 )
- Store content of wrapped esm at top level. (denoland/deno#8224 )
2021-02-22 17:27:40 +09:00
David Sherret
adcca03cfa
fix(es/ast): Remove TsTypeCastExpr it's not used ( #1420 )
2021-02-22 17:05:51 +09:00
Yehuda Katz
db85d123b7
Fix a number of typos ( #1412 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-02-20 15:18:09 +09:00
강동윤
eaeffabf74
fix(es): Improve performance ( #1411 )
...
swc_ecma_ast:
- Add `BindingIdent`.
- Reduce size of `Ident`.
2021-02-19 15:34:22 +09:00
강동윤
9dabf00200
fix(es): Fix bugs ( #1395 )
...
swc_ecma_codegen:
- Implement `emit_ts_type_assertion`.
- Implement `emit_ts_type_cast_expr`.
- Implement `emit_ts_ns_export_decl`.
- Implement `emit_ts_signature_decl`.
swc_ecma_parser:
- Ensure that we report an error for invalid input. (#1391 )
swc_ecma_transforms_base:
- fixer: Handle `await (await foo)()`. (#1397 )
2021-02-14 22:18:05 +09:00
David Sherret
313f51fab1
feat(es/parser): Allow to look at the kind of an error ( #1396 )
...
swc_ecma_parser:
- Add a method to look at the kind of an error without destructuring it.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-02-14 16:49:28 +09:00
강동윤
bf445a75c4
fix(swc): Fix bugs ( #1372 )
...
swc_ecma_ast:
- Support import assertions for exports.
swc_ecma_parser:
- Support import assertions for exports.
swc_ecma_transform_typescript:
- Strip `declare globals` correctly. (#1383 )
spack:
- Re-enable multi-entry tests.
2021-02-10 17:25:28 +09:00
강동윤
686c98116d
fix(es): Fix for the type checker ( #1381 )
...
swc_ecma_codegen:
- Fix codegen of `TsCallSignatureDecl`.
swc_ecma_transforms_base:
- Handle `TsCallSignatureDecl`.
2021-02-08 01:39:05 +09:00
강동윤
0d130f8103
fix(bundler): Prevent hanging ( #1369 )
...
swc_bundler:
- Prevent infinite loop.
2021-01-30 13:35:07 +09:00
강동윤
93a19140a8
fix(es): Fixes for type checker ( #1359 )
...
swc_ecma_codegen:
- Print type parameters of a class method.
swc_ecam_transforms_base:
- `ts_resolver`: Handle type parameter constraints correctly.
2021-01-26 22:05:30 +09:00
강동윤
947f9c5641
fix(es/ast): Fix EqIgnoreSpan ( #1360 )
...
swc_ecma_ast:
- Make `EqIgnoreSpan` impl of` StrKind` always return true.
2021-01-25 18:14:34 +09:00
강동윤
2921b903d7
fix(es/ast): Compilation ( #1357 )
...
swc_ecma_ast:
- Fix compilation.
2021-01-25 11:32:09 +09:00
강동윤
d4df2cece8
fix(es): Fix bugs ( #1347 )
...
swc_ecma_parser:
- Do not emit strict mode error while backtracking. (#1252 )
swc_ecma_transforms_proposal:
- Handle decorator on methods with computed key.
2021-01-23 15:46:42 +09:00
강동윤
0469e3a33e
fix(es): Move and rename JscTarget ( #1343 )
...
swc_ecma_ast:
- Add `EsVersion`.
swc_ecma_parser:
- Remove `JscTarget`.
- Reexport `EsVersion` as `JscTarget`.
2021-01-20 19:43:56 +09:00
강동윤
613a5a45dd
fix(es): Fixes for the type checker ( #1331 )
...
swc_ecma_codegen:
- Fix codegen of typescript interfaces.
swc_ecma_transforms_base:
- ts_resolver: Handle ts module declarations.
2021-01-15 21:12:16 +09:00
강동윤
3faefb5836
feat(es): TypeScript 4.2 ( #1330 )
...
swc_ecma_ast:
- Add `is_abstract` to constructor types.
swc_ecma_codegen:
- Fix codegen of `Bool`.
- Implement codegen for abstract constructors.
swc_ecma_parser:
- Inline tsc parser test suite.
- Implement parsing of abstract constructor types.
2021-01-15 19:30:44 +09:00
강동윤
a9bf9bb9e1
fix(swc): Fix bugs ( #1300 )
...
swc_ecma_codegen:
- Handle unicode escape sequences when target is es5. (#1227 , #1326 )
swc_ecma_transforms_compat:
- Handle template literals correctly. (#1314 )
- Handle private class properties correctly. (#1306 )
swc:
- Don't panic on `export * as foo from 'foo'`. (#1307 )
2021-01-14 21:56:25 +09:00
강동윤
842b6f953c
fix(ecmascript/transforms): Fix dce ( #1301 )
...
swc_bunder:
- Fix `keywords` pass.
swc_ecma_codegen:
- Ensure that the code generator handles unicode characters properly. (denoland/deno#8925 )
swc_ecma_parser:
- Ensure that the parser handles unicode characters properly. (denoland/deno#8925 )
swc_ecma_transforms:
- Fix dce.
2021-01-05 18:45:26 +09:00
강동윤
254efc4d54
Bump version
2020-12-29 13:04:20 +09:00
Maxime Guerreiro
9063908528
feat(ecmascript/codegen): fix and use omit_trailing_semi ( #1298 )
...
swc_ecma_codegen:
- Use omit_trailing_semi in 'assert_min' tests, to identify bugs. Before this,
no code was using this method - and it had some serious bugs.
- Omit semicolons when writing punctuation, as it's permitted to do so.
- Use two macros ('semi', 'formatting_semi') to distinguish between required
semicolons, as used in for(...), and optional ones that are used between
statements.
This commit does not enforce the use of omit_trailing_semi when cfg.minify is
used (except in tests using assert_min), and as such should not modify the
behavior of existing apps. This is confirmed by the Test262 suite passing
without changes.
Co-authored-by: 강동윤 <kdy1@dudy.kr>
2020-12-29 11:56:38 +09:00
강동윤
6941f29943
fix(swc): Fixes for typescript type checker ( #1146 )
...
swc_ecma_codegen:
- Fix codegen of `TsConstructorSignature`.
- Fix codegen of `TsIndexSignature`.
- Fix codegen of type parameters in arrow expressions.
- No panic on dummy span.
swc_ecma_parser:
- Parse optoinal method correctly.
swc_ecma_transforms:
- resolver: Handle type parameters in arrow expressions.
2020-12-27 18:18:30 +09:00
강동윤
8a8db58f1c
fix(ecmascript): Fix bugs related to string literals ( #1287 )
...
swc_ecma_ast:
- Add `Str.kind`.
swc_ecma_transforms:
- Fix quotes in template literals. (#1280 )
swc_ecma_codegen:
- Fix escape of single quotes. (#1259 )
- Fix codegen of wrong escapes. (#1276 )
swc:
- Ensure that #1271 is about napi's deserialization.
2020-12-22 04:27:18 +09:00
Liam Murphy
576fb6a532
fix(ecmascript/lexer): Normalize \r\n and \r to \n in template literals ( #1286 )
...
swc_ecma_parser:
- Normalize \r\n and \r to \n in template literals.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-12-21 17:56:17 +09:00
Liam Murphy
b760c7c9c7
fix(ecmascript/codegen): TsQualifiedName has trailing dot ( #1268 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-12-20 22:27:31 +09:00
강동윤
2e29d78281
fix: Decorator metadata ( #1248 )
...
swc_ecma_transforms:
- Emit proper typename for `design:type` used with enum. (#1160 )
2020-12-04 05:03:26 +09:00
강동윤
faa1c5f4e5
Fix bugs ( #1241 )
...
swc_ecma_codegen:
- Print multiline string correctly. (#1233 )
swc_ecma_transforms:
- `optional_chaining`: Ensure that #1149 is fixed. (#1149 )
- `async_to_generator`: Remove method parameters. (#1215 , #1235 )
- `regenerator`: Don't emit useless expressions. (#1125 )
- `regenerator`: Track `finally` properly. (#1125 )
spack:
- LRU cache for resolver.
2020-11-30 19:20:21 +09:00
강동윤
ea6beaa06d
Fix bundler ( #1242 )
...
swc_ecma_codegen:
- Fix codegen of unicode escapes. (denoland/deno#8541 )
swc_bundler:
- Allow importing a module multiple time. (denoland/deno#8530 )
2020-11-30 18:21:34 +09:00
강동윤
6888c69bda
Fix codegen: preserve input ( #1221 )
...
swc_ecma_codegen:
- Preserve input. (#1204 )
2020-11-21 02:04:29 +09:00
Brad Dunbar
4327d91fe3
BigInt literal keys ( #1192 )
2020-11-15 01:22:35 +09:00
Pig Fang
11dbc1406c
TypeScript 4.1: intrinsic
keyword ( #1193 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-10-29 18:37:22 +09:00
Pig Fang
5ef993d9b2
TypeScript 4.1: template literal type ( #1190 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-10-29 17:27:35 +09:00
강동윤
a368f66e77
Bump version
2020-10-29 15:44:12 +09:00
강동윤
32b3bbd50b
Emit only ascii ( #1191 )
...
swc_ecma_codegen:
- Emit only ascii characters. (#1187 , #1188 )
2020-10-29 14:33:33 +09:00
강동윤
b2aec35eb6
Fix issues ( #1189 )
...
swc_bundler:
- Support emitting iife. (Closes #1184 )
swc_ecma_parser:
- Auto-detect script / module (Closes #1164 )
- lexer: Error recovery for strict mode and module mode.
- More error recovery logic for strict mode violation.
- Fix panic on invalid input. (Closes #1170 )
2020-10-28 21:20:11 +09:00
Brad Dunbar
667a8c72c0
Single argument arrow functions ( #1186 )
...
swc_ecma_codegen:
- Remove parens from arrow functions when possible.
- Remove space after prop keys when minifying.
- Remove line break after expressions when minifying.
- Remove space after generator `*` when minifying.
2020-10-27 15:08:05 +09:00
Brad Dunbar
6e9d06e95a
codegen: Preserve space for postfix unary operators ( #1185 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-10-25 17:38:27 +09:00
Brad Dunbar
26c530b133
Invalid template escape in ES2018+ ( #1175 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-10-20 00:17:20 +09:00
강동윤
a5e6242601
Bump version
2020-10-14 14:39:51 +09:00
Juho Vepsäläinen
ea091337d8
fix(jsx): Drop extra spaces around jsx attributes ( #1121 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-10-02 17:06:02 +09:00
강동윤
688d16f228
Import assertion / json modules ( #1100 )
...
swc_atoms:
- Add "assert".
swc_ecma_ast
- Add a field to an import declaration.
swc_ecma_parser:
- Parse assertions in import statements.
- Parse assertions in top-level dynamic imports.
- Parse assertions in non-top-level dynamic imports.
swc_ecma_transforms:
- Fix compilation.
2020-09-23 14:27:27 +09:00
강동윤
7e8ff1d342
codegen: Fix for jsx ( #1097 )
2020-09-22 19:56:59 +09:00
강동윤
4490e2551d
swc.rs ( #1085 )
...
Changes url from https://swc-project.github.io to https://swc.rs
2020-09-21 22:53:48 +09:00
강동윤
2fff66d985
codegen: Don't emit newline after a block comment ( #1062 )
2020-09-11 15:09:35 +09:00
강동윤
eb2162cbd2
Fix stack overflow ( #1032 )
...
swc_ecma_codegen:
- Fix codegen of large binary expressions.
swc_ecma_parser:
- Fix stack overflow while parsing large binary expressions.
swc_ecma_transforms:
- typescrip::strip: Fix stack overflow while handling large binary operations.
- hygiene: Fix stack overflow by migrating it to `VisitMut`.
- hygiene: Improve performance.
- fixer: Fix stack overflow by migrating it to `VisitMut`.
- resolver: Migrate to `VisitMut`.
2020-09-06 15:09:02 +09:00
강동윤
a2960810ac
Add BigInt literal type ( #1020 )
2020-09-03 10:50:13 +09:00
강동윤
511dc54961
Fix codegen of VisitMut for Option ( #996 )
...
swc_visit:
- Fix codegen of VisitMut for Option
2020-08-25 16:29:11 +09:00