Page MenuHomePhabricator

Watchlist Expiry: Add UI support in Special:EditWatchlist [medium]
Open, Needs TriagePublic

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:

Related Objects

Event Timeline

ifried created this task.Apr 14 2020, 5:40 PM
Restricted Application added a project: archived--TCB-Team. · View Herald TranscriptApr 14 2020, 5:40 PM
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 updated the task description. (Show Details)Apr 14 2020, 9:41 PM
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 To Be Estimated/Discussed to Estimated on the Community-Tech board.
ifried moved this task from Estimated to Kanban-2019-20-Q4 on the Community-Tech board.
ifried updated the task description. (Show Details)May 7 2020, 4:28 AM
ifried updated the task description. (Show Details)May 26 2020, 5:40 PM
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)May 26 2020, 5:43 PM
HMonroy claimed this task.Jun 13 2020, 12:38 AM
HMonroy moved this task from Ready to In Development on the Community-Tech (Kanban-2019-20-Q4) board.
HMonroy updated the task description. (Show Details)Jul 10 2020, 12:17 AM

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

HMonroy updated the task description. (Show Details)Mon, Jul 13, 8:21 PM
ifried updated the task description. (Show Details)Mon, Jul 13, 8:58 PM
Restricted Application edited projects, added Community-Tech; removed Community-Tech (Kanban-2020-21-Q1). · View Herald TranscriptTue, Jul 14, 7:21 PM
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.Fri, Jul 24, 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 :)

MusikAnimal updated the task description. (Show Details)Sat, Aug 1, 8:05 PM

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].Mon, Aug 10, 4:32 PM
dom_walden added a subscriber: dom_walden.
  • 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:

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 (e73e964) 16:38, 7 August 2020