Who's Online plugin does not work with Discourse 2.3.10

Um, I rebuilt today after getting an alert to a new version.

err , plain old white screen?

Uncaught TypeError: Cannot read property ‘trigger’ of undefined
at t.init (_plugin-third-party-cb09db834c49b1fa6dc58b470cffc55ebb62fb2a157688165cb211f1343ce435.js:3872)
at h (_ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:38572)
at Function.e.create (_ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:39100)
at e.t.create (_ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:11490)
at _ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:11294
at h (_ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:11226)
at e.t.lookup (_ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:11070)
at Object.initialize (_plugin-third-party-cb09db834c49b1fa6dc58b470cffc55ebb62fb2a157688165cb211f1343ce435.js:3959)
at Object.n.initialize (_application-4bbf4bf6518f7480549c54813a7fe09233841e43c49675ffe7fbda7ac187d247.js:8532)
at _ember_jquery-0ae86c6a7527a99c2b9b8a11521273bd9cb4f7d41bc546df081b7ee94f26d9c3.js:45916

1 Like

What plugins are you running?

3 Likes

doing another rebuild just in case

hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/davidtaylorhq/discourse-whos-online.git
- git clone https://github.com/discourse/discourse-spoiler-alert.git
- git clone https://github.com/discourse/discourse-cakeday.git
- git clone https://github.com/angusmcleod/discourse-events.git
- git clone https://github.com/discourse/discourse-tooltips.git
- git clone https://github.com/communiteq/discourse-sitemap.git

3 Likes

Looks like one third party plugin is breaking the page. Can’t diagnose which one since you are rebuilding.

4 Likes

My guess too.
I’ve finished rebuilding.

How would I go about diagnosing which plugin would be causing it? (other than disabling them all )

My guess would be events or who is online

1 Like

ok, gonna start the disable 1 by 1 method :confused:

Appears to be whos-online due to this pull request here:

https://github.com/discourse/discourse-whos-online/pull/27

Evidence number 99999 why we ship defaulting to tests-passed and running an older branch means less plugin compatibility.

You may want to pin the plugin to an older commit.

4 Likes

yep, whos online broken

1 Like

Who’s Online is broken for sites on the stable branch. The plugin relies on code not yet in Discourse on the stable branch, so it doesn’t work with such sites. As Falco shared, if you run tests-passed you should be fine.

3 Likes

should there not be a stable branch of the plugin / all plugins ?
Seems a bit daft calling it “stable” when things break …

The plugin was working yesterday, on the previous version … :confused:

stable1
/ˈsteɪb(ə)l/

adjective

  1. (of an object or structure) not likely to give way or overturn; firmly fixed.
1 Like

We’ve never promised that the stable branch would be bug free. It’s stable in that it doesn’t change frequently. Stable gets a release every 4+ months, with small security and critical bug fixes in between. Plugins are updated far more frequently, and keep pace with tests-passed.

We’ve discussed this before, no formal plans at this time. As Falco suggested already, if you choose to modify the default tracking branch like you did, you’ll also likely need to modify how you install plugins, to pin a commit.

4 Likes