Page MenuHomePhabricator

Getting diffs from API is broken
Closed, ResolvedPublic

Description

Author: Amalthea.wikimedia

Description:
Since yesterday (at enWP) the API doesn't return diffs anymore.
A query like

https://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvdiffto=prev&revids=403864100

Used to return a "diff" element that contained the page diff of the requested revisions.
That element is now missing, instead the "rev" tag now has a "textmissing" attribute.

I notice recent changes to ApiQueryRevisions.php that added this attribute, I assume it broke diff handling somehow.


Version: 1.21.x
Severity: major

Details

Reference
bz43820

Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 1:33 AM
bzimport set Reference to bz43820.

Thanks for reporting this and tracking it down a bit already!

CC'ing Daniel who wrote the offending patch that likely caused this regression.

(In reply to comment #0)

Since yesterday (at enWP) the API doesn't return diffs anymore.

Confirming.

Yesterday, version 1.21wmf7 was deployed on en.wp according to https://www.mediawiki.org/wiki/MediaWiki_1.21/Roadmap

One still gets a <diff> on 1.21wmf6 installations, e.g. https://de.wikipedia.org/w/api.php?action=query&prop=revisions&rvdiffto=prev&revids=112679133

Looking at latest changes for the mentioned file in https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/core.git;a=history;f=includes/api/ApiQueryRevisions.php;hb=HEAD , I see that
https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/core.git;a=blobdiff;f=includes/api/ApiQueryRevisions.php;h=cca7eb2c7001f6b7fac2b555c4d08f2df37eb064;hp=66ff3f09fb8cdc8c41a23682921248ec89da9403;hb=e0ca64fb6c17022c14a40cd9f075f6ddb4b2934b;hpb=963ddaede51d59c1bbbdc25b6d14dbd8501b7d40
introduced the ""textmissing"" attribute.

CC'ing Daniel who wrote that patch.

Adding "code-update-regression" keyword to the bug report and setting version field to 1.21-git as this is about Wikipedia.

Change merged. And backported to wmf7, too.