Page MenuHomePhabricator

Deploy Special:Mute features
Closed, ResolvedPublic2 Estimated Story Points

Description

This task is for keeping track of Special:Mute features deployment.

As a reminder, here are the features we added:

Let's enable the feature on the following (one by one with a week in between each, at least)

  • All beta wikis (except eswiki)
  • Testwiki
  • All wikis

We should make sure:

  • The features added work as expected in different languages
  • The features added work as expected in wikibase betas (commons and wikidata beta wikis)
  • Features work as expected with Globalprefs enabled
  • Eventlogging works as expected
  • Translations are coming in (we probably won't have them all yet)

Event Timeline

Niharika triaged this task as Medium priority.Aug 29 2019, 4:17 PM
Niharika added a project: Epic.
Niharika updated the task description. (Show Details)

Change 538063 had a related patch set uploaded (by Dmaza; owner: Dmaza):
[operations/mediawiki-config@master] Enable SpecialMute feature on testwiki and beta cluster

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

Change 538063 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable SpecialMute feature on testwiki and beta cluster

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

Mentioned in SAL (#wikimedia-operations) [2019-09-19T21:37:48Z] <niharika29@deploy1001> Synchronized wmf-config/VariantSettings.php: Enable special:mute on testwiki; T231577 (duration: 00m 56s)

Niharika added a subscriber: dom_walden.

@dom_walden Adding this to your column for now. Special:Mute is now deployed on all beta wikis except the eswiki beta (so you have a wiki where it is not enabled to test against). It is also on test.wikipedia.org.
Once you give the go-ahead, we can deploy this to more wikis.

Testing on:

  • The features added work as expected in different languages

Adds and removes a user from the email and notification blacklists

  • The features added work as expected in wikibase betas (commons and wikidata beta wikis)

Not on Commons or Wikidata yet.

  • Features work as expected with Globalprefs enabled

If email notifications are global, Special:Mute does not override this setting. If you have set a local override, then it does.

  • Eventlogging works as expected

Events appeared to be logged correctly on beta. I could not see the event log on test (I don't believe I have access).

@Niharika One interesting thing, which I did not notice before. If I have email or echo notification blacklists as a global setting and I try to use Special:Mute to change them, the event log will log the change as if it were successful, when it is not.

Logging, for example:

...
 "event": {
    "emailsAfter": true,
    "emailsBefore": false,
...

When in fact the email blacklist has not been changed because it is a global setting.

It might be OK to log the user's desire to mute/unmute someone, regardless of whether it has been successful. Then again, if the user thinks it is broken and keeps retrying then the statistics might be skewed.

  • Translations are coming in (we probably won't have them all yet)

On Dutch beta Wikipedia, appears to be translated into Dutch (cannot say if it is correct)

Niharika added a subscriber: dbarratt.

@dbarratt This task is more like a "rolling task" for deploying Special:Mute everywhere. It is only on betas and testwiki for now.

Testing on:

  • The features added work as expected in different languages

Adds and removes a user from the email and notification blacklists

  • The features added work as expected in wikibase betas (commons and wikidata beta wikis)

Not on Commons or Wikidata yet.

Oh I meant on https://commons.wikimedia.beta.wmflabs.org and https://wikidata.beta.wmflabs.org/

  • Features work as expected with Globalprefs enabled

If email notifications are global, Special:Mute does not override this setting. If you have set a local override, then it does.

Interesting. I would expect the username to be added to the global list per our work in T224245: Create a way to save preference options wherever they are set by GlobalPreferences without disruption and per T224245#5314103 it did work. I think we just forgot to add the config to our beta cluster. Does that seem right, @dom_walden?

  • Eventlogging works as expected

Events appeared to be logged correctly on beta. I could not see the event log on test (I don't believe I have access).

@Niharika One interesting thing, which I did not notice before. If I have email or echo notification blacklists as a global setting and I try to use Special:Mute to change them, the event log will log the change as if it were successful, when it is not.

Logging, for example:

...
 "event": {
    "emailsAfter": true,
    "emailsBefore": false,
...

When in fact the email blacklist has not been changed because it is a global setting.

It might be OK to log the user's desire to mute/unmute someone, regardless of whether it has been successful. Then again, if the user thinks it is broken and keeps retrying then the statistics might be skewed.

I believe this will be fixed with the above global settings fix.

  • Translations are coming in (we probably won't have them all yet)

On Dutch beta Wikipedia, appears to be translated into Dutch (cannot say if it is correct)

@dbarratt This task is more like a "rolling task" for deploying Special:Mute everywhere. It is only on betas and testwiki for now.

That's fine, I only marked it _Resolved_ because it was moved to the _Done_ column.

Oh, sorry I haven't tested those yet.

Interesting. I would expect the username to be added to the global list per our work in T224245: Create a way to save preference options wherever they are set by GlobalPreferences without disruption and per T224245#5314103 it did work. I think we just forgot to add the config to our beta cluster. Does that seem right, @dom_walden?

Yep.

The problems with global prefs should be fixed in beta with https://gerrit.wikimedia.org/r/#/c/operations/mediawiki-config/+/542644/
@Tchanders - I made the config patch ^, don't worry about it. :)

Retested on https://commons.wikimedia.beta.wmflabs.org and https://wikidata.beta.wmflabs.org.

Email and notification mute preferences can now be set globally from Special:Mute (if they are enabled globally on Special:GlobalPreferences).

Briefly tested that the muting of users from emails and notifications works on those environments.

Thanks @dom_walden. I'll prioritize this for wider deployment. Replacing this in the Ready column for that.

Change 548301 had a related patch set uploaded (by Dmaza; owner: Dmaza):
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Change 548301 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Change 548301 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Reverted by https://gerrit.wikimedia.org/r/c/operations/mediawiki-config/+/548452.

Change 548568 had a related patch set uploaded (by Dmaza; owner: Dmaza):
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Change 548568 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

dmaza changed the task status from Stalled to Open.Jan 23 2020, 9:09 PM
Niharika set Due Date to Feb 5 2020, 8:00 AM.Jan 24 2020, 8:44 PM

Putting a date of this as a reminder for us to enable the feature everywhere.

Putting a date of this as a reminder for us to enable the feature everywhere.

Worth mentioning that SpecialMute has a dependency[1] fix on 1.35.0-wmf.16 that has yet to be deployed to group2. I assume it should happen before Feb 5 but just in case

https://www.mediawiki.org/wiki/MediaWiki_1.35/wmf.16#GlobalPreferences
https://gerrit.wikimedia.org/r/c/mediawiki/extensions/GlobalPreferences/+/563590

Got it. Thanks for pointing that out @dmaza.

This is good to go. wmf16 has been rolled out everywhere. Let's get this out coming Monday.

Niharika changed Due Date from Feb 5 2020, 8:00 AM to Feb 10 2020, 8:00 AM.Feb 7 2020, 1:00 AM

Change 571383 had a related patch set uploaded (by Dmaza; owner: Dmaza):
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Change 571383 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable SpecialMute page on all wikis

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

Niharika updated the task description. (Show Details)

Briefly retested muting and unmuting users on Special:Mute on enwiki. Also checked that I could use it to mute globally (when I set the option globally).

Also tested Special:Mute on https://www.wikidata.org and https://commons.wikimedia.org.

I don't think I can test eventlogging on production.

Briefly retested muting and unmuting users on Special:Mute on enwiki. Also checked that I could use it to mute globally (when I set the option globally).

Also tested Special:Mute on https://www.wikidata.org and https://commons.wikimedia.org.

I don't think I can test eventlogging on production.

Thanks @dom_walden. I think that' s alright. For the future, I think @Etonkovidova has a script that can tell you what values were submitted for the eventlogging log in a popup so you can confirm that it's sending the right data.

@dom_walden - events for certain schemas can be viewed in the Dev Console with some javascript snippets. Let me know if you need it for testing.

I notice that, say, MediaWiki:Specialmute-label-mute-email doesn’t have any options to use gendered words in regards to user you are muting. Is that still available for other languages or was this just overlooked?

(Also, have to say that ‘mute’ is not easily translatable term in all languages, and it gets especially confusing when other parts of interface use a much better language like ‘Prohibit these users from emailing me’ and ‘Do not display notifications from’.)

I notice that, say, MediaWiki:Specialmute-label-mute-email doesn’t have any options to use gendered words in regards to user you are muting. Is that still available for other languages or was this just overlooked?

@stjn, are you saying that the words should be changed to not be gender-neutral because it is harder to translate?

(Also, have to say that ‘mute’ is not easily translatable term in all languages, and it gets especially confusing when other parts of interface use a much better language like ‘Prohibit these users from emailing me’ and ‘Do not display notifications from’.)

Makes sense. We could change the wording on the special page. Created T246483 to discuss that.

@stjn, are you saying that the words should be changed to not be gender-neutral because it is harder to translate?

Parameter could be added to those messages to customise whether the user is using male/female/unknown language in regards to themself. Right now it’s impossible to write {{GENDER:$1|male form|female form}} because it does not exist in original messages in English (Translatewiki.net, for example, marked my translations attempting that as broken), when I am pretty sure it should’ve been {{GENDER:$1|user}} in English. (Maybe there are some guidelines on how to do i18n, but I do not know anything about this.)

@stjn, are you saying that the words should be changed to not be gender-neutral because it is harder to translate?

Parameter could be added to those messages to customise whether the user is using male/female/unknown language in regards to themself. Right now it’s impossible to write {{GENDER:$1|male form|female form}} because it does not exist in original messages in English (Translatewiki.net, for example, marked my translations attempting that as broken), when I am pretty sure it should’ve been {{GENDER:$1|user}} in English. (Maybe there are some guidelines on how to do i18n, but I do not know anything about this.)

Got it. And I think the same would also apply to the other phrases on Special:Mute which say 'user', correct?

Yes. (Sorry for taking too long to answer :-))