mirror of
https://github.com/swc-project/swc.git
synced 2024-11-28 11:13:43 +03:00
ef6a745599
swc_ecma_minifier: - Implement `evaluate` partially. - Store 'expected output' from terser along with our result. swc_ecma_transforms_base: - `fixer`: Don't wrap `+ (a % b)`. swc_ecma_transforms_optimization: - `expr_simplifier`: Preserve this in calls.
22 lines
691 B
Markdown
22 lines
691 B
Markdown
# 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`
|