wasabi 3.7.0 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +56 -42
- data/README.md +7 -1
- data/lib/wasabi/parser.rb +7 -5
- data/lib/wasabi/version.rb +1 -1
- metadata +13 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cd00d9ef38f5862944963ce619dfccab4f9a493c13b991d5f353da00961f8f15
|
4
|
+
data.tar.gz: 05cbb07bdd93ef4ca1c9799fc7159ab800033c02bc72bead3674c96a0be9b1b4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b29cddca0c79981e0b1f06e808752dddef2916ee9bc9a489be5f4170d53c2653743ab334e13deb4fa69f59668246af0f51af1dbf2a7ec4590b5df8026308998e
|
7
|
+
data.tar.gz: ba51e137a4d98ad2e659331b95fafec4e815d1857a61b4ec523d2ca5e26ea9bfefea4c00d2acd0f979722789bff22547961bfcbea3b1f042a4408c5bbcf082a4
|
data/CHANGELOG.md
CHANGED
@@ -1,120 +1,134 @@
|
|
1
|
-
#
|
1
|
+
# CHANGELOG for Wasabi
|
2
|
+
|
3
|
+
## Unreleased
|
2
4
|
|
3
5
|
- _Your new line here. Mind the style of prefix used in the rest of the document._
|
6
|
+
|
7
|
+
## 4.0.0 (2023-03-27)
|
8
|
+
|
9
|
+
- Formally drop support for unsupported rubies (2.6 and below)
|
10
|
+
- Parse Input/Output When Operation Style is Document ([#114](https://github.com/savonrb/wasabi/pull/114))
|
11
|
+
|
12
|
+
## 3.8.0 (2022-10-01)
|
13
|
+
|
14
|
+
- Change: Update HTTPI to 3.0 to remove the socksify dependency. ([savonrb/httpi#225](https://github.com/savonrb/httpi/pull/225))
|
15
|
+
|
16
|
+
## 3.7.0 (2022-01-25)
|
17
|
+
|
4
18
|
- Breaking: BC BREAKING: Revert "Add support for rpc encoded wsdl" ([#103](https://github.com/savonrb/wasabi/pull/103))
|
5
|
-
- Fix: Support escaped endpoint
|
19
|
+
- Fix: Support escaped endpoint URLs ([#100](https://github.com/savonrb/wasabi/pull/100))
|
6
20
|
|
7
|
-
|
21
|
+
## 3.6.1 (2020-08-27)
|
8
22
|
|
9
23
|
- Fix: Repair unlinked Markdown in the CHANGELOG
|
10
24
|
- Add: Link to the CHANGELOG in the RubyGems.org metadata
|
11
25
|
- Add: Link to the Rubydocs.info documentation in the RubyGems.org metadata
|
12
26
|
|
13
|
-
|
27
|
+
## 3.6.0 (2020-08-27)
|
14
28
|
|
15
29
|
- Add: Support RPC-encoded WSDL ([#63](https://github.com/savonrb/wasabi/pull/63), [@fernandes][])
|
16
30
|
- Fix: Depend on [addressable](https://github.com/sporkmonger/addressable), for unescape to avoid a Ruby warning ([#81](https://github.com/savonrb/wasabi/pull/81) , [@chaymaeBZ][], [@bvicenzo][])
|
17
|
-
- Fix: [#59](https://github.com/savonrb/wasabi/
|
31
|
+
- Fix: [#59](https://github.com/savonrb/wasabi/pull/59) Turn `String` monkeypatches into `Wasabi` class methods ([@tjarratt][]) (released this version)
|
18
32
|
- Change: Reduced size of gem by focusing the files list ([#89](https://github.com/savonrb/wasabi/pull/89), [@utkarsh2102][])
|
19
33
|
- Remove: No longer tested on Rubinius
|
20
34
|
|
21
|
-
|
35
|
+
## 3.5.1 (2015-05-18)
|
22
36
|
|
23
37
|
NB: This version was never released to RubyGems.org.
|
24
38
|
|
25
|
-
|
39
|
+
- Fix: [#59](https://github.com/savonrb/wasabi/pull/59) Stop monkey patching the String class to provide #snakecase
|
26
40
|
|
27
|
-
|
41
|
+
## 3.5.0 (2015-03-31)
|
28
42
|
|
29
|
-
|
43
|
+
- Formally drop support for ruby 1.8.7
|
30
44
|
|
31
|
-
|
45
|
+
## 3.4.0 (2015-03-02)
|
32
46
|
|
33
|
-
|
47
|
+
- Fix: [#634](https://github.com/savonrb/savon/issues/634) Reverts PR #46, generates *most* operation names correctly.
|
34
48
|
|
35
|
-
|
49
|
+
## 3.3.1 (2014-09-25)
|
36
50
|
|
37
|
-
|
51
|
+
- Fix: [#48](https://github.com/savonrb/wasabi/issues/48) Remove dependency on mime-type gem
|
38
52
|
|
39
|
-
|
40
|
-
|
53
|
+
## 3.3.0 (2014-05-03)
|
54
|
+
- Feature: [#44](https://github.com/savonrb/wasabi/pull/44) adds a feature to specify the HTTPI adapter you'd like to use.
|
41
55
|
|
42
|
-
|
43
|
-
|
56
|
+
## 3.2.3 (2013-12-16)
|
57
|
+
- Fix [#39](https://github.com/savonrb/wasabi/pull/39) fixes new regression in operation names. Huge thank you to #leoping for investigating this and issuing a pull request.
|
44
58
|
|
45
|
-
|
59
|
+
## 3.2.2 (2013-12-09)
|
46
60
|
|
47
|
-
|
61
|
+
- Fix: [#32](https://github.com/savonrb/wasabi/issues/32) fixes a regression in operation names that was adversely affecting Savon: https://github.com/savonrb/savon/issues/520
|
48
62
|
|
49
|
-
|
63
|
+
## 3.2.1 (2013-12-05)
|
50
64
|
|
51
|
-
|
65
|
+
- Feature: Drops requirement for Nokogiri <= 1.6 for modern rubies. This was in place for ruby 1.8 but since support for that is going away, we shouldn't prevent users from using newer versions of Nokogiri.
|
52
66
|
|
53
67
|
## 3.2.0 (2013-07-26)
|
54
68
|
|
55
|
-
|
69
|
+
- Feature: [#20](https://github.com/savonrb/wasabi/issues/20) Limited support for listing an
|
56
70
|
operation's parameters. Please note that if your WSDL defines imports, this method might
|
57
71
|
not return all types.
|
58
72
|
|
59
|
-
|
73
|
+
- Improvement: [#7](https://github.com/savonrb/wasabi/issues/7) Major speed improvements.
|
60
74
|
|
61
|
-
|
75
|
+
- Improvement: [#16](https://github.com/savonrb/wasabi/issues/16) Various improvements regarding
|
62
76
|
element order and type information.
|
63
77
|
|
64
|
-
|
78
|
+
- Fix: [#25](https://github.com/savonrb/wasabi/issues/25) Fixes a problem where Wasabi escaped
|
65
79
|
an already escaped endpoint URL.
|
66
80
|
|
67
|
-
|
81
|
+
- Fix: [#15](https://github.com/savonrb/wasabi/issues/15) Fixes a bug where the operation tag
|
68
82
|
name was not correctly extracted from the WSDL document.
|
69
83
|
|
70
84
|
## 3.1.0 (2013-04-21)
|
71
85
|
|
72
|
-
|
86
|
+
- Feature: [#22](https://github.com/savonrb/wasabi/issues/22) added `Wasabi::Document#service_name`
|
73
87
|
to return the name of the SOAP service. Original issue: [savonrb/savon#408](https://github.com/savonrb/savon/pull/408).
|
74
88
|
|
75
|
-
|
89
|
+
- Fix: [#21](https://github.com/savonrb/wasabi/issues/21) when the Resolver gets an
|
76
90
|
erroneous response (such as a 404), we now raise a more useful HTTPError.
|
77
91
|
|
78
|
-
|
92
|
+
- Fix: [#23](https://github.com/savonrb/wasabi/issues/23) ignore extension base elements
|
79
93
|
defined in imports.
|
80
94
|
|
81
95
|
## 3.0.0 (2012-12-17)
|
82
96
|
|
83
|
-
|
97
|
+
- Updated to HTTPI 2.0 to play nicely with Savon 2.0.
|
84
98
|
|
85
99
|
## 2.5.1 (2012-08-22)
|
86
100
|
|
87
|
-
|
101
|
+
- Fix: [#14](https://github.com/savonrb/wasabi/issues/14) fixes an issue where
|
88
102
|
finding the correct SOAP input tag and namespace identifier fails when portTypes
|
89
103
|
are imported, since imports are currently not supported.
|
90
104
|
|
91
105
|
The bug was introduced in v2.2.0 by [583cf6](https://github.com/savonrb/wasabi/commit/583cf658f1953411a7a7a4c22923fa0a046c8d6d)
|
92
106
|
|
93
|
-
|
107
|
+
- Refactoring: Removed `Object#blank?` core extension.
|
94
108
|
|
95
109
|
## 2.5.0 (2012-06-28)
|
96
110
|
|
97
|
-
|
111
|
+
- Fix: [#10](https://github.com/savonrb/wasabi/issues/10) fixes an issue where
|
98
112
|
Wasabi used the wrong operation name.
|
99
113
|
|
100
114
|
## 2.4.1 (2012-06-18)
|
101
115
|
|
102
|
-
|
116
|
+
- Fix: [savonrb/savon#296](https://github.com/savonrb/savon/issues/296) fixes an issue where
|
103
117
|
the WSDL message element doesn't have part element.
|
104
118
|
|
105
119
|
## 2.4.0 (2012-06-08)
|
106
120
|
|
107
|
-
|
121
|
+
- Feature: `Wasabi::Document` now accepts either a URL of a remote document,
|
108
122
|
a path to a local file or raw XML. The code for this was moved from Savon over
|
109
123
|
here as a first step towards supporting WSDL imports.
|
110
124
|
|
111
125
|
## 2.3.0 (2012-06-07)
|
112
126
|
|
113
|
-
|
127
|
+
- Improvement: [#3](https://github.com/savonrb/wasabi/pull/3) adds object inheritance.
|
114
128
|
|
115
129
|
## 2.2.0 (2012-06-06)
|
116
130
|
|
117
|
-
|
131
|
+
- Improvement: [#5](https://github.com/savonrb/wasabi/pull/5) - Get input from message
|
118
132
|
element or portType input. See [savonrb/savon#277](https://github.com/savonrb/savon/pull/277)
|
119
133
|
to get the full picture on how this all works together, and enables you to pass a single
|
120
134
|
symbol into the `Savon::Client#request` method and get automatic namespace mapping, as well
|
@@ -122,23 +136,23 @@ NB: This version was never released to RubyGems.org.
|
|
122
136
|
|
123
137
|
## 2.1.1 (2012-05-18)
|
124
138
|
|
125
|
-
|
139
|
+
- Fix: [issue 7](https://github.com/savonrb/wasabi/issues/7) - Performance regression.
|
126
140
|
|
127
141
|
## 2.1.0 (2012-02-17)
|
128
142
|
|
129
|
-
|
143
|
+
- Improvement: The value of elementFormDefault can now be manually specified/overwritten.
|
130
144
|
|
131
|
-
|
145
|
+
- Improvement: [issue 2](https://github.com/savonrb/wasabi/issues/2) - Allow symbolic endpoints
|
132
146
|
like "http://server:port".
|
133
147
|
|
134
148
|
## 2.0.0 (2011-07-07)
|
135
149
|
|
136
|
-
|
150
|
+
- Feature: Wasabi can now parse type definitions and namespaces.
|
137
151
|
Thanks to [jkingdon](https://github.com/jkingdon) for implementing this.
|
138
152
|
|
139
153
|
## 1.0.0 (2011-07-03)
|
140
154
|
|
141
|
-
|
155
|
+
- Initial version extracted from the [Savon](http://rubygems.org/gems/savon) library.
|
142
156
|
Use it to build your own SOAP client and help to improve it!
|
143
157
|
|
144
158
|
[@fernandes]: https://github.com/fernandes
|
data/README.md
CHANGED
@@ -9,12 +9,18 @@ A simple WSDL parser.
|
|
9
9
|
|
10
10
|
## Installation
|
11
11
|
|
12
|
-
Wasabi is available through [
|
12
|
+
Wasabi is available through [RubyGems](http://rubygems.org/gems/wasabi) and can be installed via:
|
13
13
|
|
14
14
|
```
|
15
15
|
$ gem install wasabi
|
16
16
|
```
|
17
17
|
|
18
|
+
Probably, you are using this gem as a dependency of some other gem. But, if you want to control which version of Wasabi to pick, you can add a `gem` line to your `Gemfile`:
|
19
|
+
|
20
|
+
```
|
21
|
+
gem "wasabi"
|
22
|
+
```
|
23
|
+
|
18
24
|
|
19
25
|
## Getting started
|
20
26
|
|
data/lib/wasabi/parser.rb
CHANGED
@@ -144,8 +144,9 @@ module Wasabi
|
|
144
144
|
# TODO: check for soap namespace?
|
145
145
|
soap_operation = operation.element_children.find { |node| node.name == 'operation' }
|
146
146
|
soap_action = soap_operation['soapAction'] if soap_operation
|
147
|
+
soap_document = soap_operation["style"] if soap_operation
|
147
148
|
|
148
|
-
if soap_action
|
149
|
+
if soap_action || soap_document
|
149
150
|
soap_action = soap_action.to_s
|
150
151
|
action = soap_action && !soap_action.empty? ? soap_action : name
|
151
152
|
|
@@ -247,8 +248,7 @@ module Wasabi
|
|
247
248
|
port_type_operation = @port_type_operations[binding_type][operation_name]
|
248
249
|
end
|
249
250
|
|
250
|
-
port_type_input_output = port_type_operation
|
251
|
-
port_type_operation.element_children.find { |node| node.name == input_output }
|
251
|
+
port_type_input_output = port_type_operation&.element_children&.find { |node| node.name == input_output }
|
252
252
|
|
253
253
|
# TODO: Stupid fix for missing support for imports.
|
254
254
|
# Sometimes portTypes are actually included in a separate WSDL.
|
@@ -260,6 +260,8 @@ module Wasabi
|
|
260
260
|
end
|
261
261
|
|
262
262
|
message_ns_id, message_type = nil
|
263
|
+
message_ns_id = port_message_ns_id
|
264
|
+
message_type = port_message_type
|
263
265
|
|
264
266
|
# When there is a parts attribute in soap:body element, we should use that value
|
265
267
|
# to look up the message part from messages array.
|
@@ -270,8 +272,8 @@ module Wasabi
|
|
270
272
|
end
|
271
273
|
|
272
274
|
message = @messages[port_message_type]
|
273
|
-
port_message_part = message
|
274
|
-
soap_body_parts.nil? ? (node.name ==
|
275
|
+
port_message_part = message&.element_children&.find do |node|
|
276
|
+
soap_body_parts.nil? ? (node.name == "part") : (node.name == "part" && node["name"] == soap_body_parts)
|
275
277
|
end
|
276
278
|
|
277
279
|
if port_message_part && port_element = port_message_part.attribute('element')
|
data/lib/wasabi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wasabi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Harrington
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-03-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpi
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '3.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '3.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: nokogiri
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.13.9
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.13.9
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: addressable
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -73,10 +73,11 @@ licenses:
|
|
73
73
|
- MIT
|
74
74
|
metadata:
|
75
75
|
changelog_uri: https://github.com/savonrb/wasabi/blob/master/CHANGELOG.md
|
76
|
-
documentation_uri: https://www.rubydoc.info/gems/wasabi/
|
76
|
+
documentation_uri: https://www.rubydoc.info/gems/wasabi/4.0.0
|
77
77
|
source_code_uri: https://github.com/savonrb/wasabi
|
78
78
|
bug_tracker_uri: https://github.com/savonrb/wasabi/issues
|
79
|
-
|
79
|
+
rubygems_mfa_required: 'true'
|
80
|
+
post_install_message:
|
80
81
|
rdoc_options: []
|
81
82
|
require_paths:
|
82
83
|
- lib
|
@@ -84,15 +85,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
84
85
|
requirements:
|
85
86
|
- - ">="
|
86
87
|
- !ruby/object:Gem::Version
|
87
|
-
version:
|
88
|
+
version: '2.7'
|
88
89
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
89
90
|
requirements:
|
90
91
|
- - ">="
|
91
92
|
- !ruby/object:Gem::Version
|
92
93
|
version: '0'
|
93
94
|
requirements: []
|
94
|
-
rubygems_version: 3.
|
95
|
-
signing_key:
|
95
|
+
rubygems_version: 3.4.6
|
96
|
+
signing_key:
|
96
97
|
specification_version: 4
|
97
98
|
summary: A simple WSDL parser
|
98
99
|
test_files: []
|