X-Git-Url: http://git.onelab.eu/?p=plcapi.git;a=blobdiff_plain;f=NEWS;h=5880306c84f332ea72af6351ae340316cf21b36f;hp=fc174fb8e55e9505a5c6904765840a32c6b0943c;hb=19b99735570521d8172f73124ade5997b9dca75d;hpb=ca1f975d1fca1ff738a239081e48541f0f465e79 diff --git a/NEWS b/NEWS index fc174fb..5880306 100644 --- a/NEWS +++ b/NEWS @@ -1,39 +1,93 @@ -XML-RPC for PHP version 4.0.0 - 201X/Y/Z +XML-RPC for PHP version 4.0.0 - 2015/Y/Z This release does away with the past and starts a transition to modern-world php. Code has been heavily refactored, taking care to preserve backwards compatibility as much as possible, but some breackage is to be expected. -PLEASE READ CAREFULLY THE NOTES BELOW to insure a smooth upgrade. +The minimum required php version has been increased to 5.3, even though we strongly urge you to use +more recent versions. -The minimum required php version has been increased to 5.3, -even though we strongly urge you to use more recent versions. +PLEASE READ CAREFULLY THE NOTES BELOW to insure a smooth upgrade. -* new: introduction of namespaces. +* new: introduction of namespaces and full OOP. All php classes have been renamed and moved to separate files. Class autoloading can now be done in accord with the PSR-4 standard. - Backward compatibility is maintained via lib/xmlrpc.inc, lib/xmlrpcs.inc and lib/xmlrpc_wrappers.inc. + All global variables and global functions have been removed. -* improved: all php code is now formatted according to the PSR-2 standard + Backward compatibility is maintained via lib/xmlrpc.inc, lib/xmlrpcs.inc and lib/xmlrpc_wrappers.inc. + For more details, head on to doc/api_changes_v4.md -* improved: this release is now tested using Travis ( https://travis-ci.org/ ). - Tests are executed using all php versions from 5.3 to 7.0 nightly, plus HHVM; code-coverage information - is generated using php 5.6 and uploaded to both Code Coverage and Scrutinizer online services +* changed: the default encoding delivered from the library to your code is now utf8. + It can be changed at anytime setting a value to PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding * improved: no need to call anymore $client->setSSLVerifyHost(2) to silence a curl warning when using https with recent curl builds +* improved: a specific option allows users to decide the version of SSL to use for https calls. + This is useful f.e. for the testing suite, when the server target of calls has no proper ssl certificate, + and the cURL extension has been compiled with GnuTLS (such as on Travis VMs) + +* improved: the function wrap_php_function() now can be used to wrap closures (it is now a method btw) + +* improved: all wrap_something() functions now return a closure by default instead of a function name + +* improved: debug messages are not html-escaped any more when executing from the command line + +* improved: the library is now tested using Travis ( https://travis-ci.org/ ). + Tests are executed using all php versions from 5.3 to 7.0 nightly, plus HHVM; code-coverage information + is generated using php 5.6 and uploaded to both Code Coverage and Scrutinizer online services + * improved: phpunit is now installed via composer, not bundled anymore * improved: when phpunit is used to generate code-coverage data, the code executed server-side is accounted for -* improved: debug messages are not html-escaped any more when executing from the command line +* improved: the test suite has basic checks for the debugger and demo files -* improved: a specific option allow users to decide the version of SSL to use for https calls. - This is useful f.e. for the testing suite, when the server target of calls has no proper ssl certificate, - and the cURL extension has been compiled with GnuTLS (such as Travis) +* improved: more tests in the test suite + +* fixed: the server would not reset the user-set debug messages between subsequent service() calls + +* fixed: the server would not reset previous php error handlers when an exception was thrown by user code and + exception_handling set to 2 + +* fixed: the server would fail to decode a request with ISO-8859-1 payload and character set declaration in the xml + prolog only + +* fixed: the client would fail to decode a response with ISO-8859-1 payload and character set declaration in the xml + prolog only + +* fixed: the function decode_xml() would not decode an xml with character set declaration in the xml prolog + +* fixed: the client can now successfully call methods using ISO-8859-1 or UTF-8 characters in their name + +* fixed: the debugger would fail sending a request with ISO-8859-1 payload (it missed the character set declaration). + It would have a hard time coping with ISO-8859-1 in other fields, such as e.g. the remote method name + +* fixed: the debugger would generate a bad payload via the 'load method synopsis' button for signatures containing NULL + or undefined parameters + +* fixed: the debugger would generate a bad payload via the 'load method synopsis' button for methods with multiple + signatures + +* improved: the debugger is displayed using UTF-8, making it more useful to debug any kind of service + +* improved: echo all debug messages even when there are characters in them which php deems to be in a wrong encoding; + previously those messages would just disappear (this is visible e.g. in the debugger) + +* changed: debug info handling + - at debug level 1, the rebuilt php objects are not dumped to screen (server-side already did that) + - at debug level 1, curl communication info are not dumped to screen + - at debug level 1, the tests echo payloads of failures; at debug level 2 all payloads + +* improved: makefiles have been replaced with a php_based pakefile + +* improved: the source for the manual is stored in asciidoc format, which can be displayed natively by GitHub + with nice html formatting. Also the HTML version generated by hand and bundled in tarballs is much nicer + to look at than previous versions + +* improved: all php code is now formatted according to the PSR-2 standard XML-RPC for PHP version 3.0.0 - 2014/6/15 @@ -41,7 +95,8 @@ XML-RPC for PHP version 3.0.0 - 2014/6/15 This release corrects all bugs that have been reported and successfully reproduced since version 3.0.0 beta. -The requirements have increased to php 5.1.0 - which is still way older than what you should be running for any serious purpose, really. +The requirements have increased to php 5.1.0 - which is still way older than what you should be running for any serious +purpose, really. It also is the first release to be installable via composer. @@ -58,15 +113,19 @@ The "beta" tag is meant to indicate the fact that the refactoring has been more than in precedent releases and that more changes are likely to be introduced with time - the library is still considered to be production quality. -* improved: removed all usage of php functions deprecated in php 5.3, usage of assign-by-ref when creating new objects etc... +* improved: removed all usage of php functions deprecated in php 5.3, usage of assign-by-ref when creating new objects + etc... * improved: add support for the tag used by the apache library, both in input and output * improved: add support for dateTime objects in both in php_xmlrpc_encode and as parameter for constructor of xmlrpcval * improved: add support for timestamps as parameter for constructor of xmlrpcval * improved: add option 'dates_as_objects' to php_xmlrpc_decode to return dateTime objects for xmlrpc datetimes -* improved: add new method SetCurlOptions to xmrlpc_client to allow extra flexibility in tweaking http config, such as explicitly binding to an ip address +* improved: add new method SetCurlOptions to xmrlpc_client to allow extra flexibility in tweaking http config, such as + explicitly binding to an ip address * improved: add new method SetUserAgent to xmrlpc_client to to allow having different user-agent http headers -* improved: add a new member variable in server class to allow fine-tuning of the encoding of returned values when the server is in 'phpvals' mode -* improved: allow servers in 'xmlrpcvals' mode to also register plain php functions by defining them in the dispatch map with an added option +* improved: add a new member variable in server class to allow fine-tuning of the encoding of returned values when the + server is in 'phpvals' mode +* improved: allow servers in 'xmlrpcvals' mode to also register plain php functions by defining them in the dispatch map + with an added option * improved: catch exceptions thrown during execution of php functions exposed as methods by the server * fixed: bad encoding if same object is encoded twice using php_xmlrpc_encode @@ -81,13 +140,16 @@ support that ancient, broken and insecure platform. * fixed: php warning when receiving 'false' in a bool value * fixed: improve robustness of the debugger when parsing weird results from non-compliant servers -* fixed: format floating point values using the correct decimal separator even when php locale is set to one that uses comma -* fixed: use feof() to test if socket connections are to be closed instead of the number of bytes read (rare bug when communicating with some servers) +* fixed: format floating point values using the correct decimal separator even when php locale is set to one that uses + comma +* fixed: use feof() to test if socket connections are to be closed instead of the number of bytes read (rare bug when + communicating with some servers) * fixed: be more tolerant in detection of charset in http headers * fixed: fix encoding of UTF8 chars outside of the BMP plane * fixed: fix detection of zlib.output_compression * improved: allow the add_to_map server method to add docs for single params too -* improved: added the possibility to wrap for exposure as xmlrpc methods plain php class methods, object methods and even whole classes +* improved: added the possibility to wrap for exposure as xmlrpc methods plain php class methods, object methods and + even whole classes XML-RPC for PHP version 2.2.1 - 2008/03/06 @@ -382,3 +444,160 @@ http://cvs.sourceforge.net/viewcvs.py/phpxmlrpc/xmlrpc/ChangeLog?view=markup Please report bugs to the XML-RPC PHP mailing list or to the sourceforge project pages at http://sourceforge.net/projects/phpxmlrpc/ + + +XML-RPC for PHP version 1.0 + +I'm pleased to announce XML-RPC for PHP version 1.0 (final). It's taken +two years to get to the 1.0 point, but here we are, finally. The major change +is re-licensing with the BSD open source license, a move from the custom +license previously used. + +After this release I expect to move the project to SourceForge and find +another primary maintainer for the code. More details will follow to the +mailing list. + +It can be downloaded from http://xmlrpc.usefulinc.com/php.html + +Comprehensive documentation is available in the distribution, but you +can also browse it at http://xmlrpc.usefulinc.com/doc/ + +Bugfixes in this release include: + + * Small fixes and tidying up. + +New features include: + + * experimental support for SSL via the curl extensions to PHP. Needs + PHP 4.0.2 or greater, but not PHP 4.0.6 which has broken SSL support. + +The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt + +Please report bugs to the XML-RPC PHP mailing list, of which more details are +available at http://xmlrpc.usefulinc.com/list.html, or to +. + + +XML-RPC for PHP version 1.0 beta 9 + +I'm pleased to announce XML-RPC for PHP version 1.0 beta 9. This is +is largely a bugfix release. + +It can be downloaded from http://xmlrpc.usefulinc.com/php.html + +Comprehensive documentation is available in the distribution, but you +can also browse it at http://xmlrpc.usefulinc.com/doc/ + +Bugfixes in this release include: + + * Fixed string handling bug where characters between a + and tag were not ignored. + + * Added in support for PHP's native boolean type. + +New features include: + + * new getval() method (experimental only) which has support for + recreating nested arrays. + * fledgling unit test suite + * server.php has support for basic interop test suite + +The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt + +Please test this as hard as possible and report bugs to the XML-RPC PHP +mailing list, of which more details are available at +http://xmlrpc.usefulinc.com/list.html, or to . + + +XML-RPC for PHP version 1.0 beta 8 + +I'm pleased to announce XML-RPC for PHP version 1.0 beta 8. + +This release fixes several bugs and adds a couple of new helper +functions. The most critical change in this release is that you can no +longer print debug info in comments inside a server method -- you must +now use the new xmlrpc_debugmsg() function. + +It can be downloaded from http://xmlrpc.usefulinc.com/php.html + +Comprehensive documentation is available in the distribution, but you +can also browse it at http://xmlrpc.usefulinc.com/doc/ + +Bugfixes in this release include: + + * fixed whitespace handling in values + * correct sending of Content-length from the server + +New features include: + + * xmlrpc_debugmsg() method allows sending of debug info in comments in + the return payload from a server + + * xmlrpc_encode() and xmlrpc_decode() translate between xmlrpcval + objects and PHP language arrays. They aren't suitable for all + datatypes, but can speed up coding in simple scenarios. Thanks to Dan + Libby for these. + +The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt + +Please test this as hard as possible and report bugs to the XML-RPC PHP +mailing list, of which more details are available at +http://xmlrpc.usefulinc.com/list.html, or to . + + +XML-RPC for PHP version 1.0 beta 7 + +I'm pleased to announce XML-RPC for PHP version 1.0 beta 7. This is +fixes some critical bugs that crept in. If it shows itself to be stable +then it'll become the 1.0 release. + +It can be downloaded from http://xmlrpc.usefulinc.com/php.html + +Comprehensive documentation is available in the distribution, but you +can also browse it at http://xmlrpc.usefulinc.com/doc/ + +Bugfixes in this release include: + + * Passing of booleans should now work as expected + * Dollar signs and backslashes in strings should pass OK + * addScalar() now works properly to append to array vals + +New features include: + + * Added support for HTTP Basic authorization through the + xmlrpc_client::setCredentials method. + + * Added test script and method for verifying correct passing of + booleans + +The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt + +Please test this as hard as possible and report bugs to the XML-RPC PHP +mailing list, of which more details are available at +http://xmlrpc.usefulinc.com/list.html, or to . + + +XML-RPC for PHP version 1.0 beta 6 + +I'm pleased to announce XML-RPC for PHP version 1.0 beta 6. This is the +final beta before the 1.0 release. + +It can be downloaded from http://xmlrpc.usefulinc.com/php.html + +Comprehensive documentation is available in the distribution, but you +can also browse it at http://xmlrpc.usefulinc.com/doc/ + +New features in this release include: + + * Perl and Python test programs for the demo server + * Proper fault generation on a non-"200 OK" response from a remote host + * Bugfixed base64 decoding + * ISO8601 helper routines for translation to and from UNIX timestamps + * reorganization of code to allow eventual integration of alternative + transports + +The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt + +Please test this as hard as possible and report bugs to the XML-RPC PHP +mailing list, of which more details are available at +http://xmlrpc.usefulinc.com/list.html, or to .