X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=NEWS;h=5ff12fc1c49c1df236542fc32e1c875de254ec2e;hb=14229ea8eb17161e2504d32f3e474d4dbcc448a8;hp=03222c8660ba278802690d35e43448df647cb28c;hpb=8cacd651433f4b108a0b81e9ab861fb745fcd672;p=plcapi.git diff --git a/NEWS b/NEWS index 03222c8..5ff12fc 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,62 @@ +XML-RPC for PHP version 4.6.0 - 2021/12/9 + +* fixed: compatibility with php 8.1 + +* improved: when encoding utf8 text into us-ascii xml, use character entity references for characters number 0-31 + (ascii non printable characters), as we were already doing when encoding iso-8859-1 text into us-ascii xml + +* new: method `Server::getDispatchMap()`. Useful for non-child classes which want to f.e. introspect the server + +* new: increase flexibility in class composition by adopting a Dependency Injection (...ish) pattern: + it is now possible to swap out the Logger, XMLParser and Charset classes with similar ones of your own making. + Example code: + // 1. create an instance of a custom character encoder + // $myCharsetEncoder = ... + // 2. then use it while serializing a Request: + Request::setCharsetEncoder($myCharsetEncoder); + $request->serialize($funkyCharset); + +* new: method `XMLParser::parse()` acquired a 4th argument + +* new: method `Wrapper::wrapPhpClass` allows to customize the names of the phpxmlrpc methods by stripping the original + class name and accompanying namespace and replace it with a user-defined prefix, via option `replace_class_name` + +* new: `Response` constructor gained a 4th argument + +* deprecated: properties `Response::hdrs`, `Response::_cookies`, `Response::raw_data`. Use `Response::httpResponse()` instead. + That method returns an array which also holds the http response's status code - useful in case of http errors. + +* deprecated: method `Request::createPayload`. Use `Request::serialize` instead + +* deprecated: property `Request::httpResponse` + +* improved: `Http::parseResponseHeaders` now throws a more specific exception in case of http errors + +* improved: Continuous Integration is now running on Github Actions instead of Travis + + +XML-RPC for PHP version 4.5.2 - 2021/1/11 + +* improved: better phpdocs in the the php code generated by the Wrapper class + +* improved: debugger favicon and page title when used from the phpjsonrpc library + +* fixed: allow `Encoder::decode` to properly support different target character sets for polyfill-xmlrpc decode functions + +* improved: allow usage of 'epivals' for the 'parameters_type' member of methods definitions in the Server dispatch map + + +XML-RPC for PHP version 4.5.1 - 2021/1/3 + +* improved: made it easier to subclass the Helper\Charset class by allowing `instance` to use late static binding + +* fixed: reinstated access to xmlrpc_server->dmap (for users of the v3 API) + +* fixed: method `xmlrpc_encode_entitites` (for users of the v3 API) + +* improved: split the code of the demo server in multiple files, describing better the purpose of each + + XML-RPC for PHP version 4.5.0 - 2020/12/31 * new: it is now possible to control the precision used when serializing DOUBLE values via usage of @@ -7,16 +66,27 @@ XML-RPC for PHP version 4.5.0 - 2020/12/31 * improvements to to the Helper\Date class in rejecting invalid date strings -* improvements to the Wrapper class in identifying the required arguments types from phpdoc: support 'array[]', +* improvements to the Wrapper class in identifying required arguments types from source code phpdoc: support 'array[]', 'DateTime' and 'DateTimeImmutable' -* improvements to the support of the XMLRPC extension emulation (as provided by the phpxmlrpc/polyfill-xmlrpc package) +* improvements to the support of the XMLRPC extension emulation (now provided by the phpxmlrpc/polyfill-xmlrpc package) + +* minor improvements to the Charset helper: it now loads character set conversion tables on demand, leading to + slightly lower memory usage and faster execution time when using UTF8 everywhere. + NB: take care if you have subclassed it! -* improvements in the inline phpdoc: tagged many methods and class member as for internal usage only +* new method: `Server::isSyscall` - mostly of use to Server subclasses and friend classes such as introspectors + +* internal method `XMLParser::xmlrpc_ee` now accepts 3 states for its 3rd parameter instead of a bool + +* improvements in the inline phpdoc: tagged many methods and class member as reserved for internal usage only * minor improvements in the debugger to allow easier integration of phpxmlrpc/jsonrpc and friends -* removed obsolete files from the 'extras' directory and updated the demo perl and python files +* reorganized the test suite to be more manageable + +* removed obsolete files from the 'extras' folder; updated and moved to the 'demo' folders the perl and python + client scripts; moved benchmark.php and verify_compat.php to the 'extras' folder XML-RPC for PHP version 4.4.3 - 2020/12/17