Downloads:
Maven: http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22closure-compiler%22
NPM: https://www.npmjs.com/package/google-closure-compiler
Release Notes:
https://github.com/google/closure-compiler/wiki/Releases
NOTE: The external webservice had some issues and we rolled back to v20210601. The team is currently working on it.August, 8, 2021 (v20210808)
- Add a FeatureSet corresponding to the ES2021 language version. Includes features in the ES2021 spec, e.g. logical assignment operators and numeric separators.
- Fixed bug where builds with language_out ES2015+ did not see warning about rest parameter JSDoc missing the "..." variadic annotation.
- Update Maps JS usage allowed externs to allow using the current weekly version (by explicit version number).
- Ban files with nested goog.provides where a nested goog.provide is used as a @typedef. If you see a new JSC_TYPEDEF_CHILD_OF_PROVIDE error, the recommended fix is to delete the nested goog.provide (and optionally move to goog.module)
- Fix to @const enforcement on @externs properties. A single assignment to the property in executable code now triggers an error.
- Add an error for new proeprties in metadata: for Wiz views.
- Fold String#replace when all the values are string literals. Add a few more unit tests to the String#replace folding
- Remove the deprecated --module and --module_wrapper aliases for the --chunk and --chunk_wrapper flags.
- Make JSC_POSSIBLE_INEXISTENT_PROPERTY error message explain what it actually means.
- Symbol representing namespaces (declared by oog.provide or goog.module) are prefixed with ns$ in SymbolTable.
- Add polyfills for Promise.any and AggregateError.
- Switch @fileoverview parsing from "last one wins" to "first one wins". @suppress annotations are merged across all @fileoverviews in a file, including implicit ones (e.g. @externs).
- Running in checksOnly mode no longer runs the pass that replaces goog.provide('a.b'); with var a = {}; a.b = {};. To temporarily revert this change, set options.setBadRewriteProvidesInChecksOnlyThatWeWantToGetRidOf(true).
- Add polyfill and externs for String.prototype.replaceAll
- Add externs for maps api v3.45
- Added GamepadEvent to w3c_gamepad.js
- Added constant folding support for Math.imul
- Deleted deprecated CompilerOption setCheckGlobalNamesLevel and error group undefinedNames, as in --jscomp_{error,warning,off}=undefinedNames. These options were no-ops and are covered by other diagnostics. @suppress {undefinedNames} still parses but is a no-op.