Page MenuHomePhabricator

Move and merge remaining error cases into the shared Validator
Closed, ResolvedPublic

Description

Since the work in T387002: Try to reduce duplicate code in reference validation both parsers share the same validator for a lot of the <ref> as well as <references> tag validation. However, a few possible errors have been left untouched.

Possible TODOs:

  • Reduce the list of currently excluded error cases at the beginning of References::extractRefFromNode() further.
  • Identify and classify the error cases that are still outside of the validator. Try to move these into the validator as well, if it makes sense.

Benefits:

  • Code duplication is reduced.
  • Parsoid will behave more closely to the legacy parser.
  • Additional test cases will help us making the two parsers behave the same.

Event Timeline

Change #1140209 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Move "list-defined ref must be named" error into shared validator

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

Change #1140210 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Add the error "cannot use details in <references>" in Parsoid

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

Change #1140211 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Start outputting "missing parent" error in Parsoid

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

Change #1140220 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] [WIP] Unify cite_error_references_missing_key in Parsoid

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

Change #1140209 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Move "list-defined ref must be named" error into shared validator

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

Change #1140210 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Add the error "cannot use details in <references>" in Parsoid

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

Change #1140211 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Start outputting "missing parent" error in Parsoid

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

Change #1140690 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Fix wrong "missing parent" error in some sub-ref scenarios

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

Change #1140694 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Move "empty body in <references>" error check to the Validator

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

Change #1140698 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Move "missing name" error check to the shared validator

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

Change #1140708 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] [WIP] Split shared validator into stages

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

Change #1140690 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Fix wrong "missing parent" error in some sub-ref scenarios

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

Change #1141885 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Drop duplicate PHPUnit test case for the shared validator

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

Change #1140694 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Move "empty body in <references>" error check to the Validator

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

Change #1142578 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Always use normalized arguments from the shared validator

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

Change #1141885 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Drop duplicate PHPUnit test case for the shared validator

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

Change #1140698 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Move "missing name" error check to the shared validator

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

Change #1142578 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Always use normalized arguments from the shared validator

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

Change #1140708 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Split shared validator into stages

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

Change #1140220 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Fix cite_error_references_missing_key differences in Parsoid

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