title: Removing __WB_REVISION__ Query String from URLs precached by WorkBox
body: <p>I need to completely remove <code>__WB_REVISION__</code> query strings from URLs precached by workbox.</p>
  
  <p>My project is running under very strict rules, and the backend will create unique cache entries for each request with different query strings. This creates a problem when precaching needs to add query strings with revision info.</p>
  
  <p>I've already tried using a simpler service-worker, but since we use webpack with split chunks, we've stumbled up so many <code>import()</code> and <code>window</code> object problems that workbox was the way to go.</p>
  
  <p>I've already tried doing precache by hand via <code>workbox.precaching.precacheAndRoute()</code>. Any suggestions would be appreciated.</p>
  
  <p>workbox config (webpack.config.js):</p>
  
  <pre><code>        new WorkboxPlugin.InjectManifest({
              swSrc: "./assets/js/pwa/worker.js",
              swDest: "sw.js",
              precacheManifestFilename: "precache.[manifestHash].js",
              excludeChunks: ["main", "page", "login"]
               include: [
                   /(vendor).*\.js(?=\?|$|)/,
                   /\.(woff2)(?=\?|$|)/,
                   /(?=sprite)\.(svg)(?=\?|$|)/,
              ],
          })
  </code></pre>
  
  <p>worker.js:</p>
  
  <pre><code>const cacheableResponse = {
      statuses: [0, 200]
  };
  const offlinePage = "offline.html";
  workbox.precaching.precacheAndRoute([offlinePage]);
  
  workbox.routing.registerRoute(/\/$|(.html?)$/, new workbox.strategies.NetworkOnly());
  workbox.routing.setCatchHandler(({ event }) =&gt; {
      return caches.match(offlinePage);
  });
  
  workbox.precaching.precacheAndRoute(self.__precacheManifest);
  </code></pre>
  
  <p>EDIT:
  Adding the code below to webpack config seemed to solve, but feels kinda hacky</p>
  
  <pre><code>manifestTransforms: [
                  originalManifest =&gt; {
                      return (manifest = originalManifest.forEach(entry =&gt; delete entry.revision));
                  }
              ]
  </code></pre>