Error message for Google Chrome Service Workers

AI-generated summary

Error message for Google Chrome Service Workers

A compatibility issue with Workbox versions is causing an error in Google Chrome when using Discourse version 3.1.0.beta5. The error is not present in Firefox or older versions of Discourse.

ShaoJie encountered the issue and provided logs and screenshots. Lilly and JammyDodger were unable to reproduce the issue, but Canapin was able to reproduce it using a Chromium-based browser.

The error message is:

Uncaught TypeError: workbox.cachableResponse.Plugin is not a constructor

ShaoJie suggested that the issue may cause problems with caching resources correctly. ShaoJie also proposed a solution, replacing workbox.cacheableResponse.Plugin with workbox.cacheableResponse.CacheableResponsePlugin.

A pull request has been submitted to address the issue: https://github.com/discourse/discourse/pull/22108, as confirmed by david.

 It seems to be a Workbox version compatibility issue. I didn’t encounter any errors while using Firefox, but it appears to be happening only for me on Google Chrome. I have deployed both an older version (3.1.0.beta2) and the latest version (3.1.0.beta5) of Discourse, and the error only occurs in version 3.1.0.beta5 when using Google Chrome.

 I have also seen the same error on meta.


Registrations in: /Users/mac/Library/Application Support/Google/Chrome/Default (0)
Scope: https://meta.discourse.org/
Registration ID: 258 (unregistered)
Navigation preload enabled: false
Navigation preload header length: 4
Unregistered worker:
Installation Status: REDUNDANT
Running Status: RUNNING
Fetch handler existence: UNKNOWN
Fetch handler type: UNKNOWN
Script: https://meta.discourse.org/service-worker.js
Version ID: 279
Renderer process ID: 2118
Renderer thread ID: 2
DevTools agent route ID: 6
Log:

2 Likes

what version of chrome? i run chrome on windows desktop and have never had that error. make sure browser is up to date.

FWIW I’m seeing similar on my test site :person_raising_hand:

Not sure what it means though.

(and I updated Chrome just now before checking again :slight_smile:)


Just to add, I also checked it on a site I’ve not updated to 3.1.0.beta5 yet and it does not appear there.

3 Likes

I use Chrome on my Mac, which is already the latest version, and I have tried clearing the cache. The error still persists, but it’s possible that this error is only happening locally on my computer.

1 Like

weird. i don’t see the error on my site.

I repro the issue using a Chromium-based browser as well on meta. :slight_smile:

Uncaught TypeError: workbox.cacheableResponse.Plugin is not a constructor

3 Likes

An error like this seems to be able to cause potential issues with caching resources correctly.

3 Likes

i’ve repro’d it too finally

1 Like

yep!I did some research and it seems that replacing workbox.cacheableResponse.Plugin with workbox.cacheableResponse.CacheableResponsePlugin might be a possible solution.

3 Likes

It seems you know what you are talking about (I don’t know anything about that stuff). If you feel confident, feel free to send a pull request! :slight_smile:

Thanks for the reports everyone - @ShaoJie is absolutely right about the required changes. Here’s a PR:

https://github.com/discourse/discourse/pull/22108

6 Likes

This topic was automatically closed after 4 days. New replies are no longer allowed.