4.2.0 (25 September 2019)

  • show code context for error messages (#167)
  • defer initialisation of ExecJS context to fix #165

4.1.20 (17 November 2018)

  • update UglifyJS to 3.4.8

4.1.19 (11 September 2018)

  • update UglifyJS to 3.4.9

4.1.18 (09 August 2018)

  • update UglifyJS to 3.4.7

4.1.17 (29 July 2018)

  • update UglifyJS to 3.4.6

4.1.16 (22 July 2018)

  • update UglifyJS to 3.4.5

4.1.15 (13 July 2018)

  • update UglifyJS to 3.4.4

4.1.14 (02 July 2018)

  • update UglifyJS to 3.4.3

4.1.13 (30 June 2018)

  • update UglifyJS to 3.4.2

4.1.12 (20 June 2018)

  • update UglifyJS to 3.4.1

4.1.11 (02 June 2018)

4.1.10 (21 April 2018)

4.1.9 (11 April 2018)

4.1.8 (14 March 2018)

4.1.7 (11 March 2018)

4.1.6 (08 February 2018)

4.1.5 (28 January 2018)

  • update UglifyJS to 3.3.9
  • update uglify-es to 3.3.9

4.1.4 (22 January 2018)

  • update UglifyJS to 3.3.8
  • update uglify-es to 3.3.8

4.1.3 (7 January 2018)

  • update UglifyJS to 3.3.5

4.1.2 (30 December 2017)

  • update UglifyJS to 3.3.4

4.1.1 (29 December 2017)

  • update UglifyJS to 3.3.3

4.1.0 (28 December 2017)

  • update UglifyJS to 3.3.2
  • cascade compress option is merged into collapse_vars

4.0.2 (10 December 2017)

  • update UglifyJS to 3.2.2
  • show harmony suggestion when using for-of loops

4.0.1 (3 December 2017)

  • update UglifyJS to 3.2.1

4.0.0 (2 December 2017)

  • update UglifyJS to 3.2.0
  • remove Angular ngInject processing
  • add unsafe_math compress option
  • add reduce_funcs compress option
  • add parse options
  • add shebang output option
  • add keep_infinity compress option
  • add quote_style output option
  • add side_effects compress option
  • add switches compress option
  • more helpful error Message in Harmony mode

Dropped options:

  • output: angular
  • mangle: except => reserved
  • mangle_properties: ignore_quoted => keep_quoted
  • enclose
  • squeeze, copyright and screw_ie8 options

3.2.0 (9 April 2017)

  • experimental ES6/Harmony mode based on UglifyJS2 Harmony branch
  • update UglifyJS to 2.8.22

3.1.13 (3 April 2017)

  • update UglifyJS to 2.8.21

3.1.12 (31 March 2017)

  • update UglifyJS to 2.8.20

3.1.11 (28 March 2017)

  • update UglifyJS to 2.8.17

3.1.10 (25 March 2017)

  • update UglifyJS to 2.8.16

3.1.9 (19 March 2017)

  • update UglifyJS to 2.8.14

3.1.8 (17 March 2017)

  • update UglifyJS to 2.8.13

3.1.7 (11 March 2017)

  • fix NoMethodError on Uglifier.compile(source, source_map: false) (#114)
  • update UglifyJS to 2.8.12

3.1.6 (9 March 2017)

  • update UglifyJS to 2.8.11

3.1.5 (8 March 2017)

  • update UglifyJS to 2.8.9

3.1.4 (5 March 2017)

  • Update UglifyJS to 2.8.7

3.1.3 (2 March 2017)

  • update UglifyJS to 2.8.5
  • default passes to 1
  • allow source_map option to be true instead of a hash

3.1.2 (1 March 2017)

  • fix reduce_vars compressor option
  • add passes compressor option
  • update UglifyJS to 2.8.4

3.1.1 (27 February 2017)

  • disable reduce_vars by default as it causes JS errors (#110)

3.1.0 (27 February 2017)

  • update UglifyJS to 2.8.0
  • add reduce_vars compress option
  • enable reduce_vars and collapse_vars compress options by default
  • unused top-level function and variable removal with toplevel compress option
  • add top_retain compress option to specify list of top-level variables to always retain
  • add unsafe_comps and unsafe_proto options

3.0.4 (30 November 2016)

  • update UglifyJS to 2.7.5
  • implement ignore_quoted and debug options for mangle_properties

3.0.3 (24 October 2016)

  • update UglifyJS to 2.7.4
  • add wrap_iife output option to wrap IIFEs in parenthesis

3.0.2 (20 August 2016)

  • add top-level keep_fnames option that implies both compressor and mangler keep_fnames
  • update UglifyJS to 2.7.3

3.0.1 (28 July 2016)

  • update UglifyJS to 2.7.0
  • split JS dependencies to separate files

3.0.0 (22 March 2016)

  • drop support for Ruby 1.8
  • remove json as dependency
  • discard unused function arguments only in unsafe mode
  • add keep_fnames option to preserve function names in compressed code
  • add collapse_vars option to collapse single-use variables
  • backwards incompatible changes to source map options
  • support for inline base64 encoded source maps
  • mangle property names option (disabled by default)
  • update UglifyJS to 2.6.2

2.7.2 (26 August 2015)

  • update UglifyJS to 2.4.24

2.7.1 (27 February 2015)

  • fix compatibility with experimental Alaska ExecJS runtime

2.7.0 (8 January 2015)

  • copyright comment preservation also includes comments starting with a bang (!)

2.6.1 (1 January 2015)

  • update UglifyJS to 2.4.16

2.6.0 (8 December 2014)

  • allow metadata to be appended to minified code

2.5.3 (18 July 2014)

  • no changes

2.5.2 (18 July 2014)

  • update UglifyJS to 2.4.15

2.5.1 (13 June 2014)

  • update UglifyJS to 2.4.14

2.5.0 (15 March 2014)

  • update UglifyJS to 2.4.13
  • process Angular @ngInject annotations
  • add keep_fargs option
  • change ascii_only default to true

2.4.0 (19 December 2013)

  • update UglifyJS to 2.4.8
  • add drop_console compress option

2.3.3 (12 December 2013)

  • update UglifyJS to 2.4.7

2.3.2 (1 December 2013)

  • update UglifyJS to 2.4.6
  • document missing mangler and output options

2.3.1 (8 November 2013)

  • update UglifyJS to 2.4.3

2.3.0 (26 October 2013)

  • use JSON gem instead of multi_json
  • update UglifyJS to 2.4.1
  • fix issues with some Unicode JS identifiers (#47, #58)

2.2.1 (28 August 2013)

  • fix IE8 compatibility

2.2.0 (25 August 2013)

  • update UglifyJS to 2.4.0
  • add negate_iife compressor option
  • escape null characters as \x00, so that null followed by number isn't interpreted as octal (#47)

2.1.2 (7 July 2013)

  • update UglifyJS to 2.3.6

2.1.1 (18 May 2013)

  • fix JScript compatibility
  • update UglifyJS to 2.3.4

2.1.0 (8 May 2013)

  • update to UglifyJS 2.3.0
  • add enclose and screw_ie8 options

2.0.1 (6 April 2013)

  • fix compatibility with Sprockets 2.9.0

2.0.0 (6 April 2013)

This release is backwards incompatible for JS compressor options.

  • update UglifyJS to 2.2.5
  • change compressor arguments to align with UglifyJS2
  • compile_with_map: generate source maps for minified code