muji
2151366b93
feat(es/loader): Support target runtime environment. ( #2045 )
...
swc_ecma_ast:
- Add `TargetEnv`.
swc_ecma_loader:
- Support specifying target environment.
2021-08-10 15:36:10 +09:00
강동윤
eb45760697
fix(es/transforms/react): Handle escape correctly ( #2014 )
...
swc_ecma_transforms_react:
- Handle escapes properly. (#2013 )
2021-08-05 08:34:28 +09:00
Sosuke Suzuki
a086a203dd
feat(es/parser): Report an error for import.meta
in script ( #1999 )
2021-08-04 14:38:07 +09:00
강동윤
81abfe55d6
fix(es): Fix bugs ( #2004 )
...
swc_ecma_codegen:
- Fix codegen of regexp where `minify` = `true`. (#2000 )
swc_ecma_transforms_react:
- Respect `@jsxImportSource` in `classic` mode. (#1933 )
swc:
- Upgrade `base64`.
2021-08-04 04:58:10 +00:00
강동윤
f44e25c3af
fix(es/minifier): Improve output of minifier ( #1990 )
...
swc_common:
- Add `Span.has_mark`.
swc_ecma_codegen:
- Emit `1e3` for `1000`.
- Optimize output. (#1986 )
swc_ecma_minifier:
- name mangler: Don't use keywords as an id.
- `properties`: Optimize member expression with string properties.
- `inline`: Inline some function expressions even if it's not fn-local.
- `analyzer`: Track reassignment correctly.
- `analyzer`: Track fn-local correctly.
- `sequences`: Inject `void` if required.
- `inline`: Inline function declarations correctly.
- `sequences`: Merge expressions into test of if statements.
- `sequences`: Reduce calls to an assigned variable.
- Use `Marks` instead of `&dyn Comments`.
swc_ecma_transforms_optimization:
- `expr_simplifier`: Fix infinite loops.
node/swc:
- Ensure that `.transform` performs minification. (#1989 )
2021-08-04 00:52:47 +09:00
강동윤
4011703af5
fix(testing): Allow using it with stable rustc ( #1974 )
...
testing_macros:
- Make `#[fixture]` relative to cargo manifest dir.
2021-07-29 14:18:21 +09:00
강동윤
85a216ef56
feat(es/parser): Allow stripping out typescript parser ( #1962 )
...
swc_ecma_parser:
- Add a cargo feature to remove typescript parser.
2021-07-25 09:37:59 +00:00
David Sherret
6dc6d8a847
refactor(es/dep-graph): Remove SourceMap dependency ( #1908 )
2021-07-14 00:59:13 +09:00
강동윤
69186eb74d
fix(es/transforms): Fix transforms ( #1900 )
...
node-swc:
- Use proper field name in `ObjectPattern`. (#1886 )
swc_ecma_codegen:
- Fix codegen of private properties. (#1898 )
swc_ecma_transforms_compat:
- Fix optional chaining expressions in a single-line arrow expression. (#1836 )
- `regenerator`: Preserve `ExportDefaultDecl`. (#1799 )
swc_ecma_transforms_module:
- Fix `export default function`. (#1799 )
2021-07-08 04:54:57 +00:00
Austaras
76341068d0
fix(es/ast): Fix handling of reserved words ( #1891 )
2021-07-04 19:44:33 +09:00
Austaras
1a01d0f2c5
fix(es/transform/react): Handle TypeScript declare module ( #1875 )
...
swc_ecma_transforms_module:
- Handle typescirpt declare module. (#1865 )
2021-07-02 10:07:34 +09:00
강동윤
33f2ab2d79
fix(es/transforms): Fix transforms ( #1861 )
...
swc_ecma_transforms_compat:
- Organize logical assignment pass correctly.
swc_ecma_transforms_optimization:
- `dead_branch_remover`: Handle nullish coalescing operator correctly. (#1851 )
2021-06-26 16:02:15 +09:00
강동윤
737ce63b78
chore(es/ast): Bump version ( #1853 )
2021-06-25 08:19:15 +00:00
강동윤
4cd43375a5
feat(swc): Add import resolvers ( #1834 )
...
swc_ecma_loader:
- Add `Resolve`.
- Add `TsConfigResolver`.
swc_ecma_transforms_module:
- Use `Resolve` for remapping import paths.
- Add `ImportResolver`.
- Add `NodeImprortResolver`.
swc:
- Add `paths` to `.swcrc`.
- Use `paths`. (#379 , #702 )
- Canonicalize file names.
2021-06-24 06:32:09 +00:00
Andrew Bradley
a31ca40dbb
fix(es/transforms/module): Share usage data between passes ( #1829 )
...
swc_ecma_transforms_module:
- Share scope data between import analyzer and module passes.
2021-06-24 13:37:30 +09:00
강동윤
6ad3f7b90e
feat(es/visit): Groundwork to use VisitMut instead of Fold ( #1842 )
...
swc_ecma_transforms:
- Expose `VisitMut` if possible.
swc_ecma_visit:
- Implement `VisitMut` for` Folder<V>`.
- Implement `VisitMut` for `AndThen<A, B>`.
2021-06-23 04:18:41 +00:00
강동윤
5a6c4fd5a0
fix(swc): Fix sourcemap ( #1832 )
...
swc_common:
- `SourceMap`: Don't panic for dummy spans.
swc_ecma_codegen:
- Use span for `throw`. (#1685 )
- Use span for `var` / `let` / `const`.
- Use span for `new`.
- Use span for `if`.
- Add spans to braces of a block statement. (#1796 )
swc_ecma_transforms_compat:
- `parameters`: Don't drop the span of block statements. (#1796 )
swc:
- Allow specifying input source map in `.swcrc`.
- Ensure that the inline source map works properly. (#1713 )
2021-06-18 11:34:17 +00:00
강동윤
f9bdc7b227
fix(es/parser): Fix panic on debug mode ( #1828 )
...
swc_ecma_parser:
- Handle undefined unicode code point gracefully. (#1813 )
2021-06-16 15:55:20 +09:00
강동윤
d3944f5203
fix(swc): Fix bugs ( #1820 )
...
swc_ecma_preset_env:
- [x] Rename directory to be consistant.
- [x] Add es2020::operators. (#1812 )
swc_ecma_transforms_react:
- [x] Don't escpae unicodes. (#1782 )
2021-06-12 15:39:39 +09:00
강동윤
3c3fb359ee
fix(es): Remove UB ( #1815 )
...
swc_ecma_parser:
- Remove UB.
swc_ecma_codegen:
- Remove codes related to the UB of the parser. (#1782 )
2021-06-12 05:17:09 +00:00
강동윤
97ef7c0553
fix(swc): Fix bugs ( #1811 )
...
swc_ecma_ast:
- Add `es2021`.
swc_ecma_transforms_compat:
- Handle `||=`. (#1788 )
2021-06-11 16:55:34 +09:00
강동윤
0bd2a3a07e
fix(es/transforms): Fix bugs ( #1783 )
...
swc_ecma_transforms_base:
- `fixer`: Wrap operand of a unary expression if it's a binary expression. (#1781 , #1789 )
swc_ecma_transforms_module:
- Allow multiple `export *` even if it has the same item. (#1780 )
2021-06-05 11:13:42 +09:00
강동윤
a795de7f43
fix(swc): Fix bugs ( #1732 )
...
swc_ecma_transforms_react:
- Escape some characters. (#1661 )
swc_ecma_transforms_compat:
- `regenerator`: Handle `||` properly. (#1684 )
2021-05-24 09:41:22 +00:00
강동윤
b4aa1d48e3
fix(es/transform): Fix bugs ( #1699 )
...
swc_ecma_transforms_base:
- Fix bug of `ts_resolver`.
swc_ecma_transforms_typescript:
- `strip`: Emit `export {}` for type-only modules. (#1698 )
- `strip`: Support scripts.
2021-05-15 16:07:24 +09:00
Pig Fang
1dbc3644a5
feat(es): Support type-only import equals declaration ( #1695 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-15 14:26:24 +09:00
강동윤
f0d7a3d064
fix(es/transforms): Fix bugs ( #1691 )
...
swc_ecma_transforms_optimization:
- Don't optimize optional chaining expressions. (#1688 )
swc_ecma_transforms_react:
- Don't panic. (#1683 )
2021-05-14 00:11:27 +09:00
Pig Fang
1548f6d799
feat(es/parser): Allow override
in parameter properties ( #1667 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-09 22:17:58 +09:00
Pig Fang
4aed9423de
fix(es/parser): Allow using override
with static
( #1663 )
2021-05-09 21:04:42 +09:00
강동윤
b0b0709e1a
fix(es): Fix various bugs. ( #1664 )
...
swc_ecma_codegen:
- Emit comments of `BytePos(0)`. (#1657 )
swc_ecma_transforms_compat:
- `classes`: Optimize class expresssions. (#1660 )
2021-05-09 14:23:03 +09:00
Niklas Mischkulnig
f4d0e46cbb
feat(es/transforms/compat): Add pure comment to classes ( #1646 )
...
swc_ecma_transforms_compat:
- Add pure annotations while tranpiling classes.
2021-05-08 15:47:20 +09:00
강동윤
f368c5f81c
fix(es/transforms/react): Bump version
2021-05-07 22:21:56 +09:00
Niklas Mischkulnig
fe107a1223
fix(es/transforms/react): Change order of passes ( #1639 )
2021-05-05 14:13:06 +09:00
강동윤
27a1c30fef
fix(es/transforms/fixer): Handle binary expressions in super class expr ( #1636 )
...
swc_ecma_transforms_base:
- Handle binary expressions in super class expressions. (denoland/deno#10487 )
2021-05-04 12:11:40 +09:00
강동윤
2724cefe2c
fix(es/transforms/react): Expose RefreshOptions
( #1635 )
...
swc_ecma_transforms_react:
- Expose `RefreshOptions`. (#1634 )
- Expose `Runtime`.
2021-05-03 19:31:04 +09:00
강동윤
5a0bacb5b8
fix(swc): Fix various bugs ( #1613 )
...
swc_ecma_codegen:
- Fix codegen of `\x00`. (#1619 )
swc_ecma_preset_env:
- Fix order of core-js imports. (#1605 )
swc_ecma_transforms_react:
- Preserve ` `. (#1446 )
swc:
- Upgrade dashmap. (#1616 )
2021-04-28 14:49:21 +09:00
강동윤
4db24fb7f6
fix(swc): Fix various bugs ( #1588 )
...
swc_ecma_transforms_module:
- Change the order of functions exported as default. (#1568 )
- Handle mixed imports correctly. (#1525 )
swc:
- Ensure that #1581 is fixed. (#1581 )
2021-04-18 20:58:30 +00:00
강동윤
46c3d62ebd
fix(swc): Fix bugs ( #1560 )
...
spack:
- Ensure that #1533 is fixed. (#1533 )
swc_ecma_parser:
- Support `async override` in classes. (#1558 )
swc_ecma_transforms_compat:
- `async_to_generator`: Preserve this in async object methods. (#1575 )
- `nullish_coaelscing`: Fix assignments. (#1570 )
- `export_namespace_from`: Preserve order of statements. (#1457 )
swc:
- Disable aes. (#1583 )
2021-04-17 06:00:14 +00:00
강동윤
246bdd5088
fix(bundler): Fix bugs ( #1572 )
...
swc_bundler:
- Ensure that denoland/deno#10141 is fixed.
- Run deno tests on ci.
- Support nested `export *`. (denoland/deno#10153, denoland/deno#10174)
swc_ecma_codegen:
- Remove `,` after rest elements. (#1573 , denoland/deno#10167 )
swc_ecma_transforms_optimization:
- Don't drop items used by the discriminant of a switch.
swc_ecma_transforms_typescript:
- Remove constructors without a body.
2021-04-14 14:00:33 +00:00
Austaras
df2a926e9d
fix(es/transforms/module): Use correct this ( #1561 )
...
swc_ecma_transforms_module:
- Preserve semantics of `this` in imported functions. (#1556 )
2021-04-14 00:18:24 +09:00
Devon Govett
8f5daa3bbb
feat(es/transforms/react): Add pure annotation comments ( #1564 )
...
swc_ecma_transforms_react:
- Add pure annotations for react.
2021-04-11 15:09:27 +09:00
Pig Fang
39e1e54ee4
fix(es/parser): Disallow override
in non-subclass ( #1552 )
...
swc_ecma_parser:
- Disallow `override` in classes without super class.
2021-04-07 15:38:24 +00:00
David Sherret
f1792708b4
fix(es/ast): Remove TsSignatureDecl ( #1531 )
2021-04-04 20:12:17 +09:00
Austaras
6cad184dfd
feat(es/transforms/react): Fast refresh config ( #1538 )
...
swc_ecma_transforms_react:
- Add a config for fast refresh.
2021-04-04 16:18:17 +09:00
강동윤
252804d2e3
fix(swc): Fix bugs ( #1529 )
...
swc_ecma_parser:
- Fix comment positions. (#1530 )
swc_ecam_transforms_compat:
- Handle default in destructuring binding patterns. (#1477 , #1449 )
- `async_to_generator`: Handle `this` correctly for async function in key-value properties. (#1455 )
swc_ecam_transforms_typescript:
- Handle import defaults. (#1448 )
2021-04-02 18:47:05 +09:00
Austaras
0fabc2cfc9
feat(es/transforms/react): Support fast refresh ( #1524 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-03-31 22:14:47 +09:00
강동윤
13a9d12c84
chore(ci): Configure github actions for rustdoc ( #1523 )
2021-03-31 13:09:10 +09:00
강동윤
51d0cef287
fix: Fix bugs ( #1516 )
...
swc_ecma_ast:
- Support TypeScript 4.3. (#1517 )
swc_ecma_parser:
- Support new syntaxes from typescript 4.3. (#1517 )
swc_ecma_transforms_compat:
- Fix '\\`' in template literals. (#1488 )
- `classes`: Fix super calls. (#1490 )
swc_ecma_transforms_module:
- Respect `esModuleInterop` for dynamic imports. (#1480 )
swc_ecma_transforms_typescript:
- `strip`: Remove `declare`-d namespaces. (#1508 )
2021-03-30 16:47:12 +09:00
강동윤
232cfc5f4f
fix(es/transforms/react): Handle jsx entities in attributes correctly ( #1501 )
...
swc_ecma_transforms_react:
- Fix jsx entities in attribute values. (#1479 )
2021-03-27 21:06:47 +09:00
Nayeem Rahman
fa3d65cd58
fix(strip): Transform static class fields to assignments ( #1487 )
...
swc_ecam_transforms_compat:
- Deprecate `typescript_class_properties`.
swc_ecma_tranforms_typescript:
- Merge `typescript_class_properties` into `strip`.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-03-26 13:48:55 +09:00
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
Nayeem Rahman
9bc074ed46
fix(strip): Combine typescript_class_properties() into strip() ( #1478 )
...
swc_ecma_utils:
- Use `&mut` for inject_after_super.
swc_ecma_transforms_typescript:
- Merge `typescript_class_properties` into `strip`.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-03-21 22:31:35 +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
Devon Govett
eec65f25bb
feat(es/transforms): Port @babel/preset-modules ( #1439 )
...
swc_ecma_preset_env:
- Add options to enable bugfix transforms.
swc_ecma_transforms_compat:
- Add bugfix transform for async arrows in a class.
- Add bugfix transform for default parameters.
- Add bugfix transform for templit literal caching.
swc_ecma_transforms_react:
- Respect `use_spread`.
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-03-02 16:03:22 +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
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
강동윤
0be20ff0ae
feat(es/transforms/react): New jsx transform ( #1408 )
...
swc_ecma_transforms_react:
- Implement new jsx transform. (#1103 , denoland/deno#7993 )
2021-02-19 14:32:53 +09:00
강동윤
8fb0b4c303
fix(es/transforms/react): Use VisitMut instead of Fold ( #1409 )
...
swc_ecma_transforms_base:
- Implement `MapWithMut` for more types.
swc_ecma_transforms_react:
- Migrate to `VisitMut`.
2021-02-17 14:40:03 +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
강동윤
0d130f8103
fix(bundler): Prevent hanging ( #1369 )
...
swc_bundler:
- Prevent infinite loop.
2021-01-30 13:35:07 +09:00
강동윤
947161b43b
fix(bundler): Fix bugs ( #1349 )
...
swc_bundler:
- Fix deglobbing of imports. (denoland/deno#8985)
- Use correct syntax context while deglobbing imports. (denoland/deno#9212)
- Allow reexporting from wrapped esms. (denoland/deno#8959, denoland/deno#9200)
- Fix statement orderings. (denoland/deno#9250)
- Emit injected items as early as possible. (denoland/deno#9250)
- Respect `external_modules`. (#1338 )
- Fix cjs suppport. (#1328 )
swc_ecma_transforms_base:
- hygiene: Fix for hoisting. (denoland/deno#9212 )
2021-01-25 21:15:42 +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
강동윤
b7ae896bbd
fix(es): Fix bugs ( #1353 )
...
swc_ecma_transforms_compat:
- Handle all accesses to private class properties. (#1333 )
- block_scoping: Inject variable correctly. (#1231 )
- Handle async arrow function correctly. (#1341 )
2021-01-23 20:52:53 +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
강동윤
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
강동윤
76d9e2a9df
feat(ecmascript/transforms): Split into multiple crates. ( #1311 )
2021-01-05 14:29:52 +09:00