mirror of
https://github.com/swc-project/swc.git
synced 2024-12-20 20:22:26 +03:00
33a43f85b1
swc_ecma_minifier: - Implement more rules. swc_ecma_transforms_base: - `resolver`: Fix syntax context of catch block. swc_ecma_transforms_optimization: - `expr_simplifier`: Fix a bug related to `this` of call expressions. - `dead_branch_remover`: Don't reduce switch cases if test is now known. - `dead_branch_remover`: Don't break `&&`. |
||
---|---|---|
.. | ||
scripts | ||
src | ||
tests | ||
Cargo.toml | ||
README.md |
Minifier
EcmaScript minifier for the swc project. This is basically a port of terser.
Note
Currently name mangler is very simple. To focus on creating a MVP, I (kdy1) will use simple logic for name mangler and implement the content-aware name mangler after publishing first non-beta version.
Testing
Tests ported from terser has
- input.js
- config.json
- mangle.json (if name mangling is enabled)
- output.js (if exists and can be modified if our one is better or due to lack of frequency-aware base54)
- output.terser.js (if exists)
Copying tests
Replace the content of terser/test/compress.js
with it of scripts/compress.js
and run npm run test:compress