Skip to content

Releases: google/closure-library

Closure Library v20200204

07 Feb 22:21
Compare
Choose a tag to compare

Note: the last two releases were not pushed to npm. To keep a complete changelog these release notes include the last two as well.

New Additions

  • Add TrustedResourceUrl.fromSafeScript().
  • New htmlsanitizer builder API addition.
  • Extract the version from Headless Chrome user-agent strings.

Backwards Incompatible Changes

  • goog.net.WebSocket no longer accepts direct autoReconnect and getNextReconnect arguments; specify these as fields in an options object instead.
  • Delete goog.is(Def|Null|DefAndNotNull|String|Boolean|Number) from base.js.
  • goog.base has been removed.
  • Remove returnValue_ from goog.events.Event.
  • Add getter accessor for propagationStopped field on goog.events.Event.
  • goog.net.Cookies.prototype.set only accepts options objects for optional parameters.

Other Changes

  • Fix a bug when emoji picker is used with urlPrefix
  • Fix a keyboard navigation bug in goog.ui.Palette when it's used within a scrollable container.
  • All Closure-compiled binaries using Closure Library will now contain Closure's short license.
  • Calling MockClock.tick() reentrantly no longer makes time go backwards
  • Mark goog.forwardDeclare as deprecated. Users who need type-only imports should use goog\.requireType instead.
  • Migration from goog.fs.getBlob to goog.fs.blob.getBlob.
  • Remove usages of goog.structs.Set, use ES6 Set instead
  • Fix type annotation of getBlobWithProperties.
  • goog.functions.create is now deprecated.
  • Fix goog.getUid to work correctly with class-side inheritance
  • Split goog.fs.getBlob and goog.fs.getBlobWithProperties into a separate goog.fs.blob module.
  • Update auto-scrolling implementation in filtered menu highlighting.
  • Refactor internal usages of goog.net.Cookies.prototype.set to use the options object.
  • Remove instances of goog.getObjectByName in webchannelbase.js.
  • Delete deprecated goog.fs.getBlob methods.
  • Mark goog.scope() as deprecated.

Closure Library v20200112

14 Jan 17:56
e7bfe67
Compare
Choose a tag to compare

Other Changes

  • Fix authority parsing in Closure URI parser.
  • Ignore deactivate events from partner elements for IE
  • Update docs of Disposable to discourage null-ing/deleting of properties.

Closure Library v20200101

14 Jan 17:56
36d2c6d
Compare
Choose a tag to compare

New Additions

  • New htmlsanitizer builder API addition.

Backwards Incompatible Changes

  • Delete goog.is(Def|Null|DefAndNotNull|String|Boolean|Number) from base.js.
  • goog.net.WebSocket no longer accepts direct autoReconnect and getNextReconnect arguments; specify these as fields in an options object instead.
  • goog.base has been removed.

Other Changes

  • Remove instances of goog.getObjectByName in webchannelbase.js.
  • Remove usages of goog.structs.Set, use ES6 Set instead
  • All Closure-compiled binaries using Closure Library will now contain Closure's short license.
  • Split goog.fs.getBlob and goog.fs.getBlobWithProperties into a separate goog.fs.blob module.
  • Fix a keyboard navigation bug in goog.ui.Palette when it's used within a scrollable container.
  • Fix type annotation of getBlobWithProperties.
  • goog.functions.create is now deprecated.

Closure Library v20191111

14 Nov 23:40
Compare
Choose a tag to compare

New Additions

  • Create goog\.asserts\.dom and goog\.dom\.elements families of methods for checking specific types of DOM Elements.

Other Changes

  • Fix disposable leak in field.js
  • Fix bug in AminatedZippy when it's expanded/collapsed while the previous animation is still playing.
  • There may be some user-visible formatting changes due to CLDR data updates. No functional changes expected.
  • Include actual value in unclear "Bad argument to assert*(boolean)" error messages.

Closure Library v20191027

30 Oct 20:54
Compare
Choose a tag to compare

New Additions

  • Add check isSafariDesktopOnMobile for desktop Safari on a mobile device.
  • Add "progress" string constant to EventType

Backwards Incompatible Changes

  • Removed wrapped svgpan library.
  • '.' is no longer considered a valid url.

