Commit Graph

541 Commits

Author SHA1 Message Date
Donny/강동윤
dc7fc74172 chore: Publish v1.2.165 2022-04-09 16:08:03 +09:00
Donny/강동윤
c45d9c5697 chore: Publish v1.2.164 2022-04-07 14:56:59 +09:00
Donny/강동윤
012d3a67fa chore: Publish v1.2.163 2022-04-03 16:06:38 +09:00
Donny/강동윤
a05a0d58a6 chore: Publish v1.2.162 2022-03-31 23:12:53 +09:00
Donny/강동윤
e763af77dd chore: Publish v1.2.161 2022-03-28 21:26:46 +09:00
Donny/강동윤
304f5bd1f2 chore: Publish v1.2.160 2022-03-22 19:53:55 +09:00
Donny/강동윤
f2dfaba065 chore: Publish v1.2.159 2022-03-19 20:45:38 +09:00
Donny/강동윤
174b48d4c3 chore: Publish v1.2.158 2022-03-18 20:58:54 +09:00
Donny/강동윤
b4906cc1d5 chore: Publish v1.2.157 2022-03-17 19:31:01 +09:00
LongYinan
db9b988845
feat(node-swc): Add libc field in Linux platform packages (#4046) 2022-03-16 18:58:24 +09:00
Donny/강동윤
702e0e124c chore: Publish v1.2.156 2022-03-16 17:14:41 +09:00
OJ Kwon
eee8e0f7bb
chore(ci): Revert package scripts to fix publish action (#4039) 2022-03-16 11:01:39 +09:00
OJ Kwon
dab2002a2e
refactor(plugin/runner): Split modules and introduce feature flags (#4035) 2022-03-15 22:45:40 +00:00
Donny/강동윤
afa97f63df chore: Publish v1.2.155 2022-03-14 19:27:27 +09:00
Donny/강동윤
9e4f4e92f7 chore: Publish v1.2.154 2022-03-12 17:40:56 +09:00
Donny/강동윤
83722df21a
chore(es/preset-env): Use js script for copying files (#3986)
Description:
 - We don't store `.json` from dependencies in our repo anymore.
2022-03-12 07:45:25 +00:00
Donny/강동윤
7ebfcfa70f
fix(es/preset-env): Fix compilation issue (#3972) 2022-03-11 14:43:17 +00:00
LongYinan
1206c84e19
feat(*): Update dependencies (#3964) 2022-03-11 23:00:55 +09:00
Austaras
487273fc5b
fix(preset-env): Use core-js-compat and @babel/compat-data directly (#3968) 2022-03-11 12:49:53 +00:00
Donny/강동윤
95ab49737c chore: Publish v1.2.153 2022-03-11 18:13:30 +09:00
Donny/강동윤
1a55bc8ea4 chore: Publish v1.2.152 2022-03-10 16:51:35 +09:00
Donny/강동윤
7f6fc0ce2d chore: Publish v1.2.151 2022-03-07 18:21:31 +09:00
Donny/강동윤
584bf05662 chore: Publish v1.2.150 2022-03-06 23:36:00 +09:00
Donny/강동윤
17c7a5cd60 chore: Publish v1.2.149 2022-03-06 18:24:43 +09:00
Donny/강동윤
3677b7bdd8 chore: Publish v1.2.148 2022-03-04 11:12:36 +09:00
OJ Kwon
b485a2fc26
build(node-swc): Rename entrypoint to avoid artifact collision (#3806) 2022-03-02 12:23:01 +09:00
Donny/강동윤
4cf27769c9 chore: Publish v1.2.147 2022-03-02 00:34:42 +09:00
OJ Kwon
95ecc013fe
fix(node-swc/cli): Correctly expose swcx entrypoint (#3784) 2022-03-01 08:41:45 +00:00
Donny/강동윤
ded7a8e0a9 chore: Publish v1.2.146 2022-02-27 16:19:54 +09:00
Donny/강동윤
c677593dba chore: Publish v1.2.145 2022-02-24 18:55:13 +09:00
Donny/강동윤
8a651bc449 chore: Publish v1.2.144 2022-02-23 05:34:31 +09:00
Donny/강동윤
b1d24702e3
refactor(preset-env): Extract common logic for browserslist support (#3674) 2022-02-22 09:03:40 +00:00
Donny/강동윤
8aea6a698f chore: Publish v1.2.143 2022-02-19 19:42:00 +09:00
Donny/강동윤
81a5761490 chore: Publish v1.2.142 2022-02-19 02:09:22 +09:00
Donny/강동윤
258b5849e2 chore: Publish v1.2.141 2022-02-16 16:31:46 +09:00
Alexander Akait
e97074b6c3
feat(css/ast): Use SimpleBlock in more places (#3575) 2022-02-16 12:40:16 +09:00
Donny/강동윤
a582f1f954 chore: Publish v1.2.140 2022-02-15 20:23:44 +09:00
Donny/강동윤
3997e2f2c5 chore: Publish v1.2.139 2022-02-12 17:04:39 +09:00
Donny/강동윤
12e52e171d chore: Publish v1.2.138 2022-02-09 02:10:54 +09:00
Donny/강동윤
c006972501 chore: Publish v1.2.137 2022-02-08 01:27:59 +09:00
Donny/강동윤
8b7c38c80c
test(es): Update tsc test suite (#3448) 2022-02-04 17:08:38 +09:00
Donny/강동윤
d659c7f73c chore: Publish v1.2.136 2022-02-03 15:21:13 +09:00
Donny
3bda85e303 chore: Publish v1.2.135 2022-01-27 17:42:57 +09:00
Donny
74b0624c0c chore: Publish v1.2.134 2022-01-25 17:28:37 +09:00
Donny
848e9c8b8a chore: Publish v1.2.133 2022-01-20 17:13:10 +09:00
Donny
e0c362b978 chore: Publish v1.2.132 2022-01-20 12:04:05 +09:00
LongYinan
9608605772
build(node-swc): Fix GLIBC < 2.18 compatible issues and android arm binary loading issue (#3314) 2022-01-20 02:21:24 +00:00
Donny
ca2598391c chore: Publish v1.2.131 2022-01-19 23:33:01 +09:00
Donny
a282146f7f chore: Publish v1.2.130 2022-01-17 13:38:10 +09:00
Donny
59651a1ff1 chore: Publish v1.2.129 2022-01-13 13:46:11 +09:00
Donny
540bc09888 chore: Publish v1.2.128 2022-01-11 16:53:04 +09:00
Donny
27a5284539 chore: Publish v1.2.127 2022-01-05 12:01:49 +09:00
Donny
fece2aae55 chore: Publish v1.2.126 2022-01-03 20:36:16 +09:00
Donny
08399d2e95 chore: Publish v1.2.125 2022-01-03 05:57:48 +09:00
Donny/강동윤
43c8cda31a
fix(es/renamer): Fix renamer (#3139)
swc_ecma_transforms_base:
 - `resolver`: Ignore named export with source.
 - `hygiene`: Ignore named export with source. (Closes #2924, Closes #3114)

swc_ecma_minifier:
 - Handle `export default` declarations as declaration instead of expressions. (Closes #2717)
 - Don't override already-processed identifiers. (Closes #2988)

swc_bundler:
 - Adjust the syntax context for named re-exports.
2021-12-29 13:44:48 +09:00
Donny
999df436f7 chore: Fix package.json 2021-12-26 04:02:32 +09:00
Donny
f51314cd51 chore(ci): Fix script for publishing 2021-12-25 22:58:27 +09:00
Donny
3f8b393465 chore: Publish v1.2.123 2021-12-25 20:54:05 +09:00
LongYinan
206da128a1
feat(node): Upgrade napi to v2 (#2958) 2021-12-24 02:21:24 +00:00
Donny
f4cc323e08 chore(node): Publish v1.2.122 2021-12-22 17:09:25 +09:00
Sosuke Suzuki
7beaabd533
feat(es/preset-env): Add ES2022 features to preset-env (#3072) 2021-12-19 14:28:05 +00:00
Donny
806c9db1a1 chore(node): Publish v1.2.121 2021-12-19 14:14:12 +09:00
Donny/강동윤
017392aa5b
feat(node-swc): Add cargo feature for v2 (#3019)
swc_node_bundler:
 - Add cargo features for versioned apis.

node-swc:
 - Add cargo features for versioned apis.
2021-12-12 22:52:58 +09:00
OJ Kwon
aab3326b3e
chore: Add changelog and pr template (#3017)
Co-authored-by: Donny <kdy1997.dev@gmail.com>
2021-12-12 20:41:01 +09:00
OJ Kwon
00d22b8fde
build: Use mocha for exec_ test instead of jest (#3009) 2021-12-11 07:59:21 +00:00
OJ Kwon
cabf5a458d
chore: Remove redundant dependencies (#3008) 2021-12-11 13:57:33 +09:00
Donny/강동윤
a3bd6aea54
fix(es/codegen): Fix sourcemap (#3003)
swc_ecma_codegen:
 - Handle source map of multi-line template literals. (Closes #2185, Closes #2362, Closes #2900)
2021-12-10 19:57:39 +09:00
Donny/강동윤
1ea965cecb
fix(es/parser): Drop outdated options (#2974)
swc_ecma_parser:
 - Drop flags in `EsConfig`.
 - Drop flags in `TsConfig`.
 - Drop unused variants from `SyntaxError`.
2021-12-05 17:33:34 +09:00
nicholas
ce601382d5
chore: Remove duplicate version field in package.json (#2965) 2021-12-04 12:33:38 +09:00
David Sherret
beb2c73c2c
fix(swc/hygiene): Prefer not renaming top level variables (#2940)
swc_ecma_transforms_base:
 - `hygiene`: Use concept of depth to prevent renaming top level nodes.
2021-12-04 01:55:27 +09:00
Donny/강동윤
a93f1111f9
fix(ci): Fix freebsd builds (#2944) 2021-12-02 12:57:27 +09:00
Donny
82c8694f4b chore: Drop freebsd for publishing 2021-12-02 11:37:40 +09:00
Donny
4e214ce437 chore: Publish v1.2.116 2021-12-02 07:10:16 +09:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny/강동윤
bb66083f69
fix(swc): Unimplement Default for JsMinifyOptions (#2901) 2021-11-28 18:57:48 +09:00
Donny/강동윤
ddc3aca3f0
fix(swc): Fix handling of jest option (#2892)
swc:
 - Merge `jsc.transforms.hidden.jest`.
2021-11-27 21:30:09 +09:00
Donny/강동윤
c2bbdbe9d6
feat(webpack): Add ast reducer (#2875)
swc_estree_compat:
 - Fix stack overflow related to object patterns.

swc_webpack_}ast:
 - Implement AST reducer.
2021-11-26 15:04:41 +09:00
Donny/강동윤
cdef843369
feat(es/estree): Allow emitting acorn ast (#2859)
swc_estree_ast:
 - Add `Flavor`.
 - Adjust serialization based on `Flavor`.

swc_estree_visit:
 - Remove.

testing:
 - Add `diff_json`.

testing_macros:
 - `#[fixture]`: Print input.
2021-11-25 20:16:46 +09:00
Donny
1cc4de3e9b chore: Publish v1.2.112 2021-11-24 15:07:18 +09:00
Donny/강동윤
2c099bfd2c
feat(es/preset_env): Use browserslist-rs (#2845)
swc_ecma_preset_env:
 - Fix `default_path`.
 - Use `browserslist-rs` for query. (Closes #2781)
2021-11-23 19:07:16 +09:00
Donny/강동윤
1368981f19
fix(wasm): Fix wasm-web (#2803) 2021-11-19 15:04:01 +09:00
Donny
e5604c3e56 chore: Publish 2021-11-18 01:08:33 +09:00
Donny/강동윤
53c8939550
test(swc): Add a test for sourcemap (#2777) 2021-11-17 16:06:37 +09:00
Tim Neutkens
8aea5ebb47
chore: Ensure feature.manyFiles of Git is enabled (#2754) 2021-11-15 08:44:54 +00:00
Donny/강동윤
2b2f6955f2
refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
Donny/강동윤
368b9e2ff2
chore: Update rustc to prevent CVE-2021-42574 (#2690) 2021-11-09 14:20:02 +09:00
Donny/강동윤
306cf989db
fix(es/minifier): Fix minifier (#2597)
swc_ecma_minifier:
 - Fix `negate_cost`.
2021-10-31 08:43:44 +00:00
LongYinan
1a659d3214
ci: Sync to latest napi workflow (#2592) 2021-10-31 10:04:18 +09:00
Donny/강동윤
4b2903e3b4
fix(es/minifier): Fix minifier (#2564)
swc_ecma_minifier:
 - Don't change depth of function while negating if statements. (#2558)

swc_ecma_transforms_optimization:
 - `dead_branch_remover`: Preserve `this`. (#2465, #2466)

swc:
 - Make `toplevel` default to true if `module` is true. (#2254)
2021-10-28 04:35:45 +00:00
Donny
54694571b9 chore: Fix typo 2021-10-28 10:03:29 +09:00
Donny
7fae0bb979 chore: Pulbish 2021-10-28 09:25:30 +09:00
Donny/강동윤
b8933e3db9
fix(swc): Fix bugs (#2538)
swc_ecma_transforms_base:
 - `unique_scopes`: Handle method properties.
 - `hygiene`: Fix handling of method properties. (#2539)

swc_ecma_transforms_compat:
  - Fold children of for-of/in statements. (#2531)

swc_ecma_minifier:
 - `name_mangler`: Fix handling of method properties.
2021-10-26 07:43:32 +00:00
Yunfei He
4abde38dd7
feat(swc): Add browserslist to optionalDependencies (#2515) 2021-10-23 20:04:06 +09:00
Donny/강동윤
9e215769cc
fix(es/minifier): Fix minifier using Deno test suite (#2503)
swc_ecma_codegen:
 - Emit `;` after private class properties.

swc_ecma_minifier:
 - `pure`: Drop more invalid expressions.
 - `sequences`: Drop more invalid expressions.
 - `strings`: Fix concat.
 - `inline`: Inline into `b` in `a[b] = foo`.
2021-10-21 11:56:48 +00:00
LongYinan
1b91d55277
ci: Re-enable FreeBSD build (#2497) 2021-10-21 15:15:52 +09:00
Donny/강동윤
eef3d6e3fb
fix(es): Fix simple bugs (#2495)
swc_ecma_parser:
 - Don't panic on `declare declare`. (#2343)

swc_ecma_transforms_react:
 - Don't panic on `createElement()`. (#2492)

swc_bundler:
 - Don't panic on wasm. (#2334)

swc:
 - Disable `inline_globals` if it's not specified. (#2490)
2021-10-20 06:12:21 +00:00
Donny/강동윤
2ca6e5d79b
feat(es/transforms/optimization): Support inlining of typeofs (#2473)
swc_ecma_transforms_optimization:
 - `inline_globals`: Support inlining of `typeof`s.

swc:
 - Change error message for parsing failure to mention `Syntax Error`.
2021-10-19 09:49:18 +00:00
Donny/강동윤
123c1f5d02
chore: Fix typo (#2472) 2021-10-19 08:25:57 +00:00
Donny/강동윤
01e171a4b4
test(es): Freeze as es2015 to verify base transforms (#2468) 2021-10-19 05:31:12 +00:00
Donny/강동윤
1645bb30b7
perf(es/transforms): Reduce usage of #[fast_path] (#2442)
swc_ecma_ast:
 - Implement `Take` for `ObjectLit`.
 - Implement `Take` for `ArrayLit`.

swc_ecma_transforms_compat:
 - `nullish_coalescing`: Remove exponential visit.
 - `nullish_coalescing`: Migrate to `VisitMut`.
 - `optional_chaining`: Reduce exponential visit. (But it's not removed)
 - `class_properties`: Remove exponential visit.
 - `jsx_src`: Migrate to `VisitMut`.
 - `optional_chaining`: Mae it parallel.
 - `async_to_generator`: Remove `#[fast_path]`.
 - `arrow`: Remove `#[fast_path]`.
 - `destructuring`: Remove `#[fast_path]`.
 - `block_scoped_functions`:  Remove `#[fast_path]`.
 - `classes`: Remove `#[fast_path]`.
2021-10-16 08:12:02 +00:00
Donny/강동윤
ee9177b753
fix(es): Fix bugs (#2447)
swc_ecma_parser:
 - Fix parsing of jsx escapes.

swc_ecma_minifier:
 - Don't mangle name as `const` or `let`. (#2446)

swc_ecma_transforms_react:
 - Fix handling of jsx escapes. (#2351)
2021-10-16 04:25:54 +00:00
Donny
dcf42771ad chore: Publish 2021-10-15 19:21:25 +09:00
Donny/강동윤
0e48284afb
fix(es/minifier): Fix bugs (#2433)
swc_ecma_minifier:
 - `sequences`: Stop searching for candidates if a dependency issue is found.
2021-10-14 13:48:14 +00:00
Donny
267d639c2e chore: Disable freebsd to publish 2021-10-14 12:06:24 +09:00
Donny/강동윤
ac3fbd91ac
perf(bundler): Improve performance (#2384)
*:
 - Use `ahash` instread of `rustc-hash`.

swc_ecma_transforms_optimization:
 - Make `dce` parallel.
2021-10-09 08:08:13 +00:00
Donny/강동윤
2c058cb124
fix(es/codegen, es/transforms/typescript): Fix bugs (#2383)
swc_ecma_codegen:
 - Emit sourcemap for `import` tokens.

swc_ecma_transforms_typescript:
 - Strip `react` correctly.
2021-10-09 01:20:59 +00:00
Donny/강동윤
bbefa0e57e
chore: Improve documentation for rust users (#2340) 2021-10-04 06:10:30 +00:00
Donny/강동윤
2c50cde8de
fix(swc): Fix try_with_handler (#2315)
swc:
 - `try_with_handler`: Return `Err` on errors.
2021-09-29 04:55:31 +00:00
Donny/강동윤
e46a842e99
feat(es/parser, es/transform): Implement ergonomic brand checking (#2079)
swc_ecma_parser:
 - Implement parsing of private properties in object literals.

swc_ecma_transforms_base:
 - `fixer`: Handle `const [a = (b, c)]`.

swc_ecma_transforms_compat:
 - `class_properties`: Support ergonomic brand checks. (#2064)

swc_ecma_transforms_proposal:
 - Implement ergonomic brand checks for private fields. (#2064)
2021-09-27 08:03:48 +00:00
Donny/강동윤
5e1003ec4c
fix(es/transforms/base): Fix hygiene (#2299)
swc_ecma_transforms_base:
 - `hygiene`: Support usage-def conflict where def comes first. (#2297)
2021-09-24 10:26:01 +00:00
Donny/강동윤
2156364121
fix(es/transforms/base): Fix hygiene (#2282)
swc_ecma_transforms_base:
 - `hygiene`: Handle decl-ref conflict. (#2211)
2021-09-22 06:56:04 +00:00
강동윤
ce01b8a9b7
fix(es): Fix bugs (#2256)
swc_ecma_codegen:
 - Fix source map of string literals. (#2253)

swc_ecma_transforms_typescript:
 - Allow using same name for a module with function. (#2243)
2021-09-18 07:52:08 +00:00
강동윤
20ce326909
feat(es/minifer): Improve minifier (#2229)
swc_ecma_minifier:
 - `if_return`: Allow side-effect-free statements to come after `if_return`.
 - `collapse_vars`: Move variables without init to first.
 - `analyzer`: Remove useless fields.
 - Don't drop `return` tokens if there's a finally block.
 - `drop_return_value`: Drop side-effect-free return arguments.
 - `make_sequences`: Don't inject `void 0` to return args.
 - `if_terminate`: Move to the pure optimizer.
 - Fix a bug related to `RegExp`.
2021-09-16 04:23:33 +00:00
강동윤
48d61039d2
fix(common, node/swc): Allow inlining sourcesContent (#2245)
swc_common:
 - Allow setting `sourceContents` of source map files. (#2218)

swc:
 - Support `inlineSourceContents`. (#2244)
2021-09-14 02:31:32 +00:00
강동윤
9ffe47106a
fix(swc): Fix target (#2226)
swc:
 - Fix `target` option. (#2225)
2021-09-10 15:43:14 +09:00
강동윤
77be9f63b9
fix(swc): Improve rust apis (#2197)
swc_ecma_transforms_testing:
 - Make `expected` not affect source map of input.

swc:
 - Accept `before` pass.
2021-09-01 23:34:37 +00:00
강동윤
11fe35dbd1
feat(es/minifier): Implement static evaluator (#2176)
swc_ecma_minifier:
 - Add an api to evaluate constants statically.
2021-08-30 05:21:38 +00:00
강동윤
8c5daeec2a
fix(es/transforms/base): Fix await expressions. (#2157)
swc_ecma_transforms_base:
 - Preserve parenthesis in `await (a || b)`. (#2155)
2021-08-26 13:19:12 +09:00
강동윤
584c44a490
feat(es): Reexport minifier from swc_ecmascript (#2146) 2021-08-24 20:38:16 +00:00
강동윤
838a7a8b33
fix(es/minifier): Make use of hygiene optimizer (#2145)
swc_ecma_ast:
 - Implement `Display` for `Ident`.

swc_ecma_minifier:
 - Expose `unique_scope`, which is required for `hygiene_optimizer`.
 - Improve `hygiene_optimizer`.

swc:
 - Use hygiene optimizer. (#1600, #2137)
 - Add `jsc.experimental.optimizeHygiene`
2021-08-24 15:03:31 +00:00
강동윤
6eaf60b8a4
fix(swc): Disable aes feature (#2109)
node/swc:
 - Disable `aes`. (#1807)
2021-08-19 12:12:16 +00:00
강동윤
879a0f39a8
feat(swc): Implement format.comments of terser (#2095)
swc:
 - `minify`: Support `format.comments`.
 - `process_js`: Support `jsc.minify.format.comments`.
2021-08-17 14:34:37 +00:00
강동윤
a309b36236
fix(es/transforms): Fix bugs (#2089)
swc_ecma_minifier:
 - Expose hygiene optimizer.
 - `mangle_names`: Handle private names in member expressions. (#2086)

swc_visit:
 - Make `Optional::new` const function.

swc:
 - Make `es3` optional via cargo feature.
 - Ensure that #1554 is already fixed. (#1554)
2021-08-16 10:33:18 +00:00
nicholas
035ff77f1a
fix(node/swc): Fix incorrect field package.json (#2069) 2021-08-14 02:17:54 +09:00
강동윤
a7cb2aba9d
fix(es/minifier): Fix bugs of the minifier (#2052)
swc_ecma_minifier:
 - Test mangler using execution test suite.
 - `mangler`: Preserve `arguments`.
 - `mangler`: Handle shorthand. (#2051)
 - `mangler`: Handle object pattern properties.
 - `precompress`: Don't drop function declarations if the variable with same name is in different scope. (#2011)
2021-08-11 07:24:52 +00:00
강동윤
53b031b019
fix(swc): Fix bugs (#2034)
swc_ecma_transforms_base:
 - `resolver`: Handle constructor properties correctly. (#2021)

swc_ecma_transforms_compat:
 - `block_scoping`: Handle arrows in loops. (#2027)
 - `block_scoping`: Handle nested for loops with function between them. (#2027)
 - `regenerator`: Handle rhs of `||` correctly. (#2024)

swc:
 - Add a test for #1734. (#1734)
2021-08-09 07:38:46 +00:00
강동윤
9793926cc8
fix(es/minifier): Fix bugs and implement more rules (#2032)
swc_ecma_minifier:
 - Fix an infinite loop. (#2028)
 - Don't remove span hygiene. (#2022)

swc_ecma_codegen:
 - Fix codegen of `return` with `async` arrow. (#2020)

swc:
 - Respect `minify = false`. (#2019)
2021-08-08 14:19:04 +00:00
강동윤
48bc26d3c9
fix(es): Fix codegen & minifier (#2006)
swc_ecma_codegen:
 - Emit a semicolon before `!`.
 - Emit a semicolon before `[`. (#2007)

swc_ecma_minifier:
 - Disable buggy passes.
 - `iife`: Don't inline async functions. (#2007)
2021-08-04 10:27:17 +00:00
강동윤
68608db0b3
fix(es/minifier): Improve output of minifier (#2005)
swc_ecma_minifier:
 - Don't reorder import statements.
2021-08-04 07:20:02 +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
강동윤
e916b35dd2
feat(node/swc): Support sourceFileName (#1976)
swc:
 - Support `sourceFileName`.
2021-08-03 00:49:34 +09:00
강동윤
be23e66ca8
fix(es/minifier): Fix minifier (#1985)
swc_ecma_minifier:
 - Don't create an identifier starting with number. (#1983)
 - Fix panic. (#1984)
 - Don't use time api on wasm. (#1982)
2021-07-31 13:34:16 +00:00
강동윤
d600d52157 fix(build): Increase memory 2021-07-31 19:50:13 +09:00
강동윤
839476dc3c chore: Publish a new version 2021-07-31 18:32:51 +09:00
강동윤
d1c481790c
feat(swc): Expose minifier api (#1978)
swc_ecma_codegen:
 - Fix codegen of imports when minification is enabled.

swc_ecma_minifier:
 - Mangle identifiers used by imports.

swc:
 - Support specifing `jsc.minify`. (#704, #1371)

swc/node:
 - Add `.minify()`.
 - Add `.minifySync()`.

swc/wasm:
 - Add `.minifySync()`.
2021-07-31 06:30:06 +00:00
강동윤
f3603b2cb8
chore: Use correct license for the node package (#1966) 2021-07-27 14:59:46 +09:00
강동윤
39ee7b962d
fix(es/codegen): Fix codegen of template literals (#1936)
swc_ecma_codegen:
 - Fix codegen of template literals. (Closes #1791)
2021-07-20 14:11:33 +09:00
강동윤
7f968472fb chore: Publish v1.2.65 2021-07-18 19:29:08 +09:00
강동윤
03be315921
fix(es/transforms): Fix decorator bugs (#1905)
swc_ecma_transforms_proposal:
 - Initialze decorators lazily. (#1278)
2021-07-08 20:48:07 +09:00
강동윤
04d4384482
fix(ci): Use cross-env (#1897) 2021-07-06 14:29:45 +09:00
강동윤
44b6400385
chore: Publish v1.2.63 (#1895) 2021-07-05 23:49:24 +09:00
강동윤
c4e013441b
chore(wasm): Fix license (#1874)
wasm:
 - Use spdx-compatible license. (#1798)
2021-07-01 13:48:25 +00:00
강동윤
ff440d47a4
chore: Organize project (#1849) 2021-06-24 17:01:21 +09:00
강동윤
c56115793c
fix(es/parser): Fix parser (#1808)
swc_ecma_parser:
 - Allow large numeric literals. (#1803)
 - Allow long numeric literals. (#1806)
2021-06-09 23:02:13 +09:00
LongYinan
d6571933ff
feat(node-swc): Support windows aarch64 and linux aarch64 musl (#1773) 2021-06-02 09:34:27 +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
LongYinan
6a13615381
feat(node-swc): Support FreeBSD (#1758) 2021-05-28 12:47:02 +09:00
muji
3359188a20
fix(spack): Update the list of node js core modules (#1749)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-27 15:10:23 +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
강동윤
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
강동윤
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
강동윤
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
강동윤
82ef06afb8
feat(babel/compat): Improve performance of babelify (#1626)
swc_babel_compat:
 - Optimize.

swc:
 - Improve performance of comment storage.
2021-05-06 14:56:54 +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 `&nbsp;`. (#1446)

swc:
 - Upgrade dashmap. (#1616)
2021-04-28 14:49:21 +09:00
강동윤
308792dc90
fix(bundler): Fix performance (#1601)
swc_bundler
 - Use a faster hash algorithm while sorting modules.
 - Remove plan system.
2021-04-24 04:28:38 +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
강동윤
1178686a4c
fix(bundler): Fix bundler (#1576)
swc_bundler:
 - Fix remapping of exports. (denoland/deno#9350)
2021-04-16 18:09:38 +00: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
강동윤
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
강동윤
97269a37b9
fix(swc): Fix bugs for v1.2.50 (#1444)
swc:
 - Respect `react` config.

swc_ecma_transforms_compat:
 - `export-namespace-from`: Preserve `use strict`. (#1423)

swc_ecma_transforms_module:
 - Inject `use strict` before imports. (#1423)

swc_ecma_transforms_proposal:
 - Emit metadata for literal types. (#1421)
2021-03-03 20:39:02 +09:00
강동윤
05a90715d1 Bump version 2021-02-24 01:58:14 +09:00
Jakub Koralewski
59bd00d841
fix: Fix tests on windows (#1419)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-02-23 00:33:11 +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
강동윤
af25a88902
fix(swc): Fix bugs for v1.2.47 (#1368)
swc_ecma_parser:
 - Fix generic parsing issue in jsx context. (#1299)

swc_ecma_transforms_module:
 - Allow importing a module multiple time. (#1232)
 - Handle imports in the constructor of an exported class decl. (#1213)

swc:
 - Respect `sourceMappingURL`. (#1236)
 - Resolve `sourceMappingURL` relative from file. (#1255)
 - Respect `isModule: false` (#1258)

spack:
 - Support loading json files. (#1225)
2021-01-29 22:19:04 +09:00
LongYinan
ca417e9d59
feat(node-swc): Support windows ia32 arch (#1367) 2021-01-29 15:09:44 +09:00
강동윤
acb4f1a278 Bump versions 2021-01-23 20:54:01 +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
강동윤
4b79cbbffe Bump version 2021-01-14 22:02:37 +09:00
강동윤
b822ac8d43 Bump version 2021-01-11 19:48:08 +09:00
강동윤
031d534332 Bump version 2020-12-30 14:34:28 +09:00
LongYinan
0c45a31f31
Upgrade to napi@1 (#1244)
node-swc:
 - Support apple silicon.
 - Support linux aarch64.
 - Support linux armv7.
 - Support android aarch64.
 - Support yarn pnp.
2020-12-30 14:30:09 +09:00
강동윤
f8a1fb878d
fix(regenerator): Handle ternary correctly (#1228)
swc_ecma_transforms:
 - Fix interaction between ternary and await. (#1216)

testing_macors:
 - Fix for `--lib` tests.
2020-11-24 02:54:18 +09:00
강동윤
6a49a4b0b2 Bump version 2020-11-21 13:05:34 +09:00
강동윤
8e07d7c7a6
Bump version 2020-11-08 12:48:15 +09:00
강동윤
626c881c98
bundler: Fix ordering (#1171) 2020-10-16 22:26:18 +09:00
강동윤
f0ea70cb25
bundler: Allow importing and exporting from same module (#1152)
swc_bundler:
 - Allow importing and exporting from same module. (#1150)
2020-10-09 19:10:25 +09:00
강동윤
0586c733e3
Fix bugs (#1143)
swc_ecma_transforms:
 - fixer: Fix conditional expression in await expressions. (#1133)
 - optional_chaining: Fix call expression. (#1136)
 - hygiene: Fix codegen of computed keys. (#1140)
2020-10-06 23:27:23 +09:00
강동윤
aa9555865b
Fix bugs (#1132)
swc_ecma_transforms:
 - Handle typescript class properties correctly. (#1122)
 - Handle optional chaining properly. (#1130)
 - Inject variables for nullisn coalescing in correct scope. (#1123)
2020-10-04 21:59:19 +09:00
강동윤
1f00d9ba26
Fix jest extension (#1106) 2020-09-24 19:49:12 +09:00
강동윤
ab8df21797
Fix optional chaining in argument position (#1104) 2020-09-24 15:14:30 +09:00
강동윤
7e8ff1d342
codegen: Fix for jsx (#1097) 2020-09-22 19:56:59 +09:00
강동윤
5cf137154f Bump version 2020-09-22 16:40:02 +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
강동윤
b0049c0fa6 Bump version 2020-09-18 16:10:16 +09:00
LongYinan
4795b65b10
Fix musl config (#1074) 2020-09-14 00:25:22 +09:00
강동윤
26595d97a5 Real fix 2020-09-13 21:12:53 +09:00
강동윤
d75b4004c1 Fix dep issue 2020-09-13 21:04:40 +09:00
강동윤
ddc340a352 Fix 2020-09-13 20:51:28 +09:00
강동윤
ab4eb20d48 v1.2.28 2020-09-13 20:41:28 +09:00
강동윤
0972db98a1
parser: Parse member expression is object patterns (#1068) 2020-09-12 18:39:25 +09:00
강동윤
1dd06d525d Ignore /*.node 2020-09-11 16:07:48 +09:00
강동윤
9bf0be1309 Bump version 2020-09-11 15:10:35 +09:00
강동윤
9e28088345 v1.2.24 2020-09-08 15:19:16 +09:00
강동윤
68012dada6 v1.2.23 2020-09-08 02:00:28 +09:00
LongYinan
4845e9f7fd
Fix artifacts scripts (#1044) 2020-09-07 21:58:36 +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
LongYinan
c0cb9e4401
Upgrade to napi-rs@0.3 cli (#1033) 2020-09-05 17:48:22 +09:00
강동윤
6524802ae5
fixer: Handle binary expression in callee of new (#1030) 2020-09-04 17:31:02 +09:00
강동윤
a60b0a9cd4 v1.2.22 2020-08-30 18:02:48 +09:00
강동윤
c1676c9d99
v1.2.22-alpha.2 (#1014)
- Fix prepublish script
2020-08-30 16:50:27 +09:00
강동윤
8e237288d7
Migrate to napi (#1009) 2020-08-30 15:29:42 +09:00
강동윤
0a83809b2a
Improve type resolver (#994) 2020-08-24 18:48:54 +09:00
강동윤
598705882a Bump version 2020-08-24 11:19:10 +09:00
강동윤
655fc12fcb
Make spack respect swcrc (#964) 2020-08-14 21:02:39 +09:00
강동윤
2fedf32747
swc_bundler (#943)
swc_bundler:
 - Splitted from spack

swc_ecma_parser:
 - Fix unexpected eof problem which occurs if log level is trace

swc_ecma_transforms:
 - Fix bugs of dce pass

spack:
 - Support cyclic dependencies
2020-08-12 22:18:47 +09:00
LongYinan
4ab3c58f6a
Strip TypeScript class properties without value assigned (#956)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-11 01:58:45 +09:00
LongYinan
dde9defbe4
Fix typescript strip in class properties pass (#954)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-10 20:33:25 +09:00
강동윤
e1f5d681e3
Fix typescript class properties pass (#951) 2020-08-10 01:22:15 +09:00
강동윤
ca246d3df7 Bump version 2020-08-09 19:07:13 +09:00
강동윤
951d52ec55
Fix target, target (#945) 2020-08-08 01:30:15 +09:00
강동윤
0989e73a99
Metadata for typescript decorator (#939)
swc_ecma_transforms:
 - Allow emitting decorator metadata (#666, #919)

swc:
 - change order of passes to allow decorator using type informations
2020-08-06 21:23:34 +09:00
강동윤
5fb77dbd61 Bump version 2020-08-06 14:59:13 +09:00
강동윤
5baa636a4b
Chores (coverage, documentation, etc..) (#925) 2020-08-02 19:10:28 +09:00
강동윤
0ac55ae68b
Improve ux for rust users (#909)
testing:
 - Remove dependency on relative_path

swc_common:
 - Span's byte positions are now self-contained and `GLOBALS` is not required while parsing.
 - Changed `Comments` into a trait.
 - Provide single-threaded implementation of `Comments`
 - Cargo feature `tty-emiiter` (To remove tty related stuffs )
 - Cargo feature `sourcemap` (To remove sourcemap for web assets)
 - Removed dependency on dashmap

swc_ecma_parser:
 - No duplicated comments.
 - Removed dependency on once_cell and regex
 - Add a test suite to visualize and test span of nodes.

swc_ecma_utils:
 - Removed dependency on parser

swc:
 - Remove dependency on derive_more and path-clean
 - Add multi-threaded implementation of `Comments`

swc_ecmascript:
 - A new crate contains `ast`, `codegen`, `parser`, `utils`, `visit`.
2020-07-31 18:49:07 +09:00
강동윤
ca43112d2a
codegen: Preserve quotes (#911) 2020-07-28 21:56:19 +09:00
강동윤
9b8bfb2455
Use stable rustc (#886) 2020-07-24 02:18:22 +09:00
강동윤
c0917839a5
Add empty to class member (#875) 2020-07-05 20:10:33 +09:00
강동윤
38adc49e7e
Bugfixes (#873)
swc_common:
 - Fix new_source_file

swc_ecma_parser:
 - Fix parsing of paren expr in lhs of an assignment
2020-07-01 16:31:55 +09:00
강동윤
fe260a02e2
ES2020 (#855)
Adapt es2020. API is not changed, but config for merged proposals are now noop.
2020-06-20 15:09:57 +09:00
강동윤
ff440157a0
Fix regenerator (#851)
swc_ecma_transforms:
 - Fix regenerator scoping issue.
2020-06-18 17:04:49 +09:00
강동윤
66d42adf7e
spack: modules (#848)
spack:
 - Better es6 module detection
 - Recursive merging
 - Support for common js modules
 - Support for node js core modules
 - Inject helpers

swc_ecma_transforms:
 - Fix dce
2020-06-17 23:48:34 +09:00
강동윤
31020e46d8
spack: enhancement (#845)
- Handle modules (via swcrc)
 - swc.bundle([conf1, conf2])
 - Correct chunking
2020-06-15 23:28:15 +09:00
강동윤
aea757d369
spack: More extensions for node resolver (#842) 2020-06-14 22:53:45 +09:00
강동윤
4db9f65976 Fix & bump version 2020-06-14 14:39:19 +09:00
강동윤
2d1fad5ca3 Bump version
I'm changing this due to the behavior of npm install
2020-06-14 12:05:11 +09:00
강동윤
fcef201695
spack: super-fast bundler (#825)
Version is alpha as it's not complete
2020-06-13 23:09:45 +09:00
강동윤
28456d0b49
Default value for options.jsc.parser.syntax (#840) 2020-06-13 02:05:49 +09:00
강동윤
c73e454478
Fix source map (#835) 2020-06-11 16:26:04 +09:00
강동윤
54b36927f9
Fix inline source map (#832) 2020-06-10 17:36:02 +09:00
강동윤
88edb71e0a
Handle input source map correctly (#830) 2020-06-09 20:20:20 +09:00
강동윤
d1117350a9 Bump version 2020-06-06 15:31:15 +09:00
강동윤
f912e9493b
Add some tests for parser (#819) 2020-06-03 23:37:15 +09:00
강동윤
0efba88e3f
Improve typescript parser (#811) 2020-06-02 19:22:41 +09:00
강동윤
e62ea09935
Test with real-world codes (#806)
The purpose of the commit is to prevent my mistake like the one in `v1.1.49`.
2020-05-28 22:23:53 +09:00
강동윤
d35430e15b
v1.1.50 2020-05-28 17:01:47 +09:00
강동윤
3bb22a6844
Update package.json 2020-05-28 13:09:50 +09:00
강동윤
f117fedad8
typescript_strip: Handle types used only in casts (#794) 2020-05-23 14:03:17 +09:00
강동윤
3a372ad29a
Move node-swc into the repository (#789)
The commit will help

 - Better testing
 - Preventing regression like #785.
 - **Implementing spack** (It requires access to neon api because of the plugin system)
2020-05-22 20:36:39 +09:00
강동윤
14f5212d3d
Wasm (#691) 2020-05-07 18:17:57 +09:00
강동윤
36aeac8639
Coverage (#670)
Add a script to calculate coverage
2020-02-16 21:06:25 +09:00
강동윤
64ed0bd801
Validate sourcemap (#669) 2020-02-16 16:51:42 +09:00