Page MenuHomePhabricator

Failing unit tests in extensions caused by I562e437e
Closed, ResolvedPublic

Description

Gerrit change 186332 has caused unit tests to fail in any extension that happens to have a section edit link in its unit tests. A quick grep turns up
LabeledSectionTransclusion, CommonsMetadata, and Scribunto as likely victims.

Event Timeline

Anomie created this task.Feb 19 2015, 10:44 PM
Anomie assigned this task to polybuildr.
Anomie raised the priority of this task from to Unbreak Now!.
Anomie updated the task description. (Show Details)
Anomie added a project: MediaWiki-Core-Testing.
Anomie added subscribers: Anomie, polybuildr, matmarex.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 19 2015, 10:44 PM

@Anomie: That patch changed the output of the parser and added an anchor tag in all headings in the content. The tests for the extensions will need to be updated. Should I be cloning all extensions and checking them for tests involving headings? Or is there a list of commonly used extensions that I should be checking first?

hashar added a subscriber: hashar.Feb 20 2015, 10:12 AM

The extensions running parser tests will start failing. Hopefully maintainers will amend their parser tests to match the new mediawiki/core contract. You can probably announce it on wikitech-l since people will wonder why their unrelated patch started failing.

Should I be cloning all extensions and checking them for tests involving headings?

Well, LabeledSectionTransclusion, CommonsMetadata and Scribunto to start with, as mentioned above?

Or is there a list of commonly used extensions that I should be checking first?

Not sure what "commonly" is, but what's on WMF servers is listed here and here.

The extensions running parser tests will start failing. Hopefully maintainers will amend their parser tests to match the new mediawiki/core contract. You can probably announce it on wikitech-l since people will wonder why their unrelated patch started failing.

It's good for the person breaking things to make the fix when possible, instead of making more work for others.

Why are these extensions' tests not ran as a part of the mediawiki-extensions-hhvm/mediawiki-extensions-zend jobs? These flagged an issue with MobileFrontend that I fixed before it became a problem (https://gerrit.wikimedia.org/r/#/c/191682/). That would be a good long-term solution to these problems.

Change 191880 had a related patch set uploaded (by Polybuildr):
Update parser tests to account for section anchors

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

Patch-For-Review

Why are these extensions' tests not ran as a part of the mediawiki-extensions-hhvm/mediawiki-extensions-zend jobs? These flagged an issue with MobileFrontend that I fixed before it became a problem (https://gerrit.wikimedia.org/r/#/c/191682/). That would be a good long-term solution to these problems.

The job is still rather experimental. I am looking for a way to ease the addition/removal of extensions participating in those jobs.

Vivek Ghaisas has poke wikitech-l about the parser tests failure: https://lists.wikimedia.org/pipermail/wikitech-l/2015-February/080909.html

We can probably close this bug, or fill sub tasks for each mediawiki extensions having parser tests and verify whether they still pass / amend them.

@hashar, @matmarex has made a request for me to be added to the "recheck" whitelist so that I can run tests on all the extensions. It would be a great help if you could +2 that.

Change 192007 had a related patch set uploaded (by Gergő Tisza):
Check CommonsMetadata tests after I562e437e

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

Patch-For-Review

Tgr added a subscriber: Tgr.Feb 20 2015, 10:23 PM

CommonsMetadata seems fine (which is what I would expect, it has information extraction tests rather than parser tests and you need fairly specific changes to break those).

Change 192007 abandoned by Gergő Tisza:
Check CommonsMetadata tests after I562e437e

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

out of topic


@hashar, @matmarex has made a request for me to be added to the "recheck" whitelist so that I can run tests on all the extensions. It would be a great help if you could +2 that.

Has been granted with https://gerrit.wikimedia.org/r/#/c/191885/ :-}


Change 192065 had a related patch set uploaded (by Polybuildr):
Update Scribunto tests after I562e437e

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

Patch-For-Review

Change 191880 merged by jenkins-bot:
Update parser tests to account for section anchors

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

Change 192065 merged by jenkins-bot:
Update Scribunto tests after I562e437e

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

matmarex closed this task as Resolved.Feb 25 2015, 1:57 AM

Should be fixed?

Anomie reopened this task as Open.Mar 16 2015, 8:07 PM

Gerrit change 193795 broke tests again.

Change 197125 had a related patch set uploaded (by Anomie):
Fix parser tests, again

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

Change 197125 merged by jenkins-bot:
Fix parser tests, again

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

Change 197207 had a related patch set uploaded (by Bartosz Dziewoński):
Update parser tests to account for section anchors, again

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

Sorry, I am a moron, I meant to do this and just totally forgot.

Change 197207 merged by jenkins-bot:
Update parser tests to account for section anchors, again

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

matmarex closed this task as Resolved.Mar 16 2015, 9:16 PM
matmarex removed a project: Patch-For-Review.
matmarex set Security to None.
Anomie reopened this task as Open.Mar 18 2015, 2:44 PM

Ok, the first time someone broke extension parser tests is an understandable oversight. But for the second people should really have known better and should have done the extension updates themselves. WHY DID IT HAPPEN A THIRD TIME???

Change 197540 had a related patch set uploaded (by Anomie):
Fix parser tests, YET AGAIN

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

Change 197540 merged by jenkins-bot:
Fix parser tests, YET AGAIN

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

matmarex closed this task as Resolved.Mar 21 2015, 5:20 PM

Ok, the first time someone broke extension parser tests is an understandable oversight. But for the second people should really have known better and should have done the extension updates themselves. WHY DID IT HAPPEN A THIRD TIME???

Perhaps as a passive-aggressive way to indicate that people really hate how parser tests work?