httparty 0.13.7 → 0.21.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +5 -5
  2. data/.editorconfig +18 -0
  3. data/.github/workflows/ci.yml +26 -0
  4. data/.gitignore +3 -0
  5. data/.rubocop_todo.yml +1 -1
  6. data/{History → Changelog.md} +226 -59
  7. data/Gemfile +10 -3
  8. data/Guardfile +3 -2
  9. data/README.md +8 -7
  10. data/bin/httparty +3 -1
  11. data/docs/README.md +191 -0
  12. data/examples/README.md +34 -12
  13. data/examples/aaws.rb +7 -3
  14. data/examples/body_stream.rb +14 -0
  15. data/examples/crack.rb +1 -1
  16. data/examples/custom_parsers.rb +5 -1
  17. data/examples/delicious.rb +4 -4
  18. data/examples/headers_and_user_agents.rb +7 -3
  19. data/examples/idn.rb +10 -0
  20. data/examples/logging.rb +4 -4
  21. data/examples/microsoft_graph.rb +52 -0
  22. data/examples/multipart.rb +22 -0
  23. data/examples/peer_cert.rb +9 -0
  24. data/examples/stackexchange.rb +1 -1
  25. data/examples/stream_download.rb +26 -0
  26. data/examples/tripit_sign_in.rb +17 -6
  27. data/examples/twitter.rb +2 -2
  28. data/examples/whoismyrep.rb +1 -1
  29. data/httparty.gemspec +7 -5
  30. data/lib/httparty/connection_adapter.rb +86 -20
  31. data/lib/httparty/cookie_hash.rb +10 -8
  32. data/lib/httparty/decompressor.rb +102 -0
  33. data/lib/httparty/exceptions.rb +8 -2
  34. data/lib/httparty/hash_conversions.rb +30 -8
  35. data/lib/httparty/headers_processor.rb +32 -0
  36. data/lib/httparty/logger/apache_formatter.rb +31 -6
  37. data/lib/httparty/logger/curl_formatter.rb +68 -23
  38. data/lib/httparty/logger/logger.rb +5 -1
  39. data/lib/httparty/logger/logstash_formatter.rb +61 -0
  40. data/lib/httparty/module_inheritable_attributes.rb +6 -4
  41. data/lib/httparty/net_digest_auth.rb +23 -21
  42. data/lib/httparty/parser.rb +25 -14
  43. data/lib/httparty/request/body.rb +105 -0
  44. data/lib/httparty/request/multipart_boundary.rb +13 -0
  45. data/lib/httparty/request.rb +160 -106
  46. data/lib/httparty/response/headers.rb +23 -19
  47. data/lib/httparty/response.rb +92 -13
  48. data/lib/httparty/response_fragment.rb +21 -0
  49. data/lib/httparty/text_encoder.rb +72 -0
  50. data/lib/httparty/utils.rb +13 -0
  51. data/lib/httparty/version.rb +3 -1
  52. data/lib/httparty.rb +98 -35
  53. data/website/css/common.css +1 -1
  54. metadata +34 -114
  55. data/.simplecov +0 -1
  56. data/.travis.yml +0 -7
  57. data/features/basic_authentication.feature +0 -20
  58. data/features/command_line.feature +0 -95
  59. data/features/deals_with_http_error_codes.feature +0 -26
  60. data/features/digest_authentication.feature +0 -30
  61. data/features/handles_compressed_responses.feature +0 -27
  62. data/features/handles_multiple_formats.feature +0 -57
  63. data/features/steps/env.rb +0 -27
  64. data/features/steps/httparty_response_steps.rb +0 -52
  65. data/features/steps/httparty_steps.rb +0 -43
  66. data/features/steps/mongrel_helper.rb +0 -127
  67. data/features/steps/remote_service_steps.rb +0 -90
  68. data/features/supports_read_timeout_option.feature +0 -13
  69. data/features/supports_redirection.feature +0 -22
  70. data/features/supports_timeout_option.feature +0 -13
  71. data/spec/fixtures/delicious.xml +0 -23
  72. data/spec/fixtures/empty.xml +0 -0
  73. data/spec/fixtures/google.html +0 -3
  74. data/spec/fixtures/ssl/generate.sh +0 -29
  75. data/spec/fixtures/ssl/generated/1fe462c2.0 +0 -16
  76. data/spec/fixtures/ssl/generated/bogushost.crt +0 -13
  77. data/spec/fixtures/ssl/generated/ca.crt +0 -16
  78. data/spec/fixtures/ssl/generated/ca.key +0 -15
  79. data/spec/fixtures/ssl/generated/selfsigned.crt +0 -14
  80. data/spec/fixtures/ssl/generated/server.crt +0 -13
  81. data/spec/fixtures/ssl/generated/server.key +0 -15
  82. data/spec/fixtures/ssl/openssl-exts.cnf +0 -9
  83. data/spec/fixtures/twitter.csv +0 -2
  84. data/spec/fixtures/twitter.json +0 -1
  85. data/spec/fixtures/twitter.xml +0 -403
  86. data/spec/fixtures/undefined_method_add_node_for_nil.xml +0 -2
  87. data/spec/httparty/connection_adapter_spec.rb +0 -468
  88. data/spec/httparty/cookie_hash_spec.rb +0 -83
  89. data/spec/httparty/exception_spec.rb +0 -38
  90. data/spec/httparty/hash_conversions_spec.rb +0 -41
  91. data/spec/httparty/logger/apache_formatter_spec.rb +0 -41
  92. data/spec/httparty/logger/curl_formatter_spec.rb +0 -18
  93. data/spec/httparty/logger/logger_spec.rb +0 -38
  94. data/spec/httparty/net_digest_auth_spec.rb +0 -230
  95. data/spec/httparty/parser_spec.rb +0 -173
  96. data/spec/httparty/request_spec.rb +0 -1073
  97. data/spec/httparty/response_spec.rb +0 -241
  98. data/spec/httparty/ssl_spec.rb +0 -74
  99. data/spec/httparty_spec.rb +0 -850
  100. data/spec/spec_helper.rb +0 -59
  101. data/spec/support/ssl_test_helper.rb +0 -47
  102. data/spec/support/ssl_test_server.rb +0 -80
  103. data/spec/support/stub_response.rb +0 -49
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 1e38f46dd22e2a48a187998d68305ae356a1a9c8
4
- data.tar.gz: 257d70e92f1a15ee99c017c30f05b93b95b2410a
2
+ SHA256:
3
+ metadata.gz: 9dccd9b1a1fa3f98ca96da312ccdf19371418815a556b1443acac322a8ae4e15
4
+ data.tar.gz: 61f75235d1dcf4e1e38cbab62869aeeff28de9d0dc27fad30c7ca11d6355cd0d
5
5
  SHA512:
