Page MenuHomePhabricator

Watchlist Expiry: Add UI support in Special:EditWatchlist [medium]
Closed, ResolvedPublic

Description

As a Watchlist Expiry user, I want to be able to identify which items are being temporarily watched and find their expiration date in Special:EditWatchlist, so that I can see the status of all items and determine if any modifications must be made to the watch period.

Acceptance Criteria:

  • Indicate remaining days for temporarily watched items
    • Display text, directly following the talk/history links in color-base--subtle - #72777d
    • Text should read: "XX days left in your watchlist"
    • If the watch period for a page is less than "1 day left," display the time remaining as "A few hours left"
  • Leave behavior unchanged for pages that are being watched permanently
  • Display temporarily watched items at top (i.e., they should be separated from permanently watched items)
  • Sort items according to expiration date, with the items that will expire soonest at the top.
  • If multiple items have the exact same expiration time in the system, those items should be sorted alphabetically

Visual Example:

EditWatchlist.png (522×777 px, 124 KB)

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
ifried renamed this task from Watchlist Expiry: Add support in Special:EditWatchlist to Watchlist Expiry: Add UI support in Special:EditWatchlist.Apr 14 2020, 8:28 PM
ifried updated the task description. (Show Details)
ifried renamed this task from Watchlist Expiry: Add UI support in Special:EditWatchlist to Watchlist Expiry: Add UI support in Special:EditWatchlist [medium].Apr 15 2020, 8:43 PM
ifried moved this task from Needs Discussion to Up Next (May 6-17) on the Community-Tech board.
ifried moved this task from Up Next (May 6-17) to Kanban-2019-20-Q4 on the Community-Tech board.
ifried updated the task description. (Show Details)

Change 611439 had a related patch set uploaded (by HMonroy; owner: HMonroy):
[mediawiki/core@master] Add UI support in Special:EditWatchlist

https://gerrit.wikimedia.org/r/611439

ifried renamed this task from Watchlist Expiry: Add UI support in Special:EditWatchlist [medium] to Watchlist Expiry: Add UI support in Special:EditWatchlist [medium] --> high priority for review.Jul 24 2020, 2:08 AM

@Prtksxna @ifried during the code review for this patch, it has been mentioned that perhaps the text to indicate remaining days for temporarily watched items should be @color-base--subtle: @wmui-color-base30;, which is @wmui-color-base30: #72777d;. We have set it to Base 20 Gray - #54595d but I just wanted to run this by you.

@HMonroy Thanks for this update! I'm not totally clear on the context, so can you share why this suggestion has been made?

I noticed it. The reason was that @colorGray5: #54595d (aka Base 20 Gray) is defined along with the comment:

All @colorGray* variables are only for reference. They will be replaced by WikimediaUI Base variables. Use semantic color names such as @color-base below.

But there's no color-base* variable using colorGray5; the closest one defined is color-base--subtle.

In other places (for example, the descriptions in the search results in TemplateWizard) we use the lighter color.

Maybe there's no worry, and no need to change, but I wanted to just make sure.

All @colorGray* variables are only for reference. They will be replaced by WikimediaUI Base variables. Use semantic color names such as @color-base below.

Where is this from? 🤔

But there's no color-base* variable using colorGray5; the closest one defined is color-base--subtle.

You're right, according to wikimedia-ui-base, --color-base--subtle is #72777d.

Either is fine, since 20 is higher contrast than 30, we could continue using it :)

Change 611439 merged by jenkins-bot:
[mediawiki/core@master] Add UI support in Special:EditWatchlist for watchlist expiry

https://gerrit.wikimedia.org/r/611439

Change 617820 had a related patch set uploaded (by Samwilson; owner: HMonroy):
[mediawiki/core@REL1_35] Add UI support in Special:EditWatchlist for watchlist expiry

https://gerrit.wikimedia.org/r/617820

Change 617820 merged by jenkins-bot:
[mediawiki/core@REL1_35] Add UI support in Special:EditWatchlist for watchlist expiry

https://gerrit.wikimedia.org/r/617820

ifried renamed this task from Watchlist Expiry: Add UI support in Special:EditWatchlist [medium] --> high priority for review to Watchlist Expiry: Add UI support in Special:EditWatchlist [medium].Aug 10 2020, 4:32 PM
dom_walden subscribed.
  • Indicate remaining days for temporarily watched items
    • Display text, directly following the talk/history links in color-base--subtle - #72777d
    • Text should read: "XX days left in your watchlist"

True. Rounds up like action=watch

  • If the watch period for a page is less than "1 day left," display the time remaining as "A few hours left"

True.

  • Leave behavior unchanged for pages that are being watched permanently

No change to their appearance.

  • Display temporarily watched items at top (i.e., they should be separated from permanently watched items)

True.

It should be noted that items are grouped according to namespace (see screenshot for example).

  • Sort items according to expiration date, with the items that will expire soonest at the top.

True.

  • If multiple items have the exact same expiration time in the system, those items should be sorted alphabetically

True.

Screenshot:

specialeditwatchlist.png (470×777 px, 49 KB)

I also tested Special:EditWatchlist with Watchlist Expiry disabled (on my local environment). Seemed fine. No errors in the logs.

Test environment: https://test.wikipedia.org MediaWiki 1.36.0-wmf.3 (rMWe73e964e0655) 16:38, 7 August 2020

I have tested this, and it is working as expected. I can see the watched pages in Edit:Watchlist, sorted by expiration date (see screenshot example below). I also tested adding various items with the same expiration period (one after the other) to see that it was properly displayed in the order of my selection (i.e., the older selections above the newer ones), which it was. I am marking this work as Done.

Screen Shot 2020-08-19 at 2.02.17 PM.png (378×1 px, 92 KB)