Commit Graph

596 Commits

Author SHA1 Message Date
Donny
4ddc01e219 chore: Publish crates 2021-12-26 00:35:28 +09:00
magic-akari
a1cb4a4aa5
fix(es/compat): Fix handling of class methods with a big int as a key (#3118) 2021-12-25 14:46:56 +00:00
Donny
3b1a815db7 chore: Publish crates 2021-12-25 20:55:16 +09:00
Donny
ab2960b2c7 chore: Publish crates 2021-12-25 20:54:30 +09:00
Donny
3f8b393465 chore: Publish v1.2.123 2021-12-25 20:54:05 +09:00
Donny
cb603cc1ff chore: Publish crates 2021-12-24 13:40:54 +09:00
magic-akari
e5971f77d5
fix(es/ast): Fix Ident::verify_symbol (#3108) 2021-12-24 04:29:49 +00:00
Donny
5e6f6e5122 chore: Publish crates 2021-12-24 12:23:46 +09:00
magic-akari
9f5a8f728a
fix(es/compat): Fix destructuring (#3104)
swc_ecma_transforms_compat:
 - `destructuring`: Handle assignment expressions in rhs of variable declarators correctly. (Closes #2850)
2021-12-24 03:19:45 +00:00
Donny
8aff5ae0aa chore: Publish crates 2021-12-24 11:31:22 +09:00
LongYinan
206da128a1
feat(node): Upgrade napi to v2 (#2958) 2021-12-24 02:21:24 +00:00
Donny
4bb264d480 chore: Publish crates 2021-12-24 10:47:59 +09:00
Donny/강동윤
d923f89db1
fix(es/compat): Fix classes pass (#3107)
swc_ecma_ast:
 - Add `Ident::verify_symbol`.

swc_ecma_transforms_compat:
 - Don't generate invalid identifiers. (Closes #3106)
2021-12-24 10:46:55 +09:00
Donny
d7a489a709 chore: Publish crates 2021-12-23 22:03:30 +09:00
Donny/강동윤
ff0b55b778 feat(es/diff): Initialize a diff tool for ecmascript (#3101)
swc_ecma_diff:
 - Initialize the project.
2021-12-23 22:01:56 +09:00
Donny
7cbd2bc790 chore: Publish crates 2021-12-23 19:04:24 +09:00
Donny/강동윤
f66c2cd375
fix(es/helpers): Fix decorators (#3105)
swc_ecma_transforms_base:
 - Fix `_applyDecoratedDescriptor`. (Closes #2127)
2021-12-23 19:03:53 +09:00
Donny
25d26485fc chore: Publish crates 2021-12-23 02:53:32 +09:00
Alex Alikiotis
d98a59339a
feat(es/bundler): Add an option to disable tree-shaking (#3102) 2021-12-23 02:53:02 +09:00
Donny
f4cc323e08 chore(node): Publish v1.2.122 2021-12-22 17:09:25 +09:00
Donny
08c4589da7 chore: Publish crates 2021-12-22 17:06:54 +09:00
magic-akari
df87c2b302
fix(es/transforms): Fix descturcturing (#3098)
swc_ecma_transforms_compat:
 - `destructuring`: Handle exports of bindings with object pattern properties correctly. (Closes #2858)
2021-12-22 08:03:41 +00:00
Donny
fc2c883444 chore: Publish crates 2021-12-22 16:31:23 +09:00
Nayeem Rahman
7d57eb2dc4
feat(es/dep-graph): Add DependencyDescriptor::dynamic_import_assertions (#3095) 2021-12-22 16:30:52 +09:00
Donny
dc6a19dfef chore: Publish crates 2021-12-22 04:57:45 +09:00
Donny/강동윤
15cbe4fcaa
fix(es/loader): Update lru (#3092) 2021-12-22 04:56:49 +09:00
Donny
726fc6968d chore: Publish crates 2021-12-21 23:53:37 +09:00
Donny/강동윤
a81661c74a
perf(es/hygiene): Fix performance bug (#3090)
swc_ecma_transforms_base:
 - `hygiene`: Skip checking a symbol if we are sure that it will be discarded.

swc_ecma_laoder:
 - Optimize `NodeModulesResolver` by trying `.js` first.
2021-12-21 23:52:13 +09:00
Donny
c9def54913 chore: Publish crates 2021-12-21 21:40:09 +09:00
Donny/강동윤
ba2563f59e
fix(es/loader): Prefer ESM (#3089)
swc_ecma_loader:
 - Check for `module` field and prefer it over `main`.
2021-12-21 21:39:35 +09:00
Donny
e33248cbcc chore: Publish crates 2021-12-21 18:21:48 +09:00
Donny/강동윤
0e4dce694d
refactor(es/minifier): Use swc_timer (#3087)
swc_bundler:
 - Add `Config.disable_fixer`.
 - Add `Config.disable_hygiene`.

swc_ecma_minifier:
 - Use `swc_timer`.
2021-12-21 18:19:33 +09:00
Quentin Michel
f1b81266cf
feat(node): Report correct error when swc_v1 and swc_v2 is enabled at the same time (#3080) 2021-12-21 16:10:30 +09:00
Donny/강동윤
d482d61b9f
chore(scripts): Use cargo profile instruments instead of cargo instruments (#3086) 2021-12-21 16:09:19 +09:00
Donny
4c1948f786 chore: Publish crates 2021-12-21 14:25:11 +09:00
magic-akari
31dea3dd31
fix(es/typescript): Export destructured properties in typescript namespaces (#3084) 2021-12-21 14:24:20 +09:00
Donny/강동윤
0e5895043f
test(es/codegen): Add some tests for sourcemap (#3078) 2021-12-20 18:26:30 +09:00
Donny
cdc4676a88 chore: Publish crates 2021-12-20 18:25:51 +09:00
magic-akari
7d125f5cdb
feat(es/preset-env): Add .js to generated imports (#3077) 2021-12-20 09:15:04 +00:00
OJ Kwon
2e89a4f5a8
feat(cli): Setup packages for CLI (#3070) 2021-12-20 06:03:00 +00:00
Donny
3808101ca8 chore: Publish crates 2021-12-20 14:38:28 +09:00
James Newell
938e544ac5
fix(es/compat): Fix handling of union of the legacy decorator pass (#3057)
swc_ecma_transforms_proposal:
 - Use `Object` for `null`/`undefined`.
 - Fix the type for union types. (Closes #2461)
2021-12-20 05:30:52 +00:00
Donny/강동윤
8afb5af517
chore(repo): Make git faster (#3075)
swc_ecma_parser:
 - Flatten parser test suite ported from `tsc`.

swc:
 - Flatten the reference directory for the `tsc` test suite.
2021-12-20 14:05:57 +09:00
Donny
3d95ff4e41 chore: Publish crates 2021-12-20 10:26:08 +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
46994e067a chore: Publish crates 2021-12-19 21:08:59 +09:00
Donny/강동윤
f21af5bcd6
feat(es/lints): Implement simple validations (#2763)
swc_ecma_lint:
 - Implement `const-assign`. (Closes #2016)
 - Implement `duplicate-bindings`. (Closes #2795)
 - Implement `duplicate-exports`. (Closes #3056)

swc:
 - Use linter.
2021-12-19 21:07:51 +09:00
Donny
23742e3b18 chore: Publish crates 2021-12-19 18:11:51 +09:00
Pig Fang
a1b315a114
feat(es/preset-env): Upgrade browserslist-rs (#3069) 2021-12-19 08:46:32 +00:00
Donny
25a17e8b11 chore: Publish crates 2021-12-19 14:15:44 +09:00
Donny
806c9db1a1 chore(node): Publish v1.2.121 2021-12-19 14:14:12 +09:00
Donny
13b6d044f5 chore: Publish crates 2021-12-19 14:11:38 +09:00
Donny
967f30d7d4 chore: Publish crates 2021-12-19 12:45:44 +09:00
magic-akari
ff1aab710c
fix(es/compat): Transform an optional eval call as an indirect eval call (#3068)
swc_ecma_transforms_compat:
 - `optional_chaining`: Handle optional `eval` calls properly. (Closes #2735)
2021-12-19 03:42:46 +00:00
Donny
9c62047653 chore: Publish crates 2021-12-19 05:03:01 +09:00
Sosuke Suzuki
f1a28329cb
feat(es/parser): Report an error for export type * from "mod"; (#3064) 2021-12-19 05:02:36 +09:00
Donny
a4b77bf11f chore: Publish crates 2021-12-19 00:21:30 +09:00
Donny
021fe66652 chore: Publish crates 2021-12-19 00:18:47 +09:00
Donny/강동윤
b4d95b44a7
perf(es/parser): Improve performance (#3059)
swc_common:
 - Optimize `StringInput`.

swc_ecma_parser:
 - Optimize `skip_space`.
 - Remove useless `.clone()`.
2021-12-19 00:18:00 +09:00
Donny
188b856694 chore: Publish crates 2021-12-18 23:15:17 +09:00
asterite3
0c813ae453
fix(es/lexer): Fix lexing of numbers with large exponent (#3061)
swc_ecma_parser:
 - Fix lexing of numbers where exponents are large enough to be parsed as `Infinity`. (Closes #3060)
2021-12-18 23:14:36 +09:00
Donny
8c16c2b77d chore: Publish crates 2021-12-17 15:09:02 +09:00
OJ Kwon
a381fb8bce
fix(es/compat): Fix block_scoping (#3058)
swc_ecma_transforms_compat:
 - `block_scoping`: Consider the location of variable declarations. (Closes #2998)
2021-12-17 15:08:22 +09:00
Donny
a2a0b63c62 chore: Publish crates 2021-12-16 20:39:34 +09:00
magic-akari
d5c7fb898f
fix(es/loader): Support fully-specified ESM import specifiers (#3050) 2021-12-16 11:37:22 +00:00
Donny
189b1e286d chore: Publish crates 2021-12-16 19:57:40 +09:00
Donny/강동윤
61e9b5f841
fix(es/lexer): Don't report lexer errors while backtracking (#3051)
swc_ecma_parser:
 - Share backtracking state with the lexer.
 - Don't report lexing errors while backtracking (Closes #2896)
2021-12-16 19:57:19 +09:00
Donny
c658af4365 chore: Publish crates 2021-12-16 15:31:03 +09:00
magic-akari
23a59db9bb
fix(es/parser): Allow assignment assertions in typescript classes (#3047) 2021-12-16 15:30:34 +09:00
Donny
ddd967f33b chore: Publish crates 2021-12-15 19:08:31 +09:00
Donny/강동윤
08920189ba
fix(webpack/ast): Expose fields of AstOutput (#3046) 2021-12-15 19:08:07 +09:00
Donny
db8335ca2d chore: Publish crates 2021-12-15 18:33:59 +09:00
Donny/강동윤
24179bd9be
fix(webpack/ast): Handle typescript (#3045)
swc_webpack_ast:
 - Add `proces_file`.
 - Add support for typescript.
2021-12-15 18:33:35 +09:00
Donny
9b36abbe75 chore: Publish crates 2021-12-15 16:22:00 +09:00
Austaras
38955c0c8d
refactor(es/ast): Change type or the key of ClassProp to PropName (#3038) 2021-12-15 16:21:30 +09:00
Donny
83e1635a04 chore: Publish crates 2021-12-14 19:48:17 +09:00
OJ Kwon
29eb71aaf9
perf(es/compat): Migrate regenerator to VisitMut (#3037) 2021-12-14 09:24:57 +00:00
Donny
340eaf48f3 chore: Publish crates 2021-12-14 18:02:06 +09:00
Donny
cfb796b1a8 chore: Publish crates 2021-12-14 17:29:22 +09:00
Donny/강동윤
15ea98bf65
fix(webpack/ast): Fix webpackAST (#3040)
swc_webpack_ast:
 - `reducer`: Flatten safe statements.
 - `reducer`: Preserve variables.
2021-12-14 17:28:51 +09:00
Donny
4fe9a6c1fd chore: Publish crates 2021-12-13 19:02:44 +09:00
Donny
5a173bce3a chore: Publish crates 2021-12-13 11:39:41 +09:00
Donny/강동윤
7236a2213e
refactor(es/parser): Make some verification logic optional (#3024)
swc_ecma_parser:
 - Make dependency on `swc_ecma_visit` optional.
2021-12-13 11:39:17 +09:00
Donny
f35ec6c612 chore: Publish crates 2021-12-13 09:21:46 +09:00
Donny/강동윤
c415487bb9
fix(es/codegen): Fix sourcemap bug related to multi-line comments (#3023)
swc_ecma_codegen:
 - Compute line starts in multi-line comments.
2021-12-13 09:21:22 +09:00
Donny
f86c077a37 chore: Publish crates 2021-12-13 06:46:14 +09:00
Donny
28f3c4fb52 chore: Publish crates 2021-12-13 06:45:43 +09:00
RiESAEX
d3ffc6719b
perf(es/compat): Migrate class helper to VisitMut (#3020) 2021-12-12 21:18:48 +00:00
Donny
de95e2a9b9 chore: Publish crates 2021-12-13 05:44:01 +09:00
Sosuke Suzuki
b4c210d1d9
fix(es/parser): Allow trailing comma in dynamic imports if import assertion is enabled (#3018) 2021-12-13 05:42:19 +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
Donny
da4111a022 chore: Publish crates 2021-12-11 20:54:21 +09:00
RiESAEX
333b52c646
perf(es/compat): Migrate classes to VisitMut partially (#2995) 2021-12-11 08:24:57 +00:00
Donny
a04b4082a4 Bump version 2021-12-11 17:01:12 +09:00
OJ Kwon
00d22b8fde
build: Use mocha for exec_ test instead of jest (#3009) 2021-12-11 07:59:21 +00:00
Donny/강동윤
e0c8bbf7a0
fix(css/parser): Fix lexing of value starting with - (#3011)
swc_css_parser:
 - Lex `-` as an identifier start.
2021-12-11 16:23:02 +09:00
Donny
f87df958d5 chore: Publish crates 2021-12-11 16:21:44 +09:00
OJ Kwon
91d6343d7f
perf(es/compat): Migrate regenerator to VisitMut partially (#3007) 2021-12-11 05:30:56 +00:00
Donny
9a00c9a13f chore: Publish crates 2021-12-11 13:58:49 +09:00
Bartek Iwańczuk
819fc88a19
fix(es/dep_graph): Fix parsing of import assertions (#3005) 2021-12-11 13:58:11 +09:00
OJ Kwon
cabf5a458d
chore: Remove redundant dependencies (#3008) 2021-12-11 13:57:33 +09:00
Donny/강동윤
8340a86fbb
refactor(es/ast): Move Id to swc_ecma_ast (#3004) 2021-12-10 23:36:43 +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
57f512c262 chore: Publish crates 2021-12-10 19:36:51 +09:00
David Sherret
c8c73cb313
fix(es/typescript): Fix enums which reference themselves (#3000) 2021-12-10 10:30:26 +00:00
Donny
68861007d9 chore: Publish crates 2021-12-10 18:56:37 +09:00
OJ Kwon
7ca1e174b7
perf(es/compat): Migrate object_rest to VisitMut (#2997) 2021-12-10 18:56:24 +09:00
Donny
c5b943f588 chore: Publish crates 2021-12-10 18:55:41 +09:00
OJ Kwon
a1756062c5
perf(es/compat): Migrate class_properties to VisitMut (#2993) 2021-12-10 09:54:14 +00:00
Donny
deae28c31d chore: Publish crates 2021-12-10 18:19:38 +09:00
Shinobu Hayashi
ed704c906f
fix(es/react): Implement proper development handling (#2741) 2021-12-10 09:19:03 +00:00
Donny/강동윤
0a637d6ce2
chore: Fix license issue (#3002) 2021-12-10 17:45:01 +09:00
Donny
8ea40a3707 chore: Publish crates 2021-12-08 19:54:05 +09:00
Donny/강동윤
4cf58528df
fix(webpack/ast): Fix webpackAST (#2979)
swc_estree_ast:
 - Fix more serialization.

swc_estree_compat:
 - Consider multi-byte characters.

swc_webpack_ast:
 - Preserve LHS of assignments if required.
2021-12-08 19:53:43 +09:00
Donny/강동윤
6a7ad9239e
fix(es/compat): Fix for synthesized template literals (#2994) 2021-12-08 19:47:11 +09:00
Donny
f6a926e6fb chore: Publish crates 2021-12-08 15:25:49 +09:00
David Sherret
2cd16490e4
fix(es/typescript): Support declaration merging of exported enums and namespaces (#2982) 2021-12-08 15:25:10 +09:00
Donny/강동윤
c8395bc74f
fix(css): Fix stylis (#2987)
swc_css_codegen:
 - Respect `minify`.

swc_stylis:
 - Process properties only if it's in a qualified rule.
2021-12-07 21:04:54 +09:00
Donny
bf69cd554b chore: Publish crates 2021-12-07 18:03:14 +09:00
Donny/강동윤
4a7937d56e
fix(es/minifier): Don't create top level variables (#2985)
swc_ecma_minifier:
 - Add `module` to `TerserCompressorOptions`.
 - Don't create top level variables while inlining if `module` is false.
 - Drop more unused parameters.
2021-12-07 18:02:43 +09:00
Donny
7d4c372e8a chore: Publish crates 2021-12-07 15:19:11 +09:00
OJ Kwon
32f9369958
perf(es/compat): Migrate static_blocks to VisitMut (#2973) 2021-12-07 15:18:53 +09:00
Donny
82ece9d0ca chore: Publish crates 2021-12-07 15:15:08 +09:00
RiESAEX
ae4bb420ae
fix(es/transforms): Update helpers about array (#2970)
swc_ecma_transforms_base:
 - Update helpers. (Closes #2689)
2021-12-07 06:12:54 +00:00
Donny
b1a47ee971 chore: Publish crates 2021-12-07 14:34:44 +09:00
Donny/강동윤
e48263b2f3
refactor(visit): Remove &dyn Node from Visit (#2984)
swc_visit_macros:
 - Remove `&dyn Node` from `Visit`.
 - Implement `VisitWith<V>` for `[T]`.
2021-12-07 14:34:16 +09:00
Donny/강동윤
f052a65bf3
fix(es/compat): Preserve constructor parameters (#2975)
swc_ecma_visit:
 - Add cargo feature `debug`.
 - Add more context for `tracing` when `debug` is enabled.

swc_ecma_utils:
 - Add some logging.

swc_ecma_transforms_compat:
 - Add some logging.
 - `destructuring`: Don't drop patterns. (Closes #2139)

testing:
 - Enable logging by default.
 - Configure logging for `Tester`.
2021-12-06 20:08:50 +09:00
Donny/강동윤
694d3c5072
feat(es/minifier): Print more informantion on infinite loops (#2976)
swc_ecma_minifier:
 - Remove `OptimizerState`.
 - Dump source code if pass is over 200.
2021-12-06 19:47:02 +09:00
Donny
acc45e7c36 chore: Publish crates 2021-12-05 17:34:04 +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
Donny
16540fba75 chore: Publish crates 2021-12-05 16:30:42 +09:00
David Sherret
0a8a5a1c78
fix(es/typescript): transform namespace with multiple identifiers in name (#2952)
swc_ecma_transforms_typescript:
 - Allow using typescript namespace with mutli-identifer name. (Closes #2810)
2021-12-05 07:26:53 +00:00
Donny
529f980693 chore: Publish crates 2021-12-05 15:44:50 +09:00
Donny
58159d377c chore: Publish crates 2021-12-05 15:43:04 +09:00
David Sherret
97df4cef80
refactor(es/parser): Remove import_assertions from TsConfig (#2950) 2021-12-05 05:43:41 +00:00
Donny/강동윤
74363e0357
fix(webpack/ast): Preserve span (#2971) 2021-12-04 23:24:18 +09:00
Donny
fd2a788282 chore: Publish crates 2021-12-04 21:03:13 +09:00
OJ Kwon
89af8ab9a2
perf(es/compat): Migrate class_properties to VisitMut partially (#2966) 2021-12-04 11:57:52 +00:00
Donny/강동윤
2a01dd4b32
fix(webpack/ast): Reduce if statements (#2969) 2021-12-04 19:28:18 +09:00
Donny
42a93dd8ef chore: Publish crates 2021-12-04 11:53:14 +09:00
David Sherret
67280b6fb0
fix(es/typescript): Run resolver before typescript::strip (#2951)
swc_ecma_transforms_base:
 - `resolver`: Handle some typescript nodes.

swc_ecma_transforms_typescript:
 - `strip`: Use identifier span hygiene information for stripping types.
2021-12-04 02:35:16 +00:00
Donny
32e2f3e46c chore: Publish crates 2021-12-04 01:55:54 +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/강동윤
02322aaa99
chore: Make rust-analyzer faster (#2962) 2021-12-03 23:14:33 +09:00
Donny/강동윤
c346f12b32
fix(estree): Fix serialization of ObjectMethod (#2961)
swc_estree_ast:
 - Fix serialization of `ObjectMethod` for `acorn`.

swc_webpack_ast:
 - `ast_reducer`: Remove unused getter/setter properties.
2021-12-03 23:14:12 +09:00
Donny
fd8541eb9d chore: Publish crates 2021-12-03 21:23:06 +09:00
Donny/강동윤
4008a65b1e
fix(webpack/ast): Preserve more arguments of define calls (#2960) 2021-12-03 21:22:38 +09:00
Donny/강동윤
eda514bcc5
fix(webpack/ast): Fix amd support (#2959)
swc_webpack_ast:
 - `ast_reducer`: Preserve array literals in `define` calls.
2021-12-03 20:51:48 +09:00
Donny/강동윤
1eb62dc201
fix(webpack/ast): Remove more string literals (#2957) 2021-12-03 18:54:28 +09:00
Donny
348b6cf6f0 chore: Publish crates 2021-12-03 18:36:10 +09:00
OJ Kwon
084eebec84
refactor(es/compat): Migrate destructuring to VisitMut (#2947) 2021-12-03 09:27:58 +00:00
Donny
ef3ea6b467 chore: Publish crates 2021-12-03 17:25:44 +09:00
RiESAEX
99da4221ae
fix:(es/compat): Change order of passes (#2949)
swc_ecma_transforms_compat:
 - Run `shorthand` before `function_name` so we can infer name for method properties. (Closes #2150)
2021-12-03 17:20:35 +09:00
Donny
eade0374f2 chore: Publish crates 2021-12-02 17:23:50 +09:00
Pig Fang
3302d1733a
refactor(es/preset-env): Avoid unnecessary unwrap (#2943) 2021-12-02 08:03:28 +00:00
Donny
e8225a66a0 chore: Publish crates 2021-12-02 16:29:34 +09:00
David Sherret
4d993c26b6
fix(es/hygiene): Reduce renaming (#2938)
swc_ecma_transforms_base:
 - `hygiene`: Treat class methods and constructors as a scope.
2021-12-02 07:28:09 +00:00
Donny
36db1ed359 chore: Publish crates 2021-12-02 15:55:03 +09:00
RiESAEX
d8c8641e59 fix(es/parser, es/compat): transform tagged template with invalid escape sequence (#2939)
swc_ecma_parser:
 - Preserve more data for invalid escapes in template literals.

swc_ecma_transforms_compat:
 - Fix handling of template literals. (Closes #2674)
2021-12-02 15:49:45 +09:00
Donny
82c8694f4b chore: Drop freebsd for publishing 2021-12-02 11:37:40 +09:00
Donny/강동윤
0304c550a4
chore: Break cycles (#2941) 2021-12-02 10:44:27 +09:00
Donny
67dc0d3b94 chore: Publish crates 2021-12-02 10:08:22 +09:00
Austaras
1555ceb8a3
feat(es/transforms/compat): Add loose mode to parameters (#2911)
swc_ecma_utils:
 - Make `WrapperState` implement `Clone`.

swc_ecma_transforms_compat:
 - `paramters`: Fix handling of non-loose mode. (Closes #2800, Closes #2825)
2021-12-02 01:04:01 +00:00
Donny
4e214ce437 chore: Publish v1.2.116 2021-12-02 07:10:16 +09:00
Donny
3bf751ac4a chore: Publish crates 2021-12-02 03:33:26 +09:00
Alexander Akait
8781527751
fix(css/ast): Fix type definitions related to parsing unknown at-rules (#2922)
swc_css_ast:
 - Rename `FnValue` to `Function`.
2021-12-01 17:07:49 +00:00
Donny/강동윤
4539b3a610
fix(webpack/ast): Don't remove comparison of process.env.NODE_ENV (#2937) 2021-12-01 23:18:19 +09:00
Donny/강동윤
667dd1e95e
fix(webpack/ast): Fix ast reducer (#2936)
swc_webpack_ast:
 - Preserve string literals in `require`
2021-12-01 21:54:55 +09:00
Donny
f9cd49b845 chore: Publish crates 2021-12-01 21:26:31 +09:00
Donny
f8fcee1c46 chore: Publish crates 2021-12-01 21:26:01 +09:00
Donny/강동윤
9f5fc11a8f
fix(webpack/ast): Fix handling of define (#2935)
swc_webpack_ast:
 - Support `define` calls with `require` .
2021-12-01 21:25:46 +09:00
Pig Fang
8a55870ce5
feat(es/preset-env): Upgrade browserslist-rs (#2927) 2021-12-01 12:18:11 +00:00
Donny/강동윤
24de5507ae
fix(bundler): Use interop for common js dependencies (#2930)
swc_bundler:
 - Update helpers to use interop for common js deps. (Closes #2789)
2021-12-01 19:53:06 +09:00
Donny
1fabb0381a chore: Publish crates 2021-12-01 18:36:26 +09:00
Alexander Akait
0f4ad0f8c8
fix(css/ast): Fix type definition of @namespace (#2919) 2021-12-01 09:29:25 +00:00
Donny
563c63c225 chore: Publish crates 2021-12-01 15:32:22 +09:00
Donny/강동윤
18d9fd91f9
fix(webpack/ast): Fix span of null literals (#2925)
swc_webpack_ast:
 - Preserve original spans for injected `null` literals
2021-12-01 15:31:56 +09:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny
b6f92497bf chore: Publish crates 2021-11-30 20:20:38 +09:00
OJ Kwon
5999634952
feat(plugin/runner): Supports specifying exact path for plugin (#2918) 2021-11-30 11:19:26 +00:00
Donny
e6957ce400 chore: Publish crates 2021-11-30 19:40:27 +09:00
OJ Kwon
4075ff8029
perf(es/transform/compat): Migrate optional_chaining to VisitMut (#2891) 2021-11-30 10:00:56 +00:00
Donny/강동윤
854b598e94
fix(webpack/ast): Improve ast reducer (#2917) 2021-11-30 18:16:05 +09:00
Donny
12d31c997b chore: Publish crates 2021-11-30 13:53:41 +09:00
RiESAEX
0c1f2ebdde
fix(es/transforms/compat): Fix destructuring (#2904)
swc_ecma_transforms_compat:
 - `desturcturing`: Fix non-loose mode. (Closes #2841, Closes #2863)
2021-11-30 04:49:54 +00:00
Donny
073c3787f1 chore: Publish crates 2021-11-30 13:11:36 +09:00
Donny/강동윤
028d0ce2c6
fix(es/transforms/compat): Fix block scoping (#2916)
swc_ecma_transforms_compat:
 - `block_scoping`: Track if we are in nested loops.
 - `block_scoping`: Don't treat `break` nor `continue` in nested loops as leaper. (https://github.com/vercel/next.js/issues/31757, Closes #2799, Closes #2915)
 - `block_scoping`: Don't recurse into nested loops while looking for functions. (Closes #2622)
2021-11-30 13:11:09 +09:00
Donny
57fb69262d chore: Publish crates 2021-11-30 11:25:38 +09:00
Alexander Akait
fcd0d7a6cb
feat(css/ast): Add a flag to number types (#2905)
swc_css_ast:
 - Add a flag to distinguish integer and floats.
2021-11-30 01:54:10 +00:00
Donny
9b022dbabe chore: Publish crates 2021-11-30 10:04:41 +09:00
Donny/강동윤
32b68ef5d0
fix(webpack/ast): Fix ast reducer (#2914)
swc_webpack_ast:
 - Implement more rules.
 - Test using typescript test suites.
2021-11-30 10:04:08 +09:00
Donny
167798b599 chore: Publish crates 2021-11-30 09:41:40 +09:00
Donny
666e3cc71e chore: Revert #2907 2021-11-30 08:42:45 +09:00
Donny
655d754d0e chore: Publish crates 2021-11-30 03:55:52 +09:00
Donny
3211ad23cf chore: Publish crates 2021-11-30 00:27:19 +09:00
Alexander Akait
d7183d82e2
feat(css/parser): Add more error recovery (#2849) 2021-11-30 00:26:57 +09:00
Donny/강동윤
435faccc2e
chore: Reduce compile time (#2909) 2021-11-30 00:16:28 +09:00
Donny/강동윤
586ab0cf76
fix(webpack/ast): Adjust acorn options. (#2908)
swc_babel_ast:
 - Fix serialization of class properties.
 - Adjust `acorn` options.
2021-11-29 21:08:22 +09:00
Donny
edc0cb0a2d chore: Publish crates 2021-11-29 19:39:11 +09:00
Alexander Akait
c77ebbeb8d
feat(css/ast): Add support for nested @at-rules (#2897) 2021-11-29 19:38:49 +09:00
Donny
a46ee17281 chore: Publish crates 2021-11-29 19:30:33 +09:00
Pig Fang
5a68a360b4
fix(es/preset-env): Enable "mobile to desktop" (#2907) 2021-11-29 19:29:49 +09:00
Donny
756a9bad6a chore: Publish crates 2021-11-29 16:48:34 +09:00
Pig Fang
af216c1014
chore(es/preset-env): Upgrade browserslist-rs (#2889) 2021-11-29 16:48:07 +09:00
Donny
3d75b9a968 chore: Publish crates 2021-11-29 16:47:27 +09:00
such0624
c186aa443a
fix(es/parser): Fix parser (#2903)
swc_ecma_parser:
 - Fix `skip_ts_parameter_start`. (Closes #2160)
2021-11-29 07:46:14 +00:00
Donny/강동윤
bb66083f69
fix(swc): Unimplement Default for JsMinifyOptions (#2901) 2021-11-28 18:57:48 +09:00
Donny
188eaad24e chore: Publish crates 2021-11-28 18:09:28 +09:00
Jeremy Grieshop
6f05c101f1
fix(es/transforms/module): Fix overriding of export * (#2883)
swc_ecma_transforms_module:
 - Emit correct value for `_exportNames`. (Closes #2101)
2021-11-28 09:08:02 +00:00
Donny
875c421259 chore: Publish crates 2021-11-28 17:36:47 +09:00
Donny/강동윤
91ef3cc16e
feat(plugin): Enable plugin support under experimental flag (#2894)
swc_plugin_runner:
 - Add plugin resolver.
 - Implement cache for resolver.
 - Add some integration tests.

swc:
 - Add a cargo feature named `plugin`.
 - Add an experimental option for plugins.

node:
 - Enable `plugin`.
 - Add some integration tests.
2021-11-28 17:02:14 +09:00
Donny/강동윤
5425509208
feat(swc): Implement Default for JsMinifyOptions (#2899) 2021-11-28 10:12:02 +09:00
Donny
2485c97317 chore: Publish crates 2021-11-28 02:04:19 +09:00
Alexander Akait
c94735e540
fix(css): Handle custom properties properly (#2869)
swc_css_codegen:
 - Fix code generation of custom properties.

swc_css_parser:
 - Fix parsing of custom properties.
2021-11-27 16:11:40 +00:00
Donny/강동윤
ffcb357010
feat(plugin): Rename Plugin to JsPlugin (#2893)
swc_js_plugin_api:
 - Rename to js plugin.
 - Use rplugin and plugin ast instead of json.
2021-11-27 22:21:25 +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
0d39521b91 chore: Publish crates 2021-11-27 17:51:10 +09:00
OJ Kwon
283074c86e
perf(es/transforms/compat): Migrate spread to VisitMut (#2888) 2021-11-27 08:49:37 +00:00
Donny
035b6d83da chore: Publish crates 2021-11-27 17:04:26 +09:00
Donny/강동윤
f5af22ef71
chore: Document features (#2890) 2021-11-27 16:55:42 +09:00
OJ Kwon
7bccbcc880
fix(node): Fix parseFile (#2881) 2021-11-27 07:20:54 +00:00
Donny
01d4139e42 chore: Publish crates 2021-11-27 15:53:05 +09:00
Austaras
803787ab9e
fix(es/transforms/compat): Fix arrow (#2882)
swc_ecma_transforms_compat:
 - Handle arrow expressions in constructors of classes with a super class. (Closes #2811)
2021-11-27 06:46:02 +00:00
Donny/강동윤
c6cb790cd9
feat(css/minifier): Initialize crate (#2884) 2021-11-27 14:33:33 +09:00
Donny
ad8dc4ded6 chore: Publish crates 2021-11-27 00:01:32 +09:00
OJ Kwon
43e89fd0c8
fix(es/transforms/module): Fix detection of helpers to inject (#2868) 2021-11-26 15:00:44 +00:00
Donny
72e892ec12 chore: Publish crates 2021-11-26 23:29:33 +09:00
OJ Kwon
a350d86c57
refactor(es/transforms/compat): Improve async_to_generator (#2876)
swc_ecma_transforms_compat:
 - `async_to_generator`: Remove explicit bindings for object properties.
2021-11-26 12:26:20 +00: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
a38889be91 chore: Publish crates 2021-11-26 08:31:11 +09:00
David Sherret
b853d4ac95
feat(es/parser): Implement more error recovery (#2874)
swc_ecma_parser:
 - Recover from unterminated string literals.
2021-11-25 23:12:40 +00: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
730e138925 chore: Publish crates 2021-11-25 16:17:34 +09:00
RiESAEX
a6398e9f26
fix(es/transforms/compat): Fix destructuring (#2866)
swc_ecma_transforms_compat:
 - Check length correctly. (Closes #2819, Closes #2821, Closes #2843)
2021-11-25 06:51:59 +00:00
Donny
2c9de7dd4a chore: Publish crates 2021-11-25 15:22:34 +09:00
Alexander Akait
c40e134713
fix(css/parser): Fix span of type selectors (#2870) 2021-11-25 05:47:24 +00:00
Donny/강동윤
28850eef5c
chore: Allow using #[doc(cfg)] (#2871) 2021-11-25 14:16:18 +09:00
Donny
62a48875bd chore: Publish crates 2021-11-25 14:14:43 +09:00
Alexander Akait
ce6c7ee85d
fix(css/ast): Fix AST definitions for @keyframes (#2848) 2021-11-25 04:59:40 +00:00
Donny
e04f0867fc chore: Publish crates 2021-11-24 17:04:09 +09:00
Alexander Akait
4bf1f93017
refactor(css/lexer): Follow spec more closely (#2839) 2021-11-24 07:56:07 +00:00
Donny
1cc4de3e9b chore: Publish v1.2.112 2021-11-24 15:07:18 +09:00
Donny
770da5ae9e chore: Publish crates 2021-11-24 15:05:46 +09:00
RiESAEX
cf777c5ba1
fix(es/lexer): Fix lexing of hexadecimal escape sequences (#2838) 2021-11-24 05:26:38 +00:00
Donny
a8bda3bb9c chore: Publish crates 2021-11-24 13:54:33 +09:00
OJ Kwon
1609580a4e
perf(es/transforms/compat): Migrate computed_props to VisitMut (#2857) 2021-11-24 04:49:45 +00:00
Donny
d4ffce13b5 chore: Publish crates 2021-11-24 10:08:01 +09:00
Austaras
fbcbeb4892
refactor(es/transforms/compat): Lift this replacer out of arrow (#2812)
swc_ecma_utils:
 - Add `FunctionWrapper`, which tracks `this` and `arguments`.

swc_ecma_transforms_compat:
 - `arrow`: Use `FunctionWrapper` instead of tracking `this` by itself.
 - `async_to_generator`: Use `FunctionWrapper` instead of tracking `this` by itself.
2021-11-24 00:59:06 +00:00
Donny/강동윤
790a262c07
refactor(es/estree): Rename: babel => estree (#2846)
swc_babel_ast:
 - Rename as `swc_estree_ast`.

swc_babel_compat:
 - Rename as `swc_estree_compat`.

swc_babel_visit:
 - Rename as `swc_estree_visit`.
2021-11-24 05:34:41 +09:00
Donny
e4216a2e6c chore: Publish crates 2021-11-23 21:10:35 +09:00
Alexander Akait
839a99e7fd
feat(css/parser): Improve parser api (#2847)
swc_css_parser:
 - Allow parsing as more types.
2021-11-23 11:53:58 +00:00
Donny
c1e99eee3e chore: Publish crates 2021-11-23 19:07:48 +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
e99c4d26ae chore: Publish crates 2021-11-23 18:14:38 +09:00
erdmko
c8de935560
fix(bundler): Ignore require of external modules (#2840)
swc_bundler:
 - Check for external modules for `require` calls`. (Closes #2275)
2021-11-23 18:03:29 +09:00
Donny/강동윤
d0cabc37ed
chore: Publish babel crates (#2835) 2021-11-22 21:41:03 +09:00
Donny/강동윤
6b96a3d8ed
feat: Enable logging of timings (#2833)
swc_timer:
 - Add `Timer`.
 - Add `timer!()`.

node:
 - Enable logging.
2021-11-22 21:01:08 +09:00
Donny
7ec522f165 chore: Publish crates 2021-11-22 17:55:07 +09:00
黄伟
c5768d7672
feat(es/minifier): Improve drop_console (#2830)
swc_ecma_minifier:
 - Implement more rules for `drop_console`. (Closes #2807)
2021-11-22 17:54:36 +09:00
Yoshiaki Togami
bfa6458737
chore: Typo (#2829) 2021-11-22 05:03:41 +09:00
Donny
46e722559e chore: Publish crates 2021-11-22 01:02:49 +09:00
Donny/강동윤
79ba13cbb5
fix(es/parser): Fix comments of empty modules (#2828)
swc_ecma_parser:
 - Use correct span for storing comments when module is empty.
2021-11-22 01:02:28 +09:00
Donny
a392a4c0fd chore: Publish crates 2021-11-21 23:43:31 +09:00
Donny/강동윤
9525ea178f
fix(es/parser): Fix span of empty modules (#2827)
swc_ecma_parser:
 - Don't use dummy span for empty modules.
2021-11-21 23:42:36 +09:00
Donny/강동윤
7a6bf424c5
fix(es/transforms/base): Fix ts_resolver (#2826)
swc_ecma_transforms_base:
 - `ts_resolver`: Hoist type aliases.
2021-11-21 16:31:12 +09:00
Donny
96d8ee522c chore: Publish crates 2021-11-21 16:30:42 +09:00
OJ Kwon
a9a9833be8
perf(es/transforms/compat): Migrate block_scoping to VisitMut (#2817) 2021-11-21 07:30:11 +00:00
Donny
218a269bb5 chore: Publish crates 2021-11-21 15:48:05 +09:00
Donny/강동윤
9cd3d1610d
fix(es/transforms/base): Fix ts_resolver (#2824)
swc_ecma_transforms_base:
 - `ts_resolver`: Hoist interface declarations.
2021-11-21 15:47:38 +09:00
Donny/강동윤
020b4a554d
fix(graph_analyzer): Allow invoking load multiple time (#2823)
swc_graph_analyzer:
 - Make `load` work correctly even if it's called multiple time.
2021-11-21 14:55:59 +09:00
Donny/강동윤
d64b066ef1
bench(es/visit): Add some benchmarks (#2820) 2021-11-21 14:08:55 +09:00
Donny
2749817545 chore: Publish crates 2021-11-20 20:25:28 +09:00
Daniel Luz
95a6a28014
fix(es/transforms/typescript): Allow enum aliases when values are strings (#2816)
swc_ecma_transforms_typescript:
 - `strip`: Support aliasing within string-values enums. (Closes #2809)
2021-11-20 11:13:14 +00:00
Donny/강동윤
6a7775b5da
fix(es/transforms/compat): Fix this in constructor (#2818)
swc_ecma_transforms_classes:
 - Don't modify `this` in constructors.

swc_ecma_transforms_compat:
 - Fix handling of `this` in constructors.
2021-11-20 19:07:42 +09:00
Donny
cdf7f5f5a0 chore: Publish crates 2021-11-20 17:06:40 +09:00
Donny/강동윤
fa342a0067
fix(es/minifier): Fix bugs (#2779)
swc_ecma_minifier:
 - Don't optimize `1 / t == -1 / 0` as `!1`.
 - Don't optimize `e === -1 / 0` as false.
 - Don't inline string literals in arguments, if it's used multiple time. (https://github.com/vercel/next.js/issues/31291)
2021-11-20 17:06:18 +09:00
Donny
5a037876dd chore: Publish crates 2021-11-20 17:05:17 +09:00
OJ Kwon
26734d44eb
fix(es/transforms/compat): Reduce .bind(this) (#2806)
swc_ecma_transforms_compat:
 - `async_to_generator`: Reduce explicit `.bind(this)`.
2021-11-20 08:04:27 +00:00
Donny
43586d0b7c chore: Publish crates 2021-11-20 16:29:43 +09:00
Alexander Akait
4bcf3fc2ad
refactor(css/ast): Split pseudo class and pseudo element (#2675) 2021-11-20 16:29:18 +09:00
Donny
e39748ed4a chore: Publish crates 2021-11-20 15:52:34 +09:00
David Sherret
338b8fd98e
fix(es/parser): Fix span of named export (#2813)
swc_ecma_parser:
- Include semicolon in span of a named export.
2021-11-20 15:52:08 +09:00
OJ Kwon
372f5bf1e0
perf(es/transforms/compat): Migrate parameters to VisitMut (#2804) 2021-11-19 09:27:16 +00:00
Donny/강동윤
1368981f19
fix(wasm): Fix wasm-web (#2803) 2021-11-19 15:04:01 +09:00
Donny
51bee9bfd3 chore: Publish crates 2021-11-19 03:02:31 +09:00
David Sherret
02ffe8a289
fix(es/utils): Fix extract_var_ids (#2798)
swc_ecma_utils:
 - `extract_var_ids`: Handle assignment object pattern property.
2021-11-19 03:02:08 +09:00
Donny
ca55539938 chore: Publish crates 2021-11-19 00:12:37 +09:00
OJ Kwon
5261df52d2
fix(es/transforms/compat): Remove .bind(this) (#2776)
swc_ecma_transforms_compat:
 - `async_to_generator`: Create `_this` instead of using `.bind(this)`.
2021-11-18 14:39:12 +00:00
Donny
8615a64f2f chore: Publish crates 2021-11-18 22:19:10 +09:00
Alexander Akait
e32093e72d
fix(css/parser): Fix parsing of whitespaces (#2787) 2021-11-18 22:18:44 +09:00
Donny
a2f7bade39 chore: Publish crates 2021-11-18 17:25:19 +09:00
Austaras
29da148b3e
fix(es/transforms/compat): Fix optional_chaining(#2791)
swc_ecma_transforms_compat:
 - `optional_chaining`: Preserve arguments of a call in an optional chaining expression.
2021-11-18 08:00:46 +00:00
Donny
4e8cb5dbfd chore: Publish crates 2021-11-18 15:46:30 +09:00
RiESAEX
1caa61a182
fix(es/parser): Allow static/declare to be optional class property name (#2782) 2021-11-18 06:46:07 +00:00
Donny
88fe823e77 chore: Publish crates 2021-11-18 15:13:30 +09:00
Donny/강동윤
af420eab4b
fix(es/utils): Fix collect_decls (#2792)
swc_ecma_utils:
 - `collect_decls`: Handle assignment pattern property. (Closes #2785)
2021-11-18 15:05:26 +09:00
Donny
ee12362688 chore: Publish crates 2021-11-18 14:18:11 +09:00
Alexander Akait
c50cec1533
refactor(css/ast): Rename StyleRule to QualifiedRule (#2756) 2021-11-17 21:27:39 +00:00
Donny
e5604c3e56 chore: Publish 2021-11-18 01:08:33 +09:00
Donny
225af14b52 chore: Publish crates 2021-11-18 01:07:46 +09:00