excon 0.103.0 → 0.104.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +10 -0
- data/lib/excon/constants.rb +2 -0
- data/lib/excon/socket.rb +10 -3
- data/lib/excon/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5178f794971246bbfa44097a97594cb9480a13ff11b9884c1fa1ac79e94c0a6
|
4
|
+
data.tar.gz: c5ea1c85e77eddba09b655f18ad415f03eb824481e562ee88c0c756850c61463
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 210b6c6ca9be3b3668f9f24c509f95e6a41533c9f0290ccd4a967f92fed1f335f837ce8ff52b8bcc3d5fb3d21d236ed179a67d70df2c8c0202a3772a282c5840
|
7
|
+
data.tar.gz: a1cf5fdb74468a879741b482bef3734e74b4c390551cbfbad7762b06bb892877a30255d872c27404ee0e0f137ad208c7fa73b167fb64fdddaffe063e8a3eb5bb
|
data/README.md
CHANGED
@@ -192,10 +192,20 @@ connection = Excon.new('http://geemus.com/', :connect_timeout => 360)
|
|
192
192
|
# opt-out of nonblocking operations for performance and/or as a workaround
|
193
193
|
connection = Excon.new('http://geemus.com/', :nonblock => false)
|
194
194
|
|
195
|
+
# DEPRECATED in favour of `resolv_resolver` (see below)
|
195
196
|
# set up desired dns_timeouts for resolving addresses (default is set by Resolv)
|
196
197
|
# it accepts an integer or an array of integers for retrying with different timeouts
|
197
198
|
# see Resolv::DNS#timeouts for more details (https://ruby-doc.org/3.2.2/stdlibs/resolv/Resolv/DNS.html#method-i-timeouts-3D)
|
198
199
|
connection = Excon.new('http://geemus.com/', :dns_timeouts => 3)
|
200
|
+
|
201
|
+
# set a custom resolver for Resolv
|
202
|
+
# you can use custom nameservers and timeouts
|
203
|
+
# `timeouts` accepts an integer or an array of integers for retrying with different timeouts
|
204
|
+
# see Resolv::DNS#timeouts for more details (https://ruby-doc.org/3.2.2/stdlibs/resolv/Resolv/DNS.html#method-i-timeouts-3D)
|
205
|
+
dns_resolver = Resolv::DNS.new(nameserver: ['127.0.0.1'])
|
206
|
+
dns_resolver.timeouts = 3
|
207
|
+
resolver = Resolv.new([Resolv::Hosts.new, dns_resolver])
|
208
|
+
connection = Excon.new('http://geemus.com', :resolv_resolver => resolver)
|
199
209
|
```
|
200
210
|
|
201
211
|
## Chunked Requests
|
data/lib/excon/constants.rb
CHANGED
@@ -59,6 +59,7 @@ module Excon
|
|
59
59
|
:query,
|
60
60
|
:read_timeout,
|
61
61
|
:request_block,
|
62
|
+
:resolv_resolver,
|
62
63
|
:response_block,
|
63
64
|
:stubs,
|
64
65
|
:user,
|
@@ -162,6 +163,7 @@ module Excon
|
|
162
163
|
:omit_default_port => false,
|
163
164
|
:persistent => false,
|
164
165
|
:read_timeout => 60,
|
166
|
+
:resolv_resolver => nil,
|
165
167
|
:retry_errors => DEFAULT_RETRY_ERRORS,
|
166
168
|
:retry_limit => DEFAULT_RETRY_LIMIT,
|
167
169
|
:ssl_verify_peer => true,
|
data/lib/excon/socket.rb
CHANGED
@@ -121,9 +121,16 @@ module Excon
|
|
121
121
|
family = @data[:proxy][:family]
|
122
122
|
end
|
123
123
|
|
124
|
-
|
125
|
-
|
126
|
-
|
124
|
+
resolver = @data[:resolv_resolver] || Resolv.new
|
125
|
+
|
126
|
+
# Deprecated
|
127
|
+
if @data[:dns_timeouts]
|
128
|
+
Excon.display_warning('dns_timeouts is deprecated, use resolv_resolver instead.')
|
129
|
+
dns_resolver = Resolv::DNS.new
|
130
|
+
dns_resolver.timeouts = @data[:dns_timeouts]
|
131
|
+
resolver = Resolv.new([Resolv::Hosts.new, dns_resolver])
|
132
|
+
end
|
133
|
+
|
127
134
|
resolver.each_address(hostname) do |ip|
|
128
135
|
# already succeeded on previous addrinfo
|
129
136
|
if @socket
|
data/lib/excon/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: excon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.104.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- dpiddy (Dan Peterson)
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-09-
|
13
|
+
date: 2023-09-29 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec
|