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' => '
' 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