Page MenuHomePhabricator

An option to disable constant pulling (GET requests) of the Watchlist
Open, Needs TriagePublic

Description

I implemented a way to get a Watchlist that does not require you to waste lots of time. This is how I discovered that when you have the Watchlist open in a tab it sends a GET request every second or so: it's continually pulling even if "Live updates" is disabled. This is also how it displays the "View new changes since..." note at the top when things have changed.

I don't need or want this constant pulling when having a Watchlist tab open and it doesn't work with my method to get a working Watchlist, which is why I'd like to disable it. It only drains my computer/network's and MediaWiki servers' resources and has no advantage while having some disadvantages in my case.

However, I couldn't find any setting to disable it in the preferences and other users didn't know of a way to prevent this either.

You can check it like this:

  • Open your Watchlist
  • Press F12 in Firefox
  • Go to the Network tab in that new window
  • There should be a new GET request every 2 seconds or so if the JavaScript version of the Watchlist is used (no continous pulling for the old non-JS version)

Could you please add an option to the preferences and/or the Watchlist page to toggle this auto-refreshing?

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Xaosflux renamed this task from An option to disable constant pulling (GET requests) of the Watchlist to Disabling Live Updates on watchlist does not stop constant client pulling (GET requests).Jan 3 2021, 12:08 AM

I'm not sure about that rename @Xaosflux . It is pretty apparent to me that the requests go out because non-live update wants to be seen as being responsive to new changes (so that "You have new changes" occurs almost as soon as you actually have new changes).

I do think 1-2s responsiveness probably isn't required for that use case, but that use case is valid.

@Izno the UI control is the universal stop button on "Live updates" with a tool tip "Turn off live updates" - however, it isn't really stopping or turning off the live client-side processing.

I think that the original title was more correct.
The request should probably be instead to change the 2-way Live Updates button to a 3-way option:

  • do not poll — but allow a manual refresh of the history display without a full page reload
  • poll and stop — as current non-live
  • full live update — as current Live

@Izno the UI control is the universal stop button on "Live updates" with a tool tip "Turn off live updates" - however, it isn't really stopping or turning off the live client-side processing.

Because that UI control's purpose is to update the full list automatically as changes come in. "Turn on/off live updates" is thus true to the non-technical user.

I understand what you mean, but ...
The change wanted here is not to turn off the polling when Live Updates is turned off, but to have a further option to fully turn off polling.
I would also distinguish between polling and pulling. The GET request is just asking for a "did something change?" status and does not pull any data.
The response for no change is a 204 with no payload. The response after a change is a 200 - also with no payload.

Izno renamed this task from Disabling Live Updates on watchlist does not stop constant client pulling (GET requests) to An option to disable constant pulling (GET requests) of the Watchlist.Jan 8 2021, 5:49 PM