Skip to content

Breaking Changes

Please refer to the corresponding installation section:

Rollup 4 and Vite 5

Rollup 4 has changed the asset name layout format, it is using base64 encoding, previous Rollup versions using hex encoding:

This change breaks the way vite-plugin-pwa build plugin builds the service worker, since it is using this regular expression /[.-][a-f0-9]{8}\./ for dontCacheBustURLsMatching in workbox and injectManifest options.

In version v0.17.0, vite-plugin-pwa configures dontCacheBustURLsMatching with a regular expression using the Vite's build.assetsDir option (defaults to assets):

  • workbox.dontCacheBustURLsMatching = /^assets\//
  • injectManifest.dontCacheBustURLsMatching = /^assets\//

You can refer to this issue for more details about dontCacheBustURLsMatching: Workbox appears to be needlessly generating revision hashes.

@vite-pwa/vitepress

In version v0.3.0, @vite-pwa/vitepress configures dontCacheBustURLsMatching in a similar way to how vite-plugin-pwa does, but using the VitePress' assetsDir option.

Other integrations

If you're using vite-plugin-pwa or another integration with other meta frameworks (îles, Astro, SvelteKit, Nuxt 3), review the generated service worker if you're using Vite 5 or Rollup 4, and update the dontCacheBustURLsMatching regular expression properly.

Released under the MIT License.