doc and lib version tag
[plcapi.git] / NEWS
1 XML-RPC for PHP version 4.3.0 - 2017/11/6
2
3 * fixed: compatibility with Basic/Digest/NTLM auth when using client in cURL mode (issue #55)
4
5 * improved: added unit tests for Basic and Digest http auth. Also improved tests suite
6
7 * new: allow to force usage of curl for http &.0 calls, as well as plain socket for https calls, via the method
8     `Client::setUseCurl()`
9
10
11 XML-RPC for PHP version 4.2.2 - 2017/10/15
12
13 * fixed: compatibility with Lighttpd target servers when using client in cURL mode and request body size > 1024 bytes (issue #56)
14
15
16 XML-RPC for PHP version 4.2.1 - 2017/9/3
17
18 * fixed: compatibility with php 7.2 (issue #55)
19
20
21 XML-RPC for PHP version 4.2.0 - 2017/6/30
22
23 * improved: allow also DateTimeImmutable objects to be detected as a date when encoding
24
25
26 XML-RPC for PHP version 4.1.1 - 2016/10/1
27
28 * fixed: error in server class: undefined function php_xmlrpc_encode (only triggered when not using the compatibility
29     shim with old versions)
30
31
32 XML-RPC for PHP version 4.1.0 - 2016/6/26
33
34 * improved: Added support for receiving <I8> and <EX:I8> integers, sending <I8>
35
36     If php is compiled in 32 bit mode, and an i8 int is received from a 3rd party, and error will be emitted.
37     Integers sent from the library to 3rd parties can be encoded using the i8 tag, but default to using 'int' by default;
38     the developer will have to create values as i8 explicitly if needed.
39     The library does *not* check if an outgoing integer is too big to fit in 4 bytes and convert it to an i8 automatically.
40
41
42 XML-RPC for PHP version 4.0.1 - 2016/3/27
43
44 * improved: all of the API documentation has been moved out of the manual and into the source code phpdoc comments
45
46 * fixed: when the internal character set is set to UTF-8 and the client sends requests (or the server responses), too
47   many characters were encoded as numeric entities, whereas some, like åäö, needed not not be
48
49 * fixed: the 'valtyp' property of Response was not present in all cases; the ValType property had been added by error
50   and has been removed
51
52
53 XML-RPC for PHP version 4.0.0 - 2016/1/20
54
55 This release does away with the past and starts a transition to modern-world php.
56
57 Code has been heavily refactored, taking care to preserve backwards compatibility as much as possible,
58 but some breackage is to be expected.
59
60 The minimum required php version has been increased to 5.3, even though we strongly urge you to use
61 more recent versions.
62
63 PLEASE READ CAREFULLY THE NOTES BELOW to insure a smooth upgrade.
64
65 * new: introduction of namespaces and full OOP.
66
67   All php classes have been renamed and moved to separate files.
68   Class autoloading can now be done in accord with the PSR-4 standard.
69   All global variables and global functions have been removed.
70   Iterating over xmlrpc value objects is now easier thank to support for ArrayAccess and Traversable interfaces.
71
72   Backward compatibility is maintained via lib/xmlrpc.inc, lib/xmlrpcs.inc and lib/xmlrpc_wrappers.inc.
73   For more details, head on to doc/api_changes_v4.md
74
75 * changed: the default character encoding delivered from the library to your code is now utf8.
76   It can be changed at any time setting a value to PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding
77
78 * improved: the library now accepts requests/responses sent using other character sets than UTF-8/ISO-8859-1/ASCII.
79   This only works when the mbstring php extension is enabled.
80
81 * improved: no need to call anymore $client->setSSLVerifyHost(2) to silence a curl warning when using https
82   with recent curl builds
83
84 * improved: the xmlrpcval class now supports the interfaces Countable and IteratorAggregate
85
86 * improved: a specific option allows users to decide the version of SSL to use for https calls.
87   This is useful f.e. for the testing suite, when the server target of calls has no proper ssl certificate,
88   and the cURL extension has been compiled with GnuTLS (such as on Travis VMs)
89
90 * improved: the function wrap_php_function() now can be used to wrap closures (it is now a method btw)
91
92 * improved: all wrap_something() functions now return a closure by default instead of a function name
93
94 * improved: debug messages are not html-escaped any more when executing from the command line
95
96 * improved: the library is now tested using Travis ( https://travis-ci.org/ ).
97   Tests are executed using all php versions from 5.3 to 7.2; code-coverage information
98   is generated using php 5.6 and uploaded to both Code Coverage and Scrutinizer online services
99
100 * improved: phpunit is now installed via composer, not bundled anymore
101
102 * improved: when phpunit is used to generate code-coverage data, the code executed server-side is accounted for
103
104 * improved: the test suite has basic checks for the debugger and demo files
105
106 * improved: more tests in the test suite
107
108 * fixed: the server would not reset the user-set debug messages between subsequent service() calls
109
110 * fixed: the server would not reset previous php error handlers when an exception was thrown by user code and
111   exception_handling set to 2
112
113 * fixed: the server would fail to decode a request with ISO-8859-1 payload and character set declaration in the xml
114   prolog only
115
116 * fixed: the client would fail to decode a response with ISO-8859-1 payload and character set declaration in the xml
117   prolog only
118
119 * fixed: the function decode_xml() would not decode an xml with character set declaration in the xml prolog
120
121 * fixed: the client can now successfully call methods using ISO-8859-1 or UTF-8 characters in their name
122
123 * fixed: the debugger would fail sending a request with ISO-8859-1 payload (it missed the character set declaration).
124   It would have a hard time coping with ISO-8859-1 in other fields, such as e.g. the remote method name
125
126 * fixed: the debugger would generate a bad payload via the 'load method synopsis' button for signatures containing NULL
127   or undefined parameters
128
129 * fixed: the debugger would generate a bad payload via the 'load method synopsis' button for methods with multiple
130   signatures
131
132 * improved: the debugger is displayed using UTF-8, making it more useful to debug any kind of service
133
134 * improved: echo all debug messages even when there are characters in them which php deems to be in a wrong encoding;
135   previously those messages would just disappear (this is visible e.g. in the debugger)
136
137 * changed: debug info handling
138     - at debug level 1, the rebuilt php objects are not dumped to screen (server-side already did that)
139     - at debug level 1, curl communication info are not dumped to screen
140     - at debug level 1, the tests echo payloads of failures; at debug level 2 all payloads
141
142 * improved: makefiles have been replaced with a php_based pakefile
143
144 * improved: the source for the manual is stored in asciidoc format, which can be displayed natively by GitHub
145   with nice html formatting. Also the HTML version generated by hand and bundled in tarballs is much nicer
146   to look at than previous versions
147
148 * improved: all php code is now formatted according to the PSR-2 standard
149
150
151 XML-RPC for PHP version 3.0.0 - 2014/6/15
152
153 This release corrects all bugs that have been reported and successfully reproduced since
154 version 3.0.0 beta.
155
156 The requirements have increased to php 5.1.0 - which is still way older than what you should be running for any serious
157 purpose, really.
158
159 It also is the first release to be installable via composer.
160
161 See the Changelog file or the pdf docs for a complete list of changes.
162
163
164 XML-RPC for PHP version 3.0.0 beta - 2009/09/05
165
166 This is the first release of the library to only support PHP 5.
167 Some legacy code has been removed, and support for features such as exceptions
168 and dateTime objects introduced.
169
170 The "beta" tag is meant to indicate the fact that the refactoring has been more widespread
171 than in precedent releases and that more changes are likely to be introduced with time -
172 the library is still considered to be production quality.
173
174 * improved: removed all usage of php functions deprecated in php 5.3, usage of assign-by-ref when creating new objects
175   etc...
176 * improved: add support for the <ex:nil/> tag used by the apache library, both in input and output
177 * improved: add support for dateTime objects in both in php_xmlrpc_encode and as parameter for constructor of xmlrpcval
178 * improved: add support for timestamps as parameter for constructor of xmlrpcval
179 * improved: add option 'dates_as_objects' to php_xmlrpc_decode to return dateTime objects for xmlrpc datetimes
180 * improved: add new method SetCurlOptions to xmrlpc_client to allow extra flexibility in tweaking http config, such as
181   explicitly binding to an ip address
182 * improved: add new method SetUserAgent to xmrlpc_client to to allow having different user-agent http headers
183 * improved: add a new member variable in server class to allow fine-tuning of the encoding of returned values when the
184   server is in 'phpvals' mode
185 * improved: allow servers in 'xmlrpcvals' mode to also register plain php functions by defining them in the dispatch map
186   with an added option
187 * improved: catch exceptions thrown during execution of php functions exposed as methods by the server
188 * fixed: bad encoding if same object is encoded twice using php_xmlrpc_encode
189
190
191 XML-RPC for PHP version 2.2.2 - 2009/03/16
192
193 This release corrects all bugs that have been reported and sucesfully reproduced since
194 version 2.2.1.
195 Regardless of the intimidating message about dropping PHP 4 support, it still does
196 support that ancient, broken and insecure platform.
197
198
199 * fixed: php warning when receiving 'false' in a bool value
200 * fixed: improve robustness of the debugger when parsing weird results from non-compliant servers
201 * fixed: format floating point values using the correct decimal separator even when php locale is set to one that uses
202   comma
203 * fixed: use feof() to test if socket connections are to be closed instead of the number of bytes read (rare bug when
204   communicating with some servers)
205 * fixed: be more tolerant in detection of charset in http headers
206 * fixed: fix encoding of UTF8 chars outside of the BMP plane
207 * fixed: fix detection of zlib.output_compression
208 * improved: allow the add_to_map server method to add docs for single params too
209 * improved: added the possibility to wrap for exposure as xmlrpc methods plain php class methods, object methods and
210   even whole classes
211
212
213 XML-RPC for PHP version 2.2.1 - 2008/03/06
214
215 This release corrects all bugs that have been reported and sucesfully reproduced.
216 It is the last release of the library that will support PHP 4.
217
218 * fixed: work around bug in php 5.2.2 which broke support of HTTP_RAW_POST_DATA
219 * fixed: is_dir parameter of setCaCertificate() method is reversed
220 * fixed: a php warning in xmlrpc_client creator method
221 * fixed: parsing of '1e+1' as valid float
222 * fixed: allow errorlevel 3 to work when prev. error handler was a static method
223 * fixed: usage of client::setcookie() for multiple cookies in non-ssl mode
224 * improved: support for CP1252 charset is not part or the library but almost possible
225 * improved: more info when curl is enabled and debug mode is on
226
227
228 XML-RPC for PHP version 2.2 - 2007/02/25
229
230 This release corrects a couple of bugs and adds a few minor features.
231
232 * fixed: debugger errors on php installs with magic_quotes_gpc on
233 * fixed: support for https connections via proxy
234 * fixed: wrap_xmlrpc_method() generated code failed to properly encode php objects
235 * improved: slightly faster encoding of data which is internally UTF-8
236 * improved: debugger always generates a 'null' id for jsonrpc if user omits it
237 * new: debugger can take advantage of a graphical value builder
238   (it has to be downloaded separately, as part of jsxmlrpc package)
239 * new: support for the <NIL/> xmlrpc extension
240 * new: server support for the system.getCapabilities xmlrpc extension
241 * new: wrap_xmlrpc_method() accepts two new options: debug and return_on_fault
242
243
244 XML-RPC for PHP version 2.1 - 2006/08/28
245
246 This release corrects quite a few bugs and adds some interesting new features.
247 There is a minor security enhancement and overall speedup too.
248
249 It has been tested with PHP 4.0.5 up to 4.4.4 and 5.1.5.
250 Please note that 404pl1 is NOT supported, and has not been since 2.0.
251
252 *** PLEASE READ CAREFULLY BELOW ***
253
254 CHANGES THAT MIGHT AFFECT DEPLOYED APPLICATIONS:
255
256 The wrap_php_function and wrap_xmlrpc_method functions have been moved out of
257 the base library file xmlrpc.inc into a file of their own: xmlrpc_wrappers.inc.
258 You will have to include() / require() it in your scripts if you have been using
259 those functions.
260
261 For increased security, the automatic rebuilding of php object instances out of
262 received xmlrpc structs in wrap_xmlrpc_method() has been disabled (but it can be
263 optionally reenabled).
264
265 The constructor of xmlrpcval() values has seen major changes, and it will not
266 throw a php warning anymore when invoked using an unknown xmlrpc type: the
267 error will only be written to php error log. Also new xmlrpcval('true', 'boolean')
268 is not supported anymore.
269
270 MAJOR IMPROVEMENTS:
271
272 The new function php_xmlrpc_decode_xml() will take the xml representation of
273 either an xmlrpc request, response or single value and return the corresponding
274 php-xmlrpc object instance.
275
276 Both wrap_php_function() and wrap_xmlrpc_method() functions accept many more
277 options to fine tune their behaviour, including one to return the php code to
278 be saved and later used as standalone php script.
279
280 A new function wrap_xmlrpc_server() has been added, to wrap all (or some) of the
281 methods exposed by a remote xmlrpc server into a php class.
282
283 Lib internals have been modified to provide better support for grafting extra
284 functionality on top of it. Stay tuned for future releases of the EXTRAS package.
285
286 Last but not least a new file has been added: verify_compat.php, to help users
287 diagnose the level of compliance of the current php install with the library.
288
289 CHANGELOG IN DETAIL:
290
291 * fixed bug 1311927: client not playing nice with some proxy/firewall on ports != 80
292 * fixed bug 1334340: all ereg_ functions have been replaced with corresponding preg_
293 * fixed bug: wrong handling of 'deflate' http encoding, both server and client side
294 * fixed bug: sending compressed responses when php output compression is enabled was not working
295 * fixed bug: addarray() and addstruct() where not returning 1 when adding data to already initialized values
296 * fixed bug: non-ascii chars used in struct element names where not being encoded correctly
297 * restored compatibility with php 4.0.5 (for those poor souls still stuck on it)
298 * server->service() now returns either the payload or xmlrpcresp instance
299 * server->add_to_map() now accepts methods with no param definitions
300 * added new function: php_xmlrpc_decode_xml()
301 * added new function: wrap_xmlrpc_server()
302 * major improvements and security enhancements to wrap_php_function() and wrap_xmlrpc_method()
303 * documentation for single parameters of exposed methods can be added to the dispatch map
304   (and turned into html docs in conjunction with a future release of the extras package)
305 * full response payload is saved into xmlrpcresp object for further debugging
306 * stricter parsing of incoming xmlrpc messages: two more invalid cases are now detected
307   (double data element inside array and struct/array after scalar inside value element)
308 * debugger can now generate code that wraps a remote method into php function (works for jsonrpc, too)
309 * debugger has better support for being activated via a single GET call (for integration into other tools?)
310 * more logging of errors in a lot of situations
311 * javadoc documentation of lib files almost complete
312 * the usual amount of new testcases in the testsuite
313 * many performance tweaks and code cleanups
314 * added foundation for emulating the API of the xmlrpc extension (extras package needed)
315
316
317 XML-RPC for PHP version 2.0 - 2006/04/24
318
319 I'm pleased to announce XML-RPC for PHP version 2.0, final.
320
321 With respect to the last release candidate, this release corrects a few small
322 bugs and adds a couple of new features: more authentication options (digest and
323 ntlm for servers, ntlm for proxies, and some https custom certificates stuff);
324 all the examples have been reviewed and some demo files added,
325 including a ready-made xmlrpc proxy (useful e.g. for ajax calls, when the xmlrpc
326 client is a browser); the server logs more warning messages for incorrect situations;
327 both client and server are more tolerant of commonly-found mistakes.
328 The debugger has been upgraded to reflect the new client capabilities.
329
330 In greater detail:
331
332 * fixed bug: method xmlrpcval::structmemexists($value) would not work
333 * fixed bug: wrap_xmlrpc_method would fail if invoked with a client object that
334   has return_type=phpvals
335 * fixed bug: in case of call to client::multicall without fallback and server error
336 * fixed bug: recursive serialization of xmlrpcvals loosing specified UTF8 charset
337 * fixed bug: serializing to ISO-8859-1 with php 5 would raise an error if non-ascii
338   chars where found when decoding
339 * new: client can use NTLM and Digest authentication methods for https and http 1.1
340   connections; authentication to proxy can be set to NTLM, too
341 * new: server tolerates user functions returning a single xmlrpcval object instead
342   of an xmlrpcresp
343 * new: server does more checks for presence and correct return type of user
344   coded method handling functions, and logs inconsistencies to php error log
345 * new: client method SetCaCertificate($cert, $is_dir) to validate server against
346 * new: both server and client tolerate receiving 'true' and 'false' for bool values
347   (which btw are not valid according to the xmlrpc spec)
348
349
350 XML-RPC for PHP version 2.0RC3 - 2006/01/22
351
352 This release corrects a few bugs and adds some interesting new features.
353 It has been tested with PHP up to 4.4.2 and 5.1.2.
354
355 * fixed bug: server not recognizing clients that declare support for http compression
356 * fixed bug: serialization of new xmlrpcval (8, 'string') when internal encoding
357   set to UTF-8
358 * fixed bug: serialization of new xmlrpcval ('hello', 'int') would produce
359   invalid xml-rpc
360 * new: let the server accept 'class::method' syntax in the dispatch map
361 * new: php_xmlrpc_decode() can decode xmlrpcmessage objects
362 * new: both client and server can specify a charset to be used for serializing
363   values instead of the default 'US-ASCII+xml-entities-for-other-characters'.
364   Values allowed: ISO-8859-1 and UTF-8
365 * new: the server object can register 'plain' php functions instead of functions
366   that accept a single parameter of type xmlrpcmsg. Faster, uses less memory
367   (but comes with minor drawbacks as well, read the manual for more details)
368 * new: client::setDebug(2) can be used to have the request payload printed to
369   screen before being sent
370 * new: server::service($data) lets user parse data other than POST body, for
371   easier testing / subclassing
372 * changed: framework-generated debug messages are sent back by the server base64
373   encoded, to avoid any charset/xml compatibility problem
374 * other minor fixes
375
376 The usual refactoring of a lot of (private) methods has taken place, with new
377 parameters added to some functions.
378 Javadoc documentation has been improved a lot.
379 The HTML documentation has been shuffled around a bit, hoping to give it a more
380 logical organization.
381
382 The experimental support for the JSON protocol has been removed, and will be
383 packaged as a separate download with some extra very interesting stuff (human
384 readable auto-generated documentation, anyone?).
385
386
387 XML-RPC for PHP version 2.0RC2 - 2005/11/22
388
389 This release corrects a few bugs and adds basically one new method for better
390 HTTPS support:
391
392  * fixed two bugs that prevented xmlrpc calls to take place over https
393  * fixed two bugs that prevented proper recognition of xml character set
394    when it was declared inside the xml prologue
395  * added xmlrpc_client::setKey($key, $keypass) method, to allow using client
396    side certificates for https connections
397  * fixed bug that prevented proper serialization of string xmlrpcvals when
398    $xmlrpc_internalencoding was set to UTF-8
399  * fixed bug in xmlrpc_server::echoInput() (and marked method as deprecated)
400  * correctly set cookies/http headers into xmlrpcresp objects even when the
401    send() method call fails for some reason
402  * added a benchmark file in the testsuite directory
403
404 A couple of (private/protected) methods have been refactored, as well as a
405 couple of extra parameters added to some (private) functions - this has no
406 impact on the public API and should be of interest primarily to people extending
407 / subclassing the lib.
408
409 There is also new, PARTIAL support for the JSON-RPC protocol, implemented in
410 two files in the extras dir (more info about json-rpc at http://json-rpc.org)
411
412
413 XML-RPC for PHP version 2.0RC1 - 2005/10/03
414
415 I'm pleased to announce XML-RPC for PHP version 2.0, release candidate 1.
416
417 This release introduces so many new features it is almost impossible to list them
418 here, making the library finally on pair with, if not more advanced than, any other
419 similar offer (e.g. the PEAR XMLRPC package or the Incutio IXR library).
420 No, really, trust me.
421
422 The minimum supported PHP version is now 4.2 - natively - or 4.0.4pl1 - by usage of
423 a couple of compatibility classes (code taken from PEAR php_compat package).
424
425 The placement of files and directories in the distribution has been deeply modified,
426 in the hope of making it more clear, now that the file count has increased.
427 I hope you find it easy.
428
429 Support for "advanced" HTTP features such as cookies, proxies and keep-alives has
430 been added at last.
431
432 It is now much easier to convert between xmlrpcval objects and php values, and
433 in fact php_xmlrpc_encode and php_xmlrpc_decode are now the recommended methods
434 for all cases, except when encoding base64 data.
435
436 Two new (experimental) functions have been added, allowing automagic conversion
437 of a php function into an xmlrpc method to be exposed and vice-versa.
438
439 PHP objects can be now automatically serialized as xmlrpc struct values and
440 correctly deserialized on the other end of the transmission, provided that the
441 same class definition is present on both sides and no object members are of
442 type resource.
443
444 A lot of the existing class methods have been overloaded with extra parameters
445 or new functionality, and a few added ex-novo, making usage easier than ever.
446
447 A complete debugger solution is included in the distribution. It needs a web server
448 to run (a freely available version of the same debugger is accessible online, it
449 can be found at http://phpxmlrpc.sourceforge.net).
450
451 For a more detailed list of changes, please read carefully chapter 2 of the
452 included documentation, or, even better, take a look at the source code, which
453 is commented in javadoc style quite a bit.
454
455
456 XML-RPC for PHP version 1.2 - 2005/08/14
457
458 This removes all use of eval(), which is a potential security problem.
459 All users are encouraged to upgrade as soon as possible.
460 As of this release we are no longer php3-compatible.
461
462
463 XML-RPC for PHP version 1.1.1 - 2005/06/30
464
465 This is a security vulnerability fix release.
466 All users are invited to upgrade as soon as possible.
467
468
469 XML-RPC for PHP version 1.1 - 2005/05/03
470
471 I'm pleased to announce XML-RPC for PHP version 1.1
472 It's taken two years to get to the this point, but here we are, finally.
473
474 This is a bugfix and maintenance release. No major new features have been added.
475 All known bugs have been ironed out, unless fixing would have meant breaking
476 the API.
477 The code has been tested with PHP 3, 4 and 5, even tough PHP 4 is the main
478 development platform (and some warnings will be emitted when running PHP5).
479
480 Noteworthy changes include:
481
482  * do not clash any more with the EPI xmlrpc extension bundled with PHP 4 and 5
483  * fixed the unicode/charset problems that have been plaguing the lib for years
484  * proper parsing of int and float values prepended with zeroes or the '+' char
485  * accept float values in exponential notation
486  * configurable http user-agent string
487  * use the same timeout on client socket reads as used for connecting
488  * more explicative error messages in xmlrpcresponse in many cases
489  * much more tolerant parsing of malformed http responses from xmlrpc servers
490  * fixed memleak that prevented the client to be used in never-ending scripts
491  * parse bigger xmlrpc messages without crashing (1MB in size or more)
492  * be tolerant to xmlrpc responses generated on public servers that add
493    javascript advertising at the end of hosted content
494  * the lib generates quite a few less PHP warnings during standard operation
495
496 This is the last release that will support PHP 3.
497 The next release will include better support for PHP 5 and (possibly) a slew of
498 new features.
499
500 The changelog is available at:
501 http://cvs.sourceforge.net/viewcvs.py/phpxmlrpc/xmlrpc/ChangeLog?view=markup
502
503 Please report bugs to the XML-RPC PHP mailing list or to the sourceforge project
504 pages at http://sourceforge.net/projects/phpxmlrpc/
505
506
507 XML-RPC for PHP version 1.0
508
509 I'm pleased to announce XML-RPC for PHP version 1.0 (final). It's taken
510 two years to get to the 1.0 point, but here we are, finally.  The major change
511 is re-licensing with the BSD open source license, a move from the custom
512 license previously used.
513
514 After this release I expect to move the project to SourceForge and find
515 another primary maintainer for the code.  More details will follow to the
516 mailing list.
517
518 It can be downloaded from http://xmlrpc.usefulinc.com/php.html
519
520 Comprehensive documentation is available in the distribution, but you
521 can also browse it at http://xmlrpc.usefulinc.com/doc/
522
523 Bugfixes in this release include:
524
525  * Small fixes and tidying up.
526
527 New features include:
528
529  * experimental support for SSL via the curl extensions to PHP.  Needs
530    PHP 4.0.2 or greater, but not PHP 4.0.6 which has broken SSL support.
531
532 The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt
533
534 Please report bugs to the XML-RPC PHP mailing list, of which more details are
535 available at http://xmlrpc.usefulinc.com/list.html, or to
536 <xmlrpc@usefulinc.com>.
537
538
539 XML-RPC for PHP version 1.0 beta 9
540
541 I'm pleased to announce XML-RPC for PHP version 1.0 beta 9. This is
542 is largely a bugfix release.
543
544 It can be downloaded from http://xmlrpc.usefulinc.com/php.html
545
546 Comprehensive documentation is available in the distribution, but you
547 can also browse it at http://xmlrpc.usefulinc.com/doc/
548
549 Bugfixes in this release include:
550
551  * Fixed string handling bug where characters between a </string>
552    and </value> tag were not ignored.
553
554  * Added in support for PHP's native boolean type.
555
556 New features include:
557
558  * new getval() method (experimental only) which has support for
559    recreating nested arrays.
560  * fledgling unit test suite
561  * server.php has support for basic interop test suite
562
563 The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt
564
565 Please test this as hard as possible and report bugs to the XML-RPC PHP
566 mailing list, of which more details are available at
567 http://xmlrpc.usefulinc.com/list.html, or to <xmlrpc@usefulinc.com>.
568
569
570 XML-RPC for PHP version 1.0 beta 8
571
572 I'm pleased to announce XML-RPC for PHP version 1.0 beta 8.
573
574 This release fixes several bugs and adds a couple of new helper
575 functions. The most critical change in this release is that you can no
576 longer print debug info in comments inside a server method -- you must
577 now use the new xmlrpc_debugmsg() function.
578
579 It can be downloaded from http://xmlrpc.usefulinc.com/php.html
580
581 Comprehensive documentation is available in the distribution, but you
582 can also browse it at http://xmlrpc.usefulinc.com/doc/
583
584 Bugfixes in this release include:
585
586  * fixed whitespace handling in values
587  * correct sending of Content-length from the server
588
589 New features include:
590
591  * xmlrpc_debugmsg() method allows sending of debug info in comments in
592    the return payload from a server
593
594  * xmlrpc_encode() and xmlrpc_decode() translate between xmlrpcval
595    objects and PHP language arrays. They aren't suitable for all
596    datatypes, but can speed up coding in simple scenarios. Thanks to Dan
597    Libby for these.
598
599 The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt
600
601 Please test this as hard as possible and report bugs to the XML-RPC PHP
602 mailing list, of which more details are available at
603 http://xmlrpc.usefulinc.com/list.html, or to <xmlrpc@usefulinc.com>.
604
605
606 XML-RPC for PHP version 1.0 beta 7
607
608 I'm pleased to announce XML-RPC for PHP version 1.0 beta 7. This is
609 fixes some critical bugs that crept in. If it shows itself to be stable
610 then it'll become the 1.0 release.
611
612 It can be downloaded from http://xmlrpc.usefulinc.com/php.html
613
614 Comprehensive documentation is available in the distribution, but you
615 can also browse it at http://xmlrpc.usefulinc.com/doc/
616
617 Bugfixes in this release include:
618
619  * Passing of booleans should now work as expected
620  * Dollar signs and backslashes in strings should pass OK
621  * addScalar() now works properly to append to array vals
622
623 New features include:
624
625  * Added support for HTTP Basic authorization through the
626    xmlrpc_client::setCredentials method.
627
628  * Added test script and method for verifying correct passing of
629    booleans
630
631 The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt
632
633 Please test this as hard as possible and report bugs to the XML-RPC PHP
634 mailing list, of which more details are available at
635 http://xmlrpc.usefulinc.com/list.html, or to <xmlrpc@usefulinc.com>.
636
637
638 XML-RPC for PHP version 1.0 beta 6
639
640 I'm pleased to announce XML-RPC for PHP version 1.0 beta 6. This is the
641 final beta before the 1.0 release.
642
643 It can be downloaded from http://xmlrpc.usefulinc.com/php.html
644
645 Comprehensive documentation is available in the distribution, but you
646 can also browse it at http://xmlrpc.usefulinc.com/doc/
647
648 New features in this release include:
649
650  * Perl and Python test programs for the demo server
651  * Proper fault generation on a non-"200 OK" response from a remote host
652  * Bugfixed base64 decoding
653  * ISO8601 helper routines for translation to and from UNIX timestamps
654  * reorganization of code to allow eventual integration of alternative
655    transports
656
657 The changelog is available at: http://xmlrpc.usefulinc.com/ChangeLog.txt
658
659 Please test this as hard as possible and report bugs to the XML-RPC PHP
660 mailing list, of which more details are available at
661 http://xmlrpc.usefulinc.com/list.html, or to <xmlrpc@usefulinc.com>.