Remove $wgBrowserBlackList and associated EditPage methods
Closed, ResolvedPublic

Description

This feature was added in 2004-2005 for the same reason as the Esperanto conversion mentioned in bug 60677: "[...] when many browsers with really bad Unicode support were still in use" (languages/classes/LanguageEo.php).

By default, the blacklist includes:

  • Netscape 2-4 and IE for Mac, which are unsupported, dead browsers.
  • Google Wireless Transcoder, which doesn't seem to allow editing (the text box and "Save Changes" button are missing) and isn't currently detected either.

Yet Wikimedia's CommonSettings.php adds Lynx, which on many systems now does support UTF-8.

It seems likely that the problem that this setting addresses is no more, and thus the setting should be removed (or at least the EditPage::makeSafe() and EditPage::unmakeSafe() methods added in r10313 / 10392e098349 to address bug 2676).


Version: 1.24rc
Severity: normal
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=2676

Details

Reference
bz65297
bzimport raised the priority of this task from to Low.
bzimport set Reference to bz65297.
bzimport added a subscriber: Unknown Object (MLST).

Change 138840 had a related patch set uploaded by PleaseStand:
Remove $wgBrowserBlackList and associated EditPage methods

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

Change 138840 had a related patch set uploaded (by PleaseStand):
Remove $wgBrowserBlackList and associated EditPage code

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

Krinkle set Security to None.
Krinkle moved this task from Unsorted to Needs removal on the Technical-Debt board.
Krinkle removed a subscriber: wikibugs-l-list.

Change 374422 had a related patch set uploaded (by Legoktm; owner: MaxSem):
[mediawiki/core@master] EditPage: Don't allow clients that mangle unicode to edit

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

Legoktm added a subscriber: Legoktm.

Marking as a 1.30 blocker as I'd like to get this in with that release.

Change 374422 merged by jenkins-bot:
[mediawiki/core@master] EditPage: Don't allow clients that mangle unicode to edit

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

+User-notice

Suggested wording for Tech News: Users who use extremely old browsers (e.g. Netscape 2-4 were released from 1995-1997) that do not support Unicode will no longer be able to edit.

Change 138840 abandoned by Legoktm:
Remove $wgBrowserBlackList and associated EditPage code

Reason:
Alternative solution merged

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

Jdforrester-WMF closed this task as Resolved.Sep 21 2017, 8:57 PM
Jdforrester-WMF assigned this task to MaxSem.

Change 379860 had a related patch set uploaded (by Legoktm; owner: MaxSem):
[mediawiki/core@REL1_30] EditPage: Don't allow clients that mangle unicode to edit

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

Change 379860 merged by jenkins-bot:
[mediawiki/core@REL1_30] EditPage: Don't allow clients that mangle unicode to edit

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

Base awarded a token.Sep 25 2017, 10:46 PM
Base added a subscriber: Base.

Hi. We are in group 1, deployment 3 minutes ago, and I just get a message on FF 55.0.3, in Windows 7 Enterprize, desktop powerful computer. Something about: Looks like your browser does not support unicode, so your edit can't be saved, good bye.
I tried to save again, and this time it worked. Firefox should not be a very old browser, should it?

This could have happened if you opened a page for editing while using an old version and the wiki was upgraded while you were editing.

This could have happened if you opened a page for editing while using an old version and the wiki was upgraded while you were editing.

That's exactly what happened. Thank you.

IKhitron added a comment.EditedSep 27 2017, 8:42 PM

Well, @MaxSem, it happened again, on Android 6.0, a lot of time after the deployment, and after many successful edits.

Change 381124 had a related patch set uploaded (by MaxSem; owner: MaxSem):
[mediawiki/core@master] Add logging for Unicode check failures in EditPage

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

Change 381139 had a related patch set uploaded (by MaxSem; owner: MaxSem):
[mediawiki/core@wmf/1.31.0-wmf.1] Add logging for Unicode check failures in EditPage

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

Change 381139 merged by jenkins-bot:
[mediawiki/core@wmf/1.31.0-wmf.1] Add logging for Unicode check failures in EditPage

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

Change 381146 had a related patch set uploaded (by MaxSem; owner: MaxSem):
[mediawiki/core@master] Revert "EditPage: Don't allow clients that mangle unicode to edit"

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

MaxSem has patched HotCat on Commons to work around this, but it needs to be written so it doesn't screen-scrape anymore. We've had a solid edit API for 10+ years now. There's no excuse anymore to continue screen-scraping. I'm OK delaying this another week if absolutely necessary but I'm hoping most wikis just load HotCat from Commons...

Yep, all HotCat related errors stopped after my fix. There are also some (239 as of now) failures where the check value got genuinely mangled, typically to something like ???????J?i. This happens for various user agents, and while some of them are things like this one, most UAs claim to be from modern browsers, examples: Chrome 57-61, Firefox 53, Opera 44, IE 9, Edge 15.

I don't have any versions so far. I tried to repro this by manually selecting encoding and making an edit but my edit went through.

Change 381146 abandoned by MaxSem:
Revert "EditPage: Don't allow clients that mangle unicode to edit"

Reason:
Nah, were' good:)

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

Change 381124 abandoned by MaxSem:
Add logging for Unicode check failures in EditPage

Reason:
Was used as a cherrypick in prod, did its purpose.

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

This comment was removed by Legoktm.