httparty 0.13.6 → 0.21.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.
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} +228 -58
  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 +8 -6
  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 +35 -115
  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: 7ff4fbf77e1502f71829faa6032ec50bce93aae6
4
- data.tar.gz: bcd37d969fec45917adec0a7e6ac202308520601
2
+ SHA256:
3
+ metadata.gz: 9dccd9b1a1fa3f98ca96da312ccdf19371418815a556b1443acac322a8ae4e15
4
+ data.tar.gz: 61f75235d1dcf4e1e38cbab62869aeeff28de9d0dc27fad30c7ca11d6355cd0d
5
5
  SHA512:
6
- metadata.gz: 0edda1d12877f8dbec768ef37934ad0853c7383dfbb1d0f1051de314b469dfe9eed8da318ea5cea3112c39d2dbe7edec5b00785834bfdf77ba75877a2163002a
7
- data.tar.gz: a97e1c55e863564388944cb4acf5ae2a49942a4df79dc09834025e7346929e9bd5a40b1e29d3f3cbdff479a4318ce1f100203da3f90b6b29085c433f2898bb0d
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,4 +1,174 @@
1
- == 0.13.6
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"
169
+ * remove post install emoji as it caused installation issues for some people
170
+
171
+ ## 0.13.6
2
172
  * avoid calling String#strip on invalid Strings
3
173
  * preserve request method on 307 and 308 redirects
4
174
  * output version with --version for command line bin
@@ -6,25 +176,25 @@
6
176
  * add support for RFC2617 MD5-sess algorithm type
7
177
  * add party popper emoji to post install message
8
178
 
9
- == 0.13.5
179
+ ## 0.13.5
10
180
  * allow setting a custom URI adapter
11
181
 
12
- == 0.13.4
182
+ ## 0.13.4
13
183
  * correct redirect url for redirect paths without leading slash
14
184
  * remove core_extensions.rb as backwards compat for ruby 1.8 not needed
15
185
  * replace URI.encode with ERB::Util.url_encode
16
186
  * allow the response to be tapped
17
187
 
18
- == 0.13.3
188
+ ## 0.13.3
19
189
  * minor improvement
20
190
  * added option to allow for streaming large files without loading them into memory (672cdae)
21
191
 
22
- == 0.13.2
192
+ ## 0.13.2
23
193
  * minor improvement
