httpx 0.20.5 → 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.
- checksums.yaml +4 -4
- data/doc/release_notes/0_13_0.md +1 -1
- data/doc/release_notes/0_21_0.md +94 -0
- data/lib/httpx/connection/http1.rb +2 -1
- data/lib/httpx/connection.rb +41 -2
- data/lib/httpx/errors.rb +18 -0
- data/lib/httpx/extensions.rb +8 -4
- data/lib/httpx/io/unix.rb +1 -1
- data/lib/httpx/options.rb +7 -3
- data/lib/httpx/plugins/circuit_breaker/circuit.rb +76 -0
- data/lib/httpx/plugins/circuit_breaker/circuit_store.rb +44 -0
- data/lib/httpx/plugins/circuit_breaker.rb +115 -0
- data/lib/httpx/plugins/cookies.rb +1 -1
- data/lib/httpx/plugins/expect.rb +1 -1
- data/lib/httpx/plugins/multipart/decoder.rb +1 -1
- data/lib/httpx/plugins/proxy.rb +7 -1
- data/lib/httpx/plugins/retries.rb +1 -1
- data/lib/httpx/plugins/webdav.rb +78 -0
- data/lib/httpx/request.rb +15 -25
- data/lib/httpx/resolver/https.rb +2 -7
- data/lib/httpx/resolver/native.rb +2 -1
- data/lib/httpx/response.rb +27 -9
- data/lib/httpx/timers.rb +3 -0
- data/lib/httpx/transcoder/form.rb +1 -1
- data/lib/httpx/transcoder/json.rb +19 -3
- data/lib/httpx/transcoder/xml.rb +57 -0
- data/lib/httpx/transcoder.rb +1 -0
- data/lib/httpx/version.rb +1 -1
- data/sig/buffer.rbs +1 -1
- data/sig/chainable.rbs +1 -0
- data/sig/connection.rbs +12 -4
- data/sig/errors.rbs +13 -0
- data/sig/io.rbs +6 -0
- data/sig/options.rbs +4 -1
- data/sig/plugins/circuit_breaker.rbs +61 -0
- data/sig/plugins/compression/brotli.rbs +1 -1
- data/sig/plugins/compression/deflate.rbs +1 -1
- data/sig/plugins/compression/gzip.rbs +3 -3
- data/sig/plugins/compression.rbs +1 -1
- data/sig/plugins/multipart.rbs +1 -1
- data/sig/plugins/proxy/socks5.rbs +3 -2
- data/sig/plugins/proxy.rbs +1 -1
- data/sig/registry.rbs +5 -4
- data/sig/request.rbs +7 -1
- data/sig/resolver/native.rbs +5 -2
- data/sig/response.rbs +3 -1
- data/sig/timers.rbs +1 -1
- data/sig/transcoder/json.rbs +4 -1
- data/sig/transcoder/xml.rbs +21 -0
- data/sig/transcoder.rbs +2 -2
- data/sig/utils.rbs +2 -2
- metadata +12 -2
data/sig/plugins/proxy.rbs
CHANGED
@@ -21,7 +21,7 @@ module HTTPX
|
|
21
21
|
|
22
22
|
private
|
23
23
|
|
24
|
-
def initialize: (uri: generic_uri, ?scheme: String, ?username: String, ?password: String, **
|
24
|
+
def initialize: (uri: generic_uri, ?scheme: String, ?username: String, ?password: String, **untyped) -> untyped
|
25
25
|
end
|
26
26
|
|
27
27
|
def self.configure: (singleton(Session)) -> void
|
data/sig/registry.rbs
CHANGED
@@ -1,12 +1,13 @@
|
|
1
|
-
module HTTPX::Registry[T, V]
|
1
|
+
module HTTPX::Registry[unchecked out T, unchecked out V]
|
2
2
|
class Error < HTTPX::Error
|
3
3
|
end
|
4
4
|
|
5
5
|
# type registrable = Symbol | String | Class
|
6
6
|
|
7
|
-
def self.registry: (T
|
8
|
-
| () -> Hash[T, V]
|
9
|
-
|
7
|
+
def self.registry: [T, V] (T) -> Class
|
8
|
+
| [T, V] () -> Hash[T, V]
|
9
|
+
|
10
|
+
def self.register: [T, V] (T tag, V handler) -> void
|
10
11
|
|
11
12
|
def registry: (?T tag) -> V
|
12
13
|
end
|
data/sig/request.rbs
CHANGED
@@ -50,6 +50,12 @@ module HTTPX
|
|
50
50
|
|
51
51
|
def trailers?: () -> boolish
|
52
52
|
|
53
|
+
def read_timeout: () -> Numeric
|
54
|
+
|
55
|
+
def write_timeout: () -> Numeric
|
56
|
+
|
57
|
+
def request_timeout: () -> Numeric
|
58
|
+
|
53
59
|
class Body
|
54
60
|
@headers: Headers
|
55
61
|
@body: body_encoder?
|
@@ -61,7 +67,7 @@ module HTTPX
|
|
61
67
|
|
62
68
|
def rewind: () -> void
|
63
69
|
def empty?: () -> bool
|
64
|
-
def bytesize: () ->
|
70
|
+
def bytesize: () -> (Integer | Float)
|
65
71
|
def stream: (Transcoder::_Encoder) -> bodyIO
|
66
72
|
def unbounded_body?: () -> bool
|
67
73
|
def chunked?: () -> bool
|
data/sig/resolver/native.rbs
CHANGED
@@ -10,7 +10,10 @@ module HTTPX
|
|
10
10
|
@family: ip_family
|
11
11
|
@options: Options
|
12
12
|
@ns_index: Integer
|
13
|
-
@nameserver: String
|
13
|
+
@nameserver: Array[String]?
|
14
|
+
@ndots: Integer
|
15
|
+
@start_timeout: Float?
|
16
|
+
@search: Array[String]
|
14
17
|
@_timeouts: Array[Numeric]
|
15
18
|
@timeouts: Hash[String, Array[Numeric]]
|
16
19
|
@connections: Array[Connection]
|
@@ -37,7 +40,7 @@ module HTTPX
|
|
37
40
|
|
38
41
|
def consume: () -> void
|
39
42
|
|
40
|
-
def do_retry: (?Numeric loop_time) -> void
|
43
|
+
def do_retry: (?Numeric? loop_time) -> void
|
41
44
|
|
42
45
|
def dread: (Integer) -> void
|
43
46
|
| () -> void
|
data/sig/response.rbs
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
module HTTPX
|
2
2
|
interface _Response
|
3
|
+
def finished?: () -> bool
|
4
|
+
|
3
5
|
def raise_for_status: () -> self
|
4
6
|
|
5
7
|
def error: () -> StandardError?
|
@@ -61,7 +63,7 @@ module HTTPX
|
|
61
63
|
def each: () { (String) -> void } -> void
|
62
64
|
| () -> Enumerable[String]
|
63
65
|
|
64
|
-
def bytesize: () ->
|
66
|
+
def bytesize: () -> (Integer | Float)
|
65
67
|
def empty?: () -> bool
|
66
68
|
def copy_to: (String | File | _Writer destination) -> void
|
67
69
|
def close: () -> void
|
data/sig/timers.rbs
CHANGED
data/sig/transcoder/json.rbs
CHANGED
@@ -5,6 +5,9 @@ module HTTPX::Transcoder
|
|
5
5
|
def self?.encode: (_ToJson json) -> Encoder
|
6
6
|
def self?.decode: (HTTPX::Response response) -> _Decoder
|
7
7
|
|
8
|
+
def self?.json_load: (string source, ?json_options) -> untyped
|
9
|
+
def self?.json_dump: (_ToJson obj, *untyped) -> String
|
10
|
+
|
8
11
|
class Encoder
|
9
12
|
extend Forwardable
|
10
13
|
include _Encoder
|
@@ -17,7 +20,7 @@ module HTTPX::Transcoder
|
|
17
20
|
|
18
21
|
private
|
19
22
|
|
20
|
-
def initialize: (_ToJson json) ->
|
23
|
+
def initialize: (_ToJson json) -> void
|
21
24
|
end
|
22
25
|
end
|
23
26
|
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module HTTPX::Transcoder
|
2
|
+
module XML
|
3
|
+
|
4
|
+
def self?.encode: (untyped xml) -> Encoder
|
5
|
+
def self?.decode: (HTTPX::Response response) -> _Decoder
|
6
|
+
|
7
|
+
class Encoder
|
8
|
+
@raw: untyped # can be nokogiri object
|
9
|
+
|
10
|
+
def content_type: () -> String
|
11
|
+
|
12
|
+
def bytesize: () -> (Integer | Float)
|
13
|
+
|
14
|
+
def to_s: () -> String
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def initialize: (String xml) -> void
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/sig/transcoder.rbs
CHANGED
@@ -18,11 +18,11 @@ module HTTPX
|
|
18
18
|
end
|
19
19
|
|
20
20
|
interface _Encoder
|
21
|
-
def bytesize: () ->
|
21
|
+
def bytesize: () -> (Integer | Float)
|
22
22
|
end
|
23
23
|
|
24
24
|
interface _Decoder
|
25
|
-
def call: (Response response, untyped
|
25
|
+
def call: (Response response, *untyped) -> untyped
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
data/sig/utils.rbs
CHANGED
@@ -4,9 +4,9 @@ module HTTPX
|
|
4
4
|
|
5
5
|
def self?.parse_retry_after: (String) -> Numeric
|
6
6
|
|
7
|
-
def self?.now: () ->
|
7
|
+
def self?.now: () -> Float
|
8
8
|
|
9
|
-
def self?.elapsed_time: (
|
9
|
+
def self?.elapsed_time: (Integer | Float monotonic_time) -> Float
|
10
10
|
|
11
11
|
def self?.to_uri: (generic_uri uri) -> URI::Generic
|
12
12
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: httpx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tiago Cardoso
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-08-
|
11
|
+
date: 2022-08-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http-2-next
|
@@ -86,6 +86,7 @@ extra_rdoc_files:
|
|
86
86
|
- doc/release_notes/0_20_3.md
|
87
87
|
- doc/release_notes/0_20_4.md
|
88
88
|
- doc/release_notes/0_20_5.md
|
89
|
+
- doc/release_notes/0_21_0.md
|
89
90
|
- doc/release_notes/0_2_0.md
|
90
91
|
- doc/release_notes/0_2_1.md
|
91
92
|
- doc/release_notes/0_3_0.md
|
@@ -164,6 +165,7 @@ files:
|
|
164
165
|
- doc/release_notes/0_20_3.md
|
165
166
|
- doc/release_notes/0_20_4.md
|
166
167
|
- doc/release_notes/0_20_5.md
|
168
|
+
- doc/release_notes/0_21_0.md
|
167
169
|
- doc/release_notes/0_2_0.md
|
168
170
|
- doc/release_notes/0_2_1.md
|
169
171
|
- doc/release_notes/0_3_0.md
|
@@ -217,6 +219,9 @@ files:
|
|
217
219
|
- lib/httpx/plugins/aws_sdk_authentication.rb
|
218
220
|
- lib/httpx/plugins/aws_sigv4.rb
|
219
221
|
- lib/httpx/plugins/basic_authentication.rb
|
222
|
+
- lib/httpx/plugins/circuit_breaker.rb
|
223
|
+
- lib/httpx/plugins/circuit_breaker/circuit.rb
|
224
|
+
- lib/httpx/plugins/circuit_breaker/circuit_store.rb
|
220
225
|
- lib/httpx/plugins/compression.rb
|
221
226
|
- lib/httpx/plugins/compression/brotli.rb
|
222
227
|
- lib/httpx/plugins/compression/deflate.rb
|
@@ -253,6 +258,7 @@ files:
|
|
253
258
|
- lib/httpx/plugins/stream.rb
|
254
259
|
- lib/httpx/plugins/upgrade.rb
|
255
260
|
- lib/httpx/plugins/upgrade/h2.rb
|
261
|
+
- lib/httpx/plugins/webdav.rb
|
256
262
|
- lib/httpx/pmatch_extensions.rb
|
257
263
|
- lib/httpx/pool.rb
|
258
264
|
- lib/httpx/punycode.rb
|
@@ -275,6 +281,7 @@ files:
|
|
275
281
|
- lib/httpx/transcoder/chunker.rb
|
276
282
|
- lib/httpx/transcoder/form.rb
|
277
283
|
- lib/httpx/transcoder/json.rb
|
284
|
+
- lib/httpx/transcoder/xml.rb
|
278
285
|
- lib/httpx/utils.rb
|
279
286
|
- lib/httpx/version.rb
|
280
287
|
- sig/buffer.rbs
|
@@ -287,6 +294,7 @@ files:
|
|
287
294
|
- sig/errors.rbs
|
288
295
|
- sig/headers.rbs
|
289
296
|
- sig/httpx.rbs
|
297
|
+
- sig/io.rbs
|
290
298
|
- sig/loggable.rbs
|
291
299
|
- sig/options.rbs
|
292
300
|
- sig/parser/http1.rbs
|
@@ -298,6 +306,7 @@ files:
|
|
298
306
|
- sig/plugins/aws_sdk_authentication.rbs
|
299
307
|
- sig/plugins/aws_sigv4.rbs
|
300
308
|
- sig/plugins/basic_authentication.rbs
|
309
|
+
- sig/plugins/circuit_breaker.rbs
|
301
310
|
- sig/plugins/compression.rbs
|
302
311
|
- sig/plugins/compression/brotli.rbs
|
303
312
|
- sig/plugins/compression/deflate.rbs
|
@@ -342,6 +351,7 @@ files:
|
|
342
351
|
- sig/transcoder/chunker.rbs
|
343
352
|
- sig/transcoder/form.rbs
|
344
353
|
- sig/transcoder/json.rbs
|
354
|
+
- sig/transcoder/xml.rbs
|
345
355
|
- sig/utils.rbs
|
346
356
|
homepage: https://gitlab.com/honeyryderchuck/httpx
|
347
357
|
licenses:
|