The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
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 J†rg 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 FastCGI transport (thanks to Marko Asplund)
        + 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 available 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)

0.52 Mon Oct 18 21:20:19 2001
        ! fixed content_type returned under mod_perl with 500 SERVER ERROR status
          (thanks to Geoffrey Young and Scott Hutton)
        ! fixed problem with multiple bindings in WSDL file generated by MS SOAP toolkit
        ! fixed handling of boolean type in 1999 Schema and hexBinary type in 2001 Schema
        ! fixed warning and problem with WOULDBLOCK state in IO::SessionData
          (thanks to Marty Pauley)
        ! fixed miscalculation in position within sparse arrays
        ! fixed problem with URI when methods of SOAP::Data are called in certain
          order (thanks to Taras Shkvarchuk)
        ! fixed CRLF problem in CGI module on Windows platform under IIS 
          (thanks to Werner Ackerl)
        ! fixed hex and hexBinary datatypes generation
        ! fixed content-length calculation when payload has multibyte utf8 characters
        ! fixed problem with XMLRPC and nested packages with more than two levels 
          (thanks to Leonid Gernovski)
        ! fixed (again) memory leak in SOAP::Parser (thanks to Craig Johnston)
        + updated Jabber interface for new format of 'use Net::Jabber ...'
          does not work with Net::Jabber 1.022 and later
        + updated XMLRPC::Lite to not detect value as float for 'NaN' and 'INF' strings
        + updated XMLRPC::Lite to return 200OK on errors
        + updated XMLRPC do not specify charset in content-type
        + updated Makefile.PL to allow configuration from command line
          (thanks to Dana Powers)
        + updated publishing API tests for UDDI server to call a new server (GLUE)
        + changed close() to shutdown() in Daemon transport (thanks to Sean Meisner)
        + added support for HTTP_proxy and HTTP_proxy_* in WSDL access
          (thanks to Stephen Shortland)
        + added XMLRPC support in COM interface. XMLRPC client and server can be
          created using COM interface
        + added DO_NOT_PROCESS_XML_IN_MIME option for MIME parts with text/xml content type
        + modified deserialization algorithm that allows to properly deserialize 
          SOAP1.2 messages when default is set to SOAP1.1 and vice versa
        + added fault in XMLRPC::Lite for incorrect datatypes specified by user
          (thanks to Paul Prescod)
        + added option to not generate XML declaration
        + added encoding for ']]>' (thanks to Matt Sergeant and James Amrhein)
        + added '\r' => '&#xd;' conversion in strings
        + added complain on incorrect simple types
        + added byNameOrOrder and byName functions for SOAP::Server::Parameters
          (thanks to Matt Stum)
        + added handling relative locations in <import> in WSDL
        + added stringification of SOAP::Fault (thanks to Tim Jenness) 
        + added documentation for SSL certificate authentication
        + added more examples (terraserver.pl, joke.pl, weblog.pl)
        + added more tests