Details
-
Type:
Improvement
-
Status: Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: 3.3.1
-
Fix Version/s: None
-
Component/s: Libraries, MNet, Web Services
-
Labels:
-
Affected Branches:MOODLE_33_STABLE
Description
Currently Moodle relies on the XML-RPC extension to implement the XML-RPC related features. As the official docs states:
This extension is EXPERIMENTAL. The behaviour of this extension including the names of its functions and any other documentation surrounding this extension may change without notice in a future release of PHP. This extension should be used at your own risk.
In MDLSITE-4726 and MDL-57775 we ran into a weird behaviour of the extension when it comes to encoding / decoding the non-latin payload and it was pretty annoying to not be able to rely on the functions documentation.
We have never been really happy about the XML-RPC status and it has been discussed in the past with the MNet developers that ideally we should replace it with a standalone library written in pure PHP.
In MDL-57775, Cameron agreed:
+1 for replacing the extension. There are even discussions on the PHP mailing list about moving it to PECL - so replacing it is probably in our best interests
Let us replace all the functions provided by the XML-RPC extension.