Workbox v6.3.0 includes a couple of bug fixes and several new features.
🎉 What's New?
Allow precaching "repair" when using subresource integrity
Although unexpected, there are edge cases where the precache might not be in an inconsistent state, most likely due to a developer manually deleting something in DevTools.
When this happens,
workbox-precaching defaults to falling-back to using a network response (assuming the device is online) when there's a precaching miss. Up until now,
workbox-precaching hasn't attempting to use this network response to repopulate the precache, because there are no guarantees that the network response corresponds to the version of the asset specified in the precache manifest.
However, if the precache entry includes an
integrity property, then subresource integrity guarantees that the response does correspond to the same version of the asset in the manifest. So it should be safe to "repair" the cache with that response. [#2921]
IDB writes use relaxed durability
This small change to the way Workbox writes to IndexedDB should lead to slightly better performance, without any appreciable downsides. [#2934]
notifyAllClients option in BroadcastCacheUpdate
postMessage() to notify all open tabs controlled by the current service worker about a cache update. This default behavior is not changing.
notifyAllClients: false when configuring
BroadcastCacheUpdate and the associated plugin will result in
postMessage() only communicating the update to the specific
window client that triggered the
fetch request which resulted in the cache update. [#2920]
All WorkboxEvents TypeScript types are now exported
This enhancement makes it easier to use TypeScript to write
workbox-window event handlers. [#2919]
Debug logging when caching responses with Vary: headers
The presence of
Vary: headers on a cached
Response can make it difficult to properly match and delete cache entries. To make it clearer to developers when this is happening, the development builds of Workbox will now log a message to the
console when a
Response that's being cached includes a
Vary: header. [#2916]
🐛 What's Fixed?
- Update to
chokidardependency, for better
nodecompatibility and to eliminate security warnings. [#2913]
- Preserve all request headers in