swc/crates/swc_ecma_minifier
2023-07-31 04:10:18 +00:00
..
benches build(cargo): Update rustc to nightly-2023-03-20 (#7170) 2023-03-30 08:06:02 +00:00
examples fix(es/minifier): Make name mangler respect toplevel (#6774) 2023-01-10 06:42:49 +00:00
fuzz chore(es/minifier): Configure fuzzer (#6246) 2022-10-25 04:36:03 +00:00
inputs
scripts fix(es/minifier): Fix a bug about eval of name mangler (#7615) 2023-07-18 01:09:00 +00:00
src fix(es/minifier): Handle synthesized export default expression (#7707) 2023-07-31 04:10:18 +00:00
tests fix(es/minifier): Handle synthesized export default expression (#7707) 2023-07-31 04:10:18 +00:00
.eslintrc
.gitignore
Cargo.toml chore: Publish crates 2023-07-31 03:33:30 +00:00
package.json
README.md
yarn.lock

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.

Debugging tips

If the output contains variables named e, t, n it typically means the original library is published in a minified form and the input contains eval. The current swc name mangler does not do anything if eval is used.

Profiling the minifier

From mac os x, run

./scripts/instrument/all.sh path/to/input/dir