forked from savonrb/savon
-
Notifications
You must be signed in to change notification settings - Fork 1
/
CHANGELOG
124 lines (101 loc) · 6.63 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
== 0.7.2 (2010-01-17)
* Exposed the Net::HTTP response (added by Kevin Ingolfsland). Use the "http" accessor (response.http) on your
Savon::Response to access the Net::HTTP response object.
* Fix for Github issue #21 (savon is stripping ?SOAP off the end of WSDL locations).
* Fix for Github issue #22 (REXML::ParseException parsing 401 Unauthorized response body).
* Fix for Github issue #19 (Unable to set attribute in name-spaced WSSE password element).
* Added support for global header and namespaces. See Github issue #9 (Setting headers and namespaces).
== 0.7.1 (2010-01-10)
* The Hash of HTTP headers for SOAP calls is now public via Savon::Request#headers.
Patch for: http://github.com/rubiii/savon/issues/#issue/8
== 0.7.0 (2010-01-09)
This version comes with several changes to the public API!
Pay attention to the following list and read the updated Wiki: http://wiki.github.com/rubiii/savon
* Changed how Savon::WSDL can be disabled. Instead of disabling the WSDL globally/per request via two
different methods, you now simply append an exclamation mark (!) to your SOAP call: client.get_all_users!
Make sure you know what you're doing because when the WSDL is disabled, Savon does not know about which
SOAP actions are valid and just dispatches everything.
* The Net::HTTP object used by Savon::Request to retrieve WSDL documents and execute SOAP calls is now public.
While this makes the library even more flexible, it also comes with two major changes:
* SSL client authentication needs to be defined directly on the Net::HTTP object:
client.request.http.client_cert = ...
I added a shortcut method for setting all options through a Hash similar to the previous implementation:
client.request.http.ssl_client_auth :client_cert => ...
* Open and read timeouts also need to be set on the Net::HTTP object:
client.request.http.open_timeout = 30
client.request.http.read_timeout = 30
* Please refer to the Net::HTTP documentation for more details:
http://www.ruby-doc.org/stdlib/libdoc/net/http/rdoc/index.html
* Thanks to JulianMorrison, Savon now supports HTTP basic authentication:
client.request.http.basic_auth "username", "password"
* Julian also added a way to explicitly specify the order of Hash keys and values, so you should now be able
to work with services requiring a specific order of input parameters while still using Hash input.
For example: client.find_user { |soap| soap.body = { :name => "Lucy", :id => 666, :@inorder => [:id, :name] } }
* Savon::Response#to_hash now returns the content inside of "soap:Body" instead of trying to go one level
deeper and return it's content. The previous implementation only worked when the "soap:Body" element
contained a single child. See: http://github.com/rubiii/savon/issues#issue/17
* Added Savon::SOAP#namespace as a shortcut for setting the "xmlns:wsdl" namespace.
Usage example: soap.namespace = "http://example.com"
== 0.6.8 (2010-01-01)
* Improved specifications for various kinds of WSDL documents.
* Added support for SOAP endpoints which are different than the WSDL endpoint of a service.
* Changed how SOAP actions and inputs are retrieved from the WSDL documents. This might break a few existing
implementations, but makes Savon work well with even more services. If this change breaks your implementation,
please take a look at the +action+ and +input+ methods of the Savon::SOAP object.
One specific problem I know of is working with the createsend WSDL and its namespaced actions.
To make it work, call the SOAP action without namespace and specify the input manually:
client.get_api_key { |soap| soap.input = "User.GetApiKey" }
== 0.6.7 (2009-12-18)
* Implemented support for a proxy server. The proxy URI can be set through an optional Hash of options passed
to instantiating Savon::Client (Dave Woodward <[email protected]>)
* Implemented support for SSL client authentication. Settings can be set through an optional Hash of arguments
passed to instantiating Savon::Client (colonhyphenp)
* Patch for issue #10 (Problem with operation tags without a namespace).
== 0.6.6 (2009-12-14)
* Default to use the name of the SOAP action (the method called in a client) in lowerCamelCase for SOAP action
and input when Savon::WSDL is disabled. You still need to specify soap.action and maybe soap.input in case
your SOAP actions are named any different.
== 0.6.5 (2009-12-13)
* Added an open_timeout method to Savon::Request.
== 0.6.4 (2009-12-13)
* Refactored specs to be less unit-like.
* Added a getter for the Savon::Request to Savon::Client and a read_timeout setter for HTTP requests.
* wsdl.soap_actions now returns an Array of SOAP actions. For the previous "mapping" please use wsdl.operations.
* Replaced WSDL document with stream parsing.
Benchmarks (1000 SOAP calls):
user system total real
0.6.4 72.180000 8.280000 80.460000 (750.799011)
0.6.3 192.900000 19.630000 212.530000 (914.031865)
== 0.6.3 (2009-12-11)
* Removing 2 ruby deprecation warnings for parenthesized arguments. (Dave Woodward <[email protected]>)
* Added global and per request options for disabling Savon::WSDL.
Benchmarks (1000 SOAP calls):
user system total real
WSDL 192.900000 19.630000 212.530000 (914.031865)
disabled WSDL 5.680000 1.340000 7.020000 (298.265318)
* Improved XPath expressions for parsing the WSDL document.
Benchmarks (1000 SOAP calls):
user system total real
0.6.3 192.900000 19.630000 212.530000 (914.031865)
0.6.2 574.720000 78.380000 653.100000 (1387.778539)
== 0.6.2 (2009-12-06)
* Added support for changing the name of the SOAP input node.
* Added a CHANGELOG.
== 0.6.1 (2009-12-06)
* Fixed a problem with WSSE credentials, where every request contained a WSSE authentication header.
== 0.6.0 (2009-12-06)
* method_missing now yields the SOAP and WSSE objects to a given block.
* The response_process (which previously was a block passed to method_missing) was replaced by Savon::Response.
* Improved SOAP action handling (another problem that came up with issue #1).
== 0.5.3 (2009-11-30)
* Patch for issue #2 (NoMethodError: undefined method `invalid!' for Savon::WSDL)
== 0.5.2 (2009-11-30)
* Patch for issue #1 (Calls fail if api methods have periods in them)
== 0.5.1 (2009-11-29)
* Optimized default response process.
* Added WSSE settings via defaults.
* Added SOAP fault and HTTP error handling.
* Improved documentation
* Added specs
== 0.5.0 (2009-11-29)
* Complete rewrite.