0.12.11 - 0.12.12
Fix thread safety issues during HTTP packet generation. Reproduced on Windows only.
Thanks to Eugeny Babich.
0.12.10 - 0.12.11
Fix client hangs on Windows in case of connection errors.
0.12.9 - 0.12.10
Fix building with libxml2 < 2.7.3 (broken in 0.12.6).
0.12.8 - 0.12.9
Support for some custom clients: ability to omit <string> tag names in server responses.
0.12.7 - 0.12.8
Reimplementation of changes in 0.12.7: Allow configure if empty int/i4 tags are
allowed, specify default int value.
0.12.6 - 0.12.7
Fix complatibility with some custom clients: treat empty int/i4 tags as zero integer.
0.12.5 - 0.12.6
Fix parsing errors for string/binary nodes > 10Mb.
Support for SSL connections verification was added. Now there is possibility to verify
client or server certificates natively by OpenSSL. Optionally one can implement
custom verifier, e.g. to check for specific certificate's fingerprint, etc.
0.12.3 - 0.12.4
Support for Visual Studio 2012 and
0.12.2 - 0.12.3
* Stability: Fix OpenSSL locking initialization (Thanks to Jeff Wildgen).
* Security: Disable SSLv2 completely.
0.12.1 - 0.12.2
* Fix build out of source tree.
0.12 - 0.12.1
* Fix parser behavior on systems with libxml2 <= 2.6.16.
* Send "HTTP/1.1 100" only once on long/framed requests.
* Fix compilation warnings on Unices.
0.11.1 - 0.12
* New Struct::find and Struct::erase methods... read more
Changes 0.11 - 0.11.1:
* Fix xml-writer compatibility with libxml2-2.6.
Changes 0.10.1 - 0.11:
* Fix parser's incorrect behavior for some corner cases.
* Move away from automake to cmake.
Thanks to Ryan Braud for important bug reports.
Changes 0.10.0 - 0.10.1:
* Fix incorrect dump/parse of fault responses.
* Fix COREDUMPS on empty values during request/response parsing.
Big thanks to Pavel Denisov who has escalated bugs to me.
I've removed 0.10.0 files in sake of users safety.
This realease is binary incompatible with previous ones! No Windows update, so far.
The library is now licensed under 2-clause BSD license.
* New XML parser and XML serializer based on libxml2 xmlreader/xmlwriter technology. This change DRAMATICALLY decreases memory usage of XML parse/dump tasks for LARGE datasets and significantly improves XML parse/dump performance (20-30%) for LARGE datasets.
* Get rid of libxml++ dependency.... read more
I guess I will change library license to MIT or new-BSD next major release.
Changes in 0.9.0
This realease is binary incompatible with previous ones!
* Firewall now sends HTTP 403 Forbidden as a default reject action.
* Icrease buffer size for hostname calculations (thanks to Ryan Braud).
* Fix hang in client during connection to server that rejects connections on specific port (thanks to Ryan Braud for bug report).
* Fix coredump in case if name of struct member contains XML tags.
* API enhancments: Http_server and Https_server allow binding to specific IP, not only port.... read more
Changes in 0.8.10
* Client_base::set_timeout now affects connection process too.
* Fix compatibility with xmlrpc++: do not throw error on absent
<params> section in request.
* Fix minor bug related to error reporting on different platforms.
0.8.8 - 0.8.9
* Fix compatibility with Perl XML-RPC: Do not validate "Connection" HTTP
header option. Check if it contain "keep-alive" token otherwise ignore
0.8.7 - 0.8.8
* Increase thread-safety in Inet_addr class.
* Increase thread-safety in Date_time, http server
(by using boost data_time instead of localtime/gmtime functions).
* Turn off XML-formatting for XML-RPC requests/responses.
* Remove users guide from sources because it lives now at
I've moved most contents from old wiki that had been hosted on libiqxmlrpc.sf.net to http://libiqxmlrpc.wikidot.com. The old site redirects to a new place now.
Also, I've ported users guide that were shipped with source code onto wikidot. Guide's sources will be removed from source tree in next release.
This release introduces binary incompatibilities with 0.8.6a.
* Binary compatibility with previous releases broken.
* Unit test require Boost 1.34. Sorry, I have no enough mana to
maintain different boost branches for unit tests.
* The to_xml method of Request and Response classes became private.
Use new dump_xml functions that do not depend on XML parser library.
* Now users able to construct/parse raw XML-RPC requests/responses
by them-selves in order to achieve higher level of customization
* Add support for GCC visibility "hidden" option.... read more
0.8.6 - 0.8.6a
* Fix undefined behavior in Pool_executor, introduced in 0.8.6.
* Fix undefined behavior in http module built with MSVC 8.
0.8.5 - 0.8.6
Several fixes related to starting/stopping server:
* Server no longer wait for all open connections to close on exit.
This is much more secure behavior.
* Now it is safe using the same Server object after work/set_exit_flag cycle.
* Fix thread-leaks in Pool_executor_factory.
Compilation fix on Windows
0.8.4a - 0.8.5
This release introduces interface incompatibilities with 0.8.4.
An interface of Auth_Plugin_base has been changed. Now one must implement do_authenticate_anonymous instead of transfering flag to Auth_Plugin_base constructor.
* The fix allows one to stop server by calling Server::set_exit_flag fromanother thread. This fix should also allow run multiple HTTP servers in one process.... read more
This is maintenance release that fixes some bugs in new code.
0.8.4 - 0.8.4a
* Update MSVC project file.
* Fix unresolved symbols error when one try use Client_base::set_proxy
* Enhance compatibility with HTTP proxies (e.g. Privoxy). Put full URI in
POST header line when client configured work through HTTP proxy.
0.8.3 - 0.8.4
* HTTP Authorization (client and server).
* HTTP(S) Proxy support (on client side).
* Make Array::const_iterator compatible with STL iterators.
* Get rid of leading \n character in encoded base64.
* Send correct HTTP error packets on HTTP exceptions.
* Code cleanups, refactoring.
* Compilation warning fixes on Windows (thanks to Max Khon).
I decided transmit whole project's code base to Bazaar (instead of CVS) primarily to be more independent on network availability. I've created an account for a project on Launchpad.net, which provides Bazaar hosting.
File hosting, bug tracking and other activities will stay at SF.NET (at least for a while).
0.8.2a - 0.8.3
* Debian packaging.
* Do not throw exception on select/poll interruption with some signal. E.g during binding with gdb to an existing process.
* Refinement for Windows build: now all library dependences should be placed in a single directory, which should be stated with DEPENDS_ROOT environment variable.