24
194
  * [Set correct path on redirect to filename](https://github.com/jnunemaker/httparty/pull/337)
25
195
  * ensure logger works with curl format
26
196
 
27
- == 0.13.1 2014-04-08
197
+ ## 0.13.1 2014-04-08
28
198
  * new
29
199
  * [Added ability to specify a body_stream in HttpRequest](https://github.com/jnunemaker/httparty/pull/275)
30
200
  * [Added read_timeout and open_timeout options](https://github.com/jnunemaker/httparty/pull/278)
@@ -33,7 +203,7 @@
33
203
  * minor improvement
34
204
  * [Add stackexchange API example](https://github.com/jnunemaker/httparty/pull/280)
35
205
 
36
- == 0.13.0 2014-02-14
206
+ ## 0.13.0 2014-02-14
37
207
  * new
38
208
  * [Add CSV support](https://github.com/jnunemaker/httparty/pull/269)
39
209
  * [Allows PKCS12 client certificates](https://github.com/jnunemaker/httparty/pull/246)
@@ -48,7 +218,7 @@
48
218
  * minor improvement
49
219
  * [Add HTTParty::Error base class](https://github.com/jnunemaker/httparty/pull/260)
50
220
 
51
- == 0.12.0 2013-10-10
221
+ ## 0.12.0 2013-10-10
52
222
  * new
53
223
  * [Added initial logging support](https://github.com/jnunemaker/httparty/pull/243)
54
224
  * [Add support for local host and port binding](https://github.com/jnunemaker/httparty/pull/238)
@@ -68,7 +238,7 @@
68
238
  * [Improve documentation of ssl_ca_file, ssl_ca_path](https://github.com/jnunemaker/httparty/pull/223)
69
239
  * [Fix example URLs](https://github.com/jnunemaker/httparty/pull/232)
70
240
 
71
- == 0.11.0 2013-04-10
241
+ ## 0.11.0 2013-04-10
72
242
  * new
73
243
  * [Add COPY http request handling](https://github.com/jnunemaker/httparty/pull/190)
74
244
  * [Ruby 2.0 tests](https://github.com/jnunemaker/httparty/pull/194)
@@ -80,20 +250,20 @@
80
250
  * change
81
251
  * [Client-side-only cookie attributes are removed: case-insensitive](https://github.com/jnunemaker/httparty/pull/188)
82
252
 
83
- == 0.10.2 2013-01-26
253
+ ## 0.10.2 2013-01-26
84
254
  * bug fix
85
255
  * [hash_conversions misnamed variable](https://github.com/jnunemaker/httparty/pull/187)
86
256
 
87
- == 0.10.1 2013-01-26
257
+ ## 0.10.1 2013-01-26
88
258
  * new
89
259
  * [Added support for MOVE requests](https://github.com/jnunemaker/httparty/pull/183)
90
260
  * [Bump multi xml version](https://github.com/jnunemaker/httparty/pull/181)
91
261
 
92
- == 0.10.0 2013-01-10
262
+ ## 0.10.0 2013-01-10
93
263
  * changes
94
264
  * removed yaml support because of security risk (see rails yaml issues)
95
265
 
96
- == 0.9.0 2012-09-07
266
+ ## 0.9.0 2012-09-07
97
267
  * new
98
268
  * [support for connection adapters](https://github.com/jnunemaker/httparty/pull/157)
99
269
  * [allow ssl_version on ruby 1.9](https://github.com/jnunemaker/httparty/pull/159)
@@ -102,14 +272,14 @@
102
272
  * [deep clone default options](https://github.com/jnunemaker/httparty/commit/f74227d30f9389b4b23a888c9af49fb9b8248e1f)
103
273
  * a few net digest auth fixes
104
274
 
105
- == 0.8.3 2012-04-21
275
+ ## 0.8.3 2012-04-21
106
276
  * new
107
277
  * [lazy parsing of responses](https://github.com/jnunemaker/httparty/commit/9fd5259c8dab00e426082b66af44ede2c9068f45)
108
278
  * [add support for PATCH requests](https://github.com/jnunemaker/httparty/commit/7ab6641e37a9e31517e46f6124f38c615395d38a)
109
279
  * bug fixes
110
280
  * [subclasses no longer override superclass options](https://github.com/jnunemaker/httparty/commit/682af8fbf672e7b3009e650da776c85cdfe78d39)
111
281
 
112
- == 0.8.2 2012-04-12
282
+ ## 0.8.2 2012-04-12
113
283
  * new
114
284
  * add -r to make CLI return failure code if status >= 400
115
285
  * allow blank username from CLI
@@ -122,47 +292,47 @@
122
292
  * require rexml/document if xml format from CLI
123
293
  * support for fragmented responses
124
294
 
125
- == 0.8.1 2011-10-05
295
+ ## 0.8.1 2011-10-05
126
296
  * bug fixes
127
297
  * content-encoding header should be removed when automatically inflating the body
128
298
 
129
- == 0.8.0 2011-09-13
299
+ ## 0.8.0 2011-09-13
130
300
  * new
131
301
  * switch to multi json/xml for parsing by default
132
302
  * bug fixes
133
303
  * fix redirects to relative uri's
134
304
 
135
- == 0.7.8 2011-06-06
305
+ ## 0.7.8 2011-06-06
136
306
  * bug fix
137
307
  * Make response honor respond to
138
308
  * net http timeout can also be a float
139
309
 
140
- == 0.7.7 2011-04-16
310
+ ## 0.7.7 2011-04-16
141
311
  * bug fix
142
312
  * Fix NoMethodError when using the NON_RAILS_QUERY_STRING_NORMALIZER with a hash whose key is a symbol and value is nil
143
313
 
144
- == 0.7.5 2011-04-16
314
+ ## 0.7.5 2011-04-16
145
315
  * bug fix
146
316
  * caused issue with latest rubygems
147
317
 
148
- == 0.7.4 2011-02-13
318
+ ## 0.7.4 2011-02-13
149
319
  * bug fixes
150
320
  * Set VERIFY_NONE when using https. Ruby 1.9.2 no longer sets this for us. gh-67
151
321
 
152
- == 0.7.3 2011-01-20
322
+ ## 0.7.3 2011-01-20
153
323
  * bug fixes
154
324
  * Fix digest auth for unspecified quality of protection (bjoernalbers, mtrudel, dwo)
155
325
 
156
- == 0.7.2 2011-01-20
326
+ ## 0.7.2 2011-01-20
157
327
  * bug fixes
158
328
  * Fix gem dependencies
159
329
 
160
- == 0.7.1 2011-01-19
330
+ ## 0.7.1 2011-01-19
161
331
  * bug fixes
162
332
  * Fix uninitialized constant HTTParty::Response::Net in 1.9.2 (cap10morgan)
163
333
  * Other fixes for 1.9.2, full suite still fails (cap10morgan)
164
334
 
165
- == 0.7.0 2011-01-18
335
+ ## 0.7.0 2011-01-18
166
336
  * minor enhancements
167
337
  * Added query methods for HTTP status codes, i.e. response.success?
168
338
  response.created? (thanks citizenparker)
@@ -178,7 +348,7 @@
178
348
  * Fixed superclass mismatch exception while running tests
179
349
  (thanks dlitz http://github.com/dlitz/httparty/commit/48224f0615b32133afcff4718ad426df7a4b401b)
180
350
 
181
- == 0.6.1 2010-07-07
351
+ ## 0.6.1 2010-07-07
182
352
  * minor enhancements
183
353
  * updated to crack 0.1.8
184
354
  * bug fixes
@@ -186,7 +356,7 @@
186
356
  default_cookies (l4rk).
187
357
  * subclasses play nicely with grand parents. gh-49
188
358
 
189
- == 0.6.0 2010-06-13
359
+ ## 0.6.0 2010-06-13
190
360
  * major enhancements
191
361
  * Digest Auth (bartiaco, sbecker, gilles, and aaronrussell)
192
362
  * Maintain HTTP method across redirects (bartiaco and sbecker)
@@ -204,11 +374,11 @@
204
374
  * Closed #40 "Gzip response" wherein gziped and deflated responses are
205
375
  automatically inflated. (carsonmcdonald)
206
376
 
207
- == 0.5.2 2010-01-31
377
+ ## 0.5.2 2010-01-31
208
378
  * minor enhancements
209
379
  * Update crack requirement to version 0.1.6
210
380
 
211
- == 0.5.1 2010-01-30
381
+ ## 0.5.1 2010-01-30
212
382
  * bug fixes
213
383
  * Handle 304 response correctly by returning the HTTParty::Response object instead of redirecting (seth and hellvinz)
214
384
  * Only redirect 300 responses if the header contains a Location
@@ -225,7 +395,7 @@
225
395
  * HTTParty::VERSION now available
226
396
  * Update crack requirement to version 0.1.5
227
397
 
228
- == 0.5.0 2009-12-07
398
+ ## 0.5.0 2009-12-07
229
399
  * bug fixes
230
400
  * inheritable attributes no longer mutable by subclasses (yyyc514)
231
401
  * namespace BasicObject within HTTParty to avoid class name collisions (eric)
@@ -243,7 +413,7 @@
243
413
  * Support HEAD and OPTION verbs (grempe)
244
414
  * Verify SSL certificates when providing a PEM file (collectiveidea/danielmorrison)
245
415
 
246
- == 0.4.5 2009-09-12
416
+ ## 0.4.5 2009-09-12
247
417
  * bug fixes
248
418
  * Fixed class-level headers overwritten by cookie management code. Closes #19
249
419
  * Fixed "superclass mismatch for class BlankSlate" error. Closes #20
@@ -254,55 +424,55 @@
254
424
  HTTParty.get "http://github.com", timeout: 1
255
425
  * Building gem with Jeweler
256
426
 
257
- == 0.4.4 2009-07-19
427
+ ## 0.4.4 2009-07-19
258
428
  * 2 minor update
259
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.
260
430
  * Fixed a bug in the cookies class method that caused cookies to be forgotten after the first request.
261
431
  * Also, some general cleanup of tests and such.
262
432
 
263
- == 0.4.3 2009-04-23
433
+ ## 0.4.3 2009-04-23
264
434
  * 1 minor update
265
435
  * added message to the response object
266
436
 
267
- == 0.4.2 2009-03-30
437
+ ## 0.4.2 2009-03-30
268
438
  * 2 minor changes
269
439
  * response code now returns an integer instead of a string (jqr)
270
440
  * rubyforge project setup for crack so i'm now depending on that instead of jnunemaker-crack
271
441
 
272
- == 0.4.1 2009-03-29
442
+ ## 0.4.1 2009-03-29
273
443
  * 1 minor fix
274
444
  * gem 'jnunemaker-crack' instead of gem 'crack'
275
445
 
276
- == 0.4.0 2009-03-29
446
+ ## 0.4.0 2009-03-29
277
447
  * 1 minor change
278
448
  * Switched xml and json parsing to crack (same code as before just moved to gem for easier reuse in other projects)
279
449
 
280
- == 0.3.1 2009-02-10
450
+ ## 0.3.1 2009-02-10
281
451
  * 1 minor fix, 1 minor enhancement
282
452
  * Fixed unescaping umlauts (siebertm)
283
453
  * Added yaml response parsing (Miha Filej)
284
454
 
285
- == 0.3.0 2009-01-31
455
+ ## 0.3.0 2009-01-31
286
456
  * 1 major enhancement, 1 bug fix
287
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.
288
458
  * Fixed bug where query strings were being duplicated on redirects
289
459
  * Added a bunch of specs and moved some code around.
290
460
 
291
- == 0.2.10 2009-01-29
461
+ ## 0.2.10 2009-01-29
292
462
  * 1 minor enhancement
293
463
  * Made encoding on query parameters treat everything except URI::PATTERN::UNRESERVED as UNSAFE to force encoding of '+' character (Julian Russell)
294
464
 
295
- == 0.2.9 2009-01-29
465
+ ## 0.2.9 2009-01-29
296
466
  * 3 minor enhancements
297
467
  * Added a 'headers' accessor to the response with a hash of any HTTP headers. (Don Peterson)
298
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)
299
469
  * Refactored several specs and added a full suite of cucumber features (Don Peterson)
300
470
 
301
- == 0.2.8 2009-01-28
471
+ ## 0.2.8 2009-01-28
302
472
  * 1 major fix
303
473
  * fixed major bug with response where it wouldn't iterate or really work at all with parsed responses
304
474
 
305
- == 0.2.7 2009-01-28
475
+ ## 0.2.7 2009-01-28
306
476
  * 2 minor fixes, 2 minor enhancements, 2 major enhancements
307
477
  * fixed undefined method add_node for nil class error that occasionally happened (juliocesar)
308
478
  * Handle nil or unexpected values better when typecasting. (Brian Landau)
@@ -311,77 +481,77 @@
311
481
  * Added first class response object that includes original body and status code (Alex Vollmer)
312
482
  * Now parsing all response types as some non-200 responses provide important information, this means no more exception raising (Alex Vollmer)
313
483
 
314
- == 0.2.6 2009-01-05
484
+ ## 0.2.6 2009-01-05
315
485
  * 1 minor bug fix
316
486
  * added explicit require of time as Time#parse failed outside of rails (willcodeforfoo)
317
487
 
318
- == 0.2.5 2009-01-05
488
+ ## 0.2.5 2009-01-05
319
489
  * 1 major enhancement
320
490
  * Add command line interface to HTTParty (Alex Vollmer)
321
491
 
322
- == 0.2.4 2008-12-23
492
+ ## 0.2.4 2008-12-23
323
493
  * 1 bug fix
324
494
  * Fixed that mimetype detection was failing if no mimetype was returned from service (skippy)
325
- == 0.2.3 2008-12-23
495
+ ## 0.2.3 2008-12-23
326
496
  * 1 bug fix
327
497
  * Fixed typecasting class variable naming issue
328
498
 
329
- == 0.2.2 2008-12-08
499
+ ## 0.2.2 2008-12-08
330
500
  * 1 bug fix
331
501
  * Added the missing core extension hash method to_xml_attributes
332
502
 
333
- == 0.2.1 2008-12-08
503
+ ## 0.2.1 2008-12-08
334
504
  * 1 bug fix
335
505
  * Fixed that HTTParty was borking ActiveSupport and as such Rails (thanks to Rob Sanheim)
336
506
 
337
- == 0.2.0 2008-12-07
507
+ ## 0.2.0 2008-12-07
338
508
  * 1 major enhancement
339
509
  * Removed ActiveSupport as a dependency. Now requires json gem for json deserialization and uses an included class to do the xml parsing.
340
510
 
341
- == 0.1.8 2008-11-30
511
+ ## 0.1.8 2008-11-30
342
512
  * 3 major enhancements
343
513
  * Moved base_uri normalization into request class and out of httparty module, fixing
344
514
  the problem where base_uri was not always being normalized.
345
515
  * Stupid simple support for HTTParty.get/post/put/delete. (jqr)
346
516
  * Switched gem management to Echoe from newgem.
347
517
 
348
- == 0.1.7 2008-11-30
518
+ ## 0.1.7 2008-11-30
349
519
  * 1 major enhancement
350
520
  * fixed multiple class definitions overriding each others options
351
521
 
352
- == 0.1.6 2008-11-26
522
+ ## 0.1.6 2008-11-26
353
523
  * 1 major enhancement
354
524
  * now passing :query to set_form_data if post request to avoid content length errors
355
525
 
356
- == 0.1.5 2008-11-14
526
+ ## 0.1.5 2008-11-14
357
527
  * 2 major enhancements
358
528
  * Refactored send request method out into its own object.
359
529
  * Added :html format if you just want to do that.
360
530
 
361
- == 0.1.4 2008-11-08
531
+ ## 0.1.4 2008-11-08
362
532
  * 3 major enhancements:
363
533
  * Removed some cruft
364
534
  * Added ability to follow redirects automatically and turn that off (Alex Vollmer)
365
535
 
366
- == 0.1.3 2008-08-22
536
+ ## 0.1.3 2008-08-22
367
537
 
368
538
  * 3 major enhancements:
369
539
  * Added http_proxy key for setting proxy server and port (francxk@gmail.com)
370
540
  * Now raises exception when http error occurs (francxk@gmail.com)
371
541
  * Changed auto format detection from file extension to response content type (Jay Pignata)
372
542
 
373
- == 0.1.2 2008-08-09
543
+ ## 0.1.2 2008-08-09
374
544
 
375
545
  * 1 major enhancement:
376
546
  * default_params were not being appended to query string if option[:query] was blank
377
547
 
378
- == 0.1.1 2008-07-30
548
+ ## 0.1.1 2008-07-30
379
549
 
380
550
  * 2 major enhancement:
381
551
  * Added :basic_auth key for options when making a request
382
552
  * :query and :body both now work with query string or hash
383
553
 
384
- == 0.1.0 2008-07-27
554
+ ## 0.1.0 2008-07-27
385
555
 
386
556
  * 1 major enhancement:
387
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