httparty 0.19.0 → 0.24.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/.github/dependabot.yml +6 -0
- data/.github/workflows/ci.yml +10 -14
- data/.gitignore +2 -1
- data/Changelog.md +399 -311
- data/Gemfile +3 -0
- data/Guardfile +3 -2
- data/README.md +17 -17
- data/docs/README.md +27 -5
- data/examples/party_foul_mode.rb +90 -0
- data/httparty.gemspec +4 -2
- data/lib/httparty/connection_adapter.rb +6 -25
- data/lib/httparty/decompressor.rb +11 -1
- data/lib/httparty/exceptions.rb +34 -3
- data/lib/httparty/hash_conversions.rb +1 -1
- data/lib/httparty/logger/curl_formatter.rb +1 -1
- data/lib/httparty/logger/logstash_formatter.rb +1 -0
- data/lib/httparty/module_inheritable_attributes.rb +3 -5
- data/lib/httparty/parser.rb +3 -0
- data/lib/httparty/request/body.rb +40 -13
- data/lib/httparty/request/streaming_multipart_body.rb +188 -0
- data/lib/httparty/request.rb +98 -34
- data/lib/httparty/response.rb +3 -3
- data/lib/httparty/text_encoder.rb +1 -1
- data/lib/httparty/version.rb +1 -1
- data/lib/httparty.rb +23 -11
- data/script/release +4 -4
- metadata +30 -13
- data/.simplecov +0 -1
data/Changelog.md
CHANGED
|
@@ -1,21 +1,45 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable [changes since 0.22 are documented in GitHub Releases](https://github.com/jnunemaker/httparty/releases).
|
|
4
|
+
|
|
5
|
+
## 0.21.0
|
|
6
|
+
|
|
7
|
+
- [escape filename in the multipart/form-data Content-Disposition header](https://github.com/jnunemaker/httparty/commit/cdb45a678c43e44570b4e73f84b1abeb5ec22b8e)
|
|
8
|
+
- [Fix request marshaling](https://github.com/jnunemaker/httparty/pull/767)
|
|
9
|
+
- [Replace `mime-types` with `mini_mime`](https://github.com/jnunemaker/httparty/pull/769)
|
|
10
|
+
|
|
11
|
+
## 0.20.0
|
|
12
|
+
|
|
13
|
+
Breaking changes
|
|
14
|
+
|
|
15
|
+
- Require Ruby >= 2.3.0
|
|
16
|
+
|
|
17
|
+
Fixes
|
|
18
|
+
|
|
19
|
+
- [`Marshal.dump` fails on response objects when request option `:logger` is set or `:parser` is a proc](https://github.com/jnunemaker/httparty/pull/714)
|
|
20
|
+
- [Switch `:pem` option to to `OpenSSL::PKey.read` to support other algorithms](https://github.com/jnunemaker/httparty/pull/720)
|
|
21
|
+
|
|
22
|
+
## 0.19.1
|
|
23
|
+
|
|
24
|
+
- [Remove use of unary + method for creating non-frozen string to increase compatibility with older versions of ruby](https://github.com/jnunemaker/httparty/commit/4416141d37fd71bdba4f37589ec265f55aa446ce)
|
|
25
|
+
|
|
1
26
|
## 0.19.0
|
|
2
27
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
28
|
+
- [Multipart/Form-Data: rewind files after read](https://github.com/jnunemaker/httparty/pull/709)
|
|
29
|
+
- [add frozen_string_literal pragma to all files](https://github.com/jnunemaker/httparty/pull/711)
|
|
30
|
+
- [Better handling of Accept-Encoding / Content-Encoding decompression (fixes #562)](https://github.com/jnunemaker/httparty/pull/729)
|
|
6
31
|
|
|
7
32
|
## 0.18.1
|
|
8
33
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
34
|
+
- [Rename cop Lint/HandleExceptions to Lint/SuppressedException](https://github.com/jnunemaker/httparty/pull/699).
|
|
35
|
+
- [Encode keys in query params](https://github.com/jnunemaker/httparty/pull/698).
|
|
36
|
+
- [Fixed SSL doc example](https://github.com/jnunemaker/httparty/pull/692).
|
|
37
|
+
- [Add a build status badge](https://github.com/jnunemaker/httparty/pull/701).
|
|
14
38
|
|
|
15
39
|
## 0.18.0
|
|
16
40
|
|
|
17
|
-
|
|
18
|
-
|
|
41
|
+
- [Support gzip/deflate transfer encoding when explicit headers are set](https://github.com/jnunemaker/httparty/pull/678).
|
|
42
|
+
- [Support edge case cookie format with a blank attribute](https://github.com/jnunemaker/httparty/pull/685).
|
|
19
43
|
|
|
20
44
|
## 0.17.3
|
|
21
45
|
|
|
@@ -23,514 +47,578 @@
|
|
|
23
47
|
|
|
24
48
|
## 0.17.2
|
|
25
49
|
|
|
26
|
-
|
|
50
|
+
- [Add Response#nil? deprecetion warning](https://github.com/jnunemaker/httparty/pull/680)
|
|
27
51
|
|
|
28
52
|
## 0.17.1
|
|
29
53
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
54
|
+
- [Pass options to dynamic block headers](https://github.com/jnunemaker/httparty/pull/661)
|
|
55
|
+
- [Normalize urls with URI adapter to allow International Domain Names support](https://github.com/jnunemaker/httparty/pull/668)
|
|
56
|
+
- [Add max_retries support](https://github.com/jnunemaker/httparty/pull/660)
|
|
57
|
+
- [Minize gem size by removing test files](https://github.com/jnunemaker/httparty/pull/658)
|
|
34
58
|
|
|
35
59
|
## 0.17.0
|
|
36
60
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
61
|
+
- [Fix encoding of streamed chunk](https://github.com/jnunemaker/httparty/pull/644)
|
|
62
|
+
- [Avoid modifying frozen strings](https://github.com/jnunemaker/httparty/pull/649)
|
|
63
|
+
- [Expose .connection on fragment block param](https://github.com/jnunemaker/httparty/pull/648)
|
|
64
|
+
- [Add support for `Net::HTTP#write_timeout` method (Ruby 2.6.0)](https://github.com/jnunemaker/httparty/pull/647)
|
|
41
65
|
|
|
42
66
|
## 0.16.4
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
67
|
+
|
|
68
|
+
- [Add support for Ruby 2.6](https://github.com/jnunemaker/httparty/pull/636)
|
|
69
|
+
- [Fix a few multipart issues](https://github.com/jnunemaker/httparty/pull/626)
|
|
70
|
+
- [Improve a memory usage for https requests](https://github.com/jnunemaker/httparty/pull/625)
|
|
71
|
+
- [Add response code to streamed body](https://github.com/jnunemaker/httparty/pull/588)
|
|
47
72
|
|
|
48
73
|
## 0.16.3
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
74
|
+
|
|
75
|
+
- [Add Logstash-compatible formatter](https://github.com/jnunemaker/httparty/pull/612)
|
|
76
|
+
- [Add support for headers specified with symbols](https://github.com/jnunemaker/httparty/pull/622)
|
|
77
|
+
- [Fix response object marshalling](https://github.com/jnunemaker/httparty/pull/618)
|
|
78
|
+
- [Add ability to send multipart, without passing file](https://github.com/jnunemaker/httparty/pull/615)
|
|
79
|
+
- [Fix detection of content_type for multipart payload](https://github.com/jnunemaker/httparty/pull/616)
|
|
80
|
+
- [Process dynamic headers before making actual request](https://github.com/jnunemaker/httparty/pull/606)
|
|
81
|
+
- [Fix multipart uploads with ActionDispatch::Http::UploadedFile TempFile by using original_filename](https://github.com/jnunemaker/httparty/pull/598)
|
|
82
|
+
- [Added support for lock and unlock http requests](https://github.com/jnunemaker/httparty/pull/596)
|
|
57
83
|
|
|
58
84
|
## 0.16.2
|
|
59
85
|
|
|
60
|
-
|
|
86
|
+
- [Support ActionDispatch::Http::UploadedFile again](https://github.com/jnunemaker/httparty/pull/585)
|
|
61
87
|
|
|
62
88
|
## 0.16.1
|
|
63
89
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
90
|
+
- [Parse content with application/hal+json content type as JSON](https://github.com/jnunemaker/httparty/pull/573)
|
|
91
|
+
- [Convert objects to string when concatenating in multipart stuff](https://github.com/jnunemaker/httparty/pull/575)
|
|
92
|
+
- [Fix multipart to set its header even when other headers are provided](https://github.com/jnunemaker/httparty/pull/576)
|
|
67
93
|
|
|
68
94
|
## 0.16.0
|
|
69
95
|
|
|
70
|
-
|
|
96
|
+
- [Add multipart support](https://github.com/jnunemaker/httparty/pull/569)
|
|
71
97
|
|
|
72
98
|
## 0.15.7
|
|
73
99
|
|
|
74
100
|
Fixed
|
|
75
101
|
|
|
76
|
-
|
|
77
|
-
|
|
102
|
+
- [Add Response#pretty_print | Restore documented behavior](https://github.com/jnunemaker/httparty/pull/570)
|
|
103
|
+
- [Add ability to parse response from JSONAPI ](https://github.com/jnunemaker/httparty/pull/553)
|
|
78
104
|
|
|
79
105
|
## 0.15.6
|
|
80
106
|
|
|
81
107
|
Fixed
|
|
82
108
|
|
|
83
|
-
|
|
109
|
+
- [Encoding and content type stuff](https://github.com/jnunemaker/httparty/pull/543)
|
|
84
110
|
|
|
85
111
|
## 0.15.5
|
|
86
112
|
|
|
87
113
|
Fixed
|
|
88
114
|
|
|
89
|
-
|
|
115
|
+
- [Use non-destructive gsub](https://github.com/jnunemaker/httparty/pull/540)
|
|
90
116
|
|
|
91
117
|
## 0.15.4
|
|
92
118
|
|
|
93
119
|
Fixed
|
|
94
120
|
|
|
95
|
-
|
|
96
|
-
|
|
121
|
+
- Prevent gsub errors with different encodings.
|
|
122
|
+
- Prevent passing nil to encode_body.
|
|
97
123
|
|
|
98
124
|
## 0.15.3
|
|
99
125
|
|
|
100
126
|
Fixed
|
|
101
127
|
|
|
102
|
-
|
|
103
|
-
|
|
128
|
+
- [Fix processing nil body for HEAD requests](https://github.com/jnunemaker/httparty/pull/530).
|
|
129
|
+
- Add missing require to headers.rb (33439a8).
|
|
104
130
|
|
|
105
131
|
## 0.15.2
|
|
106
132
|
|
|
107
133
|
Fixed
|
|
108
134
|
|
|
109
|
-
|
|
135
|
+
- Remove symlink from specs. It was reportedly still getting bundled with gem.
|
|
110
136
|
|
|
111
137
|
## 0.15.1
|
|
112
138
|
|
|
113
139
|
Fixed
|
|
114
140
|
|
|
115
|
-
|
|
141
|
+
- Stop including test files in gem. Fixes installation issues on windows due to symlink in spec dir.
|
|
116
142
|
|
|
117
143
|
## 0.15.0
|
|
118
144
|
|
|
119
145
|
Breaking Changes
|
|
120
146
|
|
|
121
|
-
|
|
147
|
+
- require Ruby >= 2.0.0
|
|
122
148
|
|
|
123
149
|
Fixed
|
|
124
150
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
151
|
+
- [fix numerous bugs](https://github.com/jnunemaker/httparty/pull/513)
|
|
152
|
+
- [handle utf-8 bom for json parsing](https://github.com/jnunemaker/httparty/pull/520)
|
|
153
|
+
- [do not overwrite default headers unless specified](https://github.com/jnunemaker/httparty/pull/518)
|
|
128
154
|
|
|
129
155
|
## 0.14.0
|
|
130
156
|
|
|
131
157
|
Breaking Changes
|
|
132
158
|
|
|
133
|
-
|
|
159
|
+
- None
|
|
134
160
|
|
|
135
161
|
Added
|
|
136
162
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
163
|
+
- [added status predicate methods to Response#respond_to?](https://github.com/jnunemaker/httparty/pull/482)
|
|
164
|
+
- [support for MKCOL method](https://github.com/jnunemaker/httparty/pull/465)
|
|
165
|
+
- one fewer dependency: [remove json gem from gemspec](https://github.com/jnunemaker/httparty/pull/464)
|
|
166
|
+
- [optional raising exception on certain status codes](https://github.com/jnunemaker/httparty/pull/455)
|
|
141
167
|
|
|
142
168
|
Fixed
|
|
143
169
|
|
|
144
|
-
|
|
145
|
-
|
|
170
|
+
- [allow empty array to be used as param](https://github.com/jnunemaker/httparty/pull/477)
|
|
171
|
+
- [stop mutating cookie hash](https://github.com/jnunemaker/httparty/pull/460)
|
|
146
172
|
|
|
147
173
|
## 0.13.7 aka "party not as hard"
|
|
148
|
-
|
|
174
|
+
|
|
175
|
+
- remove post install emoji as it caused installation issues for some people
|
|
149
176
|
|
|
150
177
|
## 0.13.6
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
178
|
+
|
|
179
|
+
- avoid calling String#strip on invalid Strings
|
|
180
|
+
- preserve request method on 307 and 308 redirects
|
|
181
|
+
- output version with --version for command line bin
|
|
182
|
+
- maintain head request method across redirects by default
|
|
183
|
+
- add support for RFC2617 MD5-sess algorithm type
|
|
184
|
+
- add party popper emoji to post install message
|
|
157
185
|
|
|
158
186
|
## 0.13.5
|
|
159
|
-
|
|
187
|
+
|
|
188
|
+
- allow setting a custom URI adapter
|
|
160
189
|
|
|
161
190
|
## 0.13.4
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
191
|
+
|
|
192
|
+
- correct redirect url for redirect paths without leading slash
|
|
193
|
+
- remove core_extensions.rb as backwards compat for ruby 1.8 not needed
|
|
194
|
+
- replace URI.encode with ERB::Util.url_encode
|
|
195
|
+
- allow the response to be tapped
|
|
166
196
|
|
|
167
197
|
## 0.13.3
|
|
168
|
-
|
|
169
|
-
|
|
198
|
+
|
|
199
|
+
- minor improvement
|
|
200
|
+
- added option to allow for streaming large files without loading them into memory (672cdae)
|
|
170
201
|
|
|
171
202
|
## 0.13.2
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
203
|
+
|
|
204
|
+
- minor improvement
|
|
205
|
+
- [Set correct path on redirect to filename](https://github.com/jnunemaker/httparty/pull/337)
|
|
206
|
+
- ensure logger works with curl format
|
|
175
207
|
|
|
176
208
|
## 0.13.1 2014-04-08
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
209
|
+
|
|
210
|
+
- new
|
|
211
|
+
- [Added ability to specify a body_stream in HttpRequest](https://github.com/jnunemaker/httparty/pull/275)
|
|
212
|
+
- [Added read_timeout and open_timeout options](https://github.com/jnunemaker/httparty/pull/278)
|
|
213
|
+
- change
|
|
214
|
+
- [Initialize HTTParty requests with an URI object and a String](https://github.com/jnunemaker/httparty/pull/274)
|
|
215
|
+
- minor improvement
|
|
216
|
+
- [Add stackexchange API example](https://github.com/jnunemaker/httparty/pull/280)
|
|
184
217
|
|
|
185
218
|
## 0.13.0 2014-02-14
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
219
|
+
|
|
220
|
+
- new
|
|
221
|
+
- [Add CSV support](https://github.com/jnunemaker/httparty/pull/269)
|
|
222
|
+
- [Allows PKCS12 client certificates](https://github.com/jnunemaker/httparty/pull/246)
|
|
223
|
+
- bug fix
|
|
224
|
+
- [Digest auth no longer fails when multiple headers are sent by the server](https://github.com/jnunemaker/httparty/pull/272)
|
|
225
|
+
- [Use 'Basement.copy' when calling 'HTTParty.copy'](https://github.com/jnunemaker/httparty/pull/268)
|
|
226
|
+
- [No longer appends ampersand when queries are embedded in paths](https://github.com/jnunemaker/httparty/pull/252)
|
|
227
|
+
- change
|
|
228
|
+
- [Merge - instead of overwrite - default headers with request provided headers](https://github.com/jnunemaker/httparty/pull/270)
|
|
229
|
+
- [Modernize respond_to implementations to support second param](https://github.com/jnunemaker/httparty/pull/264)
|
|
230
|
+
- [Sort query parameters by key before processing](https://github.com/jnunemaker/httparty/pull/245)
|
|
231
|
+
- minor improvement
|
|
232
|
+
- [Add HTTParty::Error base class](https://github.com/jnunemaker/httparty/pull/260)
|
|
199
233
|
|
|
200
234
|
## 0.12.0 2013-10-10
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
235
|
+
|
|
236
|
+
- new
|
|
237
|
+
- [Added initial logging support](https://github.com/jnunemaker/httparty/pull/243)
|
|
238
|
+
- [Add support for local host and port binding](https://github.com/jnunemaker/httparty/pull/238)
|
|
239
|
+
- [content_type_charset_support](https://github.com/jnunemaker/httparty/commit/82e351f0904e8ecc856015ff2854698a2ca47fbc)
|
|
240
|
+
- bug fix
|
|
241
|
+
- [No longer attempt to decompress the body on HEAD requests](https://github.com/jnunemaker/httparty/commit/f2b8cc3d49e0e9363d7054b14f30c340d7b8e7f1)
|
|
242
|
+
- [Adding java check in aliasing of multiple choices](https://github.com/jnunemaker/httparty/pull/204/commits)
|
|
243
|
+
- change
|
|
244
|
+
- [MIME-type files of javascript are returned as a string instead of JSON](https://github.com/jnunemaker/httparty/pull/239)
|
|
245
|
+
- [Made SSL connections use the system certificate store by default](https://github.com/jnunemaker/httparty/pull/226)
|
|
246
|
+
- [Do not pass proxy options to Net::HTTP connection if not specified](https://github.com/jnunemaker/httparty/pull/222)
|
|
247
|
+
- [Replace multi_json with stdlib json](https://github.com/jnunemaker/httparty/pull/214)
|
|
248
|
+
- [Require Ruby >= 1.9.3]
|
|
249
|
+
- [Response returns array of returned cookie strings](https://github.com/jnunemaker/httparty/pull/218)
|
|
250
|
+
- [Allow '=' within value of a cookie]
|
|
251
|
+
- minor improvements
|
|
252
|
+
- [Improve documentation of ssl_ca_file, ssl_ca_path](https://github.com/jnunemaker/httparty/pull/223)
|
|
253
|
+
- [Fix example URLs](https://github.com/jnunemaker/httparty/pull/232)
|
|
219
254
|
|
|
220
255
|
## 0.11.0 2013-04-10
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
256
|
+
|
|
257
|
+
- new
|
|
258
|
+
- [Add COPY http request handling](https://github.com/jnunemaker/httparty/pull/190)
|
|
259
|
+
- [Ruby 2.0 tests](https://github.com/jnunemaker/httparty/pull/194)
|
|
260
|
+
- [Ruby >= 2.0.0 support both multiple_choice? and multiple_choices?]
|
|
261
|
+
- bug fix
|
|
262
|
+
- [Maintain blocks passed to 'perform' in redirects](https://github.com/jnunemaker/httparty/pull/191)
|
|
263
|
+
- [Fixed nc value being quoted, this was against spec](https://github.com/jnunemaker/httparty/pull/196)
|
|
264
|
+
- [Request#uri no longer duplicates non-relative-path params](https://github.com/jnunemaker/httparty/pull/189)
|
|
265
|
+
- change
|
|
266
|
+
- [Client-side-only cookie attributes are removed: case-insensitive](https://github.com/jnunemaker/httparty/pull/188)
|
|
231
267
|
|
|
232
268
|
## 0.10.2 2013-01-26
|
|
233
|
-
|
|
234
|
-
|
|
269
|
+
|
|
270
|
+
- bug fix
|
|
271
|
+
- [hash_conversions misnamed variable](https://github.com/jnunemaker/httparty/pull/187)
|
|
235
272
|
|
|
236
273
|
## 0.10.1 2013-01-26
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
274
|
+
|
|
275
|
+
- new
|
|
276
|
+
- [Added support for MOVE requests](https://github.com/jnunemaker/httparty/pull/183)
|
|
277
|
+
- [Bump multi xml version](https://github.com/jnunemaker/httparty/pull/181)
|
|
240
278
|
|
|
241
279
|
## 0.10.0 2013-01-10
|
|
242
|
-
|
|
243
|
-
|
|
280
|
+
|
|
281
|
+
- changes
|
|
282
|
+
- removed yaml support because of security risk (see rails yaml issues)
|
|
244
283
|
|
|
245
284
|
## 0.9.0 2012-09-07
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
285
|
+
|
|
286
|
+
- new
|
|
287
|
+
- [support for connection adapters](https://github.com/jnunemaker/httparty/pull/157)
|
|
288
|
+
- [allow ssl_version on ruby 1.9](https://github.com/jnunemaker/httparty/pull/159)
|
|
289
|
+
- bug fixes
|
|
290
|
+
- [don't treat port 4430 as ssl](https://github.com/jnunemaker/httparty/commit/a296b1c97f83d7dcc6ef85720a43664c265685ac)
|
|
291
|
+
- [deep clone default options](https://github.com/jnunemaker/httparty/commit/f74227d30f9389b4b23a888c9af49fb9b8248e1f)
|
|
292
|
+
- a few net digest auth fixes
|
|
253
293
|
|
|
254
294
|
## 0.8.3 2012-04-21
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
295
|
+
|
|
296
|
+
- new
|
|
297
|
+
- [lazy parsing of responses](https://github.com/jnunemaker/httparty/commit/9fd5259c8dab00e426082b66af44ede2c9068f45)
|
|
298
|
+
- [add support for PATCH requests](https://github.com/jnunemaker/httparty/commit/7ab6641e37a9e31517e46f6124f38c615395d38a)
|
|
299
|
+
- bug fixes
|
|
300
|
+
- [subclasses no longer override superclass options](https://github.com/jnunemaker/httparty/commit/682af8fbf672e7b3009e650da776c85cdfe78d39)
|
|
260
301
|
|
|
261
302
|
## 0.8.2 2012-04-12
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
303
|
+
|
|
304
|
+
- new
|
|
305
|
+
- add -r to make CLI return failure code if status >= 400
|
|
306
|
+
- allow blank username from CLI
|
|
307
|
+
- bug fixes
|
|
308
|
+
- return nil for null body
|
|
309
|
+
- automatically deflate responses with a Content-Encoding: x-gzip header
|
|
310
|
+
- Do not HEAD on POST request with digest authentication
|
|
311
|
+
- add support for proxy authentication
|
|
312
|
+
- fix posting data with CLI
|
|
313
|
+
- require rexml/document if xml format from CLI
|
|
314
|
+
- support for fragmented responses
|
|
273
315
|
|
|
274
316
|
## 0.8.1 2011-10-05
|
|
275
|
-
|
|
276
|
-
|
|
317
|
+
|
|
318
|
+
- bug fixes
|
|
319
|
+
- content-encoding header should be removed when automatically inflating the body
|
|
277
320
|
|
|
278
321
|
## 0.8.0 2011-09-13
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
322
|
+
|
|
323
|
+
- new
|
|
324
|
+
- switch to multi json/xml for parsing by default
|
|
325
|
+
- bug fixes
|
|
326
|
+
- fix redirects to relative uri's
|
|
283
327
|
|
|
284
328
|
## 0.7.8 2011-06-06
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
329
|
+
|
|
330
|
+
- bug fix
|
|
331
|
+
- Make response honor respond to
|
|
332
|
+
- net http timeout can also be a float
|
|
288
333
|
|
|
289
334
|
## 0.7.7 2011-04-16
|
|
290
|
-
|
|
291
|
-
|
|
335
|
+
|
|
336
|
+
- bug fix
|
|
337
|
+
- Fix NoMethodError when using the NON_RAILS_QUERY_STRING_NORMALIZER with a hash whose key is a symbol and value is nil
|
|
292
338
|
|
|
293
339
|
## 0.7.5 2011-04-16
|
|
294
|
-
|
|
295
|
-
|
|
340
|
+
|
|
341
|
+
- bug fix
|
|
342
|
+
- caused issue with latest rubygems
|
|
296
343
|
|
|
297
344
|
## 0.7.4 2011-02-13
|
|
298
|
-
|
|
299
|
-
|
|
345
|
+
|
|
346
|
+
- bug fixes
|
|
347
|
+
- Set VERIFY_NONE when using https. Ruby 1.9.2 no longer sets this for us. gh-67
|
|
300
348
|
|
|
301
349
|
## 0.7.3 2011-01-20
|
|
302
|
-
|
|
303
|
-
|
|
350
|
+
|
|
351
|
+
- bug fixes
|
|
352
|
+
- Fix digest auth for unspecified quality of protection (bjoernalbers, mtrudel, dwo)
|
|
304
353
|
|
|
305
354
|
## 0.7.2 2011-01-20
|
|
306
|
-
|
|
307
|
-
|
|
355
|
+
|
|
356
|
+
- bug fixes
|
|
357
|
+
- Fix gem dependencies
|
|
308
358
|
|
|
309
359
|
## 0.7.1 2011-01-19
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
360
|
+
|
|
361
|
+
- bug fixes
|
|
362
|
+
- Fix uninitialized constant HTTParty::Response::Net in 1.9.2 (cap10morgan)
|
|
363
|
+
- Other fixes for 1.9.2, full suite still fails (cap10morgan)
|
|
313
364
|
|
|
314
365
|
## 0.7.0 2011-01-18
|
|
315
|
-
|
|
316
|
-
|
|
366
|
+
|
|
367
|
+
- minor enhancements
|
|
368
|
+
- Added query methods for HTTP status codes, i.e. response.success?
|
|
317
369
|
response.created? (thanks citizenparker)
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
370
|
+
- Added support for ssl_ca_file and ssl_ca_path (dlitz)
|
|
371
|
+
- Allow custom query string normalization. gh-8
|
|
372
|
+
- Unlock private keys with password (freerange)
|
|
373
|
+
- Added high level request documentation (phildarnowsky)
|
|
374
|
+
- Added basic post example (pbuckley)
|
|
375
|
+
- Response object has access to its corresponding request object
|
|
376
|
+
- Added example of siginin into tripit.com
|
|
377
|
+
- Added option to follow redirects (rkj). gh-56
|
|
378
|
+
- bug fixes
|
|
379
|
+
- Fixed superclass mismatch exception while running tests
|
|
328
380
|
(thanks dlitz http://github.com/dlitz/httparty/commit/48224f0615b32133afcff4718ad426df7a4b401b)
|
|
329
381
|
|
|
330
382
|
## 0.6.1 2010-07-07
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
383
|
+
|
|
384
|
+
- minor enhancements
|
|
385
|
+
- updated to crack 0.1.8
|
|
386
|
+
- bug fixes
|
|
387
|
+
- subclasses always merge into the parent's default_options and
|
|
388
|
+
default_cookies (l4rk).
|
|
389
|
+
- subclasses play nicely with grand parents. gh-49
|
|
337
390
|
|
|
338
391
|
## 0.6.0 2010-06-13
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
392
|
+
|
|
393
|
+
- major enhancements
|
|
394
|
+
|
|
395
|
+
- Digest Auth (bartiaco, sbecker, gilles, and aaronrussell)
|
|
396
|
+
- Maintain HTTP method across redirects (bartiaco and sbecker)
|
|
397
|
+
- HTTParty::Response#response returns the Net::HTTPResponse object
|
|
398
|
+
- HTTParty::Response#headers returns a HTTParty::Response::Headers object
|
|
344
399
|
which quacks like a Hash + Net::HTTPHeader. The #headers method continues
|
|
345
400
|
to be backwards-compatible with the old Hash return value but may become
|
|
346
401
|
deprecated in the future.
|
|
347
402
|
|
|
348
|
-
|
|
349
|
-
|
|
403
|
+
- minor enhancements
|
|
404
|
+
- Update crack requirement to version 0.1.7
|
|
350
405
|
You may still get a warning because Crack's version constant is out of date
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
406
|
+
- Timeout option can be set for all requests using HTTParty.default_timeout (taazza)
|
|
407
|
+
- Closed #38 "headers hash should downcase keys so canonical header name can be used"
|
|
408
|
+
- Closed #40 "Gzip response" wherein gziped and deflated responses are
|
|
354
409
|
automatically inflated. (carsonmcdonald)
|
|
355
410
|
|
|
356
411
|
## 0.5.2 2010-01-31
|
|
357
|
-
|
|
358
|
-
|
|
412
|
+
|
|
413
|
+
- minor enhancements
|
|
414
|
+
- Update crack requirement to version 0.1.6
|
|
359
415
|
|
|
360
416
|
## 0.5.1 2010-01-30
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
417
|
+
|
|
418
|
+
- bug fixes
|
|
419
|
+
|
|
420
|
+
- Handle 304 response correctly by returning the HTTParty::Response object instead of redirecting (seth and hellvinz)
|
|
421
|
+
- Only redirect 300 responses if the header contains a Location
|
|
422
|
+
- Don't append empty query strings to the uri. Closes #31
|
|
423
|
+
- When no_follow is enabled, only raise the RedirectionTooDeep exception when a response tries redirecting. Closes #28
|
|
424
|
+
|
|
425
|
+
- major enhancements
|
|
426
|
+
|
|
427
|
+
- Removed rubygems dependency. I suggest adding rubygems to RUBYOPT if this causes problems for you.
|
|
369
428
|
$ export RUBYOPT='rubygems'
|
|
370
|
-
|
|
371
|
-
|
|
429
|
+
- HTTParty#debug_output prints debugging information for the current request (iwarshak)
|
|
430
|
+
- HTTParty#no_follow now available as a class-level option. Sets whether or not to follow redirects.
|
|
372
431
|
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
432
|
+
- minor enhancements
|
|
433
|
+
- HTTParty::VERSION now available
|
|
434
|
+
- Update crack requirement to version 0.1.5
|
|
376
435
|
|
|
377
436
|
## 0.5.0 2009-12-07
|
|
378
|
-
* bug fixes
|
|
379
|
-
* inheritable attributes no longer mutable by subclasses (yyyc514)
|
|
380
|
-
* namespace BasicObject within HTTParty to avoid class name collisions (eric)
|
|
381
437
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
438
|
+
- bug fixes
|
|
439
|
+
|
|
440
|
+
- inheritable attributes no longer mutable by subclasses (yyyc514)
|
|
441
|
+
- namespace BasicObject within HTTParty to avoid class name collisions (eric)
|
|
442
|
+
|
|
443
|
+
- major enhancements
|
|
444
|
+
|
|
445
|
+
- Custom Parsers via class or proc
|
|
446
|
+
- Deprecation warning on HTTParty::AllowedFormats
|
|
385
447
|
moved to HTTParty::Parser::SupportedFormats
|
|
386
448
|
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
449
|
+
- minor enhancements
|
|
450
|
+
- Curl inspired output when using the binary in verbose mode (alexvollmer)
|
|
451
|
+
- raise UnsupportedURIScheme when scheme is not HTTP or HTTPS (djspinmonkey)
|
|
452
|
+
- Allow SSL for ports other than 443 when scheme is HTTPS (stefankroes)
|
|
453
|
+
- Accept PEM certificates via HTTParty#pem (chrislo)
|
|
454
|
+
- Support HEAD and OPTION verbs (grempe)
|
|
455
|
+
- Verify SSL certificates when providing a PEM file (collectiveidea/danielmorrison)
|
|
394
456
|
|
|
395
457
|
## 0.4.5 2009-09-12
|
|
396
|
-
* bug fixes
|
|
397
|
-
* Fixed class-level headers overwritten by cookie management code. Closes #19
|
|
398
|
-
* Fixed "superclass mismatch for class BlankSlate" error. Closes #20
|
|
399
|
-
* Fixed reading files as post data from the command line (vesan)
|
|
400
458
|
|
|
401
|
-
|
|
402
|
-
|
|
459
|
+
- bug fixes
|
|
460
|
+
|
|
461
|
+
- Fixed class-level headers overwritten by cookie management code. Closes #19
|
|
462
|
+
- Fixed "superclass mismatch for class BlankSlate" error. Closes #20
|
|
463
|
+
- Fixed reading files as post data from the command line (vesan)
|
|
464
|
+
|
|
465
|
+
- minor enhancements
|
|
466
|
+
- Timeout option added; will raise a Timeout::Error after the timeout has elapsed (attack). Closes #17
|
|
403
467
|
HTTParty.get "http://github.com", timeout: 1
|
|
404
|
-
|
|
468
|
+
- Building gem with Jeweler
|
|
405
469
|
|
|
406
470
|
## 0.4.4 2009-07-19
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
471
|
+
|
|
472
|
+
- 2 minor update
|
|
473
|
+
- :query no longer sets form data. Use body and set content type to application/x-www-form-urlencoded if you need it. :query was wrong for that.
|
|
474
|
+
- Fixed a bug in the cookies class method that caused cookies to be forgotten after the first request.
|
|
475
|
+
- Also, some general cleanup of tests and such.
|
|
411
476
|
|
|
412
477
|
## 0.4.3 2009-04-23
|
|
413
|
-
|
|
414
|
-
|
|
478
|
+
|
|
479
|
+
- 1 minor update
|
|
480
|
+
- added message to the response object
|
|
415
481
|
|
|
416
482
|
## 0.4.2 2009-03-30
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
483
|
+
|
|
484
|
+
- 2 minor changes
|
|
485
|
+
- response code now returns an integer instead of a string (jqr)
|
|
486
|
+
- rubyforge project setup for crack so i'm now depending on that instead of jnunemaker-crack
|
|
420
487
|
|
|
421
488
|
## 0.4.1 2009-03-29
|
|
422
|
-
|
|
423
|
-
|
|
489
|
+
|
|
490
|
+
- 1 minor fix
|
|
491
|
+
- gem 'jnunemaker-crack' instead of gem 'crack'
|
|
424
492
|
|
|
425
493
|
## 0.4.0 2009-03-29
|
|
426
|
-
|
|
427
|
-
|
|
494
|
+
|
|
495
|
+
- 1 minor change
|
|
496
|
+
- Switched xml and json parsing to crack (same code as before just moved to gem for easier reuse in other projects)
|
|
428
497
|
|
|
429
498
|
## 0.3.1 2009-02-10
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
499
|
+
|
|
500
|
+
- 1 minor fix, 1 minor enhancement
|
|
501
|
+
- Fixed unescaping umlauts (siebertm)
|
|
502
|
+
- Added yaml response parsing (Miha Filej)
|
|
433
503
|
|
|
434
504
|
## 0.3.0 2009-01-31
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
505
|
+
|
|
506
|
+
- 1 major enhancement, 1 bug fix
|
|
507
|
+
- JSON gem no longer a requirement. It was conflicting with rails json stuff so I just stole ActiveSupport's json decoding and bundled it with HTTParty.
|
|
508
|
+
- Fixed bug where query strings were being duplicated on redirects
|
|
509
|
+
- Added a bunch of specs and moved some code around.
|
|
439
510
|
|
|
440
511
|
## 0.2.10 2009-01-29
|
|
441
|
-
|
|
442
|
-
|
|
512
|
+
|
|
513
|
+
- 1 minor enhancement
|
|
514
|
+
- Made encoding on query parameters treat everything except URI::PATTERN::UNRESERVED as UNSAFE to force encoding of '+' character (Julian Russell)
|
|
443
515
|
|
|
444
516
|
## 0.2.9 2009-01-29
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
517
|
+
|
|
518
|
+
- 3 minor enhancements
|
|
519
|
+
- Added a 'headers' accessor to the response with a hash of any HTTP headers. (Don Peterson)
|
|
520
|
+
- Add support for a ":cookies" option to be used at the class level, or as an option on any individual call. It should be passed a hash, which will be converted to the proper format and added to the request headers when the call is made. (Don Peterson)
|
|
521
|
+
- Refactored several specs and added a full suite of cucumber features (Don Peterson)
|
|
449
522
|
|
|
450
523
|
## 0.2.8 2009-01-28
|
|
451
|
-
|
|
452
|
-
|
|
524
|
+
|
|
525
|
+
- 1 major fix
|
|
526
|
+
- fixed major bug with response where it wouldn't iterate or really work at all with parsed responses
|
|
453
527
|
|
|
454
528
|
## 0.2.7 2009-01-28
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
529
|
+
|
|
530
|
+
- 2 minor fixes, 2 minor enhancements, 2 major enhancements
|
|
531
|
+
- fixed undefined method add_node for nil class error that occasionally happened (juliocesar)
|
|
532
|
+
- Handle nil or unexpected values better when typecasting. (Brian Landau)
|
|
533
|
+
- More robust handling of mime types (Alex Vollmer)
|
|
534
|
+
- Fixed support for specifying headers and added support for basic auth to CLI. (Alex Vollmer)
|
|
535
|
+
- Added first class response object that includes original body and status code (Alex Vollmer)
|
|
536
|
+
- Now parsing all response types as some non-200 responses provide important information, this means no more exception raising (Alex Vollmer)
|
|
462
537
|
|
|
463
538
|
## 0.2.6 2009-01-05
|
|
464
|
-
|
|
465
|
-
|
|
539
|
+
|
|
540
|
+
- 1 minor bug fix
|
|
541
|
+
- added explicit require of time as Time#parse failed outside of rails (willcodeforfoo)
|
|
466
542
|
|
|
467
543
|
## 0.2.5 2009-01-05
|
|
468
|
-
|
|
469
|
-
|
|
544
|
+
|
|
545
|
+
- 1 major enhancement
|
|
546
|
+
- Add command line interface to HTTParty (Alex Vollmer)
|
|
470
547
|
|
|
471
548
|
## 0.2.4 2008-12-23
|
|
472
|
-
|
|
473
|
-
|
|
549
|
+
|
|
550
|
+
- 1 bug fix
|
|
551
|
+
- Fixed that mimetype detection was failing if no mimetype was returned from service (skippy)
|
|
552
|
+
|
|
474
553
|
## 0.2.3 2008-12-23
|
|
475
|
-
|
|
476
|
-
|
|
554
|
+
|
|
555
|
+
- 1 bug fix
|
|
556
|
+
- Fixed typecasting class variable naming issue
|
|
477
557
|
|
|
478
558
|
## 0.2.2 2008-12-08
|
|
479
|
-
|
|
480
|
-
|
|
559
|
+
|
|
560
|
+
- 1 bug fix
|
|
561
|
+
- Added the missing core extension hash method to_xml_attributes
|
|
481
562
|
|
|
482
563
|
## 0.2.1 2008-12-08
|
|
483
|
-
|
|
484
|
-
|
|
564
|
+
|
|
565
|
+
- 1 bug fix
|
|
566
|
+
- Fixed that HTTParty was borking ActiveSupport and as such Rails (thanks to Rob Sanheim)
|
|
485
567
|
|
|
486
568
|
## 0.2.0 2008-12-07
|
|
487
|
-
|
|
488
|
-
|
|
569
|
+
|
|
570
|
+
- 1 major enhancement
|
|
571
|
+
- Removed ActiveSupport as a dependency. Now requires json gem for json deserialization and uses an included class to do the xml parsing.
|
|
489
572
|
|
|
490
573
|
## 0.1.8 2008-11-30
|
|
491
|
-
|
|
492
|
-
|
|
574
|
+
|
|
575
|
+
- 3 major enhancements
|
|
576
|
+
- Moved base_uri normalization into request class and out of httparty module, fixing
|
|
493
577
|
the problem where base_uri was not always being normalized.
|
|
494
|
-
|
|
495
|
-
|
|
578
|
+
- Stupid simple support for HTTParty.get/post/put/delete. (jqr)
|
|
579
|
+
- Switched gem management to Echoe from newgem.
|
|
496
580
|
|
|
497
581
|
## 0.1.7 2008-11-30
|
|
498
|
-
|
|
499
|
-
|
|
582
|
+
|
|
583
|
+
- 1 major enhancement
|
|
584
|
+
- fixed multiple class definitions overriding each others options
|
|
500
585
|
|
|
501
586
|
## 0.1.6 2008-11-26
|
|
502
|
-
|
|
503
|
-
|
|
587
|
+
|
|
588
|
+
- 1 major enhancement
|
|
589
|
+
- now passing :query to set_form_data if post request to avoid content length errors
|
|
504
590
|
|
|
505
591
|
## 0.1.5 2008-11-14
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
592
|
+
|
|
593
|
+
- 2 major enhancements
|
|
594
|
+
- Refactored send request method out into its own object.
|
|
595
|
+
- Added :html format if you just want to do that.
|
|
509
596
|
|
|
510
597
|
## 0.1.4 2008-11-08
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
598
|
+
|
|
599
|
+
- 3 major enhancements:
|
|
600
|
+
- Removed some cruft
|
|
601
|
+
- Added ability to follow redirects automatically and turn that off (Alex Vollmer)
|
|
514
602
|
|
|
515
603
|
## 0.1.3 2008-08-22
|
|
516
604
|
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
605
|
+
- 3 major enhancements:
|
|
606
|
+
- Added http_proxy key for setting proxy server and port (francxk@gmail.com)
|
|
607
|
+
- Now raises exception when http error occurs (francxk@gmail.com)
|
|
608
|
+
- Changed auto format detection from file extension to response content type (Jay Pignata)
|
|
521
609
|
|
|
522
610
|
## 0.1.2 2008-08-09
|
|
523
611
|
|
|
524
|
-
|
|
525
|
-
|
|
612
|
+
- 1 major enhancement:
|
|
613
|
+
- default_params were not being appended to query string if option[:query] was blank
|
|
526
614
|
|
|
527
615
|
## 0.1.1 2008-07-30
|
|
528
616
|
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
617
|
+
- 2 major enhancement:
|
|
618
|
+
- Added :basic_auth key for options when making a request
|
|
619
|
+
- :query and :body both now work with query string or hash
|
|
532
620
|
|
|
533
621
|
## 0.1.0 2008-07-27
|
|
534
622
|
|
|
535
|
-
|
|
536
|
-
|
|
623
|
+
- 1 major enhancement:
|
|
624
|
+
- Initial release
|