changelog 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648
  1. 2003-07-21, version 0.6.5
  2. - soap_transport_http: SOAPAction header is quoted again, fixes problem w/ Weblogic Server
  3. - applied Jason Levitt patch for proper array serialization, fixes problem w/ Amazon shopping cart services
  4. - fixed null value serialization
  5. - applied patch from "BZC ToOn'S" - fixes wsdl serialization when no parameters
  6. - applied John's patch, implementing compression for the server
  7. 2003-07-22, version 0.6.5
  8. - soap_server: fixed bug causing charset encoding not to be passed to the parser
  9. - soap_fault: added default encoding to the fault serialization
  10. - soap_parser: changed the parser to pre-load the parent's result array when processing scalar values. This increases parsing speed.
  11. 2003-07-23, version 0.6.5
  12. - soap_base: fix code that overwrites user-supplied attributes in serialize_val
  13. - soap_base: use arrays-of-arrays rather than attempting multi-dimensional in serialize_val
  14. - xmlschema: emit import statements and qualify all elements with prefix in serializeSchema (better interop with validation tools)
  15. - soapclient: get xml character encoding from HTTP Content-Type header if provided, e.g. text/xml;charset="UTF-8"
  16. - soapclient: use headers in call if provided (previously ignored this parameter)
  17. - soap_server: in parse_request, if neither getallheaders nor $_SERVER are available, use $HTTP_SERVER_VARS to get SOAPAction and xml encoding
  18. 2003-07-24, version 0.6.5
  19. - soap_transport_http: apply patch from Steven Brown "if the server closes connection prematurely, nusoap would spin trying to read data that isn't there"
  20. 2003-07-25, version 0.6.5
  21. - wsdl: apply patch from Sven to workaround single schema limitation
  22. - wsdl: apply a variant of the patch from Holger to handle empty values for array by serializing an array with 0 elements
  23. - xmlschema: remove the redundant default namespace attribute on the schema element; everything in xsd is explicitly specified as being from xsd
  24. - soap_transport_http: fix setCredentials and add TODO comments in sendHTTPS about what to change if this setCredentials stays
  25. 2003-07-30, version 0.6.5
  26. - nusoap_base: change documentation of soap_defencoding to specify it is the encoding for outgoing messages
  27. - nusoap_base: only change &, <, > to entities, not all HTML entities
  28. - soap_transport_http: update the Content-Type header in sendRequest, since soap_defencoding could be changed after ctor is called
  29. - soap_server: use soap_defencoding instead of charset_encoding
  30. - soap_server: read encoding from _SERVER if available
  31. - nusoap_base: do entity translation for string parameters with an xsd type specified (thanks David Derr)
  32. 2003-07-31, version 0.6.5
  33. - soap_transport_http: add proxy authentication
  34. - soap_transport_http: build payload the same way for http and https
  35. - wsdl: add proxy authentication
  36. - soapclient: add proxy authentication
  37. - soapclient: allow proxy information in ctor, so that it can be used for wsdl
  38. 2003-08-01, version 0.6.5
  39. - soap_transport_http: close a persistent connection that's at EOF
  40. - soap_transport_http: prevent conflicts between setEncoding and usePersistentConnection
  41. - soap_transport_http: fix use of $headers instead of $this->incoming_headers in getResponse
  42. - soapclient: improve handling of persistent connections
  43. - soapclient: force xml_encoding to upper case
  44. - soap_server: let the Web server decide whether to close the connection (no Connection: close header)
  45. - soap_server: force xml_encoding to upper case
  46. 2003-08-04, version 0.6.5
  47. - soap_parser: use XML type information to pick a PHP data type; also decode base64
  48. - soap_server: read all HTTP headers when using _SERVER or HTTP_SERVER_VARS
  49. - soap_server: add gzip encoding support for outgoing messages
  50. - soap_transport_http: deflate is gzcompress/gzuncompress (cf. http://archive.develooper.com/libwww@perl.org/msg04650.html)
  51. - soap_transport_http: clean use of persistentConnection so it's always a set boolean
  52. - soapclient: add responseData member to access deflated/gunzipped payload
  53. 2003-08-05, version 0.6.5
  54. - soap_server: look multiple places when setting debug_flag
  55. 2003-08-07, version 0.6.5
  56. - nusoap_base: serialize specified type (e.g. ArrayOfString) even for simple array
  57. - wsdl: only specify encodingStyle in the input/output soap bindings when it is not empty (thanks Guillaume)
  58. 2003-08-15, version 0.6.5
  59. - soap_parser: fix parsing of elements with no XSD type specified
  60. - soap_parser: use PHP string type for XSD long and unsignedLong types
  61. 2003-08-16, version 0.6.5
  62. - soap_parser: fix code generating warning (thanks Torsten)
  63. 2003-08-19, version 0.6.5
  64. - soap_parser: fix another line of code generating a warning (thanks Torsten)
  65. 2003-08-22, version 0.6.5
  66. - soap_server: remove all '--' from debug_str; previous code changed '---' to '- --'
  67. - wsdl, soapclient, soap_parser: patch submitted by Mark Spavin as described by
  68. the following...
  69. > Changes for the multiple/nested imports from the wsdl file. This builds an
  70. > array of files not just the last one and also checks for relative paths to
  71. > the parent. This will then get the imported files from the remote site
  72. > instead of your local disk. Local wsdl files should still work (untested).
  73. >
  74. > Changes for multiple encoding sytles as previously posted
  75. 2003-08-24, version 0.6.5
  76. - wsdl, soapclient: fix some PHP notices from previous update
  77. 2003-08-26, version 0.6.5
  78. - wsdl: support multiple SOAP ports
  79. - soapclient, soap_server: when no charset is specified, use UTF-8, even though HTTP specifies US-ASCII.
  80. - soap_transport_http: do not prepend $host with 'ssl://' for https (is this required for older cURL versions?)
  81. 2003-08-27, version 0.6.5
  82. - soap_server: support compressed request messages (thanks John Huong)
  83. - soap_parser: deserialize Apache Vector as an array
  84. - xmlschema: use $this->typemap in getPHPType (which is not used)
  85. - soapclient, wsdl: check for WSDL errors after serializing parameters
  86. - nusoap_base: add serialization of Apache Map (when not using WSDL)
  87. - wsdl: add serialization of Apache Map (when using WSDL)
  88. - wsdl: only change &, <, > to entities, not all HTML entities
  89. 2003-08-28, version 0.6.5
  90. - soap_transport_http: disable cURL verification of peer and server (formerly the cURL default)
  91. - soap_transport_http: mingle cURL code with straight http, so sendHTTP is no longer needed
  92. 2003-08-29, version 0.6.6
  93. - soap_transport_http: add setContentType
  94. - soapclient: call setContentType using new getHTTPContentType and getHTTPContentTypeCharset
  95. 2003-09-05, version 0.6.6
  96. - wsdl: add some more code to handle null/nil values (but there's still a way to go)
  97. 2003-10-21, version 0.6.6
  98. - soap_transport_http: only include port in Host header if it was specified in the URL
  99. - soap_transport_http: add some code to use OpenSSL for PHP ssl:// scheme, but comment out since it's not ready
  100. - soap_server: use $_SERVER['PHP_SELF'] if $GLOBALS['PHP_SELF'] is not set
  101. - wsdl: add WSDL request and response and transport debug to debug
  102. - wsdl: handle custom type extending xmlschema namespace (GLUE ... Thanks Matt)
  103. - soap_parser: add param to docs
  104. - soapclient: add getHTTPBody, getHTTPContentType, getHTTPContentTypeCharset (anticipating MIME subclass)
  105. 2003-10-28, version 0.6.6
  106. - nusoap_base: add expandEntities method
  107. - wsdl: use expandEntities
  108. - soap_fault: use expandEntities
  109. - soap_transport_http: Allow credentials to be included in URL, rather than requiring setCredentials
  110. - soap_transport_http: Merge HTTP headers that span multiple lines
  111. - soap_parser: Properly set errors in ctor
  112. - soapclient: Pass headers to parseResponse and parse them in that method
  113. 2003-10-30, version 0.6.6
  114. - xmlschema: Add some information for the related type to an element
  115. 2003-12-09, version 0.6.6
  116. - nusoap_base: Add some namespace methods previously in xmlschema
  117. - xmlschema: Improve parsing of complexType, element and simpleType
  118. - xmlschema: Improve serialization
  119. - xmlschema: Track imports
  120. - xmlschema: Track elementFormDefault and form attributes
  121. - wsdl: Support multiple <schema> (note that setting $server->wsdl->schemaTargetNamespace no longer does anything! Use configureWSDL instead.)
  122. - wsdl: Use form attribute of element to control namespace specification
  123. - wsdl: Support chained imports (A imports B which imports C)
  124. - wsdl: Include port in endpoint address when serializing
  125. - soap_server: Fix use of style (rpc|document) and use (encoded|literal)
  126. - soap_server: Support _SERVER[CONTENT_TYPE] in addition to _SERVER[HTTP_CONTENT_TYPE]
  127. - soap_server: Support wsdl with multiple <schema>
  128. - soap_client: Remove a var_dump
  129. - soap_client: Add style and use parameters to call method to support doc/lit without WSDL
  130. - soap_transport_http: Check that $this->fp exists when doing persistent connections
  131. 2003-12-17, version 0.6.6
  132. - soap_server: pass namespaces to xmlschema constructor
  133. - wsdl: post-process after all imports
  134. - wsdl: remove some debug, add some error handling
  135. - xmlschema: allow enclosing namespaces to be specified in constructor
  136. - xmlschema: improve handling of compositors and simple types
  137. 2004-01-08, version 0.6.6
  138. - soap_server: when requested WSDL is in a file, return to client using passthru (thanks Ingo Fischer)
  139. - soapclient: have proxy inherit more client state
  140. - soapclient: allow timeout and response timeout to be specified in the constructor
  141. - wsdl: allow timeout and response timeout to be specified in the constructor
  142. - soap_transport_http: allow response timeout to be specified in send and sendHTTPS
  143. 2004-01-28, version 0.6.6
  144. - wsdl: add namespace for array and scalar when form is qualified
  145. - wsdl: fix a bug in which data type of complexType elements were ignored in serialization
  146. - wsdl: enhance handling of URLs with file scheme
  147. - wsdl: add addSimpleType
  148. - xmlschema: add addSimpleType
  149. - xmlschema: always set phpType elements
  150. - soapclient: allow a wsdl instance to be specified in constructor
  151. - soap_server: allow a wsdl instance to be specified in constructor (not tested!)
  152. - soap_server: fix default SOAPAction created in register method
  153. - soap_transport_http: accept chunking with LF separators in addition to CRLF.
  154. - wsdlcache: added class
  155. - nusoapmime: fix comments
  156. 2004-02-23, version 0.6.6
  157. - soap_transport_http: don't try to unchunk cURL data, since cURL already does it
  158. - soap_transport_http: append CVS revision to version in User-Agent
  159. - wsdl: serialize boolean as true|false, not 1|0, to agree with XML Schema
  160. - soap_server: always exit() after returning WSDL
  161. - soap_server: use the WSDL URL scheme as the default endpoint URL scheme
  162. - soap_server: append CVS revision to version in X-SOAP-Server
  163. - nusoap_base: add (CVS) revision
  164. - wsdlcache: synchronize using a per-WSDL lock file (Thanks Ingo)
  165. - wsdlcache: add cache lifetime, after which cache contents are invalidated (Thanks Ingo)
  166. 2004-03-15, version 0.6.6
  167. - nusoap_base: add isArraySimpleOrStruct method
  168. - soap_server: improve WSDL URL scheme determination
  169. - soap_server: only deflate/gzip payloads > 1024 bytes
  170. - soap_server: fix parameter order in fault method (always used as faultcode, faultstring)
  171. - soap_server: refactor parse_request into multiple functions (for sanity)
  172. - soap_server: set the namespace on the Response element to the same as the request
  173. - soap_server: name the return value element 'return' by default
  174. - soap_server: added and documented data fields, so that service programmers can use them if desired
  175. - soap_parser: standardize parsing error message
  176. - soap_parser: fix document and responseHeaders so they are the correct XML text (as documented)
  177. - soap_transport_http: fix read from persistent connection
  178. - soapclient: clean up debugging for persistent connection
  179. - wsdl: enforce correct naming of messages parts when an associative array is used for parameters
  180. - wsdl: better serialization of null values
  181. - wsdl: standardize parsing error message
  182. - xmlschema: standardize parsing error message
  183. 2004-03-24, version 0.6.7
  184. - soap_transport_http: add digest authentication (based on code by Kevin A. Miller)
  185. - xmlschema: improve parsing of import elements
  186. - wsdl: do schema imports even if there are no wsdl imports
  187. 2004-04-12, version 0.6.7
  188. - wsdl: serialize multiple elements when maxOccurs="unbounded" and value is an array
  189. - wsdl: serialize soapval values (used to force an XML type, e.g. when WSDL uses an abstract type)
  190. - nusoapmime: do not require nusoap.php (it is now the programmer's responsibility)
  191. 2004-04-21, version 0.6.7
  192. - soap_parser: parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element)
  193. - soap_server: do not wrap response in a response element for a document style service
  194. 2004-04-30, version 0.6.7
  195. - soap_transport_http: allow digest auth params to be separated by "," as well as ", "
  196. - soap_transport_http: re-initialize incoming headers for each response
  197. - soap_server: add methodreturnisliteralxml property to allow service function to return XML as a string
  198. - soapclient: improve rpc/literal support
  199. - soapclient: allow XML string as call params in addition to array
  200. - soapclient: support document style and literal encoding when not using WSDL
  201. 2004-05-05, version 0.6.7
  202. - wsdl: serialize PHP objects for WSDL XML Schema complexTypes, in addition to associative arrays
  203. - wsdl: fix WSDL generation when there is no encodingStyle
  204. - soap_transport_http: suppress fsockopen warnings
  205. - soap_transport_http: detect socket timeouts when reading (0 bytes returned)
  206. - soap_transport_http: read chunked content "in-line" so it works on a persistent connection
  207. - nusoap_base: serialize boolean as true|false, not 1|0, to agree with XML Schema
  208. - nusoap_base: serialize array of struct differently than array of array
  209. 2004-06-25, version 0.6.8
  210. - soap_server: prefer gzip to deflate, since IE does not like our deflate
  211. - soap_server: move webDescription to the wsdl class
  212. - soap_server: allow class and instance method calls for service (thanks Ingo Fischer and Roland Knall)
  213. - wsdl: get webDescription from the soap_server class
  214. - wsdl: allow compression from the server
  215. - wsdl: fix serialization of soapval without a type
  216. - wsdl: propagate debug value from query string to SOAP endpoint in programmatic WSDL generation
  217. - nusoap_base: add anyType, anySimpleType for 2001 XML Schema
  218. - nusoap_base: provide additional debug functions
  219. - soap_transport_http: ignore Content-Length when chunked encoding is used
  220. - soap_transport_http: remove ':' from username for Basic authentication (cf. RFC 2617)
  221. - soap_transport_http: urldecode username and password taken from URL
  222. - soap_transport_http: use raw inflate/deflate for IE/IIS compatibility, rather than having Zlib headers according to HTTP 1.1 spec
  223. - soap_transport_http: attempt to handle the case when both the service application and Web server compress the response
  224. - soapclient: when creating proxy methods, replace '.' in operation name with '__' in function name
  225. - soapclient: initialize requestHeaders in proxy
  226. - general: use new debug methods; never access debug_str directly
  227. 2004-09-30, version 0.6.8
  228. - soapclient: do not allow getProxy call when WSDL is not used
  229. - soapclient: use ISO-8859-1 as the charset if not specified in the Content-Type header
  230. - soapclient: when an empty string is specified for the call namespace, do not put the method element in a namespace
  231. - soapclient: let soap_transport_http check for SSL support
  232. - soapclient: have proxy inherit soap_defencoding from the client from which it is generated
  233. - soapclient: do not assume that 'ns1' is an unused namespace prefix; always generate namespace prefixes randomly
  234. - soap_parser: compare any encoding in the XML declaration to the charset from the HTTP Content-Type header (thanks Ingo Fischer)
  235. - soap_parser: improve parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element)
  236. - soap_server: use ISO-8859-1 as the charset if not specified in the Content-Type header
  237. - soap_server: allow suppression of automatic UTF-8 decoding
  238. - soap_server: fix a bug when call_user_func_array() is used
  239. - soap_transport_http: correct digest authentication through a proxy
  240. - wsdl: serialize SOAP-ENC types similarly to XSD types
  241. - xmlschema: force unprefixed type into default namespace
  242. - xmlschema: fix serialization of definition of simple types
  243. 2004-10-01, version 0.6.8
  244. - soap_parser: handle default namespace attributes
  245. - soap_server: add default_utf8 field
  246. - soap_server: support literal encoding (with RPC style)
  247. - soap_transport_http: parse HTTP status and generate error for 300, 302-307, 400, 401-417, 501-505 (thanks for the idea Ghislain)
  248. - soap_transport_http: follow HTTP redirection (HTTP status 301 and Location header) (thanks for the idea Ghislain)
  249. - xmlschema: allow any attributes to be specified in an element of a complexType, e.g., abstract, default, form, minOccurs, maxOccurs, nillable (thanks Jirka Pech for the original patch)
  250. 2004-10-02, version 0.6.8
  251. - soapclient: read/write cookies (thanks Ingo)
  252. - soap_server: change faultcode on non-resendable faults to Client
  253. - soap_transport_http: read/write cookies (thanks Ingo)
  254. 2004-10-05, version 0.6.8
  255. - wsdl: add addElement method
  256. - wsdl: support the document style in the register method
  257. - xmlschema: parse unnamed simpleTypes, rather than ignoring them
  258. - xmlschema: include untyped elements when parsing a complexType
  259. - xmlschema: add addElement method
  260. 2004-10-14, version 0.6.8
  261. - soapclient: support client certificates
  262. - soap_parser: deserialize attributes, prefixing names with "!"
  263. - soap_server: notify the client with HTML when WSDL is requested but not supported by service
  264. - soap_transport_http: support client certificates
  265. - wsdl: support defaults for elements of a complexType
  266. - wsdl: serialize elements from complexType extension base
  267. - wsdl: serialize data (associative array elements) as attributes according to XML Schema
  268. - xmlschema: record extension base if present for a complexType
  269. 2004-12-15, version 0.6.8
  270. - nusoap_base: add 2000 XML Schema (rare, but used by Akamai)
  271. - soap_parser: avoid deserializing more common attributes that are not data
  272. - soap_parser: be lax when HTTP specifies ISO-8859-1 (the default) and XML specifies UTF-8 (the norm)
  273. - soap_server: account for the fact that get_class_methods returns methods in all lower case (thanks Steve Haldane)
  274. - soap_transport_http: parse digest info that includes '=' in the data (thanks Jinsuk Kim)
  275. - wsdl: feably handle some cases for literal serialization of form="unqualified" elements
  276. - wsdl: don't serialize the decimal portion of a PHP double when the XML type is long
  277. - wsdl: fix serialization of attributes for complexType that is an extension
  278. - wsdlcache: enhance diagnostics
  279. - xmlschema: handle untyped elements
  280. - xmlschema: handle WSDL for SOAP Array that uses the base attribute plus a sequence of element
  281. 2005-01-22, version 0.6.8
  282. - wsdl: allow an element in one schema to have a type from another schema
  283. 2005-01-24, version 0.6.8
  284. - xmlschema: correctly parse nested complexType definitions
  285. 2005-02-14, version 0.6.8
  286. - nusoap_base: fix a bug in which attributes were sometimes not serialized with a value
  287. - nusoap_base: improve serialization of null values (thanks Dominique Stender)
  288. - soap_parser: parse null values by handling the nil attribute (thanks Dominique Stender)
  289. - soap_server: set character encoding for a fault to be the same as for the server (thanks Mark Scott)
  290. - soap_server: correctly check for null value returned from method when WSDL is used (without WSDL, cannot distinguish whether NULL or void return is desired)
  291. - soapclient: for document style, call should always return an array rooted at the response part (all bets are off when there are multiple parts)
  292. - xmlschema: save enumeration values parsed from WSDL
  293. 2005-02-10, version 0.6.9
  294. - soapclient: only set SOAP headers when they are specified in call params (so setHeaders still works)
  295. 2005-04-04, version 0.6.9
  296. - soap_server: use get_class instead of is_a (thanks Thomas Noel)
  297. - soapclient: use get_class instead of is_a (thanks Thomas Noel)
  298. - soapclient: add setEndpoint method
  299. - soap_transport_http: fix client certificates (thanks Doug Anarino and Eryan Eriobowo)
  300. 2005-04-29, version 0.6.9
  301. - nusoap_base: add global variable and methods for setting debug level
  302. - nusoap_base: use xsd:anyType instead of xsd:ur-type to serialize arrays with multiple element types (thanks Ingo Fischer)
  303. - nusoap_base: expand entities in attributes (thanks Gaetano Giunta)
  304. - soapclient: call parent constructor
  305. - soapval: call parent constructor
  306. - soap_fault: call parent constructor
  307. - soap_parser: call parent constructor
  308. - soap_server: assume get_class_methods always returns lower case for PHP 4.x only
  309. - soap_server: call parent constructor
  310. - soap_transport_http: do nothing in setEncoding if gzdeflate is not present (thanks Franck Touanen for pointing this out)
  311. - soap_transport_http: fix check for server request for digest authentication (thanks Mark Spavin)
  312. - soap_transport_http: call parent constructor
  313. - wsdl: fix documentation page popup of one method after another (thanks Owen)
  314. - wsdl: call parent constructor
  315. - wsdl: expand entities in attributes (thanks Gaetano Giunta)
  316. - xmlschema: call parent constructor
  317. 2005-06-03, version 0.6.9
  318. - nusoap_base: serialize empty arrays as having elements xsd:anyType[0]
  319. - nusoap_base: add encodingStyle parameter to serializeEnvelope
  320. - nusoap_base: serialize xsi:type with nil values
  321. - nusoap_base: improve debug and comments
  322. - soap_parser: correctly parse an empty array to an empty array, not an empty string
  323. - soap_parser: improve debug and comments
  324. - soap_server: specify encodingStyle for envelope when WSDL is used
  325. - soapclient: factor out new getProxyClassCode method
  326. - soapclient: specify encodingStyle for envelope
  327. - soapclient: improve debug and comments
  328. - wsdl: add namespace for Apache SOAP types if a variable of such type is serialized
  329. - wsdl: serialize nil value for nillable elements when no value is provided
  330. - wsdl: serialize xsi:type with nil values
  331. - wsdl: copy attributes as well as elements to an element from its complexType
  332. - wsdl: specify encodingStyle for operations
  333. - wsdl: improve debug and comments
  334. - xmlschema: improve debug and comments
  335. 2005-06-03, version 0.7.0
  336. - nusoap_base: improve debug and comments
  337. - nusoap_base: fix version, which should have been 0.7.0 since 2005-03-04
  338. 2005-06-06, version 0.7.1
  339. - nusoap_base: adjust numeric element names for serialization, instead of forcing them to 'soapVal'
  340. - nusoapmime: add type=text/xml to multipart/related (thanks Emmanuel Cordonnier)
  341. - soap_fault: fix serialization of detail
  342. - soap_server: check required parameters for register method
  343. - soap_server: when getallheaders is used, massage header names
  344. - soap_server: use SOAPAction to determine operation when doc/lit service does not wrap parameters in an element with the method name (thanks Peter Hrastnik)
  345. - soap_transport_http: correctly handle multiple HTTP/1.1 100 responses for https (thanks Jan Slabon)
  346. - wsdl: fixed documentation for addComplexType (thanks Csintalan Ádám)
  347. - wsdl: serialize array data when maxOccurs = 'unbounded' OR maxOccurs > 1 (thanks Dominique Schreckling)
  348. - wsdl: when serializing a string == 'false' as a boolean, set the value to false
  349. - wsdl: when serializing a complexType, require the PHP value supplied to be an array
  350. 2005-07-01, version 0.7.1
  351. - nusoap_base: Allow SOAP headers to be supplied as an array like parameters
  352. - soap_parser: de-serialize simpleContent that accompanies complexContent
  353. - soap_server: append debug information when programmatically-defined WSDL is returned
  354. - soap_transport_http: Add debug when an outgoing header is set
  355. - soapclient: Allow SOAP headers to be supplied as an array like parameters
  356. - xmlschema: serialize attributes more generally, rather than assuming they are for SOAP 1.1 Array
  357. - wsdl: when serializing, look up types by namespace, not prefix (simple programmatic doc/lit WSDL now seems to work)
  358. - wsdl: process namespace declarations first when parsing an element
  359. 2005-07-27, version 0.7.1
  360. - nusoap_base: do not override supplied element name with class name when serializing an object in serialize_val
  361. - nusoap_base: remove http://soapinterop.org/xsd (si) from namespaces array
  362. - nusoapmime: add nusoapservermime class to implement MIME attachments on the server
  363. - soap_fault: improve documentation
  364. - soap_server: improve documentation
  365. - soap_server: make consistent use of _SERVER and HTTP_SERVER_VARS
  366. - soap_server: make all incoming HTTP header keys lower case
  367. - soap_server: add hook functions to support subclassing for MIME attachments
  368. - soap_transport_http: remove an unnecessary global statement
  369. - soapclient: when creating a proxy, make $params within each function an associative array
  370. - soapval: improve documentation
  371. - wsdl: when serializing complexType elements, used typed serialization if there is either a type or a reference for the element
  372. - wsdl: allow PHP objects to be serialized as SOAP structs in serializeType
  373. - wsdl: for WSDL and XML Schema imports, don't forget to use the TCP port number (thanks Luca GIOPPO)
  374. - wsdl: make consistent use of _SERVER and HTTP_SERVER_VARS
  375. - xmlschema: improve documentation
  376. 2005-07-31, version 0.7.2
  377. - nusoap_base: correctly serialize attributes in serialize_val (thanks Hidran Arias)
  378. - soap_parser: when resolving references, do not assume that buildVal returns an array (thanks Akshell)
  379. - soap_parser: removed decode_entities, which does not work (thanks Martin Sarsale)
  380. - soap_server: fix a bug parsing headers from _SERVER and HTTP_SERVER_VARS (thanks Bert Catsburg)
  381. - soap_server: parse all "headers" from HTTP_SERVER_VARS (not just HTTP_*)
  382. - soap_server: use PHP_SELF instead of SCRIPT_NAME for WSDL endpoint
  383. - soap_server: when generating a fault while debug_flag is true, put debug into faultdetail
  384. - wsdl: add enumeration parameter to addSimpleType
  385. - xmlschema: add enumeration parameter to addSimpleType
  386. 2006-02-02, version 0.7.2
  387. - soapclient: initialize paramArrayStr to improve proxy generation
  388. - soap_parser: handle PHP5 soapclient's incorrect transmission of WSDL-described SOAP encoded arrays.
  389. - soap_server: don't assume _SERVER['HTTPS'] is set; try HTTP_SERVER_VARS['HTTPS'] if it is not
  390. - soap_server: "flatten out" the parameter array to call_user_func_array (thanks André Mamitzsch)
  391. - soap_server: make thrown exceptions conform to specs
  392. - wsdl: use serialize_val to serialize an array when the XSD type is soapenc:Array (JBoss/Axis does this)
  393. - wsdl: change formatting of serialized XML for the WSDL
  394. - xmlschema: change formatting of namespaces when serializing XML for the schema
  395. 2006-04-07, version 0.7.2
  396. - soap_server: if methodparams is not an array, call call_user_func_array with an empty array (thanks Eric Grossi)
  397. - wsdl: distinguish parts with element specified from those with type specified by suffixing element names with ^
  398. - wsdl: do a case-insensitive match on schema URI when looking for type
  399. - xmlschema: only get element (not type) when name has ^ suffix
  400. 2006-05-16, version 0.7.2
  401. - soapclient: add getHeader to get parsed SOAP Header
  402. - soap_parser: check status when receiving Header or Body element
  403. - soap_parser: add soapheader
  404. - soap_server: add requestHeader with parsed SOAP Header
  405. 2006-06-15, version 0.7.2
  406. - wsdl: fix bug in addComplexType (thanks Maarten Meijer)
  407. - soap_transport_http: change cURL message
  408. 2007-03-19, version 0.7.2
  409. - soapclient: declare as nusoapclient, then also subclass soapclient if SOAP extension not loaded
  410. - soapclientmime: declare as nusoapclientmime, then also subclass soapclientmime if SOAP extension not loaded
  411. 2007-03-28, version 0.7.2
  412. - nusoap_base: fix serialization of a soapval when its value is a soapval
  413. - soapval: fix serialization of a soapval when its value is a soapval
  414. - soapval: add __toString (cf. http://article.gmane.org/gmane.comp.php.nusoap.general/2776)
  415. - nusoapclient: use lazy retrieval of WSDL instead of always getting it in the constructor
  416. - nusoapclient: fix getProxy that was broken in last revision
  417. - wsdl: add ability to set authorization credentials and retrieve WSDL outside of constructor
  418. 2007-04-05, version 0.7.2
  419. - nusoapclientmime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman)
  420. - nusoapclientmime: obey RFC 2045 Section 5.1 (thanks Chris Butler)
  421. - nusoapservermime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman)
  422. - nusoapservermime: obey RFC 2045 Section 5.1 (thanks Chris Butler)
  423. - nusoap_base: remove extra whitespace from some XML elements
  424. - nusoap_base: allow SOAP headers to be specified as an associative array (thanks Unique)
  425. - nusoap_base: implement __toString
  426. - nusoap_base: improve doc accuracy and consistency (thanks Martin K?gler)
  427. - iso8601_to_timestamp: avoid problem with negative hours after calculation, etc. (thanks Guntram Trebs)
  428. - nusoapclient: support user-settable cURL options (thanks Ciprian Popovici)
  429. - nusoapclient: call SOAP 1.2 binding operations if no SOAP 1.1 present (there is no reason to believe this will always work!)
  430. - nusoapclient: improve doc accuracy and consistency (thanks Martin K?gler)
  431. - soap_server: don't try to use eval to call function when any parameter is an object
  432. - soap_server: don't print return value within debug string; returned objects would need __toString in PHP 5.2
  433. - soap_server: use URL scheme for WSDL access as the scheme in SOAPAction
  434. - soap_server: strip port number from server name (some FastCGI implementations include port in server name)
  435. - soap_transport_http: support user-settable cURL options (thanks Ciprian Popovici)
  436. - soap_transport_http: use cURL for NTLM authentication
  437. - soap_transport_http: make digest authentication work for GET as well as POST
  438. - soap_transport_http: improve doc accuracy and consistency (thanks Martin K?gler)
  439. - soapval: remove __toString
  440. - wsdl: set operation style if necessary, but do not override one already provided (thanks Raffaele Capobianco)
  441. - wsdl: check SOAP 1.2 binding operations if no SOAP 1.1 present
  442. - wsdl: improve doc accuracy and consistency (thanks Martin K?gler)
  443. - xmlschema: fix simpleType serialization
  444. - xmlschema: improve doc accuracy and consistency (thanks Martin K?gler)
  445. 2007-04-09, version 0.7.2
  446. - nusoapclient: set decode_utf8 when creating a proxy (thanks Dmitri Dmitrienko)
  447. - nusoapclient: rename class to nusoap_client
  448. - soap_fault: also provide a class named nusoap_fault
  449. - soap_parser: also provide a class named nusoap_parser
  450. - soap_server: also provide a class named nusoap_server
  451. - soap_transport_http: skip HTTP responses 301 and 401 when using cURL
  452. - soap_transport_http: don't force HTTP Connection header when using cURL
  453. - soap_transport_http: don't set HTTP Host and Content-Length headers when using cURL
  454. - soap_transport_http: support CURLOPT_SSLCERTPASSWD (thanks David Blanco)
  455. - wsdl: support user-settable cURL options (thanks Ciprian Popovici)
  456. - wsdl: serialize parameters for non-SOAP 1.1 binding operations (there is no reason to believe this will always work!)
  457. - xmlschema: also provide a class named nusoap_xmlschema
  458. - nusoapclientmime: rename class to nusoap_client_mime
  459. - nusoapservermime: rename class to nusoap_server_mime
  460. 2007-04-11, version 0.7.2
  461. - nusoap_client: enable cURL usage to be forced (thanks Giunta Gaetano)
  462. - soap_transport_http: enable cURL proxy usage (thanks Giunta Gaetano)
  463. - soap_transport_http: enable cURL usage to be forced (thanks Giunta Gaetano)
  464. - soap_transport_http: use cURL's HTTP authentication options for basic, digest
  465. - wsdl: enable cURL usage to be forced (thanks Giunta Gaetano)
  466. 2007-04-12, version 0.7.2
  467. - nusoap_client: add debug
  468. - nusoap_xmlschema: don't add elements of complexTypes to elements array (thanks Heiko Hund)
  469. - soap_transport_http: set cURL connection timeout if supported
  470. - soap_transport_http: add debug when setting cURL option
  471. - soap_transport_http: fix digest authentication broken in previous revision
  472. - wsdl: add debug
  473. - wsdlcache: address some issues with non-existing cache-files and PHP Warnings which came in such cases (thanks Ingo Fischer)
  474. - wsdlcache: change class name to nusoap_wsdlcache
  475. 2007-04-13, version 0.7.2
  476. - wsdl: wrap parameters if unwrapped values are supplied and WSDL specifies Microsoft-style wrapping
  477. 2007-04-16, version 0.7.2
  478. - nusoap_base: avoid warning in getDebugAsXMLComment
  479. - nusoap_client: small debug change
  480. - nusoap_client_mime: set responseData when the root part is found
  481. 2007-04-17, version 0.7.2
  482. - soap_transport_http: improve detection of undefined cURL options (thanks Ingo Fischer)
  483. 2007-05-28, version 0.7.2
  484. - soap_transport_http: support digest authentication opaque feature (cf. RFC 2617) (thanks Daniel Lacroix)
  485. - soap_transport_http: check safe_mode and open_basedir before setting CURLOPT_FOLLOWLOCATION
  486. - soap_transport_http: skip "HTTP/1.0 200 Connection established" header when cURL returns it (thanks Raimund Jacob)
  487. - nusoap_client: improve handling when getProxy is called and WSDL is not being used
  488. - nusoap_base: add comments about which specifications are used/implemented by NuSOAP
  489. - nusoap_xmlschema: create names for unnamed types that are unique by scope within XML Schema
  490. 2007-06-11, version 0.7.2
  491. - wsdl: wrap return value if unwrapped value is supplied and WSDL specifies Microsoft-style wrapping
  492. 2007-06-22, version 0.7.2
  493. - nusoap_xmlschema: fix serialization of simpleType restriction (thanks Rizwan Tejpar)
  494. 2007-07-30, version 0.7.2
  495. - nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras)
  496. - nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras)
  497. 2007-10-21, version 0.7.2
  498. - nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras)
  499. - nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras)
  500. 2007-10-26, version 0.7.2
  501. - nusoap_server: Fix munging of _SERVER variables that start with HTTP_ (thanks Thomas Wieczorek)
  502. 2007-10-30, version 0.7.2
  503. - nusoap_xmlschema: Serialize values for elementFormDefault, attributeFormDefault
  504. - wsdl: Improve consistency between doc/lit schema auto-wrapping and client's parsed schema
  505. - nusoap_server: Correct bug that placed encodingType in Envelope for doc/lit
  506. - nusoap_server: Specify elementFormDefault for schema within doc/lit wsdl
  507. 2007-10-31, version 0.7.2
  508. - wsdl: Fix typo in parametersMatchWrapped (thanks Sam Stepanyan)
  509. - soap_transport_http: Fix three typos in setProxy (thanks Sam Stepanyan)
  510. - nusoap_xmlschema: Fix typo in serializeTypeDef (thanks Sam Stepanyan)
  511. 2007-11-06, version 1.0rc1
  512. - wsdl: Improve handling of return values from doc/lit methods
  513. - nusoap_server: Handle case when method is not in a namespace
  514. 2007-11-27, version 1.0rc1
  515. - nusoap_server: always try to invoke service for a POST
  516. - nusoap_server: only return Location: for WSDL at http://...
  517. - nusoap_base: change some syntax associated with globalDebugLevel
  518. 2008-01-08, version 1.0rc1
  519. - nusoap_server: fix a typo where = was used instead of == (thanks J. (Johan) Bosma)
  520. 2008-01-10, version 1.0rc1
  521. - nusoap_client: handle case where request or response has no content-type header (thanks Ingo Fischer)
  522. - nusoap_server: handle case where request or response has no content-type header (thanks Ingo Fischer)
  523. - wsdl: change CSS for .title in webDescription (thanks Marcus Uy)
  524. 2008-01-25, version 1.0rc1
  525. - nusoap_xmlschema: when an element is of a complexType that is an extension, copy extensionBase from the type
  526. - nusoap_xmlschema: do not apply elementFormDefault to globally defined elements
  527. 2008-02-11, version 1.0rc1
  528. - wsdl: internally set form of wrapped parameter elements to unqualified (so server handles correctly)
  529. 2008-03-03, version 1.0.rc1
  530. - nusoap_xmlschema: fix extension when base type has no explicit prefix
  531. - nusoap_xmlschema: support XML Schema include
  532. - wsdl: improve support for sequence by serializing inherited attributes and elements first
  533. 2008-03-04, version 1.0.rc1
  534. - wsdl: allow WSDL port name to be specified in getOperations
  535. - nusoap_client: allow WSDL port name to be specified in ctor
  536. 2008-03-06, version 1.0rc1
  537. - wsdl: fix some port name variable references
  538. - nusoap_base: change comments regarding preferred mode of support
  539. - wsdl2nusoap: initial revision
  540. 2008-03-14, version 1.0rc1
  541. - nusoap_base: fix timezone offset in timestamp_to_iso8601 (thanks Mario Trojan)
  542. 2008-03-27, version 1.0rc1
  543. - nusoap_server: fix bug setting encodingStyle in serialize_return (thanks Luca Gobbo)
  544. 2008-05-15, version 1.0rc1
  545. - nusoap_parser: handle case where Header or Body tags are used within SOAP messages (thanks Sergey Zhuravlev)
  546. 2008-08-26, version 1.0rc1
  547. - wsdl: serialize simpleContent for complexType
  548. - wsdl: avoid serializing complexType elements with no value and minOccurs = 0 regardless of nillability
  549. 2010-04-26, version 0.9.5
  550. - nusoap_xmlschema: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  551. - wsdl: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  552. - soap_transport_http: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  553. - soap_transport_http: remove call to deprecated function set_magic_quotes_runtime
  554. - nusoap_server: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  555. - nusoap_server: check that value is an object before calling get_class (thanks Pier-Luc Duchaine)
  556. - nusoap_parser: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  557. - nusoap_client: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  558. - nusoap_client: do not assign the return value of new by reference (it is deprecated) (thanks Pier-Luc Duchaine)
  559. - nusoap_base: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine)
  560. - nusoapmime: do not assign the return value of new by reference (it is deprecated)