6
- metadata.gz: 106f0de2d1a32408da7442ccedc324dda618fa233e4e29389b632f3be6b0c39ab36280b9fe33247a7878fc8a8a6323eee8ed6566ff5ea24ea341e04ffc0d5da1
7
- data.tar.gz: f4f2e8725cf55e63480e54b84e6f4c386815debd6033dd396c4a12217cddc7f8154c22ccde4999a9b048f4b0e53192e4a5f975793a57114270afb8d867ce985c
6
+ metadata.gz: e47fce0ce8b6c4fe97ee0335b4f0544bc039755f12f0c2aac9f47e901739fd172390a3dc01f070d6799b1af335293b5d09a66514deb0810dfafc37f25d2f3c81
7
+ data.tar.gz: 9aa37800410a58a60ca751de44eed1026514b26c408a1f890b48a8f0049c814052a70a55343d3798c3d4d59ca9b157257c1fa83240200d283ba374a9b62db2ef
data/.editorconfig ADDED
@@ -0,0 +1,18 @@
1
+ ; This file is for unifying the coding style for different editors and IDEs.
2
+ ; More information at http://EditorConfig.org
3
+
4
+ root = true
5
+ [*]
6
+ end_of_line = lf
7
+ trim_trailing_whitespace = true
8
+
9
+ [**.rb]
10
+ indent_size = 2
11
+ indent_style = spaces
12
+ insert_final_newline = true
13
+
14
+ [**.xml]
15
+ trim_trailing_whitespace = false
16
+
17
+ [**.html]
18
+ trim_trailing_whitespace = false
@@ -0,0 +1,26 @@
1
+ name: CI
2
+ on: [push, pull_request]
3
+ jobs:
4
+ build:
5
+ runs-on: ubuntu-latest
6
+ strategy:
7
+ matrix:
8
+ ruby:
9
+ - 2.3
10
+ - 2.4
11
+ - 2.5
12
+ - 2.6
13
+ - 2.7
14
+ - '3.0' # Quoted, to avoid YAML float 3.0 interplated to "3"
15
+ - 3.1
16
+ - 3.2
17
+ steps:
18
+ - name: Check out repository code
19
+ uses: actions/checkout@v3
20
+ - name: Set up Ruby
21
+ uses: ruby/setup-ruby@v1
22
+ with:
23
+ ruby-version: ${{ matrix.ruby }}
24
+ bundler-cache: true # Run "bundle install", and cache the result automatically.
25
+ - name: Run Rake
26
+ run: bundle exec rake
data/.gitignore CHANGED
@@ -9,3 +9,6 @@ pkg/
9
9
  /.bundle
10
10
  .rvmrc
11
11
  coverage
12
+ *.gem
13
+ .idea
14
+ .tool-versions
data/.rubocop_todo.yml CHANGED
@@ -15,7 +15,7 @@ Lint/EndAlignment:
15
15
  Enabled: false
