faraday-encode_xml 0.2.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/README.md +21 -1
- data/lib/faraday/encode_xml/middleware.rb +4 -5
- data/lib/faraday/encode_xml/version.rb +1 -1
- metadata +10 -166
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 103bf7380cf8568e940c0ff65989c4b112c90136895263319ca59b10c1d0e16b
|
|
4
|
+
data.tar.gz: 419b538519812d06c7e0e0896d173dc0b2702f54068ca406eff980f3184a0982
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0da849d462fdaca184841c86c14ee8ca56d0a8f456a05e3c91f57a406cf305b8023be08ffb8dbb350c0cb299ebb01f38c82cce76f1e6c9b6dee6d687cef6533f
|
|
7
|
+
data.tar.gz: 9e138e5a54ce3d671bd6eb26af47ed598ef9d98e9762cd147830519c0565448daccedc9ea086ea5991dc8859d565f05be5c3f4cb8642a52b3f59b980c29fa98a
|
data/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## 2.0.0 (2026-02-13)
|
|
8
|
+
|
|
9
|
+
* Drop Ruby 2.6, 2.7, 3.0 and 3.1 support.
|
|
10
|
+
* Add Ruby 3.2, 3.3, 3.4 and 4.0 support.
|
|
11
|
+
* Add ability to pass options for Gyoku.
|
|
12
|
+
It can be very helpful.
|
|
13
|
+
* Update dependencies.
|
|
14
|
+
* Improve CI config.
|
|
15
|
+
|
|
16
|
+
## 1.0.0 (2022-11-19)
|
|
17
|
+
|
|
18
|
+
* Update Faraday to version 2.
|
|
19
|
+
* Update development dependencies.
|
|
20
|
+
* Drop Ruby 2.5 support.
|
|
21
|
+
* Add Ruby 3.1 for CI.
|
|
22
|
+
* Add code coverage gems, scripts and CI tasks.
|
|
23
|
+
* Improve CI config.
|
|
24
|
+
|
|
7
25
|
## 0.2.0 (2021-10-20)
|
|
8
26
|
|
|
9
27
|
* Rework classes hierarchy to something more correct.
|
data/README.md
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
# Faraday Encode XML
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://cirrus-ci.com/github/AlexWayfer/faraday-encode_xml)
|
|
4
|
+
[](https://codecov.io/gh/AlexWayfer/faraday-encode_xml)
|
|
5
|
+
[](https://codeclimate.com/github/AlexWayfer/faraday-encode_xml)
|
|
6
|
+
[](https://depfu.com/repos/github/AlexWayfer/faraday-encode_xml)
|
|
7
|
+
[](https://rubygems.org/gems/faraday-encode_xml)
|
|
8
|
+
[](LICENSE.txt)
|
|
9
|
+
|
|
10
|
+
This repo is a [Faraday](https://github.com/lostisland/faraday) middleware for encoding requests as XML.
|
|
4
11
|
Faraday is an HTTP client library that provides a common interface for making requests.
|
|
5
12
|
|
|
6
13
|
## Installation
|
|
@@ -46,6 +53,19 @@ response = connection.post('https://httpbingo.org/post', { a: 1, b: 'foo', c: tr
|
|
|
46
53
|
puts response.body['data'] ## => <a>1</a><b>foo</b><c>true</c>
|
|
47
54
|
```
|
|
48
55
|
|
|
56
|
+
### Gyoku options
|
|
57
|
+
|
|
58
|
+
The middleware uses [`gyoku` gem](https://rubygems.org/gems/gyoku) for XML encoding.
|
|
59
|
+
|
|
60
|
+
You can pass options for it:
|
|
61
|
+
|
|
62
|
+
```ruby
|
|
63
|
+
connection = Faraday.new do |faraday|
|
|
64
|
+
## https://www.rubydoc.info/gems/gyoku/#array-values
|
|
65
|
+
faraday.request :xml, gyoku_options: { unwrap: true }
|
|
66
|
+
end
|
|
67
|
+
```
|
|
68
|
+
|
|
49
69
|
## Development
|
|
50
70
|
|
|
51
71
|
After checking out the repo, run `bundle install` to install dependencies.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'faraday'
|
|
4
|
+
require 'gyoku' unless defined?(Gyoku)
|
|
4
5
|
|
|
5
6
|
module Faraday
|
|
6
7
|
module EncodeXML
|
|
@@ -14,10 +15,7 @@ module Faraday
|
|
|
14
15
|
class Middleware < Faraday::Middleware
|
|
15
16
|
CONTENT_TYPE = 'Content-Type'
|
|
16
17
|
MIME_TYPE = 'application/xml'
|
|
17
|
-
|
|
18
|
-
dependency do
|
|
19
|
-
require 'gyoku' unless defined?(::Gyoku)
|
|
20
|
-
end
|
|
18
|
+
DEFAULT_GYOKU_OPTIONS = { key_converter: :none }.freeze
|
|
21
19
|
|
|
22
20
|
# This method will be called when the request is being prepared.
|
|
23
21
|
# You can alter it as you like, accessing things like request_body, request_headers, and more.
|
|
@@ -34,7 +32,8 @@ module Faraday
|
|
|
34
32
|
private
|
|
35
33
|
|
|
36
34
|
def encode(data)
|
|
37
|
-
|
|
35
|
+
gyoku_options = DEFAULT_GYOKU_OPTIONS.merge(options.fetch(:gyoku_options, {}))
|
|
36
|
+
::Gyoku.xml(data, gyoku_options)
|
|
38
37
|
end
|
|
39
38
|
|
|
40
39
|
def match_content_type(env)
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: faraday-encode_xml
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 2.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alexander Popov
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: faraday
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - "~>"
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version:
|
|
18
|
+
version: 2.14.0
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - "~>"
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version:
|
|
25
|
+
version: 2.14.0
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: gyoku
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -38,160 +37,6 @@ dependencies:
|
|
|
38
37
|
- - "~>"
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
39
|
version: '1.3'
|
|
41
|
-
- !ruby/object:Gem::Dependency
|
|
42
|
-
name: bundler
|
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
|
44
|
-
requirements:
|
|
45
|
-
- - "~>"
|
|
46
|
-
- !ruby/object:Gem::Version
|
|
47
|
-
version: '2.0'
|
|
48
|
-
type: :development
|
|
49
|
-
prerelease: false
|
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
-
requirements:
|
|
52
|
-
- - "~>"
|
|
53
|
-
- !ruby/object:Gem::Version
|
|
54
|
-
version: '2.0'
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: bundler-audit
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: 0.9.0
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: 0.9.0
|
|
69
|
-
- !ruby/object:Gem::Dependency
|
|
70
|
-
name: pry-byebug
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - "~>"
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: '3.9'
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - "~>"
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: '3.9'
|
|
83
|
-
- !ruby/object:Gem::Dependency
|
|
84
|
-
name: rspec
|
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
|
86
|
-
requirements:
|
|
87
|
-
- - "~>"
|
|
88
|
-
- !ruby/object:Gem::Version
|
|
89
|
-
version: '3.0'
|
|
90
|
-
type: :development
|
|
91
|
-
prerelease: false
|
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
-
requirements:
|
|
94
|
-
- - "~>"
|
|
95
|
-
- !ruby/object:Gem::Version
|
|
96
|
-
version: '3.0'
|
|
97
|
-
- !ruby/object:Gem::Dependency
|
|
98
|
-
name: simplecov
|
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
|
100
|
-
requirements:
|
|
101
|
-
- - "~>"
|
|
102
|
-
- !ruby/object:Gem::Version
|
|
103
|
-
version: 0.21.0
|
|
104
|
-
type: :development
|
|
105
|
-
prerelease: false
|
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
-
requirements:
|
|
108
|
-
- - "~>"
|
|
109
|
-
- !ruby/object:Gem::Version
|
|
110
|
-
version: 0.21.0
|
|
111
|
-
- !ruby/object:Gem::Dependency
|
|
112
|
-
name: gem_toys
|
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
|
114
|
-
requirements:
|
|
115
|
-
- - "~>"
|
|
116
|
-
- !ruby/object:Gem::Version
|
|
117
|
-
version: 0.10.0
|
|
118
|
-
type: :development
|
|
119
|
-
prerelease: false
|
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
-
requirements:
|
|
122
|
-
- - "~>"
|
|
123
|
-
- !ruby/object:Gem::Version
|
|
124
|
-
version: 0.10.0
|
|
125
|
-
- !ruby/object:Gem::Dependency
|
|
126
|
-
name: toys
|
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
|
128
|
-
requirements:
|
|
129
|
-
- - "~>"
|
|
130
|
-
- !ruby/object:Gem::Version
|
|
131
|
-
version: 0.12.0
|
|
132
|
-
type: :development
|
|
133
|
-
prerelease: false
|
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
-
requirements:
|
|
136
|
-
- - "~>"
|
|
137
|
-
- !ruby/object:Gem::Version
|
|
138
|
-
version: 0.12.0
|
|
139
|
-
- !ruby/object:Gem::Dependency
|
|
140
|
-
name: rubocop
|
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
|
142
|
-
requirements:
|
|
143
|
-
- - "~>"
|
|
144
|
-
- !ruby/object:Gem::Version
|
|
145
|
-
version: 1.22.0
|
|
146
|
-
type: :development
|
|
147
|
-
prerelease: false
|
|
148
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
149
|
-
requirements:
|
|
150
|
-
- - "~>"
|
|
151
|
-
- !ruby/object:Gem::Version
|
|
152
|
-
version: 1.22.0
|
|
153
|
-
- !ruby/object:Gem::Dependency
|
|
154
|
-
name: rubocop-packaging
|
|
155
|
-
requirement: !ruby/object:Gem::Requirement
|
|
156
|
-
requirements:
|
|
157
|
-
- - "~>"
|
|
158
|
-
- !ruby/object:Gem::Version
|
|
159
|
-
version: '0.5'
|
|
160
|
-
type: :development
|
|
161
|
-
prerelease: false
|
|
162
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
163
|
-
requirements:
|
|
164
|
-
- - "~>"
|
|
165
|
-
- !ruby/object:Gem::Version
|
|
166
|
-
version: '0.5'
|
|
167
|
-
- !ruby/object:Gem::Dependency
|
|
168
|
-
name: rubocop-performance
|
|
169
|
-
requirement: !ruby/object:Gem::Requirement
|
|
170
|
-
requirements:
|
|
171
|
-
- - "~>"
|
|
172
|
-
- !ruby/object:Gem::Version
|
|
173
|
-
version: '1.0'
|
|
174
|
-
type: :development
|
|
175
|
-
prerelease: false
|
|
176
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
177
|
-
requirements:
|
|
178
|
-
- - "~>"
|
|
179
|
-
- !ruby/object:Gem::Version
|
|
180
|
-
version: '1.0'
|
|
181
|
-
- !ruby/object:Gem::Dependency
|
|
182
|
-
name: rubocop-rspec
|
|
183
|
-
requirement: !ruby/object:Gem::Requirement
|
|
184
|
-
requirements:
|
|
185
|
-
- - "~>"
|
|
186
|
-
- !ruby/object:Gem::Version
|
|
187
|
-
version: '2.0'
|
|
188
|
-
type: :development
|
|
189
|
-
prerelease: false
|
|
190
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
191
|
-
requirements:
|
|
192
|
-
- - "~>"
|
|
193
|
-
- !ruby/object:Gem::Version
|
|
194
|
-
version: '2.0'
|
|
195
40
|
description: 'Faraday middleware for encoding requests as XML.
|
|
196
41
|
|
|
197
42
|
'
|
|
@@ -211,13 +56,13 @@ homepage: https://github.com/AlexWayfer/faraday-encode_xml
|
|
|
211
56
|
licenses:
|
|
212
57
|
- MIT
|
|
213
58
|
metadata:
|
|
59
|
+
rubygems_mfa_required: 'true'
|
|
214
60
|
bug_tracker_uri: https://github.com/AlexWayfer/faraday-encode_xml/issues
|
|
215
|
-
changelog_uri: https://github.com/AlexWayfer/faraday-encode_xml/blob/
|
|
216
|
-
documentation_uri: http://www.rubydoc.info/gems/faraday-encode_xml/
|
|
61
|
+
changelog_uri: https://github.com/AlexWayfer/faraday-encode_xml/blob/v2.0.0/CHANGELOG.md
|
|
62
|
+
documentation_uri: http://www.rubydoc.info/gems/faraday-encode_xml/2.0.0
|
|
217
63
|
homepage_uri: https://github.com/AlexWayfer/faraday-encode_xml
|
|
218
64
|
source_code_uri: https://github.com/AlexWayfer/faraday-encode_xml
|
|
219
65
|
wiki_uri: https://github.com/AlexWayfer/faraday-encode_xml/wiki
|
|
220
|
-
post_install_message:
|
|
221
66
|
rdoc_options: []
|
|
222
67
|
require_paths:
|
|
223
68
|
- lib
|
|
@@ -225,18 +70,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
225
70
|
requirements:
|
|
226
71
|
- - ">="
|
|
227
72
|
- !ruby/object:Gem::Version
|
|
228
|
-
version: '2
|
|
73
|
+
version: '3.2'
|
|
229
74
|
- - "<"
|
|
230
75
|
- !ruby/object:Gem::Version
|
|
231
|
-
version: '
|
|
76
|
+
version: '5'
|
|
232
77
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
233
78
|
requirements:
|
|
234
79
|
- - ">="
|
|
235
80
|
- !ruby/object:Gem::Version
|
|
236
81
|
version: '0'
|
|
237
82
|
requirements: []
|
|
238
|
-
rubygems_version:
|
|
239
|
-
signing_key:
|
|
83
|
+
rubygems_version: 4.0.3
|
|
240
84
|
specification_version: 4
|
|
241
85
|
summary: Faraday middleware for encoding requests as XML
|
|
242
86
|
test_files: []
|