Page MenuHomePhabricator

Investigation: Look at old cross-wiki watchlists proposals
Closed, ResolvedPublic5 Story Points

Description

The cross-wiki watchlist proposal is likely to be in the Wishlist Survey top 10. There's an existing ticket -- T5525: Cross-wiki watchlists -- and there may be other discussions about this long-standing community wish.

This card is preliminary investigation -- see what ideas have been proposed and rejected, which seem promising.

Also look at the existing 3rd party tool: https://tools.wmflabs.org/crosswatch/ -- especially how it handles filtering.

Event Timeline

DannyH created this task.Dec 8 2015, 6:37 PM
DannyH updated the task description. (Show Details)
DannyH raised the priority of this task from to Needs Triage.
DannyH added a project: Community-Tech.
DannyH moved this task to To be estimated/discussed on the Community-Tech board.
DannyH added a subscriber: DannyH.
Restricted Application added subscribers: StudiesWorld, Aklapper. · View Herald TranscriptDec 8 2015, 6:37 PM
DannyH set Security to None.
DannyH edited a custom field.
DannyH triaged this task as Normal priority.Dec 10 2015, 6:25 PM
DannyH updated the task description. (Show Details)Jan 12 2016, 6:05 PM

User:Timeshifter put together WP:GCIW on the English Wikipedia, which is a decent summary.

DannyH edited a custom field.Feb 2 2016, 6:16 PM
Niharika claimed this task.Feb 3 2016, 2:41 PM
Niharika moved this task from Ready to In Development on the Community-Tech-Sprint board.

User:Timeshifter put together WP:GCIW on the English Wikipedia, which is a decent summary.

Thank you, Yair. This is very helpful. I saw https://en.wikipedia.org/wiki/User_talk:Yair_rand/interwikiwatchlist2.js - looks cool!

Existing tools:

  1. https://tools.wmflabs.org/crosswatch/
    • Allows to filter minor/bot/registered/unregistered edits
    • Allows to filter by namespaces and wikis.
    • Inline diffs and links to directly jump to specific diffs
    • Filter to view results from "last x days"
    • Link for more documentation and project reports: https://phabricator.wikimedia.org/T92955
  2. http://tools.wikimedia.de/~luxo/gwatch/
  3. User scripts: https://en.wikipedia.org/wiki/User_talk:Yair_rand/interwikiwatchlist.js and https://en.wikipedia.org/wiki/User_talk:Yair_rand/interwikiwatchlist2.js — Lets you add your watchlist from a one project to another project. The first version places the new watchlist of top of the existing one while the second version integrates the entries from both into one watchlist.
  4. A proof of concept by Lego to achieve this completely client-side by making API requests to each wiki: https://github.com/legoktm/xwiki-watchlist (> 2 years old, proceed with caution)
  5. French wikipedia gadget: https://fr.wikipedia.org/wiki/MediaWiki:Gadget-GlobalWatchlist.js
  6. https://github.com/he7d3r/mw-gadget-CrossWikiWatchlist Another gadget. Based off Legoktm's tool (see 4).
  7. An extension called GlobalWatchlist is in use by the Gamepedia wikis (see http://help.gamepedia.com/Special:Version). Couldn't find the source code though. We might want to talk to them about getting the code published.

Features requested:

  1. Implementation of a watchlist that will check for changes to watched articles on more than one wiki
  2. Covers Wikimedia projects at least (non-Wikimedia wikis is a nice-to-have) (from https://en.wikipedia.org/wiki/Wikipedia:Global,_cross-wiki,_integrated_watchlists#Features.2C_ideas)
  3. Ability to switch between local and global watchlist
  4. Various filtering capabilities (possibly like what Crosswatch offers)
  5. Ability to group by project and order by time
  6. Consistent input methods (from https://www.mediawiki.org/wiki/Micro_Design_Improvements/Watchlist_UI)
  7. Choose your default watchlist view (from https://phabricator.wikimedia.org/T35888)

Stuff to explore while looking into possible technical implementations:

  1. Crosswatch repo: https://git.wikimedia.org/tree/labs%2Ftools%2Fcrosswatch
  2. Using a global database: https://phabricator.wikimedia.org/T5525#1085235
  3. A completely fronted implementation: https://github.com/legoktm/xwiki-watchlist/blob/master/xwikiwatchlist.js
  4. Each watchlist has RSS feeds which could be possibly used for generating a global watchlist
DannyH closed this task as Resolved.Feb 12 2016, 6:21 PM

This is perfect, everything that we need to know to get started. I'm calling this investigation done. :)

IIUC, Wikia wikis are using this (unrelated) extension
https://github.com/Wikia/app/tree/dev/extensions/wikia/GlobalWatchlist

  1. An extension called GlobalWatchlist is in use by the Gamepedia wikis (see http://help.gamepedia.com/Special:Version). Couldn't find the source code though. We might want to talk to them about getting the code published.

This was followed up at T126644: Investigation: Gamepedia's cross-wiki watchlist code.

IIUC, Wikia wikis are using this (unrelated) extension
https://github.com/Wikia/app/tree/dev/extensions/wikia/GlobalWatchlist

  1. An extension called GlobalWatchlist is in use by the Gamepedia wikis (see http://help.gamepedia.com/Special:Version). Couldn't find the source code though. We might want to talk to them about getting the code published.

This was followed up at T126644: Investigation: Gamepedia's cross-wiki watchlist code.

Thanks for bumping this, @Quiddity. We all forgot about this.
@DannyH we should create a ticket for investigating if it's feasible to port GlobalWatchlist code to work on Wikimedia wikis.