rollup-plugin-uglify-es
raw JSON → 0.0.1 verified Mon Apr 27 auth: no javascript deprecated
Rollup plugin for minifying ES6+ bundles using uglify-es (deprecated UglifyJS fork). Version 0.0.1, last updated in 2018, no active maintenance. Replaced by rollup-plugin-terser and @rollup/plugin-terser for better ES6+ support. Key differentiator: targeted ES6+ minification, but now obsolete as uglify-es is no longer maintained and has known bugs (e.g., mangling property names incorrectly). Alternatives should use terser instead.
Common errors
error Error: Could not resolve 'uglify-es' ↓
cause uglify-es is not installed or missing from node_modules.
fix
npm install uglify-es --save-dev
error TypeError: uglify is not a function ↓
cause Incorrect import style - using named import instead of default import.
fix
import uglify from 'rollup-plugin-uglify-es'; instead of import { uglify } from ...
error SyntaxError: Unexpected token: punc (.) ↓
cause uglify-es does not support newer JavaScript syntax (e.g., optional chaining).
fix
Switch to terser (rollup-plugin-terser) which supports modern syntax.
Warnings
deprecated rollup-plugin-uglify-es is deprecated and no longer maintained. ↓
fix Migrate to rollup-plugin-terser or @rollup/plugin-terser.
breaking uglify-es has known bugs (e.g., property mangling errors) and is not compatible with modern JavaScript (ES2020+). ↓
fix Use terser instead, which is actively maintained and supports modern syntax.
gotcha The plugin does not support source maps out of the box; additional configuration may be needed. ↓
fix Pass sourceMap: true in options if source maps are required.
Install
npm install rollup-plugin-uglify-es yarn add rollup-plugin-uglify-es pnpm add rollup-plugin-uglify-es Imports
- default wrong
import { uglify } from 'rollup-plugin-uglify-es';correctimport uglify from 'rollup-plugin-uglify-es'; - rollup
import { rollup } from 'rollup';
Quickstart
import { rollup } from 'rollup';
import uglify from 'rollup-plugin-uglify-es';
const bundle = await rollup({
input: 'src/index.js',
plugins: [
uglify()
]
});
await bundle.write({ file: 'bundle.min.js', format: 'cjs' });