| 56 | | This version has these enhancements; |
|---|
| 57 | | </p> |
|---|
| 58 | | <ul> |
|---|
| 59 | | <li>Supports all primitive datatypes of XML Schema Part2 Datatypes except NOTATION. |
|---|
| 60 | | Added types are Duration, gYearMonth, anyURI, QName and so on.</li> |
|---|
| 61 | | <li>Runs much faster than earlier versions. |
|---|
| 62 | | Some performance check and tuning has been done.</li> |
|---|
| 63 | | <li>Supports all Ruby objects marshalling/unmarshalling |
|---|
| 64 | | except some special objects. See below for more detail.</li> |
|---|
| | 56 | This version has these enhancements and bug fixes; |
|---|
| | 57 | </p> |
|---|
| | 58 | <ul> |
|---|
| | 59 | <li>Includes WSDL4R initial release. |
|---|
| | 60 | <ul> |
|---|
| | 61 | <li>Bare in mind this is an alpha level code. |
|---|
| | 62 | I wrote it halfway at half and a year ago, |
|---|
| | 63 | and wrote the rest part in half and a day. |
|---|
| | 64 | No comprehensive test, no strict syntax check, unfriendly error message, etc. |
|---|
| | 65 | Try it if you want, and find bugs in it.</li> |
|---|
| | 66 | <li>WSDL4R can run under XMLParser for now. |
|---|
| | 67 | You might be able to let it run under NQXML/REXML if you know SAX |
|---|
| | 68 | programming well. How XML processor is used under WSDL4R |
|---|
| | 69 | is as same as under SOAP4R.</li> |
|---|
| | 70 | </ul></li> |
|---|
| | 71 | <li>Added xsd:short support.</li> |
|---|
| | 72 | <li>::Float(double precision float in Ruby) is mapped to xsd:double now. |
|---|
| | 73 | It was mapped to xsd:float.</li> |
|---|
| | 74 | <li>Fixed a bug of year < 0 handling. B.C. 1 => -0001 in XMLSchema.</li> |
|---|
| | 75 | <li>Fixed a bug of exception serialization. Custam mappingRegistry was not used.</li> |
|---|
| | 76 | <li>Fixed a bug of regex for MediaType parsing.</li> |
|---|
| 73 | | |
|---|
| 74 | | <p> |
|---|
| 75 | | Here is detail of change. |
|---|
| 76 | | </p> |
|---|
| 77 | | |
|---|
| 78 | | <dl> |
|---|
| 79 | | <dt>Datatypes (XMLSchemaDatatypes.rb and baseData.rb)</dt> |
|---|
| 80 | | <dd> |
|---|
| 81 | | <ul> |
|---|
| 82 | | <li>Added duration, gYearMonth, gYear, gMonthDay, gDay, gMonth, anyURI and QName datetypes. |
|---|
| 83 | | All primitive datatypes in XML Schema Part 2 section 3.2 except NOTAION are supported now.</li> |
|---|
| 84 | | <li>Modified XSDDataTime, XSDDate and XSDTime implementation. These use a DataTime as a data holder.</li> |
|---|
| 85 | | <li>Follow date/3.2: date2.rb -> date.rb.</li> |
|---|
| 86 | | <li>Changed to_s representations of single float and double float. Thanks to gotoken.</li> |
|---|
| 87 | | <li>XSDFloat: Add '0' if given str ends with 'E'. Float( "-1.4E" ) might fail on some system.</li> |
|---|
| 88 | | <li>Added SOAPRawString class. Given string is embedded into XML instance directly. |
|---|
| 89 | | You can use this class to embed (numeric) character references manually.</li> |
|---|
| 90 | | <li>Fixed UTF8 regexp bug. XSDString uses this regexp to check a given string.</li> |
|---|
| 91 | | <li>Added UT for XMLSchemaDatatypes.rb. See test/xsd_ut.rb and test/baseData_ut.rb.</li> |
|---|
| 92 | | </ul></dd> |
|---|
| 93 | | |
|---|
| 94 | | <dt>SOAP <-> Ruby object mapping (mappingRegistry.rb and rpcUtils.rb)</dt> |
|---|
| 95 | | <dd> |
|---|
| 96 | | <ul> |
|---|
| 97 | | <li>Exception raised from server side could not be mapped to specific exception. Fixed.</li> |
|---|
| 98 | | <li>Refactoring to avoid *_eval. Reduced warnings.</li> |
|---|
| 99 | | <li>Added Range marshalling support.</li> |
|---|
| 100 | | <li>Regexp#options support under ruby/1.6.</li> |
|---|
| 101 | | <li>Supports cyclic Range such as; |
|---|
| 102 | | <pre> |
|---|
| 103 | | class Foo |
|---|
| 104 | | attr_accessor :foo |
|---|
| 105 | | def succ; end |
|---|
| 106 | | def <=>( rhs ); end |
|---|
| 107 | | end |
|---|
| 108 | | |
|---|
| 109 | | o1 = Foo.new |
|---|
| 110 | | o2 = Foo.new |
|---|
| 111 | | r = o1..o2 |
|---|
| 112 | | o1.foo = r |
|---|
| 113 | | |
|---|
| 114 | | p SOAPMarshal.load( SOAPMarshal.dump( r )) |
|---|
| 115 | | </pre></li> |
|---|
| 116 | | <li>Supports some instance variable of ruby standard class. |
|---|
| 117 | | But instance variable of Array, Hash, String, Float and Bignum are not supported because of restriction of SOAP encoding format...</li> |
|---|
| 118 | | <li>Alias ::SOAPMarshal to ::SOAP::Marshal.</li> |
|---|
| 119 | | <li>Added Marshal.load and Marshal.dump as aliases to Marshal.unmarshal and |
|---|
| 120 | | Marshal.unmarshal.</li> |
|---|
| 121 | | </ul></dd> |
|---|
| 122 | | |
|---|
| 123 | | <dt>misc</dt> |
|---|
| 124 | | <dd> |
|---|
| 125 | | <ul> |
|---|
| 126 | | <li>Dumps what parser is used when $DEBUG. Try 'ruby -d -rsoap/processor -e 0'</li> |
|---|
| 127 | | <li>Added CGI samples in sample/.</li> |
|---|
| 128 | | <li>Some performance check and tuning has been done on both client and server side. |
|---|
| 129 | | One bottle neck is Kernel.methods which SOAP4R use(d) while mapping SOAP Data Model <-> Ruby object. |
|---|
| 130 | | I replaced it with Object.respond_to? . |
|---|
| 131 | | Another bottle neck of client side is delegate.rb which is used by http-access2. |
|---|
| 132 | | Get <a href="http://www.ruby-lang.org/en/raa-list.rhtml?name=http-access2">[RAA:http-access2]</a> version F. |
|---|
| 133 | | </ul> |
|---|
| 134 | | </dd> |
|---|
| 135 | | </dl> |
|---|
| | 553 | <dt>1.4.7 - September 20, 2002</dt> |
|---|
| | 554 | <dd> |
|---|
| | 555 | This version has these enhancements and bug fixes; |
|---|
| | 556 | <ul> |
|---|
| | 557 | <li>Includes WSDL4R initial release. |
|---|
| | 558 | <ul> |
|---|
| | 559 | <li>Bare in mind this is an alpha level code. |
|---|
| | 560 | I wrote it halfway at half and a year ago, |
|---|
| | 561 | and wrote the rest part in half and a day. |
|---|
| | 562 | No comprehensive test, no strict syntax check, unfriendly error message, etc. |
|---|
| | 563 | Try it if you want, and find bugs in it.</li> |
|---|
| | 564 | <li>WSDL4R can run under XMLParser for now. |
|---|
| | 565 | You might be able to let it run under NQXML/REXML if you know SAX |
|---|
| | 566 | programming well. How XML processor is used under WSDL4R |
|---|
| | 567 | is as same as under SOAP4R.</li> |
|---|
| | 568 | </ul></li> |
|---|
| | 569 | <li>Added xsd:short support.</li> |
|---|
| | 570 | <li>::Float(double precision float in Ruby) is mapped to xsd:double now. |
|---|
| | 571 | It was mapped to xsd:float.</li> |
|---|
| | 572 | <li>Fixed a bug of year < 0 handling. B.C. 1 => -0001 in XMLSchema.</li> |
|---|
| | 573 | <li>Fixed a bug of exception serialization. Custam mappingRegistry was not used.</li> |
|---|
| | 574 | <li>Fixed a bug of regex for MediaType parsing.</li> |
|---|
| | 575 | </ul> |
|---|
| | 576 | </dd> |
|---|
| | 577 | |
|---|