excon 0.62.0 → 0.85.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/LICENSE.md +1 -1
- data/README.md +6 -5
- data/data/cacert.pem +939 -1720
- data/excon.gemspec +17 -2
- data/lib/excon.rb +25 -17
- data/lib/excon/connection.rb +206 -139
- data/lib/excon/constants.rb +38 -13
- data/lib/excon/error.rb +15 -0
- data/lib/excon/headers.rb +4 -3
- data/lib/excon/instrumentors/logging_instrumentor.rb +4 -15
- data/lib/excon/instrumentors/standard_instrumentor.rb +2 -9
- data/lib/excon/middlewares/base.rb +6 -0
- data/lib/excon/middlewares/capture_cookies.rb +1 -1
- data/lib/excon/middlewares/decompress.rb +2 -2
- data/lib/excon/middlewares/expects.rb +7 -1
- data/lib/excon/middlewares/idempotent.rb +20 -3
- data/lib/excon/middlewares/instrumentor.rb +8 -0
- data/lib/excon/middlewares/mock.rb +12 -3
- data/lib/excon/middlewares/redirect_follower.rb +25 -3
- data/lib/excon/middlewares/response_parser.rb +3 -0
- data/lib/excon/pretty_printer.rb +1 -8
- data/lib/excon/response.rb +12 -9
- data/lib/excon/socket.rb +51 -33
- data/lib/excon/ssl_socket.rb +33 -13
- data/lib/excon/test/plugin/server/exec.rb +2 -2
- data/lib/excon/test/server.rb +1 -1
- data/lib/excon/unix_socket.rb +1 -0
- data/lib/excon/utils.rb +58 -5
- data/lib/excon/version.rb +1 -1
- metadata +27 -98
- data/.document +0 -5
- data/.gitignore +0 -13
- data/.rspec +0 -3
- data/.travis.yml +0 -29
- data/Gemfile +0 -19
- data/Rakefile +0 -41
- data/benchmarks/class_vs_lambda.rb +0 -50
- data/benchmarks/concat_vs_insert.rb +0 -21
- data/benchmarks/concat_vs_interpolate.rb +0 -22
- data/benchmarks/cr_lf.rb +0 -21
- data/benchmarks/downcase-eq-eq_vs_casecmp.rb +0 -169
- data/benchmarks/excon.rb +0 -69
- data/benchmarks/excon_vs.rb +0 -165
- data/benchmarks/for_vs_array_each.rb +0 -27
- data/benchmarks/for_vs_hash_each.rb +0 -27
- data/benchmarks/has_key-vs-lookup.rb +0 -177
- data/benchmarks/headers_case_sensitivity.rb +0 -83
- data/benchmarks/headers_split_vs_match.rb +0 -34
- data/benchmarks/implicit_block-vs-explicit_block.rb +0 -98
- data/benchmarks/merging.rb +0 -21
- data/benchmarks/single_vs_double_quotes.rb +0 -21
- data/benchmarks/string_ranged_index.rb +0 -87
- data/benchmarks/strip_newline.rb +0 -115
- data/benchmarks/vs_stdlib.rb +0 -82
- data/changelog.txt +0 -1083
- data/spec/excon/error_spec.rb +0 -139
- data/spec/excon/test/server_spec.rb +0 -28
- data/spec/excon_spec.rb +0 -7
- data/spec/helpers/file_path_helpers.rb +0 -22
- data/spec/requests/basic_spec.rb +0 -40
- data/spec/requests/eof_requests_spec.rb +0 -36
- data/spec/requests/unix_socket_spec.rb +0 -46
- data/spec/spec_helper.rb +0 -24
- data/spec/support/shared_contexts/test_server_context.rb +0 -83
- data/spec/support/shared_examples/shared_example_for_clients.rb +0 -218
- data/spec/support/shared_examples/shared_example_for_streaming_clients.rb +0 -20
- data/spec/support/shared_examples/shared_example_for_test_servers.rb +0 -16
- data/tests/authorization_header_tests.rb +0 -29
- data/tests/bad_tests.rb +0 -47
- data/tests/basic_tests.rb +0 -351
- data/tests/batch_requests.rb +0 -133
- data/tests/complete_responses.rb +0 -31
- data/tests/data/127.0.0.1.cert.crt +0 -20
- data/tests/data/127.0.0.1.cert.key +0 -27
- data/tests/data/excon.cert.crt +0 -20
- data/tests/data/excon.cert.key +0 -27
- data/tests/data/xs +0 -1
- data/tests/error_tests.rb +0 -145
- data/tests/header_tests.rb +0 -119
- data/tests/middlewares/canned_response_tests.rb +0 -34
- data/tests/middlewares/capture_cookies_tests.rb +0 -34
- data/tests/middlewares/decompress_tests.rb +0 -157
- data/tests/middlewares/escape_path_tests.rb +0 -36
- data/tests/middlewares/idempotent_tests.rb +0 -206
- data/tests/middlewares/instrumentation_tests.rb +0 -315
- data/tests/middlewares/mock_tests.rb +0 -304
- data/tests/middlewares/redirect_follower_tests.rb +0 -112
- data/tests/pipeline_tests.rb +0 -40
- data/tests/proxy_tests.rb +0 -306
- data/tests/query_string_tests.rb +0 -87
- data/tests/rackups/basic.rb +0 -41
- data/tests/rackups/basic.ru +0 -3
- data/tests/rackups/basic_auth.ru +0 -14
- data/tests/rackups/deflater.ru +0 -4
- data/tests/rackups/proxy.ru +0 -18
- data/tests/rackups/query_string.ru +0 -13
- data/tests/rackups/redirecting.ru +0 -23
- data/tests/rackups/redirecting_with_cookie.ru +0 -40
- data/tests/rackups/request_headers.ru +0 -15
- data/tests/rackups/request_methods.ru +0 -21
- data/tests/rackups/response_header.ru +0 -18
- data/tests/rackups/ssl.ru +0 -16
- data/tests/rackups/ssl_mismatched_cn.ru +0 -15
- data/tests/rackups/ssl_verify_peer.ru +0 -16
- data/tests/rackups/streaming.ru +0 -30
- data/tests/rackups/thread_safety.ru +0 -17
- data/tests/rackups/timeout.ru +0 -14
- data/tests/rackups/webrick_patch.rb +0 -34
- data/tests/request_headers_tests.rb +0 -21
- data/tests/request_method_tests.rb +0 -47
- data/tests/request_tests.rb +0 -59
- data/tests/response_tests.rb +0 -197
- data/tests/servers/bad.rb +0 -20
- data/tests/servers/eof.rb +0 -17
- data/tests/servers/error.rb +0 -20
- data/tests/servers/good.rb +0 -350
- data/tests/test_helper.rb +0 -306
- data/tests/thread_safety_tests.rb +0 -39
- data/tests/timeout_tests.rb +0 -12
- data/tests/utils_tests.rb +0 -81
data/benchmarks/vs_stdlib.rb
DELETED
@@ -1,82 +0,0 @@
|
|
1
|
-
require 'rubygems' if RUBY_VERSION < '1.9'
|
2
|
-
|
3
|
-
require 'sinatra/base'
|
4
|
-
require 'tach'
|
5
|
-
|
6
|
-
require File.join(File.expand_path(File.dirname(__FILE__)), '..', 'lib', 'excon')
|
7
|
-
|
8
|
-
module Excon
|
9
|
-
class Server < Sinatra::Base
|
10
|
-
|
11
|
-
def self.run
|
12
|
-
Rack::Handler::WEBrick.run(
|
13
|
-
Excon::Server.new,
|
14
|
-
:Port => 9292,
|
15
|
-
:AccessLog => [],
|
16
|
-
:Logger => WEBrick::Log.new(nil, WEBrick::Log::ERROR)
|
17
|
-
)
|
18
|
-
end
|
19
|
-
|
20
|
-
get '/data/:amount' do |amount|
|
21
|
-
'x' * amount.to_i
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
def with_server(&block)
|
28
|
-
pid = Process.fork do
|
29
|
-
Excon::Server.run
|
30
|
-
end
|
31
|
-
loop do
|
32
|
-
sleep(1)
|
33
|
-
begin
|
34
|
-
Excon.get('http://localhost:9292/api/foo')
|
35
|
-
break
|
36
|
-
rescue
|
37
|
-
end
|
38
|
-
end
|
39
|
-
yield
|
40
|
-
ensure
|
41
|
-
Process.kill(9, pid)
|
42
|
-
end
|
43
|
-
|
44
|
-
require 'net/http'
|
45
|
-
require 'open-uri'
|
46
|
-
|
47
|
-
url = 'http://localhost:9292/data/1000'
|
48
|
-
|
49
|
-
with_server do
|
50
|
-
|
51
|
-
Tach.meter(100) do
|
52
|
-
|
53
|
-
tach('Excon') do
|
54
|
-
Excon.get(url).body
|
55
|
-
end
|
56
|
-
|
57
|
-
# tach('Excon (persistent)') do |times|
|
58
|
-
# excon = Excon.new(url)
|
59
|
-
# times.times do
|
60
|
-
# excon.request(:method => 'get').body
|
61
|
-
# end
|
62
|
-
# end
|
63
|
-
|
64
|
-
tach('Net::HTTP') do
|
65
|
-
# Net::HTTP.get('localhost', '/data/1000', 9292)
|
66
|
-
Net::HTTP.start('localhost', 9292) {|http| http.get('/data/1000').body }
|
67
|
-
end
|
68
|
-
|
69
|
-
# tach('Net::HTTP (persistent)') do |times|
|
70
|
-
# Net::HTTP.start('localhost', 9292) do |http|
|
71
|
-
# times.times do
|
72
|
-
# http.get('/data/1000').body
|
73
|
-
# end
|
74
|
-
# end
|
75
|
-
# end
|
76
|
-
|
77
|
-
# tach('open-uri') do
|
78
|
-
# open(url).read
|
79
|
-
# end
|
80
|
-
|
81
|
-
end
|
82
|
-
end
|
data/changelog.txt
DELETED
@@ -1,1083 +0,0 @@
|
|
1
|
-
0.62.0 2018-03-27
|
2
|
-
=================
|
3
|
-
|
4
|
-
remove binmode call for StringIO objects
|
5
|
-
|
6
|
-
0.61.0 2018-03-16
|
7
|
-
=================
|
8
|
-
|
9
|
-
use default ports for sockets if none specified
|
10
|
-
add ruby 2.4 and 2.5 to ci testing
|
11
|
-
follow relative location redirects
|
12
|
-
|
13
|
-
0.60.0 2017-12-15
|
14
|
-
=================
|
15
|
-
|
16
|
-
add requests_in_batches
|
17
|
-
cleanup rakefile, gemfile, etc
|
18
|
-
add logger/logger= and logging instrumentor
|
19
|
-
rewind response_block in idempotent instrumentor
|
20
|
-
|
21
|
-
|
22
|
-
0.59.0 2017-09-05
|
23
|
-
=================
|
24
|
-
|
25
|
-
fix backtick vs quote in error message
|
26
|
-
fix socket pooling to be per-connection instead of per thread
|
27
|
-
fix tests to ignore proxy env settings
|
28
|
-
|
29
|
-
0.58.0 08/01/2017
|
30
|
-
=================
|
31
|
-
|
32
|
-
remove unused error
|
33
|
-
add retry_interval and related settings for backoff
|
34
|
-
|
35
|
-
0.57.1 06/30/2017
|
36
|
-
=================
|
37
|
-
|
38
|
-
fix remote-ip setting to prevent off-by-one issue
|
39
|
-
|
40
|
-
0.57.0 06/14/2017
|
41
|
-
=================
|
42
|
-
|
43
|
-
add client_key_data and client_cert_data to valid keys
|
44
|
-
allow passing explicit host to unix sockets
|
45
|
-
|
46
|
-
0.56.0 05/31/2017
|
47
|
-
=================
|
48
|
-
|
49
|
-
fix proxy parse errors
|
50
|
-
fix url-escaped proxy creds for ssl
|
51
|
-
|
52
|
-
0.55.0 02/07/2017
|
53
|
-
=================
|
54
|
-
|
55
|
-
fix minor readme error
|
56
|
-
update bundled certs
|
57
|
-
update self-signed certs
|
58
|
-
update to test with ruby 2.3.3
|
59
|
-
fix unitialized ResponseParseError error
|
60
|
-
add missing 'spec_helper' require in tests
|
61
|
-
add missing 'time' require in tests
|
62
|
-
use unescape_uri for user/pass in Authorization header
|
63
|
-
use secure rubygems source uri
|
64
|
-
update gemnasium badge
|
65
|
-
update fury badge
|
66
|
-
update travis badge
|
67
|
-
update gittip badge
|
68
|
-
|
69
|
-
0.54.0 10/17/2016
|
70
|
-
=================
|
71
|
-
|
72
|
-
add howsmyssl rake task for sanity checking
|
73
|
-
update default ciphers to mozilla intermediate list
|
74
|
-
fix typo in changelog
|
75
|
-
|
76
|
-
0.53.0 09/27/2016
|
77
|
-
=================
|
78
|
-
|
79
|
-
add ability to pass ssl options as strings
|
80
|
-
progress towards rspec
|
81
|
-
update bundled certs
|
82
|
-
|
83
|
-
0.52.0 08/22/2016
|
84
|
-
=================
|
85
|
-
|
86
|
-
freeze string literals
|
87
|
-
move toward interpolation, over concatenation (frozen string related)
|
88
|
-
start conversion toward rspec
|
89
|
-
move user/pass authorization header setting to request level
|
90
|
-
|
91
|
-
0.51.0 07/08/2016
|
92
|
-
=================
|
93
|
-
|
94
|
-
tweak new errors to be an alias rather than inherit
|
95
|
-
|
96
|
-
0.50.1 06/28/2016
|
97
|
-
=================
|
98
|
-
|
99
|
-
re-add some missing errors from refactoring
|
100
|
-
|
101
|
-
0.50.0 06/28/2016
|
102
|
-
=================
|
103
|
-
|
104
|
-
expand readme
|
105
|
-
refactor errors for consistancy
|
106
|
-
optionally allow unstubbed requests
|
107
|
-
parse/verify path as well as host for connection
|
108
|
-
|
109
|
-
0.49.0 03/28/2016
|
110
|
-
=================
|
111
|
-
|
112
|
-
fix nonblock ssl socket connect timeout handling
|
113
|
-
fix README debug example
|
114
|
-
make unique class for certificate errors
|
115
|
-
connection logic cleanup
|
116
|
-
change stubs back to global (with local option via defaults)
|
117
|
-
specific handling for set-cookie header exceptions
|
118
|
-
|
119
|
-
0.48.0 03/07/2016
|
120
|
-
=================
|
121
|
-
|
122
|
-
optimize by writing part of body with headers when it fits in a chunk
|
123
|
-
|
124
|
-
0.47.0 02/29/2016
|
125
|
-
=================
|
126
|
-
|
127
|
-
fix bundled certs
|
128
|
-
fix instrumentors to allow recording timings
|
129
|
-
|
130
|
-
0.46.0 02/26/2016
|
131
|
-
=================
|
132
|
-
|
133
|
-
empty host header for unix sockets
|
134
|
-
raise EOFError on unexpectedly read nil
|
135
|
-
add host/path/port to response
|
136
|
-
keep cookies through redirects
|
137
|
-
fix to skip decompressing empty bodies
|
138
|
-
fix escaping for query string
|
139
|
-
README improvements
|
140
|
-
fix SocketError initializer
|
141
|
-
fix incorrect error class usage
|
142
|
-
|
143
|
-
0.45.4 07/13/2015
|
144
|
-
=================
|
145
|
-
|
146
|
-
fix undefined errors in error handling
|
147
|
-
ignore empty proxy values
|
148
|
-
|
149
|
-
0.45.3 04/21/2015
|
150
|
-
=================
|
151
|
-
|
152
|
-
guard warning about openssl versions in case constant undefined
|
153
|
-
ensure rackup listens properly, fixes local tests
|
154
|
-
|
155
|
-
0.45.2 04/16/2015
|
156
|
-
=================
|
157
|
-
|
158
|
-
add raw_status reader
|
159
|
-
improved tests around response/status
|
160
|
-
rescue IO::WaitWritable for SSL sockets also
|
161
|
-
indentation fixes
|
162
|
-
tighten rescue in ssl socket connect to better report non-timeouts
|
163
|
-
rescue EAGAIN and EWOULDBLOCK for non-blocking connects
|
164
|
-
|
165
|
-
0.45.1 03/27/2015
|
166
|
-
=================
|
167
|
-
|
168
|
-
fix scope for readline buffer, fixes dropped initial characters
|
169
|
-
|
170
|
-
0.45.0 03/26/2015
|
171
|
-
=================
|
172
|
-
|
173
|
-
prefer default SSL config to ENV, when available
|
174
|
-
document instrumentor deviation from rails format
|
175
|
-
better error/warning around openssl 1.0.2 bug
|
176
|
-
fix nonblocking ssl connect to not have tight loop
|
177
|
-
also remove user/pass when following redirects
|
178
|
-
|
179
|
-
0.44.4 03/04/2015
|
180
|
-
=================
|
181
|
-
|
182
|
-
update bundled certs
|
183
|
-
loosen travis versions, to get ~> type follow-the-leader behavior
|
184
|
-
fix syntax issue in ruby 2.2.1
|
185
|
-
|
186
|
-
0.44.3 02/24/2015
|
187
|
-
=================
|
188
|
-
|
189
|
-
don't pass body when following GET redirects
|
190
|
-
fix error rescue case to properly reference error object
|
191
|
-
|
192
|
-
0.44.2 02/11/2015
|
193
|
-
=================
|
194
|
-
|
195
|
-
simplify data[:debug] logic
|
196
|
-
catch nonblock errors around readline
|
197
|
-
|
198
|
-
|
199
|
-
0.44.1 02/01/2015
|
200
|
-
=================
|
201
|
-
|
202
|
-
fix issue with frozen strings in user/pass
|
203
|
-
|
204
|
-
0.44.0 01/30/2015
|
205
|
-
=================
|
206
|
-
|
207
|
-
re-implement timeout using IO.select
|
208
|
-
document custom URI parser usage
|
209
|
-
fix ruby 2.2 build
|
210
|
-
improved IPv6 support
|
211
|
-
Excon::Utils improvements
|
212
|
-
add 429 errors
|
213
|
-
|
214
|
-
0.43.0 01/09/2015
|
215
|
-
=================
|
216
|
-
|
217
|
-
use basic error instead of nil as default for socket error
|
218
|
-
allow setup_proxy to accept uri
|
219
|
-
add disable_proxy and proxy: false to disable proxy settings
|
220
|
-
|
221
|
-
0.42.1 12/04/2014
|
222
|
-
=================
|
223
|
-
|
224
|
-
update bundled certs
|
225
|
-
fix redirect follower to avoid erroneously setting basic auth
|
226
|
-
|
227
|
-
0.42.0 12/02/2014
|
228
|
-
=================
|
229
|
-
|
230
|
-
fix stubbing section of README
|
231
|
-
follow redirect for all request methods
|
232
|
-
remove unhelpful link for excon.io
|
233
|
-
rescue/ignore illegal seek on rewind
|
234
|
-
add ssl_cert_store option
|
235
|
-
allow non-RSA ssl keys
|
236
|
-
attempt to rewind request_block when idempotent
|
237
|
-
add configurable thread safety for socket pool
|
238
|
-
|
239
|
-
|
240
|
-
0.41.0 11/05/2014
|
241
|
-
=================
|
242
|
-
|
243
|
-
add :ssl_verify_peer_host option for dev purposes
|
244
|
-
add #reason_phrase to response
|
245
|
-
|
246
|
-
0.40.0 10/06/2014
|
247
|
-
=================
|
248
|
-
|
249
|
-
fix support for specifying ssl_ca_path
|
250
|
-
more consistent response_block/response.body behavior for mocks
|
251
|
-
add support for proxies running on unix domain sockets
|
252
|
-
|
253
|
-
0.39.6 09/22/2014
|
254
|
-
=================
|
255
|
-
|
256
|
-
pretty print stub not found errors
|
257
|
-
|
258
|
-
0.39.5 09/14/2014
|
259
|
-
=================
|
260
|
-
|
261
|
-
fix double delegation error
|
262
|
-
make client_key_pass valid connection key
|
263
|
-
cast headers to_s to fix historical symbol usage
|
264
|
-
|
265
|
-
0.39.4 08/08/2014
|
266
|
-
=================
|
267
|
-
|
268
|
-
ensure Response#new uses case-insensitive headers
|
269
|
-
add client cert pass phrase support
|
270
|
-
|
271
|
-
0.39.3 08/05/2014
|
272
|
-
=================
|
273
|
-
|
274
|
-
fix for nil and/or unknown proxy values
|
275
|
-
|
276
|
-
0.39.2 08/04/2014
|
277
|
-
=================
|
278
|
-
|
279
|
-
respect both ca_file/ca_path when both present
|
280
|
-
|
281
|
-
0.39.1 08/04/2014
|
282
|
-
=================
|
283
|
-
|
284
|
-
fix for ssl proxies + remote_ip stuff
|
285
|
-
|
286
|
-
0.39.0 08/01/2014
|
287
|
-
=================
|
288
|
-
|
289
|
-
revert to a blocking readline, for performance
|
290
|
-
simplify status lookup
|
291
|
-
consolidate proxy code
|
292
|
-
store defaults as a constant
|
293
|
-
avoid setting nil user/pass vs just no setting keys
|
294
|
-
move idempotent warnings in to middleware
|
295
|
-
simplify validations
|
296
|
-
use constants in utils
|
297
|
-
group non-chunk response paring
|
298
|
-
optimize/simplify socket local lookup
|
299
|
-
simplify to pro-actively build downcased headers instead of lazily do so
|
300
|
-
add version to options (so it will appear in debug)
|
301
|
-
add OS/Ruby version info to options/version for debugging
|
302
|
-
more consistent output styling for errors
|
303
|
-
remove TE stuff to simplify
|
304
|
-
shorten timeout/sleep in streaming tests
|
305
|
-
remove transfer-encoding altogether if it only includes chunked
|
306
|
-
only rescue http status errors in relevant tests
|
307
|
-
use case-insensitive headers in stubs also
|
308
|
-
|
309
|
-
0.38.0 07/09/2014
|
310
|
-
=================
|
311
|
-
|
312
|
-
avoid reading non-file bodies (mock related fix)
|
313
|
-
fixes to readme links
|
314
|
-
fix excon_debug to set debug_response
|
315
|
-
ensure both \r and \n are read when parsing headers
|
316
|
-
|
317
|
-
0.37.0 06/09/2014
|
318
|
-
=================
|
319
|
-
|
320
|
-
fix chunked reading to avoid chop! on non-chunk endings
|
321
|
-
fixes for proxy usage
|
322
|
-
|
323
|
-
0.36.0 06/04/2014
|
324
|
-
=================
|
325
|
-
|
326
|
-
fix to reconcile streaming changes for chunked encoding
|
327
|
-
|
328
|
-
0.35.0 06/03/2014
|
329
|
-
=================
|
330
|
-
|
331
|
-
fix for responses with content_length
|
332
|
-
|
333
|
-
0.34.0 05/29/2014
|
334
|
-
=================
|
335
|
-
|
336
|
-
add support for setting ssl_verify_callback
|
337
|
-
stream partial results imediately, when available
|
338
|
-
update rack/unicorn in tests to support streaming tests
|
339
|
-
skip streaming tests on jruby (as they depend on unicorn)
|
340
|
-
update travis tests to use newest rubinius
|
341
|
-
improve formatting/readibility of standard instrumentor output
|
342
|
-
|
343
|
-
0.33.0 05/15/2014
|
344
|
-
=================
|
345
|
-
|
346
|
-
README clarifications around defaults and basic auth
|
347
|
-
case insensitive headers
|
348
|
-
|
349
|
-
0.32.1 03/13/2014
|
350
|
-
=================
|
351
|
-
|
352
|
-
Fix for SNI (should occur prior to connect)
|
353
|
-
|
354
|
-
0.32.0 02/27/2014
|
355
|
-
=================
|
356
|
-
|
357
|
-
README improvements
|
358
|
-
fixes around LICENSE/CONTRIBUTING/CONTRIBUTORS
|
359
|
-
update bundled cert
|
360
|
-
nonblock connect/timeout fixes for ssl sockets
|
361
|
-
skip reverse lookups where feasible
|
362
|
-
more secure ssl settings, when available
|
363
|
-
add escape stuff as middleware
|
364
|
-
fix to raise exceptions properly
|
365
|
-
fix for keep alive check
|
366
|
-
add tests around keep alive
|
367
|
-
escape/unescape uri added to utils
|
368
|
-
add support for reusable local ports
|
369
|
-
|
370
|
-
0.31.0 12/16/2013
|
371
|
-
=================
|
372
|
-
|
373
|
-
test fixes for Bundler.require usage and Rack::Lint
|
374
|
-
use production mode + dump errors for tests
|
375
|
-
use Utils in Excon.stub
|
376
|
-
add implementation of stuff from WEBrick directly to utils
|
377
|
-
update test server to send connection close and process buffer after response
|
378
|
-
add :persistent option, defaults true
|
379
|
-
group HTTP errors by type
|
380
|
-
patch to webrick to workaround intermitent test failures
|
381
|
-
only use Open4 for 1.8.7
|
382
|
-
update/expand getting help/getting involved in readme
|
383
|
-
|
384
|
-
0.30.0 11/25/2013
|
385
|
-
=================
|
386
|
-
|
387
|
-
ensure schema/host/port are passed to redirect follower with relative location
|
388
|
-
add .ruby-version and .ruby-gemset to .gitignore
|
389
|
-
pass nil to :response_block for unknown values
|
390
|
-
use :response_block if expects middleware is not used
|
391
|
-
refactor Response.parse, add tests
|
392
|
-
support header continuations
|
393
|
-
support chunked trailers
|
394
|
-
improve decompress middleware/tests
|
395
|
-
add accept-encoding in decompress middleware requests, if missing
|
396
|
-
fixes for connection close detection
|
397
|
-
support transfer encoding
|
398
|
-
fix deprecated URI.decode usage
|
399
|
-
do not try to use tcp_nodelay for unix sockets
|
400
|
-
nonblocking connect, connect timeouts for unix sockets
|
401
|
-
ignore IO#close exceptions
|
402
|
-
move conditional nonblock to only SSLSocket
|
403
|
-
skip reverse lookups
|
404
|
-
avoid mutating canned response from middleware
|
405
|
-
test against latest rubinius, no longer allow failures
|
406
|
-
add unicorn as rubinius dev dependency
|
407
|
-
use webbrick form decode
|
408
|
-
|
409
|
-
0.29.0 11/07/2013
|
410
|
-
=================
|
411
|
-
|
412
|
-
make nonblock invalid as request key
|
413
|
-
add backtrace to all warnings
|
414
|
-
do not allow idempotent + pipeline
|
415
|
-
close socket after pipeline if needed
|
416
|
-
fix Socket#read to match IO.read EOF behavior
|
417
|
-
use Socket#read for non-blocking readline
|
418
|
-
respect read_timeout for status read
|
419
|
-
read response until status line, discard chunked trailer
|
420
|
-
fix redirect follower to properly change host
|
421
|
-
|
422
|
-
0.28.0 10/28/2013
|
423
|
-
=================
|
424
|
-
|
425
|
-
tag warning messages with [excon]
|
426
|
-
allow specific ssl_versions
|
427
|
-
fixes around param validation
|
428
|
-
create a new connection for redirect_follower middleware
|
429
|
-
add connection_uri/request_uri to utils
|
430
|
-
avoid mutating connection data
|
431
|
-
remove connection key in redirect_follower
|
432
|
-
|
433
|
-
|
434
|
-
0.27.6 10/15/2013
|
435
|
-
=================
|
436
|
-
|
437
|
-
warn, but no longer mutate params during validation
|
438
|
-
|
439
|
-
0.27.5 10/14/2013
|
440
|
-
=================
|
441
|
-
|
442
|
-
extract validations/port_string to utils module
|
443
|
-
|
444
|
-
0.27.4 10/14/2013
|
445
|
-
=================
|
446
|
-
|
447
|
-
fix for https/port string values
|
448
|
-
|
449
|
-
0.27.3 10/11/2013
|
450
|
-
=================
|
451
|
-
|
452
|
-
better invalid key handling
|
453
|
-
avoid mutating port value
|
454
|
-
|
455
|
-
0.27.2 10/10/2013
|
456
|
-
=================
|
457
|
-
|
458
|
-
avoid mutating datum in idempotent middleware
|
459
|
-
|
460
|
-
0.27.1 10/09/2013
|
461
|
-
=================
|
462
|
-
|
463
|
-
improve warning messages for valid keys
|
464
|
-
|
465
|
-
0.27.0 10/04/2013
|
466
|
-
=================
|
467
|
-
|
468
|
-
display warnings based on ruby and/or debug settings
|
469
|
-
add missing valid connection keys
|
470
|
-
remove 1.8.7 related nonblock warning
|
471
|
-
add support for unix sockets
|
472
|
-
cleanup constants
|
473
|
-
improve test setup to minimize server spawning
|
474
|
-
separate connection/request key validation
|
475
|
-
|
476
|
-
0.26.0 09/24/2013
|
477
|
-
=================
|
478
|
-
|
479
|
-
add basic decompress middleware
|
480
|
-
update readme mocking+stubbing info
|
481
|
-
add unstub functionality
|
482
|
-
avoid modifying original options in request
|
483
|
-
jruby fixes
|
484
|
-
misc cleanup/fixes
|
485
|
-
encoding/compatibility fixes
|
486
|
-
close sockets on error
|
487
|
-
warn when both request_block and idempotent are set
|
488
|
-
|
489
|
-
0.25.3 07/18/2013
|
490
|
-
=================
|
491
|
-
|
492
|
-
respect SSL_CERT_DIR/SSL_CERT_FILE
|
493
|
-
more aggressively include bundled cert as fallback
|
494
|
-
|
495
|
-
0.25.2 07/18/2013
|
496
|
-
=================
|
497
|
-
|
498
|
-
add license to gemspec
|
499
|
-
add "excon/#{version}" default user agent
|
500
|
-
create/use response parser middleware
|
501
|
-
fix proxy request info to use datum rather than @data
|
502
|
-
|
503
|
-
|
504
|
-
0.25.1 07/01/2013
|
505
|
-
=================
|
506
|
-
|
507
|
-
fix for jruby ssl
|
508
|
-
more explicit description in docs
|
509
|
-
|
510
|
-
0.25.0 06/20/2013
|
511
|
-
=================
|
512
|
-
|
513
|
-
attempt to use OS certs first, only use bundled as fallback
|
514
|
-
normalize method in stubs
|
515
|
-
|
516
|
-
0.24.0 06/12/2013
|
517
|
-
=================
|
518
|
-
|
519
|
-
allow passing ssl creds as strings or file paths
|
520
|
-
|
521
|
-
0.23.0 06/10/2013
|
522
|
-
=================
|
523
|
-
|
524
|
-
defer writing request/headers to allow all-in-one
|
525
|
-
allow opt-in for request/response error info
|
526
|
-
add configurable TCP_NODELAY
|
527
|
-
consolidate warning display
|
528
|
-
respect ruby verbosity conventions
|
529
|
-
fix copyright years in notice
|
530
|
-
|
531
|
-
0.22.1 05/17/2013
|
532
|
-
=================
|
533
|
-
|
534
|
-
fix logic error in dropping default ports
|
535
|
-
|
536
|
-
0.22.0 05/17/2013
|
537
|
-
=================
|
538
|
-
|
539
|
-
remove request/response info from default error messages to avoid
|
540
|
-
credential leaks
|
541
|
-
add option to omit default ports (http:80 and https:443)
|
542
|
-
add examples for form encoding
|
543
|
-
updates to facilitate streaming responses from middleware responses
|
544
|
-
|
545
|
-
0.21.0 05/04/2013
|
546
|
-
=================
|
547
|
-
|
548
|
-
update bundled cacert
|
549
|
-
add deprecated connection helper
|
550
|
-
URL decode user/pass for basic auth
|
551
|
-
fix odd name/permissions in benchmarks
|
552
|
-
check for socket before closing one
|
553
|
-
add support for no_proxy
|
554
|
-
include scheme in socket key
|
555
|
-
make socket.connect private
|
556
|
-
allow stub lookup with Excon.stub_for
|
557
|
-
|
558
|
-
0.20.1 03/19/2013
|
559
|
-
=================
|
560
|
-
|
561
|
-
dup middlewares to avoid overwriting original set
|
562
|
-
delete datum[:response] in idempotent to ensure new response is parsed
|
563
|
-
|
564
|
-
0.20.0 03/08/2013
|
565
|
-
=================
|
566
|
-
|
567
|
-
redact password from inspect/instrument
|
568
|
-
downgrade severity of invalid keys from error to warning
|
569
|
-
|
570
|
-
0.19.5 03/04/2013
|
571
|
-
=================
|
572
|
-
|
573
|
-
fix ssl socket proxy setup
|
574
|
-
|
575
|
-
0.19.4 03/04/2013
|
576
|
-
=================
|
577
|
-
|
578
|
-
fix merge order of params in new
|
579
|
-
|
580
|
-
0.19.3 03/01/2013
|
581
|
-
=================
|
582
|
-
|
583
|
-
properly raise errors when datum[:stack] has not yet been set
|
584
|
-
|
585
|
-
0.19.2 02/28/2013
|
586
|
-
=================
|
587
|
-
|
588
|
-
add client_cert, client_key to valid connection options
|
589
|
-
|
590
|
-
0.19.1 02/27/2013
|
591
|
-
=================
|
592
|
-
|
593
|
-
fix for ssl proxies to allow connect response to be read
|
594
|
-
|
595
|
-
0.19.0 02/27/2013
|
596
|
-
=================
|
597
|
-
|
598
|
-
fix requests (pipeline) example in README
|
599
|
-
make StubNotFound inherit from StandardError (not Excon::Errors::Error)
|
600
|
-
idempotent reimplemented as middleware
|
601
|
-
remaining idempotent/instrumentor functionality moved to middleware
|
602
|
-
move uri parsing to Excon.new
|
603
|
-
allow for configurable URI parser (ie Addressable vs URI)
|
604
|
-
move VALID_CONNECTION_KEYS to constants
|
605
|
-
move idempotent tests to middleware directory
|
606
|
-
fix output of expects middleware to pass response objects instead of
|
607
|
-
hashes
|
608
|
-
|
609
|
-
0.18.5 02/22/2013
|
610
|
-
=================
|
611
|
-
|
612
|
-
add family to known keys
|
613
|
-
|
614
|
-
0.18.4 02/21/2013
|
615
|
-
=================
|
616
|
-
|
617
|
-
remove ssl proxy host_port usage
|
618
|
-
|
619
|
-
0.18.3 02/21/2013
|
620
|
-
=================
|
621
|
-
|
622
|
-
update response accessors to read from/write to @data
|
623
|
-
|
624
|
-
0.18.2 02/21/2013
|
625
|
-
=================
|
626
|
-
|
627
|
-
one shouldn't rush, fix typo in previous
|
628
|
-
|
629
|
-
0.18.1 02/21/2013
|
630
|
-
=================
|
631
|
-
|
632
|
-
fix for http errors when using mocks
|
633
|
-
|
634
|
-
0.18.0 02/21/2013
|
635
|
-
=================
|
636
|
-
|
637
|
-
more refactoring around middlewares
|
638
|
-
add pipelining capabilities
|
639
|
-
allow [] style access to response attributes
|
640
|
-
|
641
|
-
|
642
|
-
0.17.0 02/01/2013
|
643
|
-
=================
|
644
|
-
|
645
|
-
add patch method
|
646
|
-
allow passing family for addresses to params/proxy
|
647
|
-
more consistent empty header passing
|
648
|
-
nicer debug output
|
649
|
-
internal refactoring toward middleware pattern
|
650
|
-
|
651
|
-
0.16.10 11/16/2012
|
652
|
-
==================
|
653
|
-
|
654
|
-
set default request_params for stub
|
655
|
-
do not attempt to read body for CONNECT requests
|
656
|
-
|
657
|
-
0.16.9 11/16/2012
|
658
|
-
=================
|
659
|
-
|
660
|
-
readme cleanup/clarification around stubs
|
661
|
-
fix for reading response from ssl proxy
|
662
|
-
|
663
|
-
0.16.8 11/12/2012
|
664
|
-
=================
|
665
|
-
|
666
|
-
set file body pos to 0 at beginning of request
|
667
|
-
add eventmachine to dev dependencies for bad server tests
|
668
|
-
comment out benchmark deps for now
|
669
|
-
fix typo in readme
|
670
|
-
|
671
|
-
0.16.7 10/17/2012
|
672
|
-
=================
|
673
|
-
|
674
|
-
fix typo in host_port per-request patch
|
675
|
-
|
676
|
-
0.16.6 10/17/2012
|
677
|
-
=================
|
678
|
-
|
679
|
-
fix for host_port to recalculate on a per-request basis
|
680
|
-
|
681
|
-
0.16.5 10/17/2012
|
682
|
-
=================
|
683
|
-
|
684
|
-
Also retry Timeouts on idempotent requests
|
685
|
-
Excon.stub now breaks out user/pass from url if supplied
|
686
|
-
loosen ssl version requirement to allow negotiation
|
687
|
-
eof on read should return '' instead of nil
|
688
|
-
build host_port up front to avoid recalculating
|
689
|
-
set Proxy-Connection: Keep-Alive for https proxies
|
690
|
-
postpone https upgrade until after proxy connect
|
691
|
-
|
692
|
-
0.16.4 09/25/2012
|
693
|
-
=================
|
694
|
-
|
695
|
-
better behavior nonblock and use DEFAULT_NONBLOCK constant
|
696
|
-
update deprecation/warnings to use $stderr
|
697
|
-
consistency fixes for REDACT
|
698
|
-
add REDACT behavior to standard_instrumentor
|
699
|
-
|
700
|
-
0.16.3 09/20/2012
|
701
|
-
=================
|
702
|
-
|
703
|
-
remove overly paranoid const checking
|
704
|
-
change chunk_size to be a param for consistency
|
705
|
-
|
706
|
-
0.16.2 08/27/2012
|
707
|
-
=================
|
708
|
-
|
709
|
-
provide more helpful backtraces on connection requests
|
710
|
-
provide more helpful backtraces on one-off requests
|
711
|
-
rearrange class methods so params will pass to socket
|
712
|
-
integrate nonblock backwards compatability fix
|
713
|
-
rearrange excon.rb to initialize defaults sooner
|
714
|
-
set nonblock at init time for ssl socket
|
715
|
-
fixes around nonbleck to properly skip/warn if unavailable but selected
|
716
|
-
|
717
|
-
0.16.1 08/15/2012
|
718
|
-
=================
|
719
|
-
|
720
|
-
default to SSLv3 usage
|
721
|
-
|
722
|
-
0.16.0 08/14/2012
|
723
|
-
=================
|
724
|
-
|
725
|
-
add nonblock => false to use blocking requests with Timeout.timeout
|
726
|
-
update readme to describe nonblock and idempotent options
|
727
|
-
|
728
|
-
0.15.5 08/01/2012
|
729
|
-
=================
|
730
|
-
|
731
|
-
consolidate proxy handling
|
732
|
-
proxy settings should pull from connection instead of params (allows
|
733
|
-
Excon.defaults[:proxy])
|
734
|
-
properly raise connect timeout errors
|
735
|
-
change recommended standard instrumentor ENV to EXCON_DEBUG
|
736
|
-
remove readline nonblock protections (they didn't fix the windows issue)
|
737
|
-
don't swallow non-nonblock SSL exceptions
|
738
|
-
consistency fixes for ssl nonblock error handling
|
739
|
-
do SNI in ssl_socket setup
|
740
|
-
use Excon::Response#parse to read https proxy response
|
741
|
-
|
742
|
-
0.15.4 07/16/12
|
743
|
-
===============
|
744
|
-
|
745
|
-
rescue/retry nonblock errors from readline (even though they shouldn't
|
746
|
-
occur)
|
747
|
-
|
748
|
-
0.15.3 07/16/12
|
749
|
-
===============
|
750
|
-
|
751
|
-
remove erroneous newline in proxy auth header
|
752
|
-
|
753
|
-
0.15.2 07/16/12
|
754
|
-
===============
|
755
|
-
|
756
|
-
fix capitalization of EXCON constant in auth stuff
|
757
|
-
properly handle nil user/password values in auth
|
758
|
-
various fixes to proxy and related tests
|
759
|
-
|
760
|
-
0.15.1 07/16/12
|
761
|
-
===============
|
762
|
-
|
763
|
-
fix for sending user/pass to proxy
|
764
|
-
|
765
|
-
0.15.0 07/16/12
|
766
|
-
===============
|
767
|
-
|
768
|
-
clarifications in README
|
769
|
-
added base error class to message for Excon::SocketError
|
770
|
-
fixes for proxy, sets properly on http and passes auth
|
771
|
-
|
772
|
-
0.14.3 07/05/12
|
773
|
-
===============
|
774
|
-
|
775
|
-
remove a redundant setter in response streamer
|
776
|
-
standardize on each (instead of for) to iterate enumerables
|
777
|
-
|
778
|
-
0.14.2 06/26/12
|
779
|
-
===============
|
780
|
-
|
781
|
-
fix invoke_stub to convert files into strings before comparing
|
782
|
-
|
783
|
-
0.14.1 06/19/12
|
784
|
-
===============
|
785
|
-
|
786
|
-
accept port as a separate option
|
787
|
-
ensure first read from socket is nonblock (fixes read_timeouts)
|
788
|
-
respect upper case env vars
|
789
|
-
|
790
|
-
0.14.0 05/31/12
|
791
|
-
===============
|
792
|
-
|
793
|
-
make stubs LIFO for ease of use/understanding, updated README to
|
794
|
-
explain
|
795
|
-
simplify https proxy logic
|
796
|
-
add instrumentation for responses
|
797
|
-
add StandardInstrumentor (events got to stderr)
|
798
|
-
EXCON_STANDARD_INSTRUMENTOR=true sets StandardInstrumentor as default
|
799
|
-
|
800
|
-
0.13.3 04/05/12
|
801
|
-
===============
|
802
|
-
|
803
|
-
* fix for file size calculation in 1.8.7
|
804
|
-
|
805
|
-
0.13.3 04/05/12
|
806
|
-
===============
|
807
|
-
|
808
|
-
* fixes for file like objects which do not respond to binmode
|
809
|
-
|
810
|
-
0.13.2 03/26/12
|
811
|
-
===============
|
812
|
-
|
813
|
-
* fix to avoid issues when Tempfile is not required/defined. Thanks
|
814
|
-
nextmat
|
815
|
-
|
816
|
-
0.13.1 03/26/12
|
817
|
-
===============
|
818
|
-
|
819
|
-
* fix to allow for passing Tempfile objects as body. Thanks rkyrychuk
|
820
|
-
|
821
|
-
0.13.0 03/22/12
|
822
|
-
===============
|
823
|
-
|
824
|
-
* workaround for jruby (use blocking read/write for ssl sockets)
|
825
|
-
|
826
|
-
0.12.0 03/18/12
|
827
|
-
===============
|
828
|
-
|
829
|
-
* use params to set ssl (so each connection could differ)
|
830
|
-
* bundle a default cert
|
831
|
-
|
832
|
-
0.11.0 03/15/12
|
833
|
-
===============
|
834
|
-
|
835
|
-
* add request_block to support chunked requests
|
836
|
-
* deprecate implicit block in favor of explicit response_block
|
837
|
-
* loosen activesupport and jruby-openssl development dependencies
|
838
|
-
|
839
|
-
0.10.1 03/13/12
|
840
|
-
===============
|
841
|
-
|
842
|
-
* avoid calling empty? on file body
|
843
|
-
|
844
|
-
0.10.0 03/01/12
|
845
|
-
===============
|
846
|
-
|
847
|
-
* avoid setting/passing Content-Length headers for GET requests with
|
848
|
-
no body
|
849
|
-
* remove rcov from tasks/bundle in development
|
850
|
-
* automatically parse and use basic auth when passed as part of a uri
|
851
|
-
* fix for erroneous recursion in Excon.defaults=
|
852
|
-
|
853
|
-
0.9.6 02/22/12
|
854
|
-
==============
|
855
|
-
|
856
|
-
* add support for setting ca_file. Thanks mattmatt!
|
857
|
-
* add docs for Excon.stubs.clear and expects. Thanks masterkain!
|
858
|
-
* add class level defaults
|
859
|
-
* fix ruby warnings. Thanks foca!
|
860
|
-
* improve instrumentation docs. Thanks mkb!
|
861
|
-
* fix for empty body and SSL sockets. Thanks pweldon!
|
862
|
-
|
863
|
-
0.9.5 01/16/12
|
864
|
-
==============
|
865
|
-
|
866
|
-
* fix getaddrinfo usage for rbx
|
867
|
-
* fix mock handling when a block in passed
|
868
|
-
* add jruby to ci
|
869
|
-
|
870
|
-
0.9.4 12/21/11
|
871
|
-
==============
|
872
|
-
|
873
|
-
* fix for regexp/capture setting
|
874
|
-
|
875
|
-
0.9.3 12/21/11
|
876
|
-
==============
|
877
|
-
|
878
|
-
* fix CONSTANTS referenced in SSL_Socket
|
879
|
-
* fix default value for proxy in SSL_Socket
|
880
|
-
* fix non-regexp header matching
|
881
|
-
* return captures from regexp based params
|
882
|
-
|
883
|
-
0.9.2 12/16/11
|
884
|
-
==============
|
885
|
-
|
886
|
-
* update mocks to allow for regex based matching
|
887
|
-
* fixes for write_nonblock+OpenSSL weirdness
|
888
|
-
|
889
|
-
0.9.1 12/15/11
|
890
|
-
==============
|
891
|
-
|
892
|
-
* update mock usage to be at the connection/request level
|
893
|
-
|
894
|
-
0.9.0 12/14/11
|
895
|
-
==============
|
896
|
-
|
897
|
-
* add ability to do instrumentation
|
898
|
-
* misc cleanup
|
899
|
-
* deprecate retry_limit accessor in favor of passing as a param
|
900
|
-
|
901
|
-
0.8.0 12/12/11
|
902
|
-
==============
|
903
|
-
|
904
|
-
* move mock handler to its own method
|
905
|
-
* better handling around openssl errors
|
906
|
-
* simplify writing by removing buffer
|
907
|
-
|
908
|
-
0.7.12 12/04/11
|
909
|
-
===============
|
910
|
-
|
911
|
-
* revert: explicitly close files after writing
|
912
|
-
|
913
|
-
0.7.11 12/24/11
|
914
|
-
==============
|
915
|
-
|
916
|
-
* rebuild gem broken gemspec with 1.8.x
|
917
|
-
|
918
|
-
0.7.10 12/04/11
|
919
|
-
===============
|
920
|
-
|
921
|
-
* explicitly close files after writing
|
922
|
-
|
923
|
-
0.7.9 11/30/11
|
924
|
-
==============
|
925
|
-
|
926
|
-
* add ability to modify retry limit
|
927
|
-
* use addrinfo to avoid localhost and other IPv6 issues
|
928
|
-
* update gemspec authors to add Dan Peterson and Matt Sanders
|
929
|
-
|
930
|
-
0.7.8 11/24/11
|
931
|
-
==============
|
932
|
-
|
933
|
-
* rebuild gem broken gemspec with 1.8.x
|
934
|
-
|
935
|
-
0.7.7 11/24/11
|
936
|
-
==============
|
937
|
-
|
938
|
-
* setup for travis ci automated testing
|
939
|
-
* fix EOFError
|
940
|
-
* use Socket.getaddrinfo to fix IPv6 issues
|
941
|
-
|
942
|
-
0.7.6 10/04/11
|
943
|
-
==============
|
944
|
-
|
945
|
-
* fixes to provide for using openssl-nonblock for 1.8.x
|
946
|
-
* correctly pass per-request settings to socket
|
947
|
-
* fix for nonblocking stuff when waiting for socket close
|
948
|
-
* use 127.0.0.1 instead of localhost in tests (fixes some errors)
|
949
|
-
|
950
|
-
0.7.5 10/03/11
|
951
|
-
==============
|
952
|
-
|
953
|
-
* convert port to integer in sockaddr_in (jruby won't convert for you)
|
954
|
-
|
955
|
-
0.7.4 09/30/11
|
956
|
-
==============
|
957
|
-
|
958
|
-
* rescue write would block from openssl
|
959
|
-
|
960
|
-
0.7.3 09/27/11
|
961
|
-
==============
|
962
|
-
|
963
|
-
* fix nonblocking read to avoid reading past chunk in chunked encoded
|
964
|
-
* rescue read would block from openssl
|
965
|
-
|
966
|
-
0.7.2 09/24/11
|
967
|
-
==============
|
968
|
-
|
969
|
-
* fix buffer drain for socket#write. thanks dpiddy
|
970
|
-
* rescue/retry timeout errors for idempotent requests. thanks dpiddy
|
971
|
-
* timeouts should raise an excon specific error
|
972
|
-
|
973
|
-
0.7.1 09/13/11
|
974
|
-
==============
|
975
|
-
|
976
|
-
* use nonblocking only when available (skip for 1.8.x SSL)
|
977
|
-
|
978
|
-
0.7.0 09/12/11
|
979
|
-
==============
|
980
|
-
|
981
|
-
* change connects and most read/writes to use nonblocking methods
|
982
|
-
* provide connect/read/write timeouts
|
983
|
-
|
984
|
-
0.6.6 09/06/11
|
985
|
-
==============
|
986
|
-
|
987
|
-
* cleanup/refactoring. thanks nextmat
|
988
|
-
* default to connection close as request delimiter
|
989
|
-
|
990
|
-
0.6.5 07/13/11
|
991
|
-
==============
|
992
|
-
|
993
|
-
* properly stream responses with proc
|
994
|
-
* fix mock with block to match real requests
|
995
|
-
|
996
|
-
0.6.4 07/05/11
|
997
|
-
==============
|
998
|
-
|
999
|
-
* add block support to mocks. thanks dmeiz
|
1000
|
-
* fixes for stub matching. thanks dmeiz
|
1001
|
-
* don't do post_connection_check if verify mode is off
|
1002
|
-
* check excon state for verify mode instead of checking OpenSSL
|
1003
|
-
constants
|
1004
|
-
* use RbConfig to find OS. thanks trym
|
1005
|
-
* fixes for idempotent/retry. thanks lstoll
|
1006
|
-
|
1007
|
-
0.6.3 05/02/11
|
1008
|
-
==============
|
1009
|
-
|
1010
|
-
* fixes for header parsing to allow whitespace after :. thanks
|
1011
|
-
myronmarston
|
1012
|
-
* get_header optimization. thanks nextmat
|
1013
|
-
* rewind body on retry. thanks pweldon
|
1014
|
-
|
1015
|
-
0.6.2 04/11/11
|
1016
|
-
==============
|
1017
|
-
|
1018
|
-
* fix block arguments for connection close. thanks ggoodale
|
1019
|
-
|
1020
|
-
0.6.1 04/05/11
|
1021
|
-
==============
|
1022
|
-
|
1023
|
-
* add support for HTTPS proxies. thanks mrowe
|
1024
|
-
* add support for http_proxy and https_proxy ENV variables. thanks
|
1025
|
-
mrowe
|
1026
|
-
* fix progress for requests with blocks that are chunked or connection
|
1027
|
-
close
|
1028
|
-
|
1029
|
-
0.6.0 03/30/11
|
1030
|
-
==============
|
1031
|
-
|
1032
|
-
* basic support for using proxies. thanks mattsa
|
1033
|
-
* yield remaining/total bytes to streaming block. thanks nate
|
1034
|
-
* minor optimizations/cleanup
|
1035
|
-
|
1036
|
-
0.5.8 03/24/11
|
1037
|
-
==============
|
1038
|
-
|
1039
|
-
* fix regression where nil values in queries were ignored in 1.9.
|
1040
|
-
thanks mattsa
|
1041
|
-
* fix regression causing EOFError when making many connections in one
|
1042
|
-
thread
|
1043
|
-
* added tests to prevent both of the former from recurring
|
1044
|
-
|
1045
|
-
0.5.7 03/21/11
|
1046
|
-
==============
|
1047
|
-
|
1048
|
-
* lazily connect, rather than connecting at #initialize
|
1049
|
-
* add rough first pass at stubbing
|
1050
|
-
* minor optimizations
|
1051
|
-
* ssl client certification support. thanks thommay
|
1052
|
-
* skip figuring out/setting Content-Length if one is supplied. Thanks
|
1053
|
-
pweldon
|
1054
|
-
* do not try to parse body for 205 and 304. Thanks seancribbs
|
1055
|
-
|
1056
|
-
0.5.6 02/19/11
|
1057
|
-
==============
|
1058
|
-
|
1059
|
-
* only split headers by first ':' to allow for values with ':'. Thanks
|
1060
|
-
mtodd!
|
1061
|
-
* check a string instance for force_encoding, not class. Thanks
|
1062
|
-
seancribbs!
|
1063
|
-
* add benchmarks related to for vs each for enumerable. Thanks caius!
|
1064
|
-
* fix default rake task to run tests
|
1065
|
-
|
1066
|
-
0.5.5 02/18/11
|
1067
|
-
==============
|
1068
|
-
|
1069
|
-
* use local variables in response parsing, prevents keeping state
|
1070
|
-
across requests
|
1071
|
-
|
1072
|
-
0.5.4 02/18/11
|
1073
|
-
==============
|
1074
|
-
|
1075
|
-
* 204 should not attempt to parse body
|
1076
|
-
|
1077
|
-
|
1078
|
-
0.5.3 02/17/11
|
1079
|
-
==============
|
1080
|
-
|
1081
|
-
* header comparison for responses is now case insensitive
|
1082
|
-
* change to allow :idempotent => false to operate correctly
|
1083
|
-
* misc cleanup
|