Remove legacy ajax interface
Closed, ResolvedPublic

Description

MediaWiki has an old system for responding to AJAX requests that predates the action API. This system is implemented in the AjaxDispatcher class and controlled by the $wgAjaxExportList setting.

$wgAjaxExportList has been deprecated since 1.27. It was kept around to cover use cases that didn't fit well within the framework of the action API. However, these use cases can now be covered nicely with the new REST API, so the old AJAX interface should go away.

$wgAjaxExportList got removed for MediaWiki 1.38 in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/741941/

Next steps:

Related Objects

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 1:01 AM
bzimport set Reference to bz40787.
bzimport added a subscriber: Unknown Object (MLST).

Change 228768 had a related patch set uploaded (by Ori.livneh):
Remove Sajax

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

Phabricator_maintenance renamed this task from Deprecate legacy ajax interface (tracking) to Deprecate legacy ajax interface.Aug 14 2016, 12:15 AM
Krinkle renamed this task from Deprecate legacy ajax interface to Remove legacy ajax interface.Jan 10 2019, 7:03 PM
Krinkle updated the task description. (Show Details)

Change 575400 had a related patch set uploaded (by Krinkle; owner: Aaron Schulz):
[mediawiki/core@master] Remove various unused AjaxResponse methods

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

Change 575400 merged by jenkins-bot:
[mediawiki/core@master] Remove various unused AjaxResponse methods

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

Change 576592 had a related patch set uploaded (by DannyS712; owner: DannyS712):
[mediawiki/core@master] Remove more unused ajax response methods

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

Change 576592 merged by jenkins-bot:
[mediawiki/core@master] Remove more unused ajax response methods

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

daniel subscribed.

I just stumbled upon the fact that we still have this API-before-APIs in core. Let's please just kill it. This task has been open since the before-time (it was imported from bugzilla in 2014).

A handful of extensions still use it, porting them to using the action API or REST api should be simple enough. I suspect that most of them are unmaintained anyway.

daniel updated the task description. (Show Details)
This comment was removed by daniel.

Collection and MediaWiki-extensions-FlaggedRevs use this interface and are extensions used on WMF.

CreateAPage (which, I notice, doesn't even have a dedicated #hashtag here in Phab; I should fix that...) is maintained by me and also uses the AJAX interface.

Tim Starling did some work on the Wigo3 extension not that long time ago, so that one's not unmaintained either.

Change 752265 had a related patch set uploaded (by Jack Phoenix; author: Jack Phoenix):

[mediawiki/extensions/CreateAPage@master] Remove legacy AJAX interface ($wgAjaxExportList) usage and convert the AJAX endpoints to regular api.php modules

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

Change 752265 merged by jenkins-bot:

[mediawiki/extensions/CreateAPage@master] Remove legacy AJAX interface ($wgAjaxExportList) usage and convert the AJAX endpoints to regular api.php modules

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

Apart from 3rd party extensions (see tickets I've added in the task desc here) to update their code, is there anything actionable left in this task itself?

daniel claimed this task.

Apart from 3rd party extensions (see tickets I've added in the task desc here) to update their code, is there anything actionable left in this task itself?

Yep, seems like this is done.