Other Changes

  • DateTime.prototype.toIsoString(true) now includes a 'T'.
  • goog.dom.classlist now works with SVGElements
  • Minimal impact given nobody uses negative ordinals.
  • Remove unwrapTrustedURL.
  • MockClock will mock Date.now()
  • New flag addition to support ignoring unknown fields
  • Added a keycodes.js constant for the single quote (:/*) key in Firefox for Japanese keyboard layouts.
  • Small change to datetimesymbols to optimize clutz output.
  • Update relative date formatting to match ICU65

Closure Library v20190929

02 Oct 16:49
Compare
Choose a tag to compare

New Additions

  • New, deprecated MockClock.prototype.unmockDateNow method to ease mocking Date.now with MockClock.
  • Add an options parameter to goog.net.Cookies#set and allow setting the SameSite value.
  • SafeStyle now supports cubic-bezier.

Other Changes

  • goog.ui.PopupDatePicker now uses AnchoredViewportPosition instead of AnchoredPosition.
  • Prevent exceptions generating error event on Safari
  • goog.mixin and goog.object.extend are deprecated in favor of Object.assign.
  • Allow delegates with constructor parameters.
  • Improved stack information for cancel().
  • Fix a possible bug regarding loss of precision by casting array indexes to 32-bit signed integers with the use of bitwise operators. Array indexes can go all the way up to 2^32-1. https://tc39\.es/ecma262/\#array-index
  • Deprecated some base.js methods that can be replaced with one-liners.

Closure Library v20190909

11 Sep 00:16
Compare
Choose a tag to compare

New Additions

  • Add property to SaveArgument API.
  • New htmlsanitizer builder API addition.

Backwards Incompatible Changes

  • Delete goog.dom.query.
  • Removed goog.net.xpc.IframeRelayTransport.

Other Changes

  • Fixed a bug in the MenuButton class. When the browser magnification is increased (decreasing the viewport size), and a menu button close to the right edge has an open popup menu, the menu could be improperly repositioned in response to the zoom.
  • A previous bug fix in MenuButton was not checking for null in all circumstances.
  • goog.now is now deprecated in favor of Date.now
  • Convert long.js to goog.module
  • goog.testing.TestCase's failOnUnreportedAsserts property has been removed.
  • Deprecate goog.net.xpc.CrossPageChannel
  • Report tearDownPage() errors to the window.
  • Pass TrustedResourceUrl parameters in constructor so that Closure Compiler can better detect unused code.

Closure Library v20190819

21 Aug 03:02
Compare
Choose a tag to compare

New Additions

  • Add option html to goog.getMsg.
  • Add assertI18nContains and addI18nMapping to i18n asserts.
  • Add goog.object.getSuperClass to retrieve the super class of a constructor in an ES5 and ES6 compatible way. We don't generally recommend doing this, but if you have to use this method for ES5/ES6 compatibility (e.g. this is better than accessing superClass_).
  • Add isValid() function to goog.i18n.currency.
  • Add OffscreenCanvas detection to goog.dom.BrowserFeatures.

Backwards Incompatible Changes

  • goog.net.xpc.NixTransport and associated code has been removed.
  • Obsolete goog.net.xpc.FrameElementMethodTransport has been removed.
  • goog.net.xpc.TransportTypes.FLASH has been removed.
  • Remove legacy opt_webSafe support from Base 64 encoders. Please use the new alphabet parameter instead.
  • Delete goog.dom.query.

Other Changes

  • Ensure that IE mouse event sequence handling works well with pointer events if control mouse handling is set to use pointer events.
  • Mark goog.abstractMethod() as deprecated in favor of @abstract annotations.
  • Support async tearDown methods in goog.labs.testing.Environment.
  • Allowing alpha values of 1.0 (as opposed to only 1) in rgba (and hsla) Javascript string colors.
  • Remove native promise function entry point wrappers in the closure errorhandler since they also report handled promise rejections, which is unintended. Expose a handler for the the unhandledrejection event instead.
  • Change SavedRange.restoreInternal and its child classes from pubic to protected to match SavedCaretRange.restoreInternal.
  • goog.iter.Iterable no longer implicitly includes goog.iter.Iterator.
  • Start leveraging goog.FEATURESET_YEAR for goog.array methods.
  • Enter key opens SubMenus and no longer closes every menu
  • No user change, but improved performance can be seen in both download size and execution time when using ECMAScript I18n classes.

Closure Library v20190729

05 Aug 23:01
Compare
Choose a tag to compare

New Additions

  • Added getter method for popup object in PopupDatePicker.
  • Adding versions of currency.js get*Symbol functions that use fallback.

Backwards Incompatible Changes

Other Changes

  • Enables Base 64 encodings to be given an alphabet instead of a boolean flag to specify if a websafe encoding is used. A new Alphabet enum is added to be used for the parameter. The legacy opt\_webSafe=true is softly deprecated, but will still be translated into alphabet=Alphabet\.WEBSAFE\_DOT\_PADDING for compatibility.
  • Converted goog.async.FreeList to ES6 class syntax.

Closure Library v20190709

16 Jul 05:28
Compare
Choose a tag to compare

New Additions

  • Part of updated API for the purpose of selecting ECMAScript implementation and data
  • Add a ContentKind property to Soy render callback & event.

Backwards Incompatible Changes

  • Delete goog.soy.data.SanitizedContentKind.TEXT.
  • Update ModuleLoader.prefetchModule to work with the <script async=false .../> mode, by inserting <link rel="preload".... /> tags into the header.

Other Changes

  • Fix escaping of '<' in goog.string.quote.
  • Bugfix, escape code must be uppercase. Updated broken link.
  • Render the test runner logs with forced LTR direction
  • goog.soy.TextTemplate typedef has dropped support for the legacy third parameter.
  • Fix a bug in IE/Edge where referencing cssRules.cssText throws an error in some cases.
  • goog.labs.testing.Environment.mock now supports a parameter that triggers loose call ordering, so mocked expectations do not need to be in a specific order.
  • Don't call handlerRender from goog.soy.Renderer.prototype.renderText. Use goog.soy.IjData instead of soy.IjData
  • HSV colour conversions should be more accurate.
  • goog.defineClass is now deprecated.
  • goog.soy.StrictHtmlTemplate and goog.soy.StrictTemplate typedef have dropped support for the legacy third parameter.
  • Fixed a small typo in the documentation for the goog.dom.getOuterHtml method.