16
16
 
17
17
  # Offense count: 1
18
- Lint/HandleExceptions:
18
+ Lint/SuppressedException:
19
19
  Enabled: false
20
20
 
21
21
  # Offense count: 5
@@ -1,7 +1,174 @@
1
- == 0.13.7 aka "party not as hard"
1
+ ## 0.21.0
2
+
3
+ * [escape filename in the multipart/form-data Content-Disposition header](https://github.com/jnunemaker/httparty/commit/cdb45a678c43e44570b4e73f84b1abeb5ec22b8e)
4
+ * [Fix request marshaling](https://github.com/jnunemaker/httparty/pull/767)
5
+ * [Replace `mime-types` with `mini_mime`](https://github.com/jnunemaker/httparty/pull/769)
6
+
7
+ ## 0.20.0
8
+
9
+ Breaking changes
10
+
11
+ * Require Ruby >= 2.3.0
12
+
13
+ Fixes
14
+
15
+ * [`Marshal.dump` fails on response objects when request option `:logger` is set or `:parser` is a proc](https://github.com/jnunemaker/httparty/pull/714)
16
+ * [Switch `:pem` option to to `OpenSSL::PKey.read` to support other algorithms](https://github.com/jnunemaker/httparty/pull/720)
17
+
18
+ ## 0.19.1
19
+
20
+ * [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)
21
+
22
+ ## 0.19.0
23
+
24
+ * [Multipart/Form-Data: rewind files after read](https://github.com/jnunemaker/httparty/pull/709)
25
+ * [add frozen_string_literal pragma to all files](https://github.com/jnunemaker/httparty/pull/711)
26
+ * [Better handling of Accept-Encoding / Content-Encoding decompression (fixes #562)](https://github.com/jnunemaker/httparty/pull/729)
27
+
28
+ ## 0.18.1
29
+
30
+ * [Rename cop Lint/HandleExceptions to Lint/SuppressedException](https://github.com/jnunemaker/httparty/pull/699).
31
+ * [Encode keys in query params](https://github.com/jnunemaker/httparty/pull/698).
32
+ * [Fixed SSL doc example](https://github.com/jnunemaker/httparty/pull/692).
33
+ * [Add a build status badge](https://github.com/jnunemaker/httparty/pull/701).
34
+
35
+
36
+ ## 0.18.0
37
+
38
+ * [Support gzip/deflate transfer encoding when explicit headers are set](https://github.com/jnunemaker/httparty/pull/678).
39
+ * [Support edge case cookie format with a blank attribute](https://github.com/jnunemaker/httparty/pull/685).
40
+
41
+ ## 0.17.3
42
+
43
+ 0.17.2 is broken https://github.com/jnunemaker/httparty/issues/681
44
+
45
+ ## 0.17.2
46
+
47
+ * [Add Response#nil? deprecetion warning](https://github.com/jnunemaker/httparty/pull/680)
48
+
49
+ ## 0.17.1
50
+
51
+ * [Pass options to dynamic block headers](https://github.com/jnunemaker/httparty/pull/661)
52
+ * [Normalize urls with URI adapter to allow International Domain Names support](https://github.com/jnunemaker/httparty/pull/668)
53
+ * [Add max_retries support](https://github.com/jnunemaker/httparty/pull/660)
54
+ * [Minize gem size by removing test files](https://github.com/jnunemaker/httparty/pull/658)
55
+
56
+ ## 0.17.0
57
+
58
+ * [Fix encoding of streamed chunk](https://github.com/jnunemaker/httparty/pull/644)
59
+ * [Avoid modifying frozen strings](https://github.com/jnunemaker/httparty/pull/649)
60
+ * [Expose .connection on fragment block param](https://github.com/jnunemaker/httparty/pull/648)
61
+ * [Add support for `Net::HTTP#write_timeout` method (Ruby 2.6.0)](https://github.com/jnunemaker/httparty/pull/647)
62
+
63
+ ## 0.16.4
64
+ * [Add support for Ruby 2.6](https://github.com/jnunemaker/httparty/pull/636)
65
+ * [Fix a few multipart issues](https://github.com/jnunemaker/httparty/pull/626)
66
+ * [Improve a memory usage for https requests](https://github.com/jnunemaker/httparty/pull/625)
67
+ * [Add response code to streamed body](https://github.com/jnunemaker/httparty/pull/588)
68
+
69
+ ## 0.16.3
70
+ * [Add Logstash-compatible formatter](https://github.com/jnunemaker/httparty/pull/612)
71
+ * [Add support for headers specified with symbols](https://github.com/jnunemaker/httparty/pull/622)
72
+ * [Fix response object marshalling](https://github.com/jnunemaker/httparty/pull/618)
73
+ * [Add ability to send multipart, without passing file](https://github.com/jnunemaker/httparty/pull/615)
74
+ * [Fix detection of content_type for multipart payload](https://github.com/jnunemaker/httparty/pull/616)
75
+ * [Process dynamic headers before making actual request](https://github.com/jnunemaker/httparty/pull/606)
76
+ * [Fix multipart uploads with ActionDispatch::Http::UploadedFile TempFile by using original_filename](https://github.com/jnunemaker/httparty/pull/598)
77
+ * [Added support for lock and unlock http requests](https://github.com/jnunemaker/httparty/pull/596)
78
+
79
+ ## 0.16.2
80
+
81
+ * [Support ActionDispatch::Http::UploadedFile again](https://github.com/jnunemaker/httparty/pull/585)
82
+
83
+ ## 0.16.1
84
+
85
+ * [Parse content with application/hal+json content type as JSON](https://github.com/jnunemaker/httparty/pull/573)
86
+ * [Convert objects to string when concatenating in multipart stuff](https://github.com/jnunemaker/httparty/pull/575)
87
+ * [Fix multipart to set its header even when other headers are provided](https://github.com/jnunemaker/httparty/pull/576)
88
+
89
+ ## 0.16.0
90
+
91
+ * [Add multipart support](https://github.com/jnunemaker/httparty/pull/569)
92
+
93
+ ## 0.15.7
94
+
95
+ Fixed
96
+
97
+ * [Add Response#pretty_print | Restore documented behavior](https://github.com/jnunemaker/httparty/pull/570)
98
+ * [Add ability to parse response from JSONAPI ](https://github.com/jnunemaker/httparty/pull/553)
99
+
100
+ ## 0.15.6
101
+
102
+ Fixed
103
+
104
+ * [Encoding and content type stuff](https://github.com/jnunemaker/httparty/pull/543)
105
+
106
+ ## 0.15.5
107
+
108
+ Fixed
109
+
110
+ * [Use non-destructive gsub](https://github.com/jnunemaker/httparty/pull/540)
111
+
112
+ ## 0.15.4
113
+
114
+ Fixed
115
+
116
+ * Prevent gsub errors with different encodings.
117
+ * Prevent passing nil to encode_body.
118
+
119
+ ## 0.15.3
120
+
121
+ Fixed
122
+
123
+ * [Fix processing nil body for HEAD requests](https://github.com/jnunemaker/httparty/pull/530).
124
+ * Add missing require to headers.rb (33439a8).
125
+
126
+ ## 0.15.2
127
+
128
+ Fixed
129
+
130
+ * Remove symlink from specs. It was reportedly still getting bundled with gem.
131
+
132
+ ## 0.15.1
133
+
134
+ Fixed
135
+
136
+ * Stop including test files in gem. Fixes installation issues on windows due to symlink in spec dir.
137
+
138
+ ## 0.15.0
139
+
140
+ Breaking Changes
141
+
142
+ * require Ruby >= 2.0.0
143
+
144
+ Fixed
145
+
146
+ * [fix numerous bugs](https://github.com/jnunemaker/httparty/pull/513)
147
+ * [handle utf-8 bom for json parsing](https://github.com/jnunemaker/httparty/pull/520)
148
+ * [do not overwrite default headers unless specified](https://github.com/jnunemaker/httparty/pull/518)
149
+
150
+ ## 0.14.0
151
+
152
+ Breaking Changes
153
+
154
+ * None
155
+
156
+ Added
157
+
158
+ * [added status predicate methods to Response#respond_to?](https://github.com/jnunemaker/httparty/pull/482)
159
+ * [support for MKCOL method](https://github.com/jnunemaker/httparty/pull/465)
160
+ * one fewer dependency: [remove json gem from gemspec](https://github.com/jnunemaker/httparty/pull/464)
161
+ * [optional raising exception on certain status codes](https://github.com/jnunemaker/httparty/pull/455)
162
+
163
+ Fixed
164
+
165
+ * [allow empty array to be used as param](https://github.com/jnunemaker/httparty/pull/477)
166
+ * [stop mutating cookie hash](https://github.com/jnunemaker/httparty/pull/460)
167
+
168
+ ## 0.13.7 aka "party not as hard"
2
169
  * remove post install emoji as it caused installation issues for some people
3
170
 
4
- == 0.13.6
171
+ ## 0.13.6
5
172
  * avoid calling String#strip on invalid Strings
6
173
  * preserve request method on 307 and 308 redirects
7
174
  * output version with --version for command line bin
@@ -9,25 +176,25 @@
9
176
  * add support for RFC2617 MD5-sess algorithm type
10
177
  * add party popper emoji to post install message
11
178
 
12
- == 0.13.5
179
+ ## 0.13.5
13
180
  * allow setting a custom URI adapter
14
181
 
15
- == 0.13.4
182
+ ## 0.13.4
16
183
  * correct redirect url for redirect paths without leading slash
17
184
  * remove core_extensions.rb as backwards compat for ruby 1.8 not needed
18
185
  * replace URI.encode with ERB::Util.url_encode
19
186
  * allow the response to be tapped
20
187
 
21
- == 0.13.3
188
+ ## 0.13.3
22
189
  * minor improvement
23
190
  * added option to allow for streaming large files without loading them into memory (672cdae)
24
191
 
25
- == 0.13.2
192
+ ## 0.13.2
26
193
  * minor improvement
27
194
  * [Set correct path on redirect to filename](https://github.com/jnunemaker/httparty/pull/337)
28
195
  * ensure logger works with curl format
29
196
 
30
- == 0.13.1 2014-04-08
197
+ ## 0.13.1 2014-04-08
31
198
  * new
32
199
  * [Added ability to specify a body_stream in HttpRequest](https://github.com/jnunemaker/httparty/pull/275)
33
200
  * [Added read_timeout and open_timeout options](https://github.com/jnunemaker/httparty/pull/278)
@@ -36,7 +203,7 @@
36
203
  * minor improvement
37
204
  * [Add stackexchange API example](https://github.com/jnunemaker/httparty/pull/280)
38
205
 
39
- == 0.13.0 2014-02-14
206
+ ## 0.13.0 2014-02-14
40
207
  * new
41
208
  * [Add CSV support](https://github.com/jnunemaker/httparty/pull/269)
42
209
  * [Allows PKCS12 client certificates](https://github.com/jnunemaker/httparty/pull/246)
@@ -51,7 +218,7 @@
51
218
  * minor improvement
52
219
  * [Add HTTParty::Error base class](https://github.com/jnunemaker/httparty/pull/260)
53
220
 
54
- == 0.12.0 2013-10-10
221
+ ## 0.12.0 2013-10-10
55
222
  * new
56
223
  * [Added initial logging support](https://github.com/jnunemaker/httparty/pull/243)
57
224
  * [Add support for local host and port binding](https://github.com/jnunemaker/httparty/pull/238)
@@ -71,7 +238,7 @@
71
238
  * [Improve documentation of ssl_ca_file, ssl_ca_path](https://github.com/jnunemaker/httparty/pull/223)
72
239
  * [Fix example URLs](https://github.com/jnunemaker/httparty/pull/232)
73
240
 
74
- == 0.11.0 2013-04-10
241
+ ## 0.11.0 2013-04-10
75
242
  * new
76
243
  * [Add COPY http request handling](https://github.com/jnunemaker/httparty/pull/190)
77
244
  * [Ruby 2.0 tests](https://github.com/jnunemaker/httparty/pull/194)
@@ -83,20 +250,20 @@
83
250
  * change
84
251
  * [Client-side-only cookie attributes are removed: case-insensitive](https://github.com/jnunemaker/httparty/pull/188)
85
252
 
86
- == 0.10.2 2013-01-26
253
+ ## 0.10.2 2013-01-26
87
254
  * bug fix
88
255
  * [hash_conversions misnamed variable](https://github.com/jnunemaker/httparty/pull/187)
89
256
 
90
- == 0.10.1 2013-01-26
257
+ ## 0.10.1 2013-01-26
91
258
  * new
92
259
  * [Added support for MOVE requests](https://github.com/jnunemaker/httparty/pull/183)
93
260
  * [Bump multi xml version](https://github.com/jnunemaker/httparty/pull/181)
94
261
 
95
- == 0.10.0 2013-01-10
262
+ ## 0.10.0 2013-01-10
96
263
  * changes
97
264
  * removed yaml support because of security risk (see rails yaml issues)
98
265
 
99
- == 0.9.0 2012-09-07
266
+ ## 0.9.0 2012-09-07
100
267
  * new
101
268
  * [support for connection adapters](https://github.com/jnunemaker/httparty/pull/157)
102
269
  * [allow ssl_version on ruby 1.9](https://github.com/jnunemaker/httparty/pull/159)
@@ -105,14 +272,14 @@
105
272
  * [deep clone default options](https://github.com/jnunemaker/httparty/commit/f74227d30f9389b4b23a888c9af49fb9b8248e1f)
106
273
  * a few net digest auth fixes
107
274
 
108
- == 0.8.3 2012-04-21
275
+ ## 0.8.3 2012-04-21
109
276
  * new
110
277
  * [lazy parsing of responses](https://github.com/jnunemaker/httparty/commit/9fd5259c8dab00e426082b66af44ede2c9068f45)
111
278
  * [add support for PATCH requests](https://github.com/jnunemaker/httparty/commit/7ab6641e37a9e31517e46f6124f38c615395d38a)
112
279
  * bug fixes
113
280
  * [subclasses no longer override superclass options](https://github.com/jnunemaker/httparty/commit/682af8fbf672e7b3009e650da776c85cdfe78d39)
114
281
 
115
- == 0.8.2 2012-04-12
282
+ ## 0.8.2 2012-04-12
116
283
  * new
117
284
  * add -r to make CLI return failure code if status >= 400
118
285
  * allow blank username from CLI
@@ -125,47 +292,47 @@
125
292
  * require rexml/document if xml format from CLI
126
293
  * support for fragmented responses
127
294
 
128
- == 0.8.1 2011-10-05
295
+ ## 0.8.1 2011-10-05
129
296
  * bug fixes
130
297
  * content-encoding header should be removed when automatically inflating the body
131
298
 
132
- == 0.8.0 2011-09-13
299
+ ## 0.8.0 2011-09-13
133
300
  * new
134
301
  * switch to multi json/xml for parsing by default
135
302
  * bug fixes
136
303
  * fix redirects to relative uri's
137
304
 
138
- == 0.7.8 2011-06-06
305
+ ## 0.7.8 2011-06-06
139
306
  * bug fix
140
307
  * Make response honor respond to
141
308
  * net http timeout can also be a float
142
309
 
143
- == 0.7.7 2011-04-16
310
+ ## 0.7.7 2011-04-16
144
311
  * bug fix
145
312
  * Fix NoMethodError when using the NON_RAILS_QUERY_STRING_NORMALIZER with a hash whose key is a symbol and value is nil
146
313
 
147
- == 0.7.5 2011-04-16
314
+ ## 0.7.5 2011-04-16
148
315
  * bug fix
149
316
  * caused issue with latest rubygems
150
317
 
151
- == 0.7.4 2011-02-13
318
+ ## 0.7.4 2011-02-13
152
319
  * bug fixes
153
320
  * Set VERIFY_NONE when using https. Ruby 1.9.2 no longer sets this for us. gh-67
154
321
 
155
- == 0.7.3 2011-01-20
322
+ ## 0.7.3 2011-01-20
156
323
  * bug fixes
157
324
  * Fix digest auth for unspecified quality of protection (bjoernalbers, mtrudel, dwo)
158
325
 
159
- == 0.7.2 2011-01-20
326
+ ## 0.7.2 2011-01-20
160
327
  * bug fixes
161
328
  * Fix gem dependencies
162
329
 
163
- == 0.7.1 2011-01-19
330
+ ## 0.7.1 2011-01-19
164
331
  * bug fixes
165
332
  * Fix uninitialized constant HTTParty::Response::Net in 1.9.2 (cap10morgan)
166
333
  * Other fixes for 1.9.2, full suite still fails (cap10morgan)
167
334
 
168
- == 0.7.0 2011-01-18
335
+ ## 0.7.0 2011-01-18
169
336
  * minor enhancements
170
337
  * Added query methods for HTTP status codes, i.e. response.success?
171
338
  response.created? (thanks citizenparker)
@@ -181,7 +348,7 @@
181
348
  * Fixed superclass mismatch exception while running tests
182
349
  (thanks dlitz http://github.com/dlitz/httparty/commit/48224f0615b32133afcff4718ad426df7a4b401b)
183
350
 
184
- == 0.6.1 2010-07-07
351
+ ## 0.6.1 2010-07-07
185
352
  * minor enhancements
186
353
  * updated to crack 0.1.8
187
354
  * bug fixes
@@ -189,7 +356,7 @@
189
356
  default_cookies (l4rk).
190
357
  * subclasses play nicely with grand parents. gh-49
191
358
 
192
- == 0.6.0 2010-06-13
359
+ ## 0.6.0 2010-06-13
193
360
  * major enhancements
194
361
  * Digest Auth (bartiaco, sbecker, gilles, and aaronrussell)
195
362
  * Maintain HTTP method across redirects (bartiaco and sbecker)
@@ -207,11 +374,11 @@
207
374
  * Closed #40 "Gzip response" wherein gziped and deflated responses are
208
375
  automatically inflated. (carsonmcdonald)
209
376
 
210
- == 0.5.2 2010-01-31
377
+ ## 0.5.2 2010-01-31
211
378
  * minor enhancements
212
379
  * Update crack requirement to version 0.1.6
213
380
 
214
- == 0.5.1 2010-01-30
381
+ ## 0.5.1 2010-01-30
215
382
  * bug fixes
216
383
  * Handle 304 response correctly by returning the HTTParty::Response object instead of redirecting (seth and hellvinz)
217
384
  * Only redirect 300 responses if the header contains a Location
@@ -228,7 +395,7 @@
228
395
  * HTTParty::VERSION now available
229
396
  * Update crack requirement to version 0.1.5
230
397
 
231
- == 0.5.0 2009-12-07
398
+ ## 0.5.0 2009-12-07
232
399
  * bug fixes
233
400
  * inheritable attributes no longer mutable by subclasses (yyyc514)
234
401
  * namespace BasicObject within HTTParty to avoid class name collisions (eric)
@@ -246,7 +413,7 @@
246
413
  * Support HEAD and OPTION verbs (grempe)
247
414
  * Verify SSL certificates when providing a PEM file (collectiveidea/danielmorrison)
248
415
 
249
- == 0.4.5 2009-09-12
416
+ ## 0.4.5 2009-09-12
250
417
  * bug fixes
251
418
  * Fixed class-level headers overwritten by cookie management code. Closes #19
252
419
  * Fixed "superclass mismatch for class BlankSlate" error. Closes #20
@@ -257,55 +424,55 @@
257
424
  HTTParty.get "http://github.com", timeout: 1
258
425
  * Building gem with Jeweler
259
426
 
260
- == 0.4.4 2009-07-19
427
+ ## 0.4.4 2009-07-19
261
428
  * 2 minor update
262
429
  * :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.
263
430
  * Fixed a bug in the cookies class method that caused cookies to be forgotten after the first request.
264
431
  * Also, some general cleanup of tests and such.
265
432
 
266
- == 0.4.3 2009-04-23
433
+ ## 0.4.3 2009-04-23
267
434
  * 1 minor update
268
435
  * added message to the response object
269
436
 
270
- == 0.4.2 2009-03-30
437
+ ## 0.4.2 2009-03-30
271
438
  * 2 minor changes
272
439
  * response code now returns an integer instead of a string (jqr)
273
440
  * rubyforge project setup for crack so i'm now depending on that instead of jnunemaker-crack
274
441
 
275
- == 0.4.1 2009-03-29
442
+ ## 0.4.1 2009-03-29
276
443
  * 1 minor fix
277
444
  * gem 'jnunemaker-crack' instead of gem 'crack'
278
445
 
279
- == 0.4.0 2009-03-29
446
+ ## 0.4.0 2009-03-29
280
447
  * 1 minor change
281
448
  * Switched xml and json parsing to crack (same code as before just moved to gem for easier reuse in other projects)
282
449
 
283
- == 0.3.1 2009-02-10
450
+ ## 0.3.1 2009-02-10
284
451
  * 1 minor fix, 1 minor enhancement
285
452
  * Fixed unescaping umlauts (siebertm)
286
453
  * Added yaml response parsing (Miha Filej)
287
454
 
288
- == 0.3.0 2009-01-31
455
+ ## 0.3.0 2009-01-31
289
456
  * 1 major enhancement, 1 bug fix
290
457
  * 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.
291
458
  * Fixed bug where query strings were being duplicated on redirects
292
459
  * Added a bunch of specs and moved some code around.
293
460
 
294
- == 0.2.10 2009-01-29
461
+ ## 0.2.10 2009-01-29
295
462
  * 1 minor enhancement
296
463
  * Made encoding on query parameters treat everything except URI::PATTERN::UNRESERVED as UNSAFE to force encoding of '+' character (Julian Russell)
297
464
 
298
- == 0.2.9 2009-01-29
465
+ ## 0.2.9 2009-01-29
299
466
  * 3 minor enhancements
300
467
  * Added a 'headers' accessor to the response with a hash of any HTTP headers. (Don Peterson)
301
468
  * 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)
302
469
  * Refactored several specs and added a full suite of cucumber features (Don Peterson)
303
470
 
304
- == 0.2.8 2009-01-28
471
+ ## 0.2.8 2009-01-28
305
472
  * 1 major fix
306
473
  * fixed major bug with response where it wouldn't iterate or really work at all with parsed responses
307
474
 
308
- == 0.2.7 2009-01-28
475
+ ## 0.2.7 2009-01-28
309
476
  * 2 minor fixes, 2 minor enhancements, 2 major enhancements
310
477
  * fixed undefined method add_node for nil class error that occasionally happened (juliocesar)
311
478
  * Handle nil or unexpected values better when typecasting. (Brian Landau)
@@ -314,77 +481,77 @@
314
481
  * Added first class response object that includes original body and status code (Alex Vollmer)
315
482
  * Now parsing all response types as some non-200 responses provide important information, this means no more exception raising (Alex Vollmer)
316
483
 
317
- == 0.2.6 2009-01-05
484
+ ## 0.2.6 2009-01-05
318
485
  * 1 minor bug fix
319
486
  * added explicit require of time as Time#parse failed outside of rails (willcodeforfoo)
320
487
 
321
- == 0.2.5 2009-01-05
488
+ ## 0.2.5 2009-01-05
322
489
  * 1 major enhancement
323
490
  * Add command line interface to HTTParty (Alex Vollmer)
324
491
 
325
- == 0.2.4 2008-12-23
492
+ ## 0.2.4 2008-12-23
326
493
  * 1 bug fix
327
494
  * Fixed that mimetype detection was failing if no mimetype was returned from service (skippy)
328
- == 0.2.3 2008-12-23
495
+ ## 0.2.3 2008-12-23
329
496
  * 1 bug fix
330
497
  * Fixed typecasting class variable naming issue
331
498
 
332
- == 0.2.2 2008-12-08
499
+ ## 0.2.2 2008-12-08
333
500
  * 1 bug fix
334
501
  * Added the missing core extension hash method to_xml_attributes
335
502
 
336
- == 0.2.1 2008-12-08
503
+ ## 0.2.1 2008-12-08
337
504
  * 1 bug fix
338
505
  * Fixed that HTTParty was borking ActiveSupport and as such Rails (thanks to Rob Sanheim)
339
506
 
340
- == 0.2.0 2008-12-07
507
+ ## 0.2.0 2008-12-07
341
508
  * 1 major enhancement
342
509
  * Removed ActiveSupport as a dependency. Now requires json gem for json deserialization and uses an included class to do the xml parsing.
343
510
 
344
- == 0.1.8 2008-11-30
511
+ ## 0.1.8 2008-11-30
345
512
  * 3 major enhancements
346
513
  * Moved base_uri normalization into request class and out of httparty module, fixing
347
514
  the problem where base_uri was not always being normalized.
348
515
  * Stupid simple support for HTTParty.get/post/put/delete. (jqr)
349
516
  * Switched gem management to Echoe from newgem.
350
517
 
351
- == 0.1.7 2008-11-30
518
+ ## 0.1.7 2008-11-30
352
519
  * 1 major enhancement
353
520
  * fixed multiple class definitions overriding each others options
354
521
 
355
- == 0.1.6 2008-11-26
522
+ ## 0.1.6 2008-11-26
356
523
  * 1 major enhancement
357
524
  * now passing :query to set_form_data if post request to avoid content length errors
358
525
 
359
- == 0.1.5 2008-11-14
526
+ ## 0.1.5 2008-11-14
360
527
  * 2 major enhancements
361
528
  * Refactored send request method out into its own object.
362
529
  * Added :html format if you just want to do that.
363
530
 
364
- == 0.1.4 2008-11-08
531
+ ## 0.1.4 2008-11-08
365
532
  * 3 major enhancements:
366
533
  * Removed some cruft
367
534
  * Added ability to follow redirects automatically and turn that off (Alex Vollmer)
368
535
 
369
- == 0.1.3 2008-08-22
536
+ ## 0.1.3 2008-08-22
370
537
 
371
538
  * 3 major enhancements:
372
539
  * Added http_proxy key for setting proxy server and port (francxk@gmail.com)
373
540
  * Now raises exception when http error occurs (francxk@gmail.com)
374
541
  * Changed auto format detection from file extension to response content type (Jay Pignata)
375
542
 
376
- == 0.1.2 2008-08-09
543
+ ## 0.1.2 2008-08-09
377
544
 
378
545
  * 1 major enhancement:
379
546
  * default_params were not being appended to query string if option[:query] was blank
380
547
 
381
- == 0.1.1 2008-07-30
548
+ ## 0.1.1 2008-07-30
382
549
 
383
550
  * 2 major enhancement:
384
551
  * Added :basic_auth key for options when making a request
385
552
  * :query and :body both now work with query string or hash
386
553
 
387
- == 0.1.0 2008-07-27
554
+ ## 0.1.0 2008-07-27
388
555
 
389
556
  * 1 major enhancement:
390
557
  * Initial release
data/Gemfile CHANGED
@@ -2,8 +2,8 @@ source 'https://rubygems.org'
2
2
  gemspec
3
3
 
4
4
  gem 'rake'
5
- gem 'fakeweb', '~> 1.3'
6
5
  gem 'mongrel', '1.2.0.pre2'
6
+ gem 'json'
7
7
 
8
8
  group :development do
9
9
  gem 'guard'
@@ -12,8 +12,15 @@ group :development do
12
12
  end
13
13
 
14
14
  group :test do
15
- gem 'rspec', '~> 3.1'
15
+ gem 'rexml'
16
+ gem 'rspec', '~> 3.4'
16
17
  gem 'simplecov', require: false
17
18
  gem 'aruba'
18
- gem 'cucumber', '~> 1.3.17'
19
+ gem 'cucumber', '~> 2.3'
20
+ gem 'webmock'
21
+ gem 'addressable'
22
+ end
23
+
24
+ group :development, :test do
25
+ gem 'pry'
19
26
  end
data/Guardfile CHANGED
@@ -1,7 +1,8 @@
1
1
  rspec_options = {
2
- version: 1,
3
2
  all_after_pass: false,
4
- all_on_start: false
3
+ all_on_start: false,
4
+ failed_mode: :keep,
5
+ cmd: 'bundle exec rspec',
5
6
  }
6
7
 
7
8
  guard 'rspec', rspec_options do