1#
2# Revision history for Perl extension SOAP::Lite.
3#
4
5The contents of this file provides a change history for the SOAP::Lite
6Perl module. New features are designated with a '+' and bug fixes with
7a '!'.
8Numbers in square brackets are sourceforge tracker IDs from
9https://sourceforge.net/tracker/?group_id=66000&atid=513017
10
11Numbers with # are CPANRT tracker IDs from
12http://rt.cpan.org/Public/Dist/Display.html?Name=SOAP-Lite
13
14-----------------------------------------------------------------------
15THIS RELEASE
16-----------------------------------------------------------------------
17
181.11 February 21, 2014
19    ! #93080 bug when SOAP::Lite is trying to parse WSDL definition by https with custom settings
20
211.10 January 23, 2014 
22    ! Fixed uninitialized warning when Context-Length is not set [github/dbeusee]
23    ! avoid string eval in as_base64 [github/otrosien]
24    ! #88915 warnings issued with using importing with +trace
25
261.09 January 14, 2013
27    ! #92025 tighten multipart content-type matching [dmn@debian.org]
28
291.08 November 8, 2013
30    ! #15703 add no_index for examples to prevent CPAN pollution [githumb.com/sergeyromanov]
31
321.07 November 7, 2013
33    ! #89948 Remove warning when Content-Id is not present
34
351.06 August 21, 2013
36    ! #87935 skip all MIME-Parser tests if it is not installed
37    ! #87787 Use of uninitialized value $ns in Lite.pm 
38
391.05 August 18, 2013
40    ! #87848 Fix manifest, fix invalid http version from release blunder
41
421.04 August 9, 2013
43    ! #87605 Skip XML::Parser::Lite tests if it is missing [github.com/omega] 
44
451.03 August 4, 2013
46    ! #87195 Remove DIME::Tools dep until we can work around its issues
47
481.02 July 30, 2013
49    ! #87421 1.01 release blew out xml versions. mea culpa.
50
511.01 July 29, 2013
52    ! #84168 Test t/02-payload.t fails under Perl 5.17.10
53    ! #87127 TEST.pl removed from MANIFEST
54    ! revert #85713 - various reports of environment failures
55
561.0 July 16, 2013
57    ! #85713 SOAP::Transport::HTTP, 500 error skips parsing of response
58    ! No more Windows 98 client support. Wait, wut?
59    ! Merge SOAP::Transport::TCP back into SOAP::Lite (for now)
60    ! #82416: xop href cid: URI encoded support reported by Michael R. Davis (mrdvt92)
61    ! #85208 bad test plan
62    ! #83750 different headers for mod_perl vs mod_perl2 [Mithun Bhattacharya]
63
640.716 May 10, 2013
65    ! #17275 Client unable to detect fatal SOAP failure (e.g. unable to connect to host)
66    ! #81471 Force array context for correct Apache header parsing in SOAP::Transport::HTTP
67    ! #45611 deserializing SOAP message with composite attachment raises exception
68    ! #84168 Test t/02-payload.t fails under Perl 5.17.10
69    ! #85098 Monkey patch for LWP::Protocol confuses the toolchain
70    ! #78692 / #84724 / #83715 Sending large object (many levels deep) throws error Incorrect parameter
71    ! #78502 t/08-schema.t noisy under 5.17.2 (unescaped left brace in regex  is deprecated)
72    ! #78608 Documentation for "+trace"
73    ! #78639 Spelling error reported by Debian tools
740.715
75    ! #75938 Change to warning / add configuration variable to allow XML tags starting with /xml/i
76    ! #76902 Missing info in "SSL CERTIFICATE AUTHENTICATION" documentation
77	! #74577 work around/fixes for success with MS WS https/compressed
78    ! #74308 SOAP-Lite fails for operations with period in name
79    ! #73802 client did not set the encoding of the soap-envelope to 'iso-8859-1' in HTTP-request
80    ! #75019 HTTP server doesn't process PIPE signal
81    ! #72836 Processing a SOAP 1.2 request breaks the next SOAP 1.1 response
82    ! #70381 SOAP-Lite performance
83    ! #53375 comments after <?xml .. >
84    ! #63693 Uninitalized value (again)
85    ! #37360 Use of uninitialized variables in SOAP tests
86    ! fixed encoding in xmlrpc keys
87    ! #15176 problems with SOAP::Header ->value 
880.714
89    Moved SOAP::Transport::TCP into SOAP-Transport-TPC distribution
90    ! #70329 - not generating attributes properly (deleting id attribute)
910.713
92    ! #52637 error sending a request in perl 5.10.0 containing utf-8 data using the string data type
93	! #48775 Small bug in SOAP::Packager
94	! #51178 Emailing: SOAP-Lite-0.710.10.patch
95	! #55962 Spelling errors
96	! #52015 defined(%hash) deprecated in Perl 5.11
97	! #63693 Uninitalized value
98	! #65655 Assignment of shift to list
99	! #58538 regression from 0.710.08 soap:Client,Application failed during request deserialization
100	! #64250 Bleadperl v5.13.7-297-g558b442 breaks SOAP::Lite 0.712
101	! #68088 XML::Parser::Lite fails tests under perl 5.14 RC1
102	! #69825 Bug in SOAP/Lite/Deserializer/XMLSchemaSOAP1_2.pm
1030.712
104    ! #57409 SOAP::Lite installation problem
105    ! #52015 defined(%hash) deprecated in Perl 5.11
106    ! #39546 use of version.pm
107    ! #52637 error sending a request in perl 5.10.0 containing utf-8 data using the string data type
108    ! #55962 Spelling errors 
1090.712
110   SOAP::Transport::JABBER, SOAP::Transport::MQ and SOAP::Tranport::FTP
111   are now in their own distributions.
112   ! [2790747] Bugtracker specification in META.yml missing
113   ! #45997: Inconsistency in SOAP::Serializer documentation
114   ! #55618: HTTP_TRANSFER_ENCODING can be undefined in SOAP/Transpo
115   ! [2946245] / #54106 Only last Cookie Set
116   ! #50178: Win32 isuue with IO::SessionData and IO::SessionSet
117   ! #41527: SOAP::Lite 0.69 with Apache2 HTTP Server module and mod_perl 2 
118           returns 500 Internal 
1190.710.10
120   ! #49981: UDDI::Lite version not parsable by cpanplus (again)
1210.710.09
122   ! #46444: use SOAP::Lite::Deserializer::XMLSchemaSOAP1_2 missing
123   ! #37151: Strawberry perl 5.10 - Tests fail and then later hang
124   ! #49981: UDDI::Lite version not parsable by cpanplus
125   ! #49011: Fails to install under strawberry perl
126   ! [2825166] In Constant DEFAULT_HTTP_CONTENT_TYPE
127   ! [2832939] chunked client requests are returned 411(Length Required) 
128   ! [2860559] serious utf8 bug
129   ! #44568 Tracing unavailable when SOAP::Lite is used as a server 
130   ! #44195 submitting patches / mention Nginx transport module in documentation
131   ! [2777361] SOAP 1.2 Content-Type rejected
132   ! #41937 ([patch] enable more tests)
133   ! #39101: Apache2::Const::HTTP_BAD_REQUEST not defined
134   ! #39672: serialization and autotype 'off'
135   ! #41348: t/SOAP/Transport/HTTP/CGI.t failing on 5.6.x
136   ! #20569: XMLRPC::Lite "wrong element 'nil'" exception on '<value><nil/></value>'
137   + require Task::Weaken
138   + better META.yml generated (Alexandr Ciornii)
139
1400.710.08 - Jul 13 2008
141   ! [ 2015071 ] HTTP header is no more accessible
142   The HTTP header can be pre-filled again. Now, the HTTP header is cloned
143   from a (possibly user defined) header for every request
144   ! #37358: Test Failure in Strawberry perl - IO::SessionData
145   ! #37359: Test Failure in Strawberry perl - IO::SessionSet
146   ! [ 2005296 ] CPANTS says META.yml broken
147   ! [ 2005288 ] CPANTS: has_humanreadable_license not ok
148   ! #37040: Memory leak when calling WS using wsdl
149   SOAP::Transport::HTTP->new() was leaking two scalars per call
1500.710.07
151   ! [ 1963995 ] > not deserialized in result
152   ! [ 1833218 ] < and > not deserialized in faultstring/detail
153   ! [ 1959329 ] Incorrect Content-Type while sending requests with no parts
154   ! [ 1945385 ] Incorrect starting part detection for Multipart/Related
1550.710.06
156   ! #36477 SOAP::Lite Envelope not stripped down for XMLRPC
157   ! #36455 XMLRPC::Transport::HTTP::CGI generates extra params
1580.710.05
159   ! got version number right, finally. Thanks to Graham Barr,
160   Andreas J. Koenig and Matt S Trout (in alphabetical order) for support
1610.071.04
162   ! updated version number and fixed declaring version, so that perl 5.6.2
163   can parse it, too
164   ! fixed memory leaks with XMLRPC::Lite
165v0.71.03
166   ! #35041: SOAP::Lite Passes Decoded Strings to LWP
167   ! #35133: Version Unparsable by ExtUtils::MakeMaker
168   ! #33973: KeepAlive fails to function
169   ! #33773: redefined warnings
170   ! #34514: Subclasses of XMLRPC::Serializer misbehave because of a "ref" call in SOAP::Lite
171   (actually fixed in 0.71.01, but I forgot to add it to Changes)
1720.71.02
173   ! [1942233] Memory leak in 0.69 && 0.71
1740.71.01
175   ! #34515: Printing UTF-8 through SOAP::Transport::HTTP throws a warning
176   ! Version numbers updated
177   ! [1904955] Subclassing XMLRPC::Serializer broken
1780.71 Feb 2008
179  - bumped up version. Just curious about commit e-mail.
1800.70_08 Feb 25 2008
181  - bumped up version - accidentally uploaded a ppm to CPAN
1820.70_07 Feb 25 2008
183  + Added additional callbacks to XML::Parser::Lite and made it work under
184  (at least) perl5.6.2, 5.8.7, 5.8.8 and 5.10.
185  Thanks to Adam Leggett.
186  ! Fixes failing test on 5.10. The mechanism for determining whether
187  a class is loaded in SOAP::Server has been changed to the following:
188  Assume loaded if
189     - the class is main
190     - the class implements the required method
191     - the corresponding module (file) exists in %INC
192  This is still error prone - if you know a better algorithm, please help me
193  out.
194
1950.70_06 Feb 16 2008
196  ! Fixes failing test without FCGI installed
197
1980.70_05 Feb 13 2008
199  ! Fixes #32971 Undefined subroutine &Apache::Constant::BAD_REQUEST called
200  ! Fixes [ 1867264 ]       [PATCH] handle empty complexTypes correctly
201  ! Fixes #32810:           [PATCH] handle empty complexTypes correctly (duplicate)
202  ! Fixes [ 1864481 ]       XML::Parser::Lite documentation is incomplete
203  + Fixes [ 747302 ]        Make tainting work with XML::Parser::Lite
204  + Fixes [ 1864480 ]       Make XML::Parser::Lite's private subs private
205  ! Fixes [ uncategorized ] bad XML::Parser::Lite behaviour under perl 5.8
206
2070.70_04 Jan 02 2008
208  ! Fixes #32008: Failed t/03-server.t tests 2-5 under Perl 5.10 on Mac OS X 10.3.9
209  ! Fixes [ 1855575 ] "P" autotyped as xsd:duration
210  ! Fixes [ 1842314 ] Expect: 100-Continue does not work with Apache::SOAP
211  ! Fixes #13140 unable to use local file as WSDL service description file
212    Acually there is no bug, but just a missing comment in the examples...
213
2140.70_03 Nov 18 2007
215  ! Fixes [ 1816906 ] 7/06_modules.t fails with Apache 1.27
216  ! Fixes [ 1414914 ] longs are serialized into xsd:int by default
217- ! Fixes [ 1833803 ] int numbers serialized as long
218  ! Fixes #21113: sending xml files using SOAP::Transport::HTTP::CGI
219  (actually trapped a documentation error)
220  ! Fixes #3677: Line > 1000 characters breaks perl parser
221  ! Fixes #11797: SOAP::Transport::HTTP::CGI returns HTTP response headers terminated by "\n" instead of "\r\n"
222  ! Fixed #24211: strings with leading zero mistreated as int
223  ! Fixed #25668: cannot build SOAP::Lite with mod_perl 1.29
224  ! Fixed #16897: SOAP::Lite 0.66 fails with UNIVERSAL::use
225  ! Fixed #30741: SOAP::Transport::HTTP::Apache
226
2270.70_02 Nov 08 2007
228  ! Fixed  [ 1828412 ] SOAP::Lite serializes faults with wrong element order,
229    thanks to Tom Fischer.
230  ! Fixed [ 1073360 ] Failure to read() long requests under mod_perl (fixed
231    for mod_perl before thanks to JT Justman, now fixed for CGI, too).
232  ! Fixed #30339: envelope subroutine() in XMLRPC/Lite.pm incorrectly
233    requires method parameter for a response envelope
234  ! Fixed #26408: SOAP::Transport::HTTP needs to call extract_cookies when
235    dealing with a cookie jar
236  ! Fixed #22730 test failure on bleedperl
237  ! Fixed #30271 Don't give strings with utf8 flag set to
238    MIME::Base64::encode_base64().
239  ! Fixed [ 1816907 ] t/01_core.t fails on 5.6.x
240  ! Fixed #24810 missing prerequisite LWP::UserAgent
241
2420.70_01 Oct 18 2007
243
244  + Added LOOPBACK test transport backend.
245  + Added more core tests
246  ! Fixed #14052: 'use base' pragma no longer works for SOAP::Lite
247  ! Fixed #27032: Some debugging-aid patches
248  ! Fixed #22732: Documentation error for use_prefix()
249  ! Fixed [ 1044270 ] Suppress type for array when autotyping off
250  ! Fixed [ 1665916 ] encode_scalar needs "no strict 'refs'"?
251  ! Fixed [ 1481017 ] Typo on CPAN's documentation
252  ! Fixed [ 1750846 ] Error with ENV{EXPECT}
253  ! Fixed [ 887015 ] Memory Leak
254  ! Fixed [ 1700326 ] encode_data called incorrectly in envelope
255  ! Fixed [ 1612405 ] Incorrect deserialization of arrays/vectors
256  ! Fixed [ 1204279 ] Boolean serialization error and added test
257  ! Fixed [ 1569418 ] anyURI Serialization problem
258
2590.68 July 6 2006
260
261  ! Patched support for mod_perl Apache2 (thanks to JT Justman)
262  ! Fixed bug where SOAP::SOM objects were not properly detected,
263    serialized and returned (thanks chris at prather dot o r g)
264  ! Fixed bug with default_ns and ns functions so that they
265    serialized XML properly.
266  + Started to add experimental DIME support - possible impacts to MIME
267    support as well
268
2690.65-beta7 May 12 2005
270
271  + Added default_ns and ns to replace the confusing use of uri() and
272    use_prefex()
273
2740.65-beta6 June 3 2005
275
276  ! Fixed bug resulting in XMLRPC requests to be serialized using the
277    doc/literal serializer if serializing arrays
278
2790.65-beta5 May 6 2005
280
281  ! Fixed critical bug which prevented all XMLRPC servers from working
282
2830.65-beta4 Apr 3 2005
284
285  ! Fixed bug 1160881 - HTTP headers are now terminated by \r\n for
286    compatibility with .NET and compliance with HTTP spec.
287  ! Fixed 1158666 - stubmaker.pl no longer call deprecated subroutine
288  + stubmaker.pl got a lot of enhancements - now has help and version
289    output, run time options, etc. See 'man stubmaker.pl' for more.
290  + Classes generated by stub_maker.pl now have a special subroutine
291    called 'want_som.' When set to 1, the stub class will return a
292    SOAP::SOM object for every request.
293  ! Fixed bug 1149427 - now capable of returning SOAP::SOM objects
294    from generated stub classes.
295
2960.65-beta3 Mon Oct 25 2004
297
298  + SOAP::Lite will only warn you once when you call a doc/literal
299    service
300  + Added SOAP::Schema->cache_dir() and SOAP::Schema->cache_ttl(),
301    which control how code stubs generated from WSDLs are cached to
302    prevent constant reparsing of WSDL files.
303  ! Tested SOAP::Lite against Google, Salesforce, and FedEx. So far,
304    clients can successfully call these service providers (at least
305    some of their operations) - testing does not provide 100% coverage
306    of their APIs.
307
3080.65-beta2.1 Mon Oct 25 2004
309
310  + Fixed bug in unit tests in which MIME::Tools was not properly detected
311    resulting in failed unit tests for some users.
312  + Fixed some documentation issues (speling, etc).
313
3140.65-beta2 Mon Oct 25 2004
315  ** WARNING ** substantial changes have been made to SOAP::Lite in
316  this release in regards to how it manages attachments. The changes
317  may introduce instabilities into your software that relies on this
318  functionality. Please test your software with 0.65 prior to moving it
319  to a production environment.
320
321  + Added ReleaseNotes.txt
322  + Added section REPORTING BUGS to pod comments
323  + Deprecated SOAP::Lite->schema removed
324  + Deprecated SOAP::Lite->on_debug removed
325  + Deprecated SOAP::Schema->schema in favor of SOAP::Schema->schema_url
326  + Added SOAP::Schema->useragent - which returns the LWP::UserAgent instance
327    that will be used when accessing WSDLs via the SOAP::Lite->service call.
328    This is helpful when access to a WSDL requires authentication, etc.
329  + Made changes that allow messages to be constructed using a NULL body:
330    <Envelope><Body /></Envelope>
331  + Added constant OBJS_BY_REF_KEEPALIVE which defaults to 600 - this is
332    so that services can configure how long to cache objects marked as persistent
333    using SOAP::Server::Object->objects_by_reference()
334  + Added the ability for a user to modify the UserAgent class used
335    by SOAP::Transport::HTTP::Client, updated Transport.pm's documentation
336    to reflect this. Added $SOAP::Transport::HTTP::Client::USERAGENT_CLASS
337    variable as a means of setting this.
338  + Added initial DIME support
339  + SOAP Packager package/unpackage now take in a context variable as
340    input because DIME needs to know what version of SOAP you are using.
341  + Refactored and rewrote README
342  + Renamed SOAP::Schema->stub() to SOAP::Schema->generate_stub. This populates
343    a private variable called C<stub> with the autogenerate Perl code.
344  + Added SOAP::Schema->stub() which returns the autogenerated Perl code used
345    internally by SOAP::Lite. This can be helpful for debugging SOAP::Lite's
346    utilization of WSDL, as well as helpful to developers working on S::L's
347    WSDL support.
348
3490.65-beta1 Mon Oct 18 15:55:00 2004
350
351  + Made SOAP::Serializer->readable actually produce readable XML!
352  ! Fixed bug 747312 - Made XML Schema 2001 the default schema
353  + Changed typelookup of base64 to base64Binary to conform with 2001
354    schema
355  + Added support for [almost] all XML Schema 2001 built-in datatypes
356  + Added register_ns subroutine to SOAP::Serializer
357  + Added find_prefix subroutine to SOAP::Serializer
358  + Added use_prefix subroutine to SOAP::Serializer
359  + Added a necessary set of initial subroutinues to support wsdl2perl
360    project
361  + Added format_datetime to SOAP::Utils
362  + Documented SOAP::SOM->parts
363  + Added SOAP::SOM->is_multipart
364  + Properly escaped characters to facilitate emacs syntax highlighting
365  + Ran podchecker to validate all POD comments
366  ! Fixed bug 749636 - changed a croak to a warn to enable socket
367    timeouts in SOAP::Transport::TCP::Server
368  + Added support for UDDI 2/3
369  + Majorly revamped product documentation thanks to the kind
370    contribution made by O'Reilly. Appendix B from "Programming Web
371    Services with Perl" has been completely integrated.
372  + To better segment SOAP::Lite documentation, many modules have been
373    added that contain documentation only. For those who loved the old
374    documentation, it can be found in lib/OldDocs/SOAP/*.pm and
375    lib/OldDocs/SOAP/Transport/*.pm
376  ! Fix a bug in which doclit style arrays were not being deserialized
377    properly. IOW, Repeated elements were not made into an array, only
378    the last occurring value was recorded.
379  + Added the ability for a SOAP Client to gain direct access to the
380    HTTP::Request and HTTP::Response objects.
381  + Changed default envelope namespace prefix from SOAP-ENV to soap
382  + Changed default encoding namespace prefix from SOAP-ENC to soapenc
383  + Reachitected MIME support to decouple MIME layer from transport
384    layer. This only impacts the HTTP layer since that is the only
385    transport in SOAP::Lite that supports attachments.
386  + Creation of SOAP::Packager - decoupled in an extensible way the
387    packaging of parts (a.k.a. attachments). This is used for encoding
388    and decoding. This enables a more seemless addition of DIME
389    support. Changes were made throughout SOAP::Lite to accomodate this
390    functionality.
391    - a call "context" was added to SOAP::Server and SOAP::Deserializer
392      so that those classes could have access to the global
393      SOAP::Packager instance
394    - deprecated many function calls and packages having to do with
395      attachment support
396    - fixed several of the SOAP::*::new() methods so that they don't
397      inadvertantly reinitialize themselves and destroy precious context
398      information in the process
399  + Gave developers direct access to MIME::Parser object so that they
400    can optimize its use. See the following URL to optimize it for
401    memory consumption, parsing speed, disk utilization, etc:
402    http://search.cpan.org/dist/MIME-tools/lib/MIME/Parser.pm#OPTIMIZING_YOUR_PARSER
403  + Added a context variable to SOAP::Serializer and SOAP::Deserializer
404    so that they have mechanisms for getting instance data from the
405    calling context. The value of context is either SOAP::Lite or
406    SOAP::Server depending upon the role the service is playing in the
407    transaction. Contexts are initialized when a call is made, and
408    destroyed when a call is completed.
409  + Greater than character '>' has been added to list of characters
410    that will be automatically escaped. This is not a requirement by
411    the XML spec, it is a MAY, but I am doing it after seeing a minority
412    of people report a compatibility problem.
413  - Removed deprecated methods: SOAP::Serializer::namespace and
414    encodingspace
415  + Added SOAP::Serializer::encodingStyle method which allows users to
416    set the URI for default encodingStyle.
417  + Added initial support for literal encoding style. EXPERIMENTAL
418  + Added some true constant values representing various SOAP namespace
419    URIs
420  + Added SOAP::Constants::SUPPORTED_ENCODING_STYLES for better tracking
421    of the set of encoding styles that the toolkit can [de]serialize
422  ! Fixed bug 840172 - "Makefile.PL --noprompt flag broken," now fixed
423  + Updated SOAP 1.2 URIs to the latest (TODO - maintain support for
424    older ones)
425  + Added HTTPS support for HTTP::Server Daemon class - thanks to Nils
426    Sowen for this contribution
427
428-----------------------------------------------------------------------
429PREVIOUS RELEASES
430-----------------------------------------------------------------------
431
4320.60 Mon Aug 18 12:10:27 2003
433  + Merged SOAP::MIME into SOAP::Lite's core
434  + Cleaned up the UI for the Makefile.PL script - it now detects and
435    indicated whether certain Perl modules have been detected. The
436    table displaying installation preferences has been substantially
437    cleaned up, the code is much more modular and relies on a simple
438    data structure representing potential module dependencies.
439  + Made the Makefile.PL script iterative - meaning, the user will be
440    continually be presented with their preferences until they
441    explicity choose to accept them and continue (bug 747295)
442  + Differentiate between xsd:int and xsd:long to fix interoperability
443    bug with Java Web services
444  ! Fixed MIME interoperability bug with Apache Axis - Axis' MIME
445    parser requires that MIME boundaries are terminiated by a CRLF
446    character where the MIME::Tools package only outputs a CR
447    character. A patch was integrated into the MIME::Tools module
448    which allows SOAP::Lite to specify its own MIME Boundary delimiter
449  ! SOAP Faultcodes are now properly typed a xsd:QName, whereas
450    before they were xsd:string - to be honest, they are left untyped
451    so that toolkits can serialize them according to the schema
452    (bug 747283)
453  ! Fixed documentation error around turning on a trace for multiple
454    "channels" (bug 747310)
455  ! Disabled SOAPStruct (bug 747316)
456  ! Fixed XML::Parser::Expat vulnerability (bug 747265)
457  ! Added item in TROUBLESHOOTING section explaining that there is a
458    bug in Perl 5.8 that prevents +autodispatch from working properly.
459    The workaround is to use dispatch_from instead (bug 747290)
460  ! Fixed warning when autodispatched call has no parameters
461    (bug 747286)
462  ! Fixed warning when empty SOAPAction specified (bug 747278)
463  ! Turned off HTTP keep alive patch by default, however users can now
464    turn on the patch by setting the constant PATCH_HTTP_KEEPALIVE to
465    1 (bug 747281)
466  ! Removed dependency on the URI module for non-HTTP transports
467    (bug 747306)
468
4690.55 Mon Apr 15 22:20:39 2002
470  ! fixed security vulnerability with fully qualified method names
471    (thanks to Randal Schwartz, Ilya Martynov and many others)
472  ! fixed problem with TCP transport and SSL (thanks to Chris Hurd)
473  ! fixed TCP transport to specify correct length with utf8 strings
474    (thanks to Robin Fuller)
475  ! fixed incorrect encoding when parameters list includes undefined
476    values (thanks to Chris Radcliff)
477  ! updated 'xmlsoap' prefix (thanks to Pierre Denis)
478  ! updated MIME parser to accept messages that start with 'From'
479    (thanks to Chris Davies)
480  + added check for TCP transport on Mac (thanks to Robin Fuller)
481  + added check for shutdown() method on AIX (thanks to Jos Clijmans)
482  + added check for blocking() method in TCP transport
483    (thanks to Jos Clijmans)
484  + optimized parsing strings with entity encoding (thanks to Mathieu
485    Longtin)
486  + added check for entity size for CGI transport
487    ($SOAP::Constant::MAX_CONTENT_SIZE) (thanks to J. Klunder)
488  + added example (google.pl)
489  + updated tests and examples with new endpoints
490
4910.52 Mon Oct 18 21:20:19 2001
492  ! fixed content_type returned under mod_perl with 500 SERVER ERROR
493    status (thanks to Geoffrey Young and Scott Hutton)
494  ! fixed problem with multiple bindings in WSDL file generated by
495    MS SOAP toolkit
496  ! fixed handling of boolean type in 1999 Schema and hexBinary type
497    in 2001 Schema
498  ! fixed warning and problem with WOULDBLOCK state in IO::SessionData
499    (thanks to Marty Pauley)
500  ! fixed miscalculation in position within sparse arrays
501  ! fixed problem with URI when methods of SOAP::Data are called in
502    certain order (thanks to Taras Shkvarchuk)
503  ! fixed CRLF problem in CGI module on Windows platform under IIS
504    (thanks to Werner Ackerl)
505  ! fixed hex and hexBinary datatypes generation
506  ! fixed content-length calculation when payload has multibyte utf8
507    characters
508  ! fixed problem with XMLRPC and nested packages with more than two
509    levels (thanks to Leonid Gernovski)
510  ! fixed (again) memory leak in SOAP::Parser (thanks to Craig
511    Johnston)
512  + updated Jabber interface for new format of 'use Net::Jabber ...'
513    does not work with Net::Jabber 1.022 and later
514  + updated XMLRPC::Lite to not detect value as float for 'NaN' and
515    'INF' strings
516  + updated XMLRPC::Lite to return 200OK on errors
517  + updated XMLRPC do not specify charset in content-type
518  + updated Makefile.PL to allow configuration from command line
519    (thanks to Dana Powers)
520  + updated publishing API tests for UDDI server to call a new server
521    (GLUE)
522  + changed close() to shutdown() in Daemon transport (thanks to Sean
523    Meisner)
524  + added support for HTTP_proxy and HTTP_proxy_* in WSDL access
525    (thanks to Stephen Shortland)
526  + added XMLRPC support in COM interface. XMLRPC client and server
527    can be created using COM interface
528  + added DO_NOT_PROCESS_XML_IN_MIME option for MIME parts with
529    text/xml content type
530  + modified deserialization algorithm that allows to properly
531    deserialize SOAP1.2 messages when default is set to SOAP1.1 and
532    vice versa
533  + added fault in XMLRPC::Lite for incorrect datatypes specified by
534    user (thanks to Paul Prescod)
535  + added option to not generate XML declaration
536  + added encoding for ']]>' (thanks to Matt Sergeant and James
537    Amrhein)
538  + added '\r' => '&#xd;' conversion in strings
539  + added complaint on incorrect simple types
540  + added byNameOrOrder and byName functions for
541    SOAP::Server::Parameters (thanks to Matt Stum)
542  + added handling relative locations in <import> in WSDL
543  + added stringification of SOAP::Fault (thanks to Tim Jenness)
544  + added documentation for SSL certificate authentication
545  + added more examples (terraserver.pl, joke.pl, weblog.pl)
546  + added more tests
547
5480.51 Tue Jul 18 15:15:14 2001
549  ! fixed memory leak in SOAP::Parser (thanks to Ryan Adams and Michael
550    Brown)
551  ! fixed skipping undef elements in arrays under Perl 5.005 (thanks to
552    Arne Georg Gleditsch)
553  ! fixed warning from undefined type in out parameters (thanks to
554    Jrg Ziefle)
555  ! fixed autovivification warnings on 5.7.x (thanks to Igor Pechersky)
556  ! fixed tests on 64bit systems (thanks to Gurusamy Sarathy)
557  ! fixed installation problem with long filenames on MacOS (thanks to
558    Alex Harper)
559  ! fixed POP3 server (thanks to Kevin Hutchinson)
560  ! number of fixes in XMLRPC::Lite
561    o fixed <string> requirement (thanks to Matthew Krenzer and Dana
562      Powers)
563    o fixed empty slot skipping (thanks to Jon Udell)
564    o fixed serialization of "0"/""/undef values (thanks to Michael E.
565      Gage)
566    o fixed autodispatch (thanks to Craig Kelley)
567  + added support for SOAP 1.2 (spec is still in draft, implementation
568    is subject to change)
569  + added extended array support (only in deserializer)
570    sparse arrays
571    multidimensional arrays (deserialized as array of arrays)
572    partially transmitted arrays
573  + modified XML::Parser::Lite to work on Perl 5.005 (thanks to John
574    Gotts)
575    fixed handling empty attributes as undef
576    fixed minors (thanks to Duncan Cameron)
577  + modified deserializer to work with different schemas (1999/2001)
578  + added JABBER transport
579  + added MQ transport
580  + added mod_xmlrpc transport (Apache::XMLRPC::Lite)
581  + added TCP over SSL transport
582  + added non-blocking TCP multiserver
583  + included FastCGI transport (thanks to Marko Asplund)
584  + added support for APOP authentication in POP3 transport
585  + added Encoding parameter for MAILTO transport (to choose
586    base64/binary)
587  + added 'autoresult' option (thanks to Mathieu Longtin)
588  + added support for import directive in WSDL
589  + added support for short (tModel) WSDL service descriptions
590  + added support for multiple services/ports and allowed non-SOAP
591    bindings in WSDL
592  + added full search example UDDI->WSDL->SOAP (fullsearch.pl)
593  + added charset in response message for HTTP transport
594  + modified SOAPsh/XMLRPCsh to return all parameters (thanks to Chris
595    Davies)
596  + modified dispatch for XMLRPC server to work exactly as for SOAP
597    server examples included in examples/XMLRPC directory
598  + added example with Inline::C module (inline.daemon).
599    Dispatch to C, C++, assembler, Java, Python and Tcl :).
600    Thanks to Brian Ingerson for his Inline module.
601  + all transport are available for both SOAP::Lite and XMLRPC::Lite:
602    HTTP (daemon, CGI, mod_perl), SMTP/POP3, TCP, IO, JABBER, MQ
603  + updated INCOMPATIBILITY section in README file
604  + tested on Perl 5.00503, 5.6.0, 5.6.1, 5.7.1 and 5.7.2
605  + added SOAP Cookbook (http://cookbook.soaplite.com/)
606  + added server scripts for MQ and JABBER transports
607  + added roundtrip example for JABBER transport
608  + updated documentation and added new examples
609  + added more tests (more than 700 for now)
610
6110.50 Wed Apr 18 11:45:14 2001
612  ! fixed tests on Windows platform
613  ! fixed authInfo in UDDI publishing interface
614  ! fixed mod_soap (Apache::SOAP) on Perl 5.005/5.004
615  ! fixed namespace prefix on arrays of arrays
616  ! modified Content-encoding from 'compress' to 'deflate'
617  + added XML::Parser::Lite, regexp-based XML parser
618    used automatically when XML::Parser is not available
619  + added examples of custom serialization and deserialization
620    (XML::DOM)
621  + added XMLRPC::Lite (XMLRPC client and server interface)
622    all transports and features of SOAP::Lite should be available
623  + added XMLRPC interactive shell (XMLRPCsh.pl)
624  + added dispatching based on URI and SOAPAction (dispatch_with)
625  + added dispatching to object (in addition to class/method)
626  + added dispatch from specific class(es) (dispatch_from)
627  + added limited support for mustUnderstand and actor attributes
628  + added SOAP::Fault class for customization of returning Fault
629    message
630  + added charset in HTTP header for requests
631  + added check for namespace and types resolving
632  + added namespaces declarations from WSDL interface
633  + added INCOMPATIBILITY section in README file
634  + added live tests/examples for UDDI publishing interface
635  + added live tests/examples for basic authentication
636  + added XMLRPC server code that validates with Userland's validator
637  + added more examples, tests and documentation
638
6390.47 Wed Feb 21 17:11:12 2001
640  ! fixed lack of parameter in MAILTO transport
641  ! fixed minimal version of COM interface to not require absent
642    modules
643  + added compression for HTTP transport
644  + added mod_soap interface, add SOAP server functionality
645    with couple of lines in .htaccess or httpd.conf file
646  + added proper serialization of circular multiple references
647  + significantly redesigned handling types and URIs
648    ! incompatibilities with ApacheSOAP clients may occur
649  + added handling PIPE and INT signals in Daemon server implementation
650  + changed return from autodispatched calls:
651    result() in scalar context and paramsall() in list context
652  + redesigned tests and split on core and optional for smooth CPAN
653    installation
654  + added examples for cookie-based authorization
655  + added examples in C# and PerlScript for COM interface
656  + added more documentation for COM interface
657  + updated documentation and added new examples
658
6590.46 Wed Jan 31 16:30:24 2001
660  ! fixed SOAP:: prefix with SOAP::Lite objects
661  ! fixed documentation installation on Unix
662  ! changed interface of schema() method. Use service() instead
663  + added COM interface
664    single dll (standalone or minimal version, downloadable separately)
665    doesn't require ROPE.dll, MSXML.dll or listener.asp
666    tested on Windows 98/2K, and should work on Windows 9x/Me/NT/2K
667    ASP and daemon server implementations
668    examples in VB/VBS, Excel/VBA, JavaScript, Perl and ASP
669  + added parsing multipart/form-data
670    SOAP server can accept SOAP requests directly from web form
671    examples are provided (examples/forms/*)
672  + added Map type for hash encoding. Tested with ApacheSOAP
673  + added function that maps classes to URI (maptype)
674  + allowed multiple ports in WSDL
675  + tested object interoperability with Apache SOAP
676  + optimized internal functions
677
6780.45 Tue Jan 16 00:38:04 2001
679  ! fixed interoperability problem with incorrect Array prefix for
680    Apache SOAP
681  + added interoperability tests for Apache SOAP
682  + added interoperability tests with MS SOAP, 4s4c and Lucin
683    implementations
684  + added attachment parsing (singlepart/multipart MIME)
685    Content-ID and Content-Location are supported
686    text/xml fragments are supported and parsed
687    all implementations support MIME encoded messages
688  + added IO server implementation (for pipes, mail handlers, FTP and
689    file processing)
690  + added FTP client implementation
691  + added global settings, shareable between objects
692  + allowed empty URI and non-prefixed method (documentation included)
693  + added tests for xml, xml with headers, single and multipart MIME
694  + updated documentation and added examples
695  + more that 300 tests in test suite
696
6970.44 Tue Dec 12 23:52:12 2000
698  ! fixed mod_perl server to return '500 Server Error' in case of error
699  ! fixed CGI server to work under PerlIS and PerlEx (thanks to Murray
700    Nesbitt)
701  + tested publishing API for UDDI::Lite, examples provided
702    (thanks to Petr Janata for access to UDDI server and provided help)
703  + added bi-directional TCP client/server, examples and tests provided
704  + enabled de/serializer overloading on server side (in addition to
705    client)
706  + added optimization for objects-by-reference
707  + added ForkingDaemon server implementation (thanks to Peter
708    Fraenkel)
709  + added SOAP::Custom::XML for XML processing, examples and tests
710    provided
711  + added SOAP::Test as simple test framework
712  + added documentation for UDDI publishing API
713  + redesigned examples and tests (~240 tests for now)
714
7150.43 Tue Nov 28 01:47:02 2000
716  ! fixed bug in UDDI interface that made UDDI client almost useless
717  ! fixed Makefile.PL
718  ! tests confirmed that memory leak is gone
719  + changed syntax for UDDI client to more flexible/convenient
720  + added limited support for WSDL schemas. Dynamic and stub access
721    supported
722  + added script for stub generation (stubmaker.pl)
723  + optimized code on server side
724  + object interface for SOAP, UDDI and schemas are supported
725    consistently
726  + allowed manipulation of method's attributes and namespaces
727  + added attributes encoding ('&', '<' and '"' are encoded)
728  + updated documentation
729    (thanks to Robert Barta who basically did this work)
730  + added more examples and tests (154 for now)
731
7320.42 Tue Nov 14 23:14:18 2000
733  + added UDDI client (UDDI::Lite) with documentation
734  + added M-POST functionality in HTTP::Client
735  + added redirect (3??) functionality in HTTP::Client
736  + added session cache for M-POSTs and redirects
737  + added conversion of all objects to o-b-r in parameters
738  + changed passing envelope into method
739  + allowed \x0d and \x0a in strings (will not do base64 encode)
740  + added die with object that allows to specify complex Fault detail
741  + optimized XML encoding
742  + allowed function call with autodispatch
743  + improved syntax for 'use SOAP::Lite'
744  + added soap.tcp example for TCP server implementation
745  + added tests with Microsoft implementation
746  + added documentation and tests (145 for now)
747
7480.41 Tue Oct 31 01:24:51 2000
749  ! fixed memory leak on server side
750  ! fixed die on absence of HTTP::* modules on server side
751  ! fixed working with keep-alive connections (added test with
752    Xmethods)
753  + changed autotyping from double to float
754  + added support for proxy authorization (thanks to Murray Nesbitt)
755  + added TCP client/server implementation
756  + added benchmark for all implementations except smtp/pop3
757  + added SOAP::Trace for detail logging on client/server side
758  + added examples/tests for Apache::Registry implementations
759  + added more examples, documentation and tests (127 for now)
760
7610.40 Sun Oct 15 18:20:55 2000
762  ! fixed die in mailto: protocol if you don't have URI::URL installed
763  ! fixed misbehavior on Mac platform (thanks to Carl K. Cunningham)
764  + added default namespace processing [xmlns] (thanks to Petr Janata)
765  + added objects-by-reference, simple garbage collection and
766    activation
767  + added full access to envelope on server side
768  + added versionMismatch reaction
769  + added local: protocol for local binding without any transport
770  + added examples for objects-by-reference: persistent/session
771    iterators and chat (40 lines on server and 25 lines on client side)
772
7730.39 Sun Oct  8 22:55:20 2000
774  ! fixed incompatibility with Perl 5.005
775  + added interactive Makefile.PL for CPAN installation
776
7770.38 Thu Oct  5 22:06:20 2000
778  ! fixed namespace for base64 encoding
779  ! fixed security problem on server side, upgrade is highly
780    recommended
781  + added HTTPS/SSL support
782  + added SMTP client implementation
783  + added POP3 server implementation
784  + added support for Basic/Digest server authentication
785  + added support for header(s) on client/server side with SOAP::Header
786  + added Array and SOAPStruct for interoperability with ApacheSOAP
787  + added generic class for server support SOAP::Server
788  + added Actor attribute
789  + added more examples, documentation and tests (88 for now)
790
7910.36 Sun Sep 24 20:12:10 2000
792  ! fixed output parameters autobinding
793  + added mod_perl server implementation
794  + added recognizing all simple types mentioned in specification
795  + added support for 'hex' type
796  + added more documentation (twice as much as before)
797  + added more tests (74 for now)
798
7990.35 Sun Sep 17 23:57:10 2000
800  ! fixed minors (Response instead of Respond, server will map client's
801    URI)
802  + cleaned HTTP::Server internals (will go to SOAP::Server in the
803    future)
804  + test.pl won't abort on transport errors. Failed test will be
805    skipped
806  + added daemon server implementation
807  + added cgi/daemon server implementation examples
808  + added deserialization into blessed reference
809  + added dynamic/static class/method binding
810  + added output parameters matching based on signature (name/type)
811  + added real object transferring back and forth (see example of
812    Chatbot::Eliza, fixed for CODE references)
813  + added more interoperability with on_action on client and server
814    side
815  + added new events (on_action, on_fault, on_nonserialized)
816  + added global class settings with 'use SOAP::Lite ...'
817  + added code for returning application errors on server
818  + added autodispatch
819  + added SOAP prefix to method calls
820  + added more documentation
821  + added more tests (54 for now)
822  + added more examples (Chatbot::Eliza, My::PingPong)
823
8240.32 Sun Sep 10 23:27:10 2000
825  ! fixed warnings with -w
826  ! fixed blessed reference serialization. Assigned type has top
827    priority
828  + added working with current node in SOAP::SOM
829  + SOAP::SOM::valueof returns nodeset
830  + SOAP::SOM::match returns boolean in boolean context
831  + added raw xml accepting and output
832  + added UserAgent parameters to SOAP::Transport (understands timeout)
833  + added better diagnostic on transport errors in test.pl
834  + added 'method', 'fault', 'freeform' types of Envelope
835  + added server implementation
836  + added CGI interface to server implementation
837  + added My::Examples.pm as example of loaded class for SOAP server
838  + added more tests (47 for now)
839
8400.31 Wed Sep  6 00:36:15 2000
841  + added expressions to SOAP::SOM->match method
842  + added deserialization of circular references
843  + added tests for deserialization
844  + added documentation
845
8460.3  Mon Sep  4 00:59:04 2000
847  + first public beta version
848  + added live SOAP calls
849  + added test suite (25 tests)
850  + added documentation
851  + added interactive shell (SOAPsh.pl)
852
8530.2  Mon Aug 24 19:34:24 2000
854  - next stable version; works with public test servers
855
8560.1  Mon Aug 11 23:12:02 2000
857  - first version; serialization part only
858
859