강동윤
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
Andrew Bradley
9ae8c47d9b
fix(es/transforms/module): Allow importing same module with multiple names ( #1830 )
2021-06-18 12:25:05 +09: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
강동윤
b5a7a3f577
fix(es/transforms/optimization): Fix dead_branch_remover ( #1827 )
...
swc_ecma_transforms_optimization:
- Preserve side effects of a while statement even if it's a infinite loop. (#1825 )
2021-06-16 14:30:33 +09:00
강동윤
4c8d68bfe2
fix(es): Improve handling of typescript ( #1824 )
...
swc_ecma_codegen:
- Implement more code generator for typescript ast nodes.
swc_ecma_transforms_base:
- Mark LHS of typescript import equals as a variable instead of a type.
2021-06-15 01:13:06 +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
강동윤
7730a6ea5a
fix(es/transforms): Fix bugs ( #1795 )
...
swc_ecma_transforms_compat:
- `async_to_generator`: Handle await in async generators correctly. (#1752 )
swc_ecma_transforms_module:
- Don't panic on double import from one module. (#1757 )
2021-06-06 22:16:59 +09:00
강동윤
03db7adc9f
fix(es/transforms/base): Wrap binary operands of unary expressions. ( #1793 )
...
swc_ecma_transforms_base:
- `fixer`: Handle binary operands of unary expressions correctly. (#1789 )
2021-06-05 12:58:50 +00: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
강동윤
ad55711e45
fix(es/transforms): Fix bugs ( #1769 )
...
swc_ecma_transforms_optimization:
- `dce`: Mark references from decorator as usage. (denoland/deno#10789)
swc_ecma_transforms_proposal:
- Allow using `super` in decorated class methods. (#846 )
2021-05-30 19:52:51 +09:00
강동윤
99e738643a
feat(es/minifier): Implement rules and classify tests ( #1750 )
...
swc_ecma_minifier:
- Classify tests so we can focus on MVP.
2021-05-28 19:44:03 +09:00
강동윤
9fa878c1a6
fix(es/transforms/base): Fix ts_resolver ( #1761 )
...
swc_ecma_transforms_base:
- `ts_resolver`: Handle type-only imports properly. (denoland/deno_lint#705 )
2021-05-28 14:04:00 +09:00
강동윤
c79db252dc
fix(swc): Fix bugs ( #1753 )
...
swc_ecma_parser:
- Allow class members to be declared. (#1751 )
node-swc:
- Fix typescript type definitions. (#1746 )
2021-05-27 11:59:04 +09:00
강동윤
8726c9caf2
fix(swc): Fix bugs ( #1745 )
...
swc_ecma_codegen:
- Don't escape unicode characters for old targets. (#1744 )
swc_ecma_transforms_compat:
- `class_properties`: Preserve `this` for tagged template literals. (#1742 )
2021-05-26 01:24:58 +09:00
강동윤
ef6a745599
feat(es/minifier): Implement more rules ( #1735 )
...
swc_ecma_minifier:
- Implement `evaluate` partially.
- Store 'expected output' from terser along with our result.
swc_ecma_transforms_base:
- `fixer`: Don't wrap `+ (a % b)`.
swc_ecma_transforms_optimization:
- `expr_simplifier`: Preserve this in calls.
2021-05-25 16:39:07 +09:00
강동윤
d60c3242af
fix(swc): Fix bugs ( #1739 )
...
swc_bundler:
- Fix cycle detection for complex circular imports. (denoland/deno#10752 )
swc_ecma_transforms_typescript:
- Allow using large values for an enum variant.
2021-05-25 14:30:17 +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
강동윤
5e2db21e47
feat(es/minifier): Implement more rules ( #1731 )
...
swc_ecma_codegen:
- Don't panic while checking if 2 dots are required.
swc_ecma_minifier:
- Implement some rules related to the option `evaluate`.
- Implement some rules related to strings.
- Implement some rules related to numbers.
swc_ecma_transforms_base:
- `fixer`: Handle `- (1 / 0)`.
- `fixer`: Handle `(void 0)(0)`.
2021-05-23 15:39:59 +09:00
강동윤
3522fc71e4
feat(es/minifier): Implement more rules ( #1730 )
...
swc_ecma_codegen:
- Fix codegen of `-0.0`.
swc_ecma_transforms_base:
- `fixer`: Handle tag of tagged template literals.
swc_ecma_minifier:
- Implement more rules for strings.
- Implement more rules for teplate literals.
- Implement more rules for comparisons.
- Implement more rules for destructuring bindings.
- Implement more rules for switch statements.
- Implement more rules for expressions.
2021-05-23 11:19:11 +09:00
강동윤
a518c83485
fix(es): Fix bugs ( #1728 )
...
swc_ecma_transforms_compat:
- `block_scoping`: Ensure that #1462 is fixed. (#1462 )
- `regenerator`: Inject variables at proper level. (#1718 )
swc_ecam_transforms_typescript:
- `strip`: Handle class expressions in arrow expressions correctly. (#1729 )
2021-05-22 12:14:00 +09:00
강동윤
d20c1d3089
feat(es/minifier): Implement more rules ( #1717 )
...
swc_ecma_minifier:
- Implement `global-defs` pass.
- Implement `properties` pass partially.
2021-05-21 15:57:17 +09:00
강동윤
a1341dcdc6
fix(es/transforms/compat): Fix async_to_generator
pass. ( #1724 )
...
swc_ecma_transforms_compat:
- `async_to_generator`: Fix async iife. (#1722 )
- `async_to_generator`: Don't apply iife optimization to named function expressions.
- `async_to_generator`: Remove duplicated works.
- `async_to_generator`: Support `await for`. (#1721 )
- `async_to_generator`: Support async generators.
2021-05-21 13:13:22 +09:00
강동윤
8a2909bc51
fix(es/preset-env): Update core js compat data ( #1719 )
...
swc_ecma_preset_env:
- Update `core-js-compat`. (https://github.com/swc-project/swc/issues/1712#issuecomment-844959483 )
2021-05-20 20:46:03 +09:00
강동윤
c6b22c57f8
feat(es/minifier): Implement minifier partially ( #1302 )
...
Co-authored-by: Fábio Santos <fabiosantosart@gmail.com>
2021-05-20 13:51:30 +09:00
강동윤
b6589af92b
fix(swc): Fix bugs ( #1712 )
...
swc_ecma_preset_env:
- Update compat data. (#1704 )
- Support `export-namespace-from`.
swc_ecma_transforms_compat:
- Use proper argument for private field accesses in a private method. (#1711 )
2021-05-19 00:55:01 +09:00
강동윤
a0241c88b2
fix(es/transforms/base): Fix resolver ( #1710 )
...
swc_ecma_transforms_base:
- `ts_resolver`: Treat the type parameter of a mapped type as a binding.
2021-05-18 17:47:43 +09:00
강동윤
dee82904f8
fix(es): Fix bugs ( #1709 )
...
swc_ecma_transforms_base:
- `fixer`: Fix regression related to `??` and `||`. (denoland/deno#10668 )
2021-05-18 15:34:44 +09:00
강동윤
57d1aaf80f
fix(es): Fix various bugs ( #1707 )
...
swc_ecma_codegen:
- Fix codegen of `\r\n` in template literals when targeting `es2020`. (denoland/deno#10282)
swc_ecma_parser:
- Support non-identifier getters in typescript. (#1708 )
swc_ecma_transforms_typescript:
- Skip `export {}` if it was not a module. (#1706 )
- Skip `export {}` if the result is module without it. (#1706 )
2021-05-17 22:27:59 +09:00
강동윤
8a36435ee1
fix(es/transforsm/compat): Transform private field access in private methods ( #1703 )
...
swc_ecma_transforms_compat:
- `class_properties`: Handle private field accesses in private methods. (#1702 )
2021-05-16 16:11:35 +09:00
강동윤
b044d2c6dd
fix(es/transforms/compat): Support private methods ( #1700 )
...
swc_ecma_transforms_base:
- Add some helpers.
swc_ecma_transforms_compat:
- `class_properties`: Support private methods. (Closes #1694 )
2021-05-15 20:35:24 +09: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
강동윤
24bd5ea4a4
fix(es): Fix various bugs ( #1680 )
...
swc_ecma_parser:
- Allow a class member named `declare`. (#1671 )
swc_ecma_transforms_optimization:
- Preserve side effects while inlining array index operations. (#1674 )
wasm/web:
- Fix ci script. (#1675 )
2021-05-11 16:29:29 +00:00
강동윤
2ad0af9e91
fix(es/transforms/compat): Improve performance ( #1673 )
...
swc_ecma_transforms_compat:
- `classes`: Fast-path.
- `destructuring`: Fast-path.
- `sticky_regex`: Fast-path.
- `spread`: Fast-path.
- `shorthand`: Fast-path.
- `typeof_symbol`: Fast-path.
- `block_scoped_functions`: Fast path.
- `duplicate_keys`: Use fxhash.
- `instance_of`: Fast path.
- `reserved_words`: Make string comparison efficient.
2021-05-11 04:53:36 +00:00
강동윤
9381d0dbc2
fix(es/transforms/base): Fix resolver ( #1672 )
...
swc_ecma_transforms_base:
- `resolver`: Handle variables in for in/of loop body correctly.
2021-05-10 20:39:07 +09:00
강동윤
de15804b89
Bump version
2021-05-10 17:23:51 +09:00
강동윤
2b918b0c3d
fix(es/transforms/compat): Don't create unnecessary IIFE. ( #1669 )
...
swc_ecma_transforms_compat:
- `class_properties`: Do not create iife if possible. (#1660 )
2021-05-10 16:18:31 +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
강동윤
9585500476
fix(es/transforms/base): Fix resolver ( #1666 )
...
swc_ecma_transforms_base:
- `resolver`: Handle function declarations in arrow body.
2021-05-09 09:52:29 +00:00
강동윤
aea08fb8c9
fix(es/tranforms/base): resolver: Handle function declarations in ts modules ( #1665 )
...
swc_ecma_transforms_base:
- `resolver`: Handle function names in ts modules correctly.
2021-05-09 16:03:59 +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
강동윤
c3bf517dc9
fix(es/transforms/compat): Fix span for comments in classes transform. ( #1658 )
...
swc_ecma_transforms_compat:
- classes: Fix span for `PURE` comments. (#1657 )
2021-05-09 02:26:45 +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
강동윤
1b1c46b492
fix(es/transforms/compat): Allow keywords in method names. ( #1651 )
...
swc_ecma_transforsm_compat:
- Allow using a keyword as a method name.
2021-05-07 11:27:25 +00:00
강동윤
abc24c9256
fix(es/transforms/resolver): Fix setter properties ( #1647 )
...
swc_ecma_transorms_base:
- Handle parameters of a setter property correctly.
2021-05-06 13:56:42 +09:00