Page MenuHomePhabricator

Many parts of compat will break when used on Wikimedia servers on July 1, 2015
Closed, ResolvedPublic

Description

Many parts of compat will break when the default continuation mode for action=query changes. This occurs on July 1 - see that link for a list of high volume bots that will probably break.

'rawcontinue' only appears once in compat codebase.

"'action': 'query'" appears 53 times.
'query-continue' appears 57 times.

Event Timeline

jayvdb raised the priority of this task from to Unbreak Now!.
jayvdb updated the task description. (Show Details)
jayvdb added a project: Pywikibot-compat.
jayvdb subscribed.
Restricted Application added subscribers: Aklapper, Unknown Object (MLST). · View Herald TranscriptJun 5 2015, 3:45 PM

(Probably not as note-worthy for third party sysadmins immediately, but when sysadmins upgrade to the next release they will hit this problem if they use compat to maintain their wiki).

Note the priority of 'Unbreak Now!' is a reflection of the priority associated with the high volume bots which will break if they are not migrated to Pywikibot before July 1.

Those bot operators may instead patch their compat bots to work around the problem, and patches may be submitted and merged, but dont expect anyone to fix the code for you magically, as most pywikibot developers have migrated long ago and are actively helping T101214: Decommission compat because it is so messy and we're running out of bandaids, sticky tape and bubble gum.

The well accepted fix is: migrate your bot to 'core', possibly using the compat2core script but it isnt perfect. If you need help, come on IRC before July 1 and we'll rewrite your script for you if necessary. Or create a Phab subtask if you have a compat script running in production that is 'mission critical' and you need help migrating it to core before the deadline.

This comment has been deleted.

rawcontinue is already fixt for allpages method in T74667

Change 219198 had a related patch set uploaded (by Xqt):
[bugfix] Provide 'rawcontinue' api parameter

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

Change 219198 merged by jenkins-bot:
[bugfix] Provide 'rawcontinue' api parameter

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

Xqt claimed this task.
jayvdb removed a project: Patch-For-Review.
jayvdb set Security to None.

compat is not fixed. See comment 0.

@jayvdb: I cannot follow. Could you explain?

@Xqt , gah, my apologies, maybe your fix was sufficient.
After an hour of digging around with grep, it does appear that all the hardcoded API URL fetches are only to action=query&meta=<foo> (which probably will not break on July 1) , and/or unimportant scripts. Anyway, I wouldnt want to say this is 100% fixed , but if you're confident please reclose it.

query.py adds an additional parameter "rawcontinue" if that was missing. That is all what we to do here.

Is any further action planned here, as July 1st is tomorrow? What's the status?

See my comment above. It is recommended to move to the core release but compat will not break tomorrow with the commit above.

Change 222254 had a related patch set uploaded (by John Vandenberg):
Add 'rawcontinue' for query action only

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

Change 222254 merged by jenkins-bot:
Add 'rawcontinue' for query action only

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

But doesn't the main issue still stand that there are basically no compat developers anymore? So the next time a breaking change is coming around the same happens again.

It is still strictly recommended to move to core.