Revision history for Perl extension SOAP::Lite.
0.1 Mon Aug 11 23:12:02 2000
- first version; serialization part only
0.2 Mon Aug 24 19:34:24 2000
- next stable version; works with public test servers
0.3 Mon Sep 4 00:59:04 2000
+ first public beta version
+ added live SOAP calls
+ added test suite (25 tests)
+ added documentation
+ added interactive shell (SOAPsh.pl)
0.31 Wed Sep 6 00:36:15 2000
+ added expressions to SOAP::SOM->match method
+ added deserialization of circular references
+ added tests for deserialization
+ added documentation
0.32 Sun Sep 10 23:27:10 2000
! fixed warnings with -w
! fixed blessed reference serialization. Assigned type has top priority
+ added working with current node in SOAP::SOM
+ SOAP::SOM::valueof returns nodeset
+ SOAP::SOM::match returns boolean in boolean context
+ added raw xml accepting and output
+ added UserAgent parameters to SOAP::Transport (understands timeout)
+ added better diagnostic on transport errors in test.pl
+ added 'method', 'fault', 'freeform' types of Envelope
+ added server implementation
+ added CGI interface to server implementation
+ added My::Examples.pm as example of loaded class for SOAP server
+ added more tests (47 for now)
0.35 Sun Sep 17 23:57:10 2000
! fixed minors (Response instead of Respond, server will map client's URI)
+ cleaned HTTP::Server internals (will go to SOAP::Server in the future)
+ test.pl won't abort on transport errors. Failed test will be skipped
+ added daemon server implementation
+ added cgi/daemon server implementation examples
+ added deserialization into blessed reference
+ added dynamic/static class/method binding
+ added output parameters matching based on signature (name/type)
+ added real object transferring back and forth (see example of Chatbot::Eliza, fixed for CODE references)
+ added more interoperability with on_action on client and server side
+ added new events (on_action, on_fault, on_nonserialized)
+ added global class settings with 'use SOAP::Lite ...'
+ added code for returning application errors on server
+ added autodispatch
+ added SOAP prefix to method calls
+ added more documentation
+ added more tests (54 for now)
+ added more examples (Chatbot::Eliza, My::PingPong)
0.36 Sun Sep 24 20:12:10 2000
! fixed output parameters autobinding
+ added mod_perl server implementation
+ added recognizing all simple types mentioned in specification
+ added support for 'hex' type
+ added more documentation (twice as much as before)
+ added more tests (74 for now)
0.38 Thu Oct 5 22:06:20 2000
! fixed namespace for base64 encoding
! fixed security problem on server side, upgrade is highly recommended
+ added HTTPS/SSL support
+ added SMTP client implementation
+ added POP3 server implementation
+ added support for Basic/Digest server authentication
+ added support for header(s) on client/server side with SOAP::Header
+ added Array and SOAPStruct for interoperability with ApacheSOAP
+ added generic class for server support SOAP::Server
+ added Actor attribute
+ added more examples, documentation and tests (88 for now)
0.39 Sun Oct 8 22:55:20 2000
! fixed incompatibility with Perl 5.005
+ added interactive Makefile.PL for CPAN installation
0.40 Sun Oct 15 18:20:55 2000
! fixed die in mailto: protocol if you don't have URI::URL installed
! fixed misbehavior on Mac platform (thanks to Carl K. Cunningham)
+ added default namespace processing [xmlns] (thanks to Petr Janata)
+ added objects-by-reference, simple garbage collection and activation
+ added full access to envelope on server side
+ added versionMismatch reaction
+ added local: protocol for local binding without any transport
+ added examples for objects-by-reference: persistent/session
iterators and chat (40 lines on server and 25 lines on client side)
0.41 Tue Oct 31 01:24:51 2000
! fixed memory leak on server side
! fixed die on absence of HTTP::* modules on server side
! fixed working with keep-alive connections (added test with Xmethods)
+ changed autotyping from double to float
+ added support for proxy authorization (thanks to Murray Nesbitt)
+ added TCP client/server implementation
+ added benchmark for all implementations except smtp/pop3
+ added SOAP::Trace for detail logging on client/server side
+ added examples/tests for Apache::Registry implementations
+ added more examples, documentation and tests (127 for now)
0.42 Tue Nov 14 23:14:18 2000
+ added UDDI client (UDDI::Lite) with documentation
+ added M-POST functionality in HTTP::Client
+ added redirect (3??) functionality in HTTP::Client
+ added session cache for M-POSTs and redirects
+ added conversion of all objects to o-b-r in parameters
+ changed passing envelope into method
+ allowed \x0d and \x0a in strings (will not do base64 encode)
+ added die with object that allows to specify complex Fault detail
+ optimized XML encoding
+ allowed function call with autodispatch
+ improved syntax for 'use SOAP::Lite'
+ added soap.tcp example for TCP server implementation
+ added tests with Microsoft implementation
+ added documentation and tests (145 for now)
0.43 Tue Nov 28 01:47:02 2000
! fixed bug in UDDI interface that made UDDI client almost useless
! fixed Makefile.PL
! tests confirmed that memory leak is gone
+ changed syntax for UDDI client to more flexible/convenient
+ added limited support for WSDL schemas. Dynamic and stub access supported
+ added script for stub generation (stubmaker.pl)
+ optimized code on server side
+ object interface for SOAP, UDDI and schemas are supported consistently
+ allowed manipulation of method's attributes and namespaces
+ added attributes encoding ('&', '<' and '"' are encoded)
+ updated documentation
(thanks to Robert Barta who basically did this work)
+ added more examples and tests (154 for now)
0.44 Tue Dec 12 23:52:12 2000
! fixed mod_perl server to return '500 Server Error' in case of error
! fixed CGI server to work under PerlIS and PerlEx (thanks to Murray Nesbitt)
+ tested publishing API for UDDI::Lite, examples provided
(thanks to Petr Janata for access to UDDI server and provided help)
+ added bi-directional TCP client/server, examples and tests provided
+ enabled de/serializer overloading on server side (in addition to client)
+ added optimization for objects-by-reference
+ added ForkingDaemon server implementation (thanks to Peter Fraenkel)
+ added SOAP::Custom::XML for XML processing, examples and tests provided
+ added SOAP::Test as simple test framework
+ added documentation for UDDI publishing API
+ redesigned examples and tests (~240 tests for now)
0.45 Tue Jan 16 00:38:04 2001
! fixed interoperability problem with incorrect Array prefix for Apache SOAP
+ added interoperability tests for Apache SOAP
+ added interoperability tests with MS SOAP, 4s4c and Lucin implementations
+ added attachment parsing (singlepart/multipart MIME)
Content-ID and Content-Location are supported
text/xml fragments are supported and parsed
all implementations support MIME encoded messages
+ added IO server implementation (for pipes, mail handlers, FTP and file processing)
+ added FTP client implementation
+ added global settings, shareable between objects
+ allowed empty URI and non-prefixed method (documentation included)
+ added tests for xml, xml with headers, single and multipart MIME
+ updated documentation and added examples
+ more that 300 tests in test suite
0.46 Wed Jan 31 16:30:24 2001
! fixed SOAP:: prefix with SOAP::Lite objects
! fixed documentation installation on Unix
! changed interface of schema() method. Use service() instead
+ added COM interface
single dll (standalone or minimal version, downloadable separately)
doesn't require ROPE.dll, MSXML.dll or listener.asp
tested on Windows 98/2K, and should work on Windows 9x/Me/NT/2K
ASP and daemon server implementations
examples in VB/VBS, Excel/VBA, JavaScript, Perl and ASP
+ added parsing multipart/form-data
SOAP server can accept SOAP requests directly from web form
examples are provided (examples/forms/*)
+ added Map type for hash encoding. Tested with ApacheSOAP
+ added function that maps classes to URI (maptype)
+ allowed multiple ports in WSDL
+ tested object interoperability with Apache SOAP
+ optimized internal functions
0.47 Wed Feb 21 17:11:12 2001
! fixed lack of parameter in MAILTO transport
! fixed minimal version of COM interface to not require absent modules
+ added compression for HTTP transport
+ added mod_soap interface, add SOAP server functionality
with couple of lines in .htaccess or httpd.conf file
+ added proper serialization of circular multiple references
+ significantly redesigned handling types and URIs
! incompatibilities with ApacheSOAP clients may occur
+ added handling PIPE and INT signals in Daemon server implementation
+ changed return from autodispatched calls:
result() in scalar context and paramsall() in list context
+ redesigned tests and split on core and optional for smooth CPAN installation
+ added examples for cookie-based authorization
+ added examples in C# and PerlScript for COM interface
+ added more documentation for COM interface
+ updated documentation and added new examples
0.50 Wed Apr 18 11:45:14 2001
! fixed tests on Windows platform
! fixed authInfo in UDDI publishing interface
! fixed mod_soap (Apache::SOAP) on Perl 5.005/5.004
! fixed namespace prefix on arrays of arrays
! modified Content-encoding from 'compress' to 'deflate'
+ added XML::Parser::Lite, regexp-based XML parser
used automatically when XML::Parser is not available
+ added examples of custom serialization and deserialization (XML::DOM)
+ added XMLRPC::Lite (XMLRPC client and server interface)
all transports and features of SOAP::Lite should be available
+ added XMLRPC interactive shell (XMLRPCsh.pl)
+ added dispatching based on URI and SOAPAction (dispatch_with)
+ added dispatching to object (in addition to class/method)
+ added dispatch from specific class(es) (dispatch_from)
+ added limited support for mustUnderstand and actor attributes
+ added SOAP::Fault class for customization of returning Fault message
+ added charset in HTTP header for requests
+ added check for namespace and types resolving
+ added namespaces declarations from WSDL interface
+ added INCOMPATIBILITY section in README file
+ added live tests/examples for UDDI publishing interface
+ added live tests/examples for basic authentication
+ added XMLRPC server code that validates with Userland's validator
+ added more examples, tests and documentation
0.51 Tue Jul 18 15:15:14 2001
! fixed memory leak in SOAP::Parser (thanks to Ryan Adams and Michael Brown)
! fixed skipping undef elements in arrays under Perl 5.005 (thanks to Arne Georg Gleditsch)
! fixed warning from undefined type in out parameters (thanks to Jrg Ziefle)
! fixed autovivification warnings on 5.7.x (thanks to Igor Pechersky)
! fixed tests on 64bit systems (thanks to Gurusamy Sarathy)
! fixed installation problem with long filenames on MacOS (thanks to Alex Harper)
! fixed POP3 server (thanks to Kevin Hutchinson)
! number of fixes in XMLRPC::Lite
fixed <string> requirement (thanks to Matthew Krenzer and Dana Powers)
fixed empty slot skipping (thanks to Jon Udell)
fixed serialization of "0"/""/undef values (thanks to Michael E. Gage)
fixed autodispatch (thanks to Craig Kelley)
+ added support for SOAP 1.2 (spec is still in draft, implementation is subject to change)
+ added extended array support (only in deserializer)
sparse arrays
multidimensional arrays (deserialized as array of arrays)
partially transmitted arrays
+ modified XML::Parser::Lite to work on Perl 5.005 (thanks to John Gotts)
fixed handling empty attributes as undef
fixed minors (thanks to Duncan Cameron)
+ modified deserializer to work with different schemas (1999/2001)
+ added JABBER transport
+ added MQ transport
+ added mod_xmlrpc transport (Apache::XMLRPC::Lite)
+ added TCP over SSL transport
+ added non-blocking TCP multiserver
+ included FCGI transport (thanks to Marko Asplund <marko.asplund@kronodoc.fi>)
+ added support for APOP authentication in POP3 transport
+ added Encoding parameter for MAILTO transport (to choose base64/binary)
+ added 'autoresult' option (thanks to Mathieu Longtin)
+ added support for import directive in WSDL
+ added support for short (tModel) WSDL service descriptions
+ added support for multiple services/ports and allowed non-SOAP bindings in WSDL
+ added full search example UDDI->WSDL->SOAP (fullsearch.pl)
+ added charset in response message for HTTP transport
+ modified SOAPsh/XMLRPCsh to return all parameters (thanks to Chris Davies)
+ modified dispatch for XMLRPC server to work exactly as for SOAP server
examples included in examples/XMLRPC directory
+ added example with Inline::C module (inline.daemon).
Dispatch to C, C++, assembler, Java, Python and Tcl :).
Thanks to Brian Ingerson for his Inline module.
+ all transport are availble for both SOAP::Lite and XMLRPC::Lite:
HTTP (daemon, CGI, mod_perl), SMTP/POP3, TCP, IO, JABBER, MQ
+ updated INCOMPATIBILITY section in README file
+ tested on Perl 5.00503, 5.6.0, 5.6.1, 5.7.1 and 5.7.2
+ added SOAP Cookbook (http://cookbook.soaplite.com/)
+ added server scripts for MQ and JABBER transports
+ added roundtrip example for JABBER transport
+ updated documentation and added new examples
+ added more tests (more than 700 for now)