Jump to content

Replacing the discussion system

Replacing the discussion system

As you know, translatewiki.net is using LiquidThreads for discussions. It is an extension that hasn't been developed in about 10 years, is barely maintained and broken to some extend. This has been known for years, and I have been thinking of replacements.

Now it seems StructuredDiscussions (née Flow) is going to face the same fate: no longer actively developed nor maintained.

There is a new system in the works, called DiscussionTools, which builds on top of the existing talk pages. Who knows, maybe DiscussionTools will face the same fate in the future, but that should not be a such a big deal, since the existing talk pages keep working, which cannot be said for LiquidThreads or StructuredDiscussions, if those extensions are removed.

What do you think about enabling DiscussionTools on this wiki with the eventual goal of archiving the current LiquidThreads discussions as read-only? There are probably hundreds of pages using LiquidThreads, so some bot activity may be needed to archive them.

I think feature-wise we would not lose anything important if we switch over. With discussion tools we would gain visual editor support.


Nike (talk)11:46, 12 January 2023

Yes! Excellent idea.

I liked Flow, especially for its excellent mobile support. Unfortunately, it's probably doomed, so there's no point in discussing it.

The DiscussionTools extension offers a good balance of the classic talk pages with some new features that one would expect on a modern website.

Amir E. Aharoni (talk)19:49, 12 January 2023

I would be very happy for us to switch to DiscussionTools – I have used it since it first became available in beta on Wikimedia projects, and the experience has been both pleasant and intuitive. It's seamless integration with "ordinary-style" talk pages is also a major plus. So yeah, I'd be very happy if we switched.

Jon Harald Søby (talk)17:11, 17 January 2023

Feature-wise, is it possible to link to a particular reply in a thread with DiscussionTools? I realize it might not be the most important feature, but I remember using it a few times here, and it was handy. (It's nice not having to dig history to find a diff corresponding to a reply).

whym08:53, 31 January 2023

Not currently, but it's a planned feature: https://phabricator.wikimedia.org/T275729

Nike (talk)09:20, 31 January 2023

To be exact: it is possible, but there is no UI yet to get the correct ID. If you happen to know the ID (e.g. using the user script described in https://www.mediawiki.org/wiki/Topic:Wmredg44lh8v9x9i, or using the browser developer tools), you can already link to it.

Tacsipacsi (talk)10:49, 14 February 2023

I agree with such a switch. Some temporary pain would be worth it.

McDutchie (talk)13:32, 31 January 2023

DiscussionTools has been enabled. It depends on VisualEditor, so that too is now available.

The process to start using discussion threads is a bit complicated.

For pages with no existing threads:

  • Create page or edit page to add {{#useliquidthreads:0}}

For pages with existing threads:

  • Move the page from X to X/LiquidThreads (better not to leave redirect, as it makes the next step easier)
  • Edit page X/LiquidThreads to add {{ArchivedLiquidThreads}} (see below)
  • Edit page X to add {{HadLiquidThreads}}

LiquidThreads is still showing for all new talk pages. There is an option to disable that, but it will hide existing threads unless {{#useliquidthreads:1}} is present. Only if we add the manual opt in to all such pages, then can we turn of LiquidThreads by default in the future. This is done automatically with {{ArchivedLiquidThreads}}.

I made one example to test so far: Translating talk:Index.

Nike (talk)08:49, 7 February 2023

Thanks for doing this!

A question about the last step: I managed to add {{HadLiquidThreads}} to my user talk page by putting action=edit in the URL, but I couldn't find any other "Edit" button. Have I missed it, or is there really no other way?

Amir E. Aharoni (talk)12:54, 7 February 2023

There is small [Edit↑] which is hard to see. Also it does something funny with redirects, so I had add action=edit as well.

Nike (talk)13:48, 7 February 2023

If the page doesn't exist, it's instead red [Add header].

Nike (talk)13:50, 7 February 2023

Your instructions do not work. Users cannot *move* their talk page (that action is disabled/hidden, even when moving to a subpage of their talk page). Only you can do that. Do you want all users to ask you to make these moves?

Verdy p (talk)11:10, 14 February 2023

A patch that enables everyone to move pages is under review.

Tacsipacsi (talk)13:09, 14 February 2023

Support DiscussionTools. We should probably investigate how to make new talk pages not use LQT by default. Bonus points for converting existing LQT discussions into normal threads so the extension can be removed eventually (since it's unmaintained, etc.) without breaking existing content.

MarcoAurelio (talk)14:38, 14 February 2023

New talk pages (i.e. page not existing yet) already have LQT disabled.

Nike (talk)14:50, 14 February 2023

I agree that the many pages created LQthread should be convertible to normal MediaWiki subpages (merging their titles and regenerating default signatures and dates).

However note that there's a problem in how many subpages we'll need and how to preserve the threading: we can't merge all them into a single subpage without exhausting some limits, or breakign the threads; additionally, if we merge separate threaded messags into the same subpage, there's the need to preserve the indentation, and their relative order. Some existing threads have many levels of replies, so in a first step each message should be a separate subpage, then a default parent page could transclude them (within indented blocks). Note that in LQthreads, replies may have different titles than the message they were replying to in the same thread, so the titles of each thread cannot be a normal Mediawiki section header, EXCEPT the top-level where it could be used as a section header in the wiki subpage (with == for normal second level) (for all other levels, it would become a === for a unique third level, the indentation in the parent page transcluding them could insert the indentation needed, using for example an collapsible box template: the header of the collapsible box would be the signature and date).

Even a single LQ message in a talk page would be come at least 2 subpages: a parent subpage for the presentation and containment, containing a collapsible box template.

Such conversion tool would not just be for this wiki but for any Wikimedia wiki where LQ is about to be deprecated, before it is finally uninstalled. Idelaly it would require the use of some external bot trying to make the conversion, it would need parameters to set the source LQ talk page (where LQ thread were attached), and the target pagename (not necessarily the same, and possible with an editable subpage name instead of some default "/old Liquidthread messages", as user pages have various ways to organize their archives.

Once the user owning the user talk page (or the community otherwise that manages a content talk page) approves the conversion, the old threads could be deleted (but there's an issue to preserve the history for copyright reasons, so most probably they would be frozen: all futher edits or additions would be in the standard mediawiki (sub)pages).

Finally the conversion bot should be made part of DiscussionTools, which would also have ways to manage/reorganize archives.

Verdy p (talk)14:52, 14 February 2023