강동윤
f4249574da
feat(ci): Track binary size and performance ( #1840 )
2021-06-23 10:50:27 +00: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
LongYinan
c6ce8c60b7
build(node-swc): Support lower version glibc linux on non-x64 arch ( #1809 )
2021-06-09 23:05:27 +09:00
LongYinan
d6571933ff
feat(node-swc): Support windows aarch64 and linux aarch64 musl ( #1773 )
2021-06-02 09:34:27 +09:00
LongYinan
6a13615381
feat(node-swc): Support FreeBSD ( #1758 )
2021-05-28 12:47:02 +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
강동윤
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
강동윤
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
강동윤
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
강동윤
4d013d98ca
fix(ci): Don't run tests on macos ( #1659 )
2021-05-09 11:51:37 +09:00
강동윤
e3bdb97e66
fix(ci): Fix android build
2021-05-08 10:05:39 +09:00
강동윤
0593ce87c0
Disable android
2021-05-07 21:13:54 +09: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
Luke John
882e2d91b6
fix(wasm-web): Use jq with an explicit temp file ( #1637 )
2021-05-04 18:31:52 +09:00
강동윤
28bb61fb8d
fix(swc): Fix bugs ( #1624 )
...
spack:
- Add ability to exclude module from the bundle. (#1385 )
swc_ecma_ast:
- Make `Param.decorators` optional. (#1603 ).
swc_ecma_transforms_compat:
- Fix super calls in seq exprs in a class. (#1617 )
swc_ecma_transforms_module:
- `common_js`: Fix dynamic imports. (#1614 )
swc_ecma_transforms_typescript:
- Fix common js imports. (#1593 )
2021-04-30 06:25:24 +00:00
LongYinan
7ea87600b4
fix(ci): Use ghcr.io build image ( #1622 )
2021-04-30 12:20:39 +09:00
강동윤
1178686a4c
fix(bundler): Fix bundler ( #1576 )
...
swc_bundler:
- Fix remapping of exports. (denoland/deno#9350 )
2021-04-16 18:09:38 +00:00
강동윤
246bdd5088
fix(bundler): Fix bugs ( #1572 )
...
swc_bundler:
- Ensure that denoland/deno#10141 is fixed.
- Run deno tests on ci.
- Support nested `export *`. (denoland/deno#10153, denoland/deno#10174)
swc_ecma_codegen:
- Remove `,` after rest elements. (#1573 , denoland/deno#10167 )
swc_ecma_transforms_optimization:
- Don't drop items used by the discriminant of a switch.
swc_ecma_transforms_typescript:
- Remove constructors without a body.
2021-04-14 14:00:33 +00:00
강동윤
5ce4e1e927
fix(es/parser): Use correct position for comments ( #1527 )
...
swc_ecma_parser:
- Use correct position for comments in
```ts
function Bar() {
const [foo, setFoo] = useState(0);
React.useEffect(() => {
// @refresh reset
});
return <h1>{foo}</h1>;
}
```
2021-03-31 19:30:05 +09:00
강동윤
13a9d12c84
chore(ci): Configure github actions for rustdoc ( #1523 )
2021-03-31 13:09:10 +09:00
강동윤
99f4f0f280
fix(swc): Fix bugs for v1.2.52 ( #1506 )
...
swc_ecma_parser:
- Support `private declare`. (#1503 )
- Recover `backtracking` state while doing some nested backtracking. (#1505 )
- Allow using `readonly` as the name of class properties. (#1514 )
swc_ecma_transforms_base:
- `hygiene`: Keep the name of class expressions. (#1507 )
swc_ecma_transforms_typescript:
- Allow a namespace and a class to have the same name. (#1515 )
swc:
- Disable `tsx` if the ext of a file is ts.
2021-03-29 20:48:48 +09:00
강동윤
b7eb1f9154
fix(es/transforms/base): Fix fixer ( #1496 )
...
swc_ecma_transforms_base:
- Fix `('a' ?? 'b') || c`.
2021-03-27 00:45:51 +09:00
강동윤
0351a47678
fix(ci): Speed up ( #1494 )
2021-03-26 01:22:09 +09:00
강동윤
df3f3106df
fix(es/transforms/fixer): Fix await expressions. ( #1475 )
...
swc_ecma_transforms_base:
- Handle assign expressions in `await` correctly. (denoland/deno#9810 )
2021-03-24 19:25:04 +09:00
강동윤
fec189f2f3
fix(bundler): Fix stack overflow on Windows ( #1464 )
...
bundler:
- Prevent stack overflow. (denoland/deno#9752 )
testing:
- Bump version
- Fix handling of paths on windows.
testing_macros:
- Bump version
- Correctly ignore files.
2021-03-22 19:42:42 +09:00
강동윤
dcdac2db6f
fix(swc): Fix bugs ( #1453 )
...
swc_ecma_transforms_typescript:
- Add option to use define propert for `strip` pass. (#1472 )
node-swc:
- Fix `keepClassNames`. (Brooooooklyn/swc-node#335 )
2021-03-17 15:24:35 +09:00
LongYinan
6ece76367b
fix(node-swc): Fix glibc compatibility issue ( #1431 )
2021-02-24 01:53:36 +09:00
LongYinan
9d896c746e
feat(node-swc): Reduce binary size ( #1418 )
2021-02-20 17:07:58 +09:00
강동윤
27aad87798
fix(es/transforms/base): Fix hygiene of catch clause ( #1413 )
...
swc_ecma_transforms_base:
- `hygiene`: Apply ops in catch clauses. (#1402 )
2021-02-19 16:52:02 +09:00
강동윤
eaeffabf74
fix(es): Improve performance ( #1411 )
...
swc_ecma_ast:
- Add `BindingIdent`.
- Reduce size of `Ident`.
2021-02-19 15:34:22 +09:00
강동윤
702e20ef56
Update issue templates
2021-02-17 21:27:55 +09:00
LongYinan
ca417e9d59
feat(node-swc): Support windows ia32 arch ( #1367 )
2021-01-29 15:09:44 +09:00
강동윤
947161b43b
fix(bundler): Fix bugs ( #1349 )
...
swc_bundler:
- Fix deglobbing of imports. (denoland/deno#8985)
- Use correct syntax context while deglobbing imports. (denoland/deno#9212)
- Allow reexporting from wrapped esms. (denoland/deno#8959, denoland/deno#9200)
- Fix statement orderings. (denoland/deno#9250)
- Emit injected items as early as possible. (denoland/deno#9250)
- Respect `external_modules`. (#1338 )
- Fix cjs suppport. (#1328 )
swc_ecma_transforms_base:
- hygiene: Fix for hoisting. (denoland/deno#9212 )
2021-01-25 21:15:42 +09:00
강동윤
2921b903d7
fix(es/ast): Compilation ( #1357 )
...
swc_ecma_ast:
- Fix compilation.
2021-01-25 11:32:09 +09:00
강동윤
5c3a0b5166
v1.2.46: Prevent regression. ( #1356 )
2021-01-24 23:46:23 +09:00
강동윤
e40aca983a
v1.2.46 ( #1354 )
2021-01-24 22:02:44 +09:00
강동윤
6a1c3da326
fix(bundler): Fix bugs ( #1346 )
...
swc_bundler:
- Fix keywords pass.
swc_ecma_transforms_optimization:
- Remove `dbg!`.
- `constant_propagation`: Inline only injected variables.
2021-01-22 18:39:57 +09:00
강동윤
ddc9492aed
fix(es/transforms): Handle enum in namespaces ( #1340 )
...
swc_ecma_transforms_typescript:
- Handle enums in namespaces. (#1329 )
swc:
- Exclude files based on .swcrc.
2021-01-18 23:00:53 +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
Hee
78dc61af33
chore: Update actions/setup-node ( #1315 )
2021-01-11 19:39:17 +09:00
강동윤
76d9e2a9df
feat(ecmascript/transforms): Split into multiple crates. ( #1311 )
2021-01-05 14:29:52 +09:00
Maxime Guerreiro
895b431f72
fix(ci): insert *_bg files in @swc/wasm-web ( #1305 )
2020-12-31 08:42:18 +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
Joel M
066bb4e9c9
fix(ci): insert *_bg files in @swc/wasm-web ( #1291 ) ( #1293 )
2020-12-26 20:04:42 +09:00
Maxime Guerreiro
dd977ff80c
fix(ci): publish npm packages as public ( #1277 ) ( #1290 )
2020-12-23 12:01:49 +09:00
Maxime Guerreiro
edf74fc1ec
feat(wasm-web): Initialize
2020-12-20 22:28:04 +09:00
강동윤
ad23a58fed
feature: Macro for fixture testing ( #1226 )
...
testing_macros:
- Add `#[fixture]` for easier fixture testing
2020-11-22 18:14:22 +09:00
강동윤
512153f944
Fix publish script, really
2020-11-22 15:33:37 +09:00
강동윤
1268206bff
fix: publish script
2020-11-21 21:43:27 +09:00
강동윤
6f7bdd6995
Fix ci
2020-11-21 14:01:55 +09:00
강동윤
4294b5e7ba
bundler: Fix issues ( #1212 )
...
swc_bundler:
- Bundler rework. (denoland/deno#6802)
- Reexports are not transitive. (denoland/deno#8246)
- Dependencies of module with circular dependency. (denoland/deno#8302)
- Order of injection between import vs export. (denoland/deno#8302)
- `export *` in wrapped modules. (denoland/deno#8308, denoland/deno#8399)
- `export { a as b }` in wrapped modules.
- Fix denoland/deno#8314.
- Fix denoland/deno#8325.
- Fix denoland/deno#8344.
- Make deno test verify exported names.
- Handle `export * from './foo'`.
swc_ecma_parser:
- Don't panic on private name in interface (Closes #1211 )
swc_ecma_transforms:
- dce: Prevent infinite loop
- Faster constant propagation pass.
2020-11-19 20:42:56 +09:00
강동윤
9879fa59c8
bundler: fix bugs ( #1105 )
...
swc_bundler:
- Correct lca for circular dependencies.
- Handle namespaced imports. (#1109 )
- Handle namespaced reexports. (#1110 )
- Handle shorthand properly. (#1111 )
- Implement `import.meta` (#1115 )
- Handle reexport mixed with imports correctly. (#1116 )
- Handle export default decls in computed-key modules.
- Remove all export * from. output. (#1118 )
- Handle export of class or function declaration in a computed module properly. (#1119 )
swc_ecma_transforms:
- Do not rename class members. (#1117 )
2020-10-02 11:07:40 +09:00
강동윤
7905b0dcf5
wasm: Automatic deployment ( #1084 )
...
wasm:
- Add auto deployment.
2020-09-19 02:07:28 +09:00
LongYinan
4795b65b10
Fix musl config ( #1074 )
2020-09-14 00:25:22 +09:00
강동윤
2b12594cf2
Add musl support ( #1072 )
2020-09-13 18:27:26 +09:00
LongYinan
3bae92788e
Fix missing GITHUB_TOKEN in publish stage ( #1046 )
2020-09-08 01:14:05 +09:00
강동윤
350973553a
Fix spack, third step ( #1034 )
...
swc_bundler:
- Add support for common js modules
2020-09-07 20:36:17 +09:00
LongYinan
791ba2f5d8
Fix macos 10.13 compatible problem ( #1040 )
2020-09-07 12:45:11 +09:00
강동윤
57112fc42b
Improve transforms ( #1035 )
...
swc_ecma_transforms:
- Fix `this` in optional chaining expression. (https://github.com/Brooooooklyn/swc-node/issues/62 )
- Optimize typescript stripper
- Optimize fixer
2020-09-06 19:47:15 +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
강동윤
8e237288d7
Migrate to napi ( #1009 )
2020-08-30 15:29:42 +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
강동윤
969fe6ec32
Spack ( #937 )
...
spack:
- Always inline `NODE_ENV` before analyzing imports
- implements conditional requires (#884 )
2020-08-06 14:55:16 +09:00
강동윤
2de59759de
Reduce size ( #928 )
...
Reduce binary size and make some dependencies optional for deno
2020-08-04 01:33:23 +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
강동윤
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
강동윤
f500e9528c
Parser for TypeScript 4.0 ( #867 )
...
- Allow rest in non-last elements in tuple type
- Allow labelled ts type element in tuple type
- More operators
2020-06-29 16:23:33 +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
강동윤
fcef201695
spack: super-fast bundler ( #825 )
...
Version is alpha as it's not complete
2020-06-13 23:09:45 +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
강동윤
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
강동윤
59ee0aac2c
Pin rust toolchain ( #782 )
...
Currently cargo fmt is not supported in latest nightly.
This breaks ci and my workflow, so I'll pin the version.
2020-05-19 15:05:22 +09:00
강동윤
65f2faa339
Reduce stack usage ( #776 )
2020-05-17 18:50:52 +09:00
강동윤
d74f74932e
Support decorators on parameters ( #775 )
...
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2020-05-16 22:36:52 +09:00
강동윤
53d09d448e
Handle await-for loop just like babel ( #676 )
2020-02-18 12:27:13 +09:00
강동윤
4a92f5751a
CI improvement ( #674 )
2020-02-18 11:36:56 +09:00
강동윤
64ed0bd801
Validate sourcemap ( #669 )
2020-02-16 16:51:42 +09:00
Hyeon Kim
80d3fe001a
Fix 'fmt' GitHub Actions workflow ( #645 )
2020-02-10 02:35:39 +09:00
강동윤
05be89c198
Smaller runtime ( #631 )
...
Replace babel-runtime with regenerator-runtime
2020-02-07 11:19:23 +09:00
kdy1
20e37eae5d
regenerator: allow nested finally block ( #601 )
...
Previously,
```js
function *foo() {
try {
} finally {
try {
} finally {
throw new Error('foo');
}
}
}
```
make swc panic
Closes #600 .
2020-01-23 01:04:08 +00:00
강동윤
ec98516b0e
Update issue templates
2020-01-22 10:58:55 +09:00
강동윤
8e476d8a83
Make parser work identically in release mode ( #577 )
...
swc_ecma_parser:
- parser behaves identically on debug mode and release mode
swc:
- run all tests on travis ci
- use nvm on travis ci
swc_ecma_transforms:
- make async_to_generator understand hoisting
2020-01-17 18:44:51 +09:00
강동윤
78daec2c14
Re-enable travis to make bors work ( #562 )
2020-01-04 15:58:21 +09:00
강동윤
c0cc2185ea
Fix ci ( #561 )
...
- line endings are normalized
- switched to github actions from travis to check forked branches
2020-01-04 13:33:25 +09:00
강동윤
b3a2ee8e9b
Fix bugs ( #482 )
...
swc_ecma_parser:
- fix lexing of numbers like 9.09
swc_ecma_transforms:
- jsx_text_to_str
- use fxhash instead of ahash for exports
2019-12-02 20:19:15 +09:00
강동윤
5532e628b2
Don't run cargo clippy on push
2019-11-28 13:38:11 +09:00
강동윤
9eab72f99f
Lint on push ( #465 )
...
Rust rustfmt and clippy on push
2019-11-24 22:01:47 +09:00
강동윤
b472f26acc
Update FUNDING.yml
...
Disable github sponsors
2019-06-14 19:04:46 +09:00
강동윤
18ec162516
Create FUNDING.yml
2019-06-14 19:02:08 +09:00