Commit Graph

1485 Commits

Author SHA1 Message Date
Donny/강동윤
f8a3849299
fix(es/helpers): Fix the name of _classPrivateFieldLooseBase (#4061) 2022-03-17 08:19:30 +00:00
OJ Kwon
5a2a6037d4
feat(node-swc): Embed target triple string (#4058) 2022-03-17 07:57:16 +00:00
SWC Bot
9d5413698f chore: Publish crates 2022-03-17 07:34:36 +00:00
Alexander Akait
f2517a345b
feat(css/prefixer): Support more properties (#4055) 2022-03-17 07:25:51 +00:00
SWC Bot
a9708a5a1f chore: Publish crates 2022-03-17 06:58:38 +00:00
Donny/강동윤
ffcb6ce523
fix(es/parser): Allow nested ambient context in .d.ts files (#4060) 2022-03-17 06:56:26 +00:00
SWC Bot
aacc2a1f46 chore: Publish crates 2022-03-17 06:08:12 +00:00
Artur
833958bd74
feat(es/lints): Implement yoda rule (#3886) 2022-03-17 06:05:39 +00:00
SWC Bot
4d6d766cf8 chore: Publish crates 2022-03-17 05:36:01 +00:00
Austaras
bbe8f3d8fe
fix(es/ast): Revert removal of definite in PrivateProp (#4051) 2022-03-17 05:33:37 +00:00
SWC Bot
409bb9f3fe chore: Publish crates 2022-03-17 05:09:17 +00:00
OJ Kwon
5c84fe525f
fix(plugin/runner): Make build pass for wasm32 (#4056) 2022-03-17 05:07:03 +00:00
SWC Bot
fc7ea6afe0 chore: Publish crates 2022-03-16 14:28:00 +00:00
Alexander Akait
bd444c0ceb
fix(es/codegen): Fix codegen of string literals (#4037) 2022-03-16 14:25:26 +00:00
LongYinan
db9b988845
feat(node-swc): Add libc field in Linux platform packages (#4046) 2022-03-16 18:58:24 +09:00
Donny/강동윤
da1fd033b8 chore: Fix CI 2022-03-16 17:30:28 +09:00
Donny/강동윤
702e0e124c chore: Publish v1.2.156 2022-03-16 17:14:41 +09:00
SWC Bot
8eb9476cfb chore: Publish crates 2022-03-16 08:13:01 +00:00
Donny/강동윤
834cd4f7b6
fix(es/modules): Use correct span for ExportAlls (#4038) 2022-03-16 17:10:47 +09:00
SWC Bot
5824571a3f chore: Publish crates 2022-03-16 04:22:52 +00:00
Donny/강동윤
ba1c854fb1
fix(es/lints): Fix false-positive of duplicate-exports (#4041) 2022-03-16 04:20:45 +00:00
SWC Bot
c6d781916f chore: Publish crates 2022-03-15 22:48:06 +00:00
OJ Kwon
dab2002a2e
refactor(plugin/runner): Split modules and introduce feature flags (#4035) 2022-03-15 22:45:40 +00:00
Donny/강동윤
71f7cf2011
test(es): Add tests for fixed issues (#4036) 2022-03-15 20:38:31 +00:00
SWC Bot
bcd08f6838 chore: Publish crates 2022-03-15 20:09:43 +00:00
Donny/강동윤
3a4704fe77
feat(es/transforms/base): Add paren_remover (#4034) 2022-03-15 20:07:04 +00:00
SWC Bot
0d6fb99384 chore: Publish crates 2022-03-15 16:20:51 +00:00
Austaras
120d2a534e
fix(es/parser): Emit an error for multiple constructors with body (#4031) 2022-03-15 16:18:19 +00:00
Donny/강동윤
bba5a33415
fix(node-swc): Disable logging of warn level by default (#4033) 2022-03-15 15:07:56 +00:00
SWC Bot
cc2aa361fa chore: Publish crates 2022-03-15 14:19:50 +00:00
Donny/강동윤
e19a60aad4
fix(es/compat): Change pass ordering of es2015 (#4029)
**Description:**

We should apply `regenerator` after `block_scoping` because `regenerator` does not know how to handle `const`s.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/3006
2022-03-15 14:17:03 +00:00
SWC Bot
5e89d18370 chore: Publish crates 2022-03-15 12:23:49 +00:00
Austaras
0c76696ed2
fix(es/decorator): Insert initializer to constructor with body (#4028) 2022-03-15 12:21:17 +00:00
SWC Bot
6d5541ccbe chore: Publish crates 2022-03-15 11:00:48 +00:00
Lennart
25e5ccc548
fix(es/parser): Allow building with stable rustc (#4024) 2022-03-15 19:58:29 +09:00
SWC Bot
b12a2f3ba5 chore: Publish crates 2022-03-15 09:47:41 +00:00
Donny/강동윤
73c91d34d5
fix(es/helpers): Inject helpers for scripts (#4025)
**Description:**

This PR adds support for helpers in script mode. For now, we does not support `externalHelpers` for scripts, as there is no standard for importing other files from a script.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/2385
2022-03-15 09:43:57 +00:00
SWC Bot
2f6f829405 chore: Publish crates 2022-03-15 09:17:09 +00:00
Donny/강동윤
0c8c3d7d51
fix(es/decorator): Remove noop_fold_type (#4022) 2022-03-15 09:14:47 +00:00
SWC Bot
531762ae71 chore: Publish crates 2022-03-15 08:45:12 +00:00
Donny/강동윤
3173047f58
refactor(es/minifier): Cleanup (#4020)
**Description:**

 - `Optimizer.data`: `Option<ProgramData>` => `ProgramData`.
 - `Optimizer.done`: Remvoed.
 - `Optimzer.done_ctxt`: Removed.
 - `Pure`: Add `data: Option<&'a ProgramData>`.
2022-03-15 08:42:50 +00:00
SWC Bot
1902682bed chore: Publish crates 2022-03-15 08:15:34 +00:00
OJ Kwon
629709e1b1
feat(cli/compile): Support out-file (#4016) 2022-03-15 08:13:15 +00:00
Donny/강동윤
be09ea6991
feat(es/minifier): Drop noop calls (#4019) 2022-03-15 16:23:32 +09:00
SWC Bot
abd94c8df2 chore: Publish crates 2022-03-15 07:02:06 +00:00
Alexander Akait
4f6f244170
feat(css/prefixer): Implement more rules for prefixer (#4013) 2022-03-15 06:58:22 +00:00
SWC Bot
5800737752 chore: Publish crates 2022-03-15 05:53:53 +00:00
David Campion
b337c2e2d4
fix(es): Sort spans while preserving comments (#4011) 2022-03-15 05:51:44 +00:00
SWC Bot
957a20d383 chore: Publish crates 2022-03-15 05:26:28 +00:00
Sahil mobaidin
f8d6127dd1
fix(es/parser): Report an error if LeftHandSideExpression is invalid (#4001) 2022-03-15 14:24:19 +09:00
SWC Bot
9d6a57c6e5 chore: Publish crates 2022-03-14 14:32:45 +00:00
Alexander Akait
a4bc0927a0
feat(css): Supports more color notations (#4009) 2022-03-14 14:30:09 +00:00
Donny/강동윤
afa97f63df chore: Publish v1.2.155 2022-03-14 19:27:27 +09:00
SWC Bot
db62bb6415 chore: Publish crates 2022-03-14 10:01:39 +00:00
Donny/강동윤
0ad13d93f2
fix(common): Don't use None as source while generating source maps (#4007)
**Description:**

I used https://pastcompute.github.io/ScriptMapper/ to dump source map, and found that line/column becomes null if file is `None`. Seems like the rust crate `sourcemap` is mature enough to handle sourcemaps with those entries, but many other sourcemap libraries, including the one used by `@swc/cli` expects non-null value for the line and the column.
2022-03-14 09:51:51 +00:00
Donny/강동윤
ae2f8d6327 chore: Publish crates 2022-03-14 15:39:23 +09:00
Donny/강동윤
f650ca6bb9
doc(api/rust): Add an example for generating code and sourcemap (#4005) 2022-03-14 03:52:59 +00:00
SWC Bot
833dc89a2d chore: Publish crates 2022-03-14 02:08:47 +00:00
Donny/강동윤
ee9a841f33
test(*): Print diagnostics to stderr while testing (#4003)
**Description:**

This will make debugging stack overflow and parser issues easier because it writes to stderrr right away, instead of holding a buffer for it.
2022-03-14 02:06:34 +00:00
Donny/강동윤
dac84b98e3
doc(api/rust): Add examples (#4002) 2022-03-13 22:07:34 +00:00
SWC Bot
8565a8e8f3 chore: Publish crates 2022-03-13 21:44:41 +00:00
Austaras
87a3c1c916
fix(es/resolver): Use correct context for identifiers after type parameters (#4000) 2022-03-13 21:42:24 +00:00
Donny/강동윤
38c0c0faa6 chore: Publish crates 2022-03-14 04:11:07 +09:00
SWC Bot
8ba1f201b9 chore: Publish crates 2022-03-13 19:09:34 +00:00
Donny/강동윤
40b8a4e596
feat(common): Implement a pretty error reporter (#3946) 2022-03-13 19:07:18 +00:00
SWC Bot
13ee45a830 chore: Publish crates 2022-03-13 18:40:08 +00:00
Alexander Akait
96d6f37c20
feat(css/parser): Improve error reporting (#3999) 2022-03-13 18:37:42 +00:00
SWC Bot
3cfe4ccb94 chore: Publish crates 2022-03-13 18:00:19 +00:00
Alexander Akait
ece8d962f8
fix(css/codegen): Fix source maps (#3997) 2022-03-14 02:55:18 +09:00
SWC Bot
386456f48a chore: Publish crates 2022-03-13 09:13:23 +00:00
Donny/강동윤
a23af2dea2
feat(es/minifier): Compress more comparisons (#3996) 2022-03-13 09:11:16 +00:00
Donny/강동윤
dabc4920a8
test(es): Add auto-closable tests (#3995) 2022-03-13 08:45:55 +00:00
SWC Bot
3fba1a1a6d chore: Publish crates 2022-03-13 07:54:40 +00:00
Donny/강동윤
b22d084180
test(es): Add an execution test system (#3994)
Description:

As we have a way to verify that input is behaving identically, we create a huge matrix of compile options and process the input with all of those options.

This system can be used to check for fixed issues easily.
For first, someone can add issues using a unix hidden directory, which starts with `.`. Those tests are ignored by `testing::fixture`.
Then, when something is changed, one can run `./scripts/check-issues.sh`. If a test succeeds, it means it's fixed and the starting dot (`.`) of the path to the test input file is removed.
2022-03-13 07:47:39 +00:00
SWC Bot
ad3115fa2f chore: Publish crates 2022-03-13 03:29:32 +00:00
Donny/강동윤
64ca5bae4d
feat(es/minifier): Implement more rules for arrows (#3992) 2022-03-13 03:27:15 +00:00
SWC Bot
d9db2faded chore: Publish crates 2022-03-13 02:59:56 +00:00
Donny/강동윤
f7b212bfc4
perf(es/minifier): Use Vec<u8> as a buffer for base54 (#3993)
Description:
We are only using ASCII characters so we can avoid utf8 logics by using `Vec<u8>` as a buffer and converting it into `String` at the end.
2022-03-13 02:57:47 +00:00
SWC Bot
abf6a1b294 chore: Publish crates 2022-03-12 16:16:12 +00:00
Austaras
3590ea2277
fix(es): Merge jsc.loose and jsc.assumptions (#3990) 2022-03-12 16:14:03 +00:00
SWC Bot
2a6106f0b7 chore: Publish crates 2022-03-12 15:38:49 +00:00
magic-akari
04db7e2a9b
perf(es/minifier): Refactor base54 (#3989) 2022-03-12 15:36:42 +00:00
Donny/강동윤
3054409214 chore: Publish crates 2022-03-12 20:47:59 +09:00
Donny/강동윤
bd0fcb9ea4 chore(es/preset-env): Track .json files to make cargo happy 2022-03-12 20:47:29 +09:00
Donny/강동윤
f5e8cc2d09 chore: Publish crates 2022-03-12 20:13:53 +09:00
SWC Bot
ad42c60e05 chore: Publish crates 2022-03-12 11:08:43 +00:00
Donny/강동윤
1beecceead
perf(es/minifier): Merge hashmap for scoping before checking (#3988)
Currently, we check for child scopes by doing a recursive call, like 2ad0d801a2/crates/swc_ecma_minifier/src/pass/mangle_names/analyzer/scope.rs (L112-L114)

But this is slow because it results in an enormous amount of calls.

We can optimize this by merging information of child scopes beforehand.
2022-03-12 20:06:59 +09:00
Donny/강동윤
073d847a33
test(es): Add tests for fixed issues (#3987) 2022-03-12 09:33:32 +00:00
Donny/강동윤
9e4f4e92f7 chore: Publish v1.2.154 2022-03-12 17:40:56 +09:00
SWC Bot
8f1d6302d1 chore: Publish crates 2022-03-12 07:52:26 +00: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
SWC Bot
7e96a8a9d7 chore: Publish crates 2022-03-12 07:17:08 +00:00
Donny/강동윤
db60291164
perf(common): Use fxhash everywhere (#3985)
Description:
 - To avoid a breaking change, I created a cargo feature that can be used to change hasher.
 - This leads to about 8% perf improvements on m1 max macbook pro 64gb
2022-03-12 07:15:12 +00:00
SWC Bot
fb421b8cc3 chore: Publish crates 2022-03-12 06:47:29 +00:00
Donny/강동윤
67e615421f
perf(es/minifier): Use fxhash for integers (#3984)
Description:
 - `Id` is treated as integer, as `JsWord` and `SyntaxContext` are both integer.
2022-03-12 06:45:35 +00:00
SWC Bot
c6ddb5fcf5 chore: Publish crates 2022-03-12 06:17:50 +00:00
Donny/강동윤
107c91dd20
perf(es/minifier): Make mangler faster by merging hash sets into one (#3983) 2022-03-12 06:16:02 +00:00
SWC Bot
77eb149f87 chore: Publish crates 2022-03-12 05:33:55 +00:00
Donny/강동윤
48f2fd8e1b
fix(es): Change error message as it can be misleading (#3982) 2022-03-12 14:32:00 +09:00
SWC Bot
38f009d2cf chore: Publish crates 2022-03-12 03:04:21 +00:00