httpx 0.9.0 → 0.11.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.txt +48 -0
- data/README.md +13 -3
- data/doc/release_notes/0_10_0.md +66 -0
- data/doc/release_notes/0_10_1.md +37 -0
- data/doc/release_notes/0_10_2.md +5 -0
- data/doc/release_notes/0_11_0.md +76 -0
- data/doc/release_notes/0_11_1.md +1 -0
- data/lib/httpx.rb +2 -0
- data/lib/httpx/adapters/datadog.rb +205 -0
- data/lib/httpx/adapters/faraday.rb +1 -3
- data/lib/httpx/adapters/webmock.rb +123 -0
- data/lib/httpx/chainable.rb +10 -9
- data/lib/httpx/connection.rb +7 -24
- data/lib/httpx/connection/http1.rb +15 -2
- data/lib/httpx/connection/http2.rb +15 -16
- data/lib/httpx/domain_name.rb +438 -0
- data/lib/httpx/errors.rb +4 -1
- data/lib/httpx/extensions.rb +21 -1
- data/lib/httpx/headers.rb +1 -0
- data/lib/httpx/io/ssl.rb +4 -9
- data/lib/httpx/io/tcp.rb +6 -5
- data/lib/httpx/io/udp.rb +8 -4
- data/lib/httpx/options.rb +2 -0
- data/lib/httpx/parser/http1.rb +14 -17
- data/lib/httpx/plugins/compression.rb +28 -63
- data/lib/httpx/plugins/compression/brotli.rb +10 -14
- data/lib/httpx/plugins/compression/deflate.rb +7 -6
- data/lib/httpx/plugins/compression/gzip.rb +23 -5
- data/lib/httpx/plugins/cookies.rb +21 -60
- data/lib/httpx/plugins/cookies/cookie.rb +173 -0
- data/lib/httpx/plugins/cookies/jar.rb +74 -0
- data/lib/httpx/plugins/cookies/set_cookie_parser.rb +142 -0
- data/lib/httpx/plugins/expect.rb +34 -11
- data/lib/httpx/plugins/follow_redirects.rb +20 -2
- data/lib/httpx/plugins/h2c.rb +1 -1
- data/lib/httpx/plugins/multipart.rb +41 -30
- data/lib/httpx/plugins/multipart/encoder.rb +115 -0
- data/lib/httpx/plugins/multipart/mime_type_detector.rb +64 -0
- data/lib/httpx/plugins/multipart/part.rb +34 -0
- data/lib/httpx/plugins/persistent.rb +6 -1
- data/lib/httpx/plugins/proxy.rb +16 -2
- data/lib/httpx/plugins/proxy/socks4.rb +14 -14
- data/lib/httpx/plugins/proxy/socks5.rb +3 -2
- data/lib/httpx/plugins/push_promise.rb +2 -2
- data/lib/httpx/plugins/rate_limiter.rb +51 -0
- data/lib/httpx/plugins/retries.rb +3 -2
- data/lib/httpx/plugins/stream.rb +109 -13
- data/lib/httpx/pool.rb +14 -20
- data/lib/httpx/request.rb +29 -31
- data/lib/httpx/resolver.rb +7 -6
- data/lib/httpx/resolver/https.rb +25 -25
- data/lib/httpx/resolver/native.rb +29 -22
- data/lib/httpx/resolver/resolver_mixin.rb +4 -2
- data/lib/httpx/resolver/system.rb +3 -3
- data/lib/httpx/response.rb +16 -23
- data/lib/httpx/selector.rb +11 -17
- data/lib/httpx/session.rb +39 -30
- data/lib/httpx/transcoder.rb +20 -0
- data/lib/httpx/transcoder/chunker.rb +0 -2
- data/lib/httpx/transcoder/form.rb +9 -7
- data/lib/httpx/transcoder/json.rb +0 -4
- data/lib/httpx/utils.rb +45 -0
- data/lib/httpx/version.rb +1 -1
- data/sig/buffer.rbs +24 -0
- data/sig/callbacks.rbs +14 -0
- data/sig/chainable.rbs +37 -0
- data/sig/connection.rbs +85 -0
- data/sig/connection/http1.rbs +66 -0
- data/sig/connection/http2.rbs +77 -0
- data/sig/domain_name.rbs +17 -0
- data/sig/errors.rbs +3 -0
- data/sig/headers.rbs +45 -0
- data/sig/httpx.rbs +15 -0
- data/sig/loggable.rbs +11 -0
- data/sig/options.rbs +118 -0
- data/sig/parser/http1.rbs +50 -0
- data/sig/plugins/authentication.rbs +11 -0
- data/sig/plugins/basic_authentication.rbs +13 -0
- data/sig/plugins/compression.rbs +55 -0
- data/sig/plugins/compression/brotli.rbs +21 -0
- data/sig/plugins/compression/deflate.rbs +17 -0
- data/sig/plugins/compression/gzip.rbs +29 -0
- data/sig/plugins/cookies.rbs +26 -0
- data/sig/plugins/cookies/cookie.rbs +50 -0
- data/sig/plugins/cookies/jar.rbs +27 -0
- data/sig/plugins/digest_authentication.rbs +33 -0
- data/sig/plugins/expect.rbs +19 -0
- data/sig/plugins/follow_redirects.rbs +37 -0
- data/sig/plugins/h2c.rbs +26 -0
- data/sig/plugins/multipart.rbs +44 -0
- data/sig/plugins/persistent.rbs +17 -0
- data/sig/plugins/proxy.rbs +47 -0
- data/sig/plugins/proxy/http.rbs +14 -0
- data/sig/plugins/proxy/socks4.rbs +33 -0
- data/sig/plugins/proxy/socks5.rbs +36 -0
- data/sig/plugins/proxy/ssh.rbs +18 -0
- data/sig/plugins/push_promise.rbs +22 -0
- data/sig/plugins/rate_limiter.rbs +11 -0
- data/sig/plugins/retries.rbs +48 -0
- data/sig/plugins/stream.rbs +39 -0
- data/sig/pool.rbs +36 -0
- data/sig/registry.rbs +9 -0
- data/sig/request.rbs +61 -0
- data/sig/resolver.rbs +26 -0
- data/sig/resolver/https.rbs +51 -0
- data/sig/resolver/native.rbs +60 -0
- data/sig/resolver/resolver_mixin.rbs +27 -0
- data/sig/resolver/system.rbs +17 -0
- data/sig/response.rbs +87 -0
- data/sig/selector.rbs +20 -0
- data/sig/session.rbs +49 -0
- data/sig/timeout.rbs +29 -0
- data/sig/transcoder.rbs +18 -0
- data/sig/transcoder/body.rbs +20 -0
- data/sig/transcoder/chunker.rbs +32 -0
- data/sig/transcoder/form.rbs +22 -0
- data/sig/transcoder/json.rbs +16 -0
- metadata +99 -59
- data/lib/httpx/resolver/options.rb +0 -25
@@ -0,0 +1,60 @@
|
|
1
|
+
module HTTPX
|
2
|
+
module Resolver
|
3
|
+
class Native
|
4
|
+
include ResolverMixin
|
5
|
+
include _ToIO
|
6
|
+
|
7
|
+
@options: Options
|
8
|
+
@ns_index: Integer
|
9
|
+
@resolver_options: Hash[Symbol, untyped]
|
10
|
+
@nameserver: String
|
11
|
+
@_timeouts: Array[Numeric]
|
12
|
+
@timeouts: Hash[String, Array[Numeric]]
|
13
|
+
@_record_types: Hash[String, Hash["A" | "AAAA", dns_resource]]
|
14
|
+
@connections: Array[Connection]
|
15
|
+
@queries: Hash[String, Connection]
|
16
|
+
@read_buffer: String
|
17
|
+
@write_buffer: Buffer
|
18
|
+
@state: :idle | :closed
|
19
|
+
|
20
|
+
def closed?: () -> bool
|
21
|
+
|
22
|
+
def empty?: () -> bool
|
23
|
+
|
24
|
+
def close: () -> void
|
25
|
+
|
26
|
+
def call: () -> void
|
27
|
+
|
28
|
+
def interests: () -> io_interests
|
29
|
+
|
30
|
+
def <<: (Connection) -> void
|
31
|
+
|
32
|
+
def timeout: () -> Numeric?
|
33
|
+
|
34
|
+
private
|
35
|
+
|
36
|
+
def initialize: (options) -> untyped
|
37
|
+
|
38
|
+
def consume: () -> void
|
39
|
+
|
40
|
+
def do_retry: () -> void
|
41
|
+
|
42
|
+
def dread: (Integer) -> void
|
43
|
+
| () -> void
|
44
|
+
|
45
|
+
def dwrite: () -> void
|
46
|
+
|
47
|
+
def parse: (String) -> void
|
48
|
+
|
49
|
+
def resolve: (Connection, String hostname) -> void
|
50
|
+
| (Connection) -> void
|
51
|
+
| () -> void
|
52
|
+
|
53
|
+
def build_socket: () -> void
|
54
|
+
|
55
|
+
def transition: (Symbol nextstate) -> void
|
56
|
+
|
57
|
+
def handle_error: (StandardError) -> void
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module HTTPX
|
2
|
+
module Resolver
|
3
|
+
module ResolverMixin
|
4
|
+
include Callbacks
|
5
|
+
include Loggable
|
6
|
+
|
7
|
+
def uncache: (Connection) -> void
|
8
|
+
|
9
|
+
private
|
10
|
+
|
11
|
+
def emit_addresses: (Connection, Array[ipaddr]) -> void
|
12
|
+
|
13
|
+
def early_resolve: (Connection, ?hostname: String) -> void
|
14
|
+
|
15
|
+
def ip_resolve: (String hostname) -> Array[ipaddr]?
|
16
|
+
|
17
|
+
def system_resolve: (String hostname) -> Array[ipaddr]?
|
18
|
+
|
19
|
+
def emit_resolve_error: (Connection, String hostname, StandardError) -> void
|
20
|
+
| (Connection, String hostname) -> void
|
21
|
+
| (Connection) -> void
|
22
|
+
|
23
|
+
def resolve_error: (String hostname, StandardError?) -> void
|
24
|
+
| (String hostname) -> void
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/sig/response.rbs
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
module HTTPX
|
2
|
+
interface _Response
|
3
|
+
def raise_for_status: () -> void
|
4
|
+
end
|
5
|
+
|
6
|
+
class Response
|
7
|
+
include _Response
|
8
|
+
include _ToS
|
9
|
+
include _Reader
|
10
|
+
|
11
|
+
attr_reader status: int
|
12
|
+
attr_reader headers: headers
|
13
|
+
attr_reader body: Body
|
14
|
+
attr_reader version: String
|
15
|
+
|
16
|
+
@options: Options
|
17
|
+
@request: Request
|
18
|
+
|
19
|
+
def copy_to: (_ToPath | _Writer destination) -> void
|
20
|
+
def close: () -> void
|
21
|
+
def uri: () -> uri
|
22
|
+
|
23
|
+
def merge_headers: (headers) -> void
|
24
|
+
def bodyless?: () -> bool
|
25
|
+
def content_type: () -> ContentType
|
26
|
+
def complete?: () -> bool
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
def initialize: (Request, _ToS, String, headers?) -> untyped
|
31
|
+
def no_data?: () -> bool
|
32
|
+
|
33
|
+
class Body
|
34
|
+
include _Writer
|
35
|
+
include _Reader
|
36
|
+
include _ToS
|
37
|
+
include _ToStr
|
38
|
+
|
39
|
+
@state: :idle | :memory | :buffer
|
40
|
+
|
41
|
+
def each: () { (String) -> void } -> void
|
42
|
+
| () -> Enumerable[String]
|
43
|
+
|
44
|
+
def bytesize: () -> Numeric
|
45
|
+
def empty?: () -> bool
|
46
|
+
def copy_to: (_ToPath | _Writer destination) -> void
|
47
|
+
def close: () -> void
|
48
|
+
|
49
|
+
private
|
50
|
+
|
51
|
+
def initialize: (Response, ?threshold_size: Integer, ?window_size: Integer) -> untyped
|
52
|
+
def rewind: () -> void
|
53
|
+
def transition: () -> void
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
class ContentType
|
58
|
+
attr_reader mime_type: String?
|
59
|
+
attr_reader charset: String?
|
60
|
+
|
61
|
+
def self.parse: (_ToS) -> instance
|
62
|
+
def self.mime_type: (_ToS) -> String?
|
63
|
+
def self.charset: (_ToS) -> String?
|
64
|
+
|
65
|
+
private
|
66
|
+
|
67
|
+
def initialize: (String?, String?) -> untyped
|
68
|
+
end
|
69
|
+
|
70
|
+
class ErrorResponse
|
71
|
+
include _Response
|
72
|
+
include Loggable
|
73
|
+
|
74
|
+
@options: Options
|
75
|
+
|
76
|
+
attr_reader request: Request
|
77
|
+
attr_reader error: Exception
|
78
|
+
|
79
|
+
def status: () -> (Integer | _ToS)
|
80
|
+
|
81
|
+
private
|
82
|
+
|
83
|
+
def initialize: (Request, Exception, options) -> untyped
|
84
|
+
end
|
85
|
+
|
86
|
+
type response = Response | ErrorResponse
|
87
|
+
end
|
data/sig/selector.rbs
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
module HTTPX
|
2
|
+
class Selector
|
3
|
+
READABLE: :r | :rw
|
4
|
+
WRITABLE: :w | :rw
|
5
|
+
|
6
|
+
def register: (_ToIO) -> void
|
7
|
+
def deregister: (_ToIO) -> void
|
8
|
+
|
9
|
+
def select: (Numeric?) { (_ToIO) -> void } -> void
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
def initialize: () -> untyped
|
14
|
+
|
15
|
+
def select_many: (Numeric?) { (_ToIO) -> void } -> void
|
16
|
+
def select_one: (Numeric?) { (_ToIO) -> void } -> void
|
17
|
+
end
|
18
|
+
|
19
|
+
type io_interests = :r | :w | :rw
|
20
|
+
end
|
data/sig/session.rbs
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
module HTTPX
|
2
|
+
class Session
|
3
|
+
include Loggable
|
4
|
+
include Chainable
|
5
|
+
|
6
|
+
@options: Options
|
7
|
+
@responses: Hash[Request, Response]
|
8
|
+
@persistent: bool
|
9
|
+
|
10
|
+
def wrap: () { (instance) -> void } -> void
|
11
|
+
| () -> void
|
12
|
+
def close: (*untyped) -> void
|
13
|
+
|
14
|
+
def request: (*Request, **untyped) -> (response | Array[response])
|
15
|
+
| (*untyped, **untyped) -> (response | Array[response])
|
16
|
+
|
17
|
+
def build_request: (String | verb, uri, ?options) -> Request
|
18
|
+
|
19
|
+
def self.plugin: (Symbol | Module, ?options) { (Class) -> void } -> singleton(Session)
|
20
|
+
| (Symbol | Module, ?options) -> singleton(Session)
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
def self.default_options: -> Options
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def initialize: (?options?) { (instance) -> void } -> untyped
|
29
|
+
| (?options?) -> untyped
|
30
|
+
|
31
|
+
def pool: -> Pool
|
32
|
+
def on_response: (Request, response) -> void
|
33
|
+
def on_promise: (untyped, untyped) -> void
|
34
|
+
def fetch_response: (Request, *untyped) -> response?
|
35
|
+
def set_connection_callbacks: (Connection, Array[Connection], Options) -> void
|
36
|
+
|
37
|
+
def build_altsvc_connection: (Connection, Array[Connection], URI, String, Hash[String, String], Options) -> Connection?
|
38
|
+
|
39
|
+
def build_requests: (verb | string, uri, options) -> Array[Request]
|
40
|
+
| (Array[[verb | string, uri, options]], options) -> Array[Request]
|
41
|
+
| (Array[[verb | string, uri]], options) -> Array[Request]
|
42
|
+
| (verb | string, _Each[[uri, options], void], Options) -> Array[Request]
|
43
|
+
| (verb | string, _Each[uri, void], options) -> Array[Request]
|
44
|
+
|
45
|
+
def build_connection: (URI, Options) -> Connection
|
46
|
+
|
47
|
+
def send_requests: (*Request, options) -> Array[response]
|
48
|
+
end
|
49
|
+
end
|
data/sig/timeout.rbs
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
module HTTPX
|
2
|
+
class Timeout
|
3
|
+
CONNECT_TIMEOUT: Numeric
|
4
|
+
KEEP_ALIVE_TIMEOUT: Numeric
|
5
|
+
OPERATION_TIMEOUT: Numeric
|
6
|
+
|
7
|
+
attr_reader connect_timeout: Numeric
|
8
|
+
attr_reader operation_timeout: Numeric
|
9
|
+
attr_reader total_timeout: Numeric?
|
10
|
+
attr_reader keep_alive_timeout: Numeric?
|
11
|
+
|
12
|
+
def self.new: (instance | Hash[Symbol, untyped]) -> instance
|
13
|
+
| () -> instance
|
14
|
+
|
15
|
+
def ==: (untyped other) -> bool
|
16
|
+
|
17
|
+
def merge: (Timeout | Hash[Symbol, untyped]) -> instance
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def initialize: (
|
22
|
+
?connect_timeout: Numeric,
|
23
|
+
?operation_timeout: Numeric,
|
24
|
+
?keep_alive_timeout: Numeric,
|
25
|
+
?total_timeout: Numeric | nil,
|
26
|
+
?loop_timeout: Numeric | nil
|
27
|
+
) -> untyped
|
28
|
+
end
|
29
|
+
end
|
data/sig/transcoder.rbs
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
module HTTPX
|
2
|
+
type bodyIO = _Reader | _Each[String, untyped] | _ToS
|
3
|
+
|
4
|
+
module Transcoder
|
5
|
+
extend HTTPX::Registry[String, Class]
|
6
|
+
|
7
|
+
def self.normalize_keys: (string | Symbol, top, ?Proc?) { (string, top) -> void } -> void
|
8
|
+
| (string | Symbol, top, ?Proc?) { (string) -> void } -> void
|
9
|
+
|
10
|
+
interface _Encoder
|
11
|
+
def bytesize: () -> Numeric
|
12
|
+
end
|
13
|
+
|
14
|
+
interface _Decoder
|
15
|
+
def decode: (string) -> String
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module HTTPX
|
2
|
+
module Transcoder
|
3
|
+
module Body
|
4
|
+
class Encoder
|
5
|
+
include _Encoder
|
6
|
+
include _ToS
|
7
|
+
|
8
|
+
@raw: bodyIO
|
9
|
+
|
10
|
+
def content_type: () -> String
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
def initialize: (untyped body ) -> untyped
|
15
|
+
end
|
16
|
+
|
17
|
+
def self?.encode: (bodyIO body) -> Encoder
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module HTTPX::Transcoder
|
2
|
+
module Chunker
|
3
|
+
def self?.encode: (_Encoder chunks) -> Encoder
|
4
|
+
|
5
|
+
class Encoder
|
6
|
+
@raw: _Each[String]
|
7
|
+
|
8
|
+
include _Each[String]
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def initialize: (_Encoder chunks) -> untyped
|
13
|
+
end
|
14
|
+
|
15
|
+
class Decoder
|
16
|
+
include _ToS
|
17
|
+
include _Each[String]
|
18
|
+
|
19
|
+
def finished?: () -> bool
|
20
|
+
def empty?: () -> bool
|
21
|
+
def <<: (string) -> void
|
22
|
+
def clear: () -> void
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def initialize: (String, bool) -> untyped
|
27
|
+
| (String) -> untyped
|
28
|
+
|
29
|
+
def nextstate: (Symbol) -> void
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module HTTPX::Transcoder
|
2
|
+
type form_value = string
|
3
|
+
|
4
|
+
type form_nested_value = form_value | _ToAry[form_value] | _ToHash[string, form_value]
|
5
|
+
|
6
|
+
type urlencoded_input = Enumerable[[string, form_nested_value], untyped]
|
7
|
+
|
8
|
+
module Form
|
9
|
+
def self?.encode: (urlencoded_input form) -> Encoder
|
10
|
+
|
11
|
+
class Encoder
|
12
|
+
include _Encoder
|
13
|
+
include _ToS
|
14
|
+
|
15
|
+
def content_type: () -> String
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def initialize: (urlencoded_input form) -> untyped
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module HTTPX::Transcoder
|
2
|
+
module JSON
|
3
|
+
def self?.encode: (_ToJson json) -> Encoder
|
4
|
+
|
5
|
+
class Encoder
|
6
|
+
include _Encoder
|
7
|
+
include _ToS
|
8
|
+
|
9
|
+
def content_type: () -> String
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
def initialize: (_ToJson json) -> untyped
|
14
|
+
end
|
15
|
+
end
|
16
|
+
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.11.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tiago Cardoso
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http-2-next
|
@@ -38,40 +38,6 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: http-cookie
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '1.0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '1.0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: http-form_data
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 2.0.0
|
62
|
-
- - "<"
|
63
|
-
- !ruby/object:Gem::Version
|
64
|
-
version: '3'
|
65
|
-
type: :development
|
66
|
-
prerelease: false
|
67
|
-
version_requirements: !ruby/object:Gem::Requirement
|
68
|
-
requirements:
|
69
|
-
- - ">="
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
version: 2.0.0
|
72
|
-
- - "<"
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: '3'
|
75
41
|
description: A client library for making HTTP requests from Ruby.
|
76
42
|
email:
|
77
43
|
- cardoso_tiago@hotmail.com
|
@@ -81,32 +47,37 @@ extra_rdoc_files:
|
|
81
47
|
- LICENSE.txt
|
82
48
|
- README.md
|
83
49
|
- doc/release_notes/0_0_1.md
|
84
|
-
- doc/release_notes/
|
85
|
-
- doc/release_notes/
|
50
|
+
- doc/release_notes/0_0_2.md
|
51
|
+
- doc/release_notes/0_0_3.md
|
86
52
|
- doc/release_notes/0_0_4.md
|
87
|
-
- doc/release_notes/
|
88
|
-
- doc/release_notes/
|
89
|
-
- doc/release_notes/
|
90
|
-
- doc/release_notes/
|
91
|
-
- doc/release_notes/
|
92
|
-
- doc/release_notes/
|
93
|
-
- doc/release_notes/
|
94
|
-
- doc/release_notes/
|
95
|
-
- doc/release_notes/
|
96
|
-
- doc/release_notes/
|
97
|
-
- doc/release_notes/
|
53
|
+
- doc/release_notes/0_0_5.md
|
54
|
+
- doc/release_notes/0_10_0.md
|
55
|
+
- doc/release_notes/0_10_1.md
|
56
|
+
- doc/release_notes/0_10_2.md
|
57
|
+
- doc/release_notes/0_11_0.md
|
58
|
+
- doc/release_notes/0_11_1.md
|
59
|
+
- doc/release_notes/0_1_0.md
|
60
|
+
- doc/release_notes/0_2_0.md
|
61
|
+
- doc/release_notes/0_2_1.md
|
62
|
+
- doc/release_notes/0_3_0.md
|
63
|
+
- doc/release_notes/0_3_1.md
|
64
|
+
- doc/release_notes/0_4_0.md
|
98
65
|
- doc/release_notes/0_4_1.md
|
66
|
+
- doc/release_notes/0_5_0.md
|
99
67
|
- doc/release_notes/0_5_1.md
|
100
|
-
- doc/release_notes/
|
101
|
-
- doc/release_notes/
|
68
|
+
- doc/release_notes/0_6_0.md
|
69
|
+
- doc/release_notes/0_6_1.md
|
102
70
|
- doc/release_notes/0_6_2.md
|
71
|
+
- doc/release_notes/0_6_3.md
|
72
|
+
- doc/release_notes/0_6_4.md
|
73
|
+
- doc/release_notes/0_6_5.md
|
74
|
+
- doc/release_notes/0_6_6.md
|
75
|
+
- doc/release_notes/0_6_7.md
|
76
|
+
- doc/release_notes/0_7_0.md
|
103
77
|
- doc/release_notes/0_8_0.md
|
104
|
-
- doc/release_notes/
|
105
|
-
- doc/release_notes/
|
106
|
-
- doc/release_notes/
|
107
|
-
- doc/release_notes/0_0_2.md
|
108
|
-
- doc/release_notes/0_3_1.md
|
109
|
-
- doc/release_notes/0_2_0.md
|
78
|
+
- doc/release_notes/0_8_1.md
|
79
|
+
- doc/release_notes/0_8_2.md
|
80
|
+
- doc/release_notes/0_9_0.md
|
110
81
|
files:
|
111
82
|
- LICENSE.txt
|
112
83
|
- README.md
|
@@ -115,6 +86,11 @@ files:
|
|
115
86
|
- doc/release_notes/0_0_3.md
|
116
87
|
- doc/release_notes/0_0_4.md
|
117
88
|
- doc/release_notes/0_0_5.md
|
89
|
+
- doc/release_notes/0_10_0.md
|
90
|
+
- doc/release_notes/0_10_1.md
|
91
|
+
- doc/release_notes/0_10_2.md
|
92
|
+
- doc/release_notes/0_11_0.md
|
93
|
+
- doc/release_notes/0_11_1.md
|
118
94
|
- doc/release_notes/0_1_0.md
|
119
95
|
- doc/release_notes/0_2_0.md
|
120
96
|
- doc/release_notes/0_2_1.md
|
@@ -138,7 +114,9 @@ files:
|
|
138
114
|
- doc/release_notes/0_8_2.md
|
139
115
|
- doc/release_notes/0_9_0.md
|
140
116
|
- lib/httpx.rb
|
117
|
+
- lib/httpx/adapters/datadog.rb
|
141
118
|
- lib/httpx/adapters/faraday.rb
|
119
|
+
- lib/httpx/adapters/webmock.rb
|
142
120
|
- lib/httpx/altsvc.rb
|
143
121
|
- lib/httpx/buffer.rb
|
144
122
|
- lib/httpx/callbacks.rb
|
@@ -146,6 +124,7 @@ files:
|
|
146
124
|
- lib/httpx/connection.rb
|
147
125
|
- lib/httpx/connection/http1.rb
|
148
126
|
- lib/httpx/connection/http2.rb
|
127
|
+
- lib/httpx/domain_name.rb
|
149
128
|
- lib/httpx/errors.rb
|
150
129
|
- lib/httpx/extensions.rb
|
151
130
|
- lib/httpx/headers.rb
|
@@ -164,11 +143,17 @@ files:
|
|
164
143
|
- lib/httpx/plugins/compression/deflate.rb
|
165
144
|
- lib/httpx/plugins/compression/gzip.rb
|
166
145
|
- lib/httpx/plugins/cookies.rb
|
146
|
+
- lib/httpx/plugins/cookies/cookie.rb
|
147
|
+
- lib/httpx/plugins/cookies/jar.rb
|
148
|
+
- lib/httpx/plugins/cookies/set_cookie_parser.rb
|
167
149
|
- lib/httpx/plugins/digest_authentication.rb
|
168
150
|
- lib/httpx/plugins/expect.rb
|
169
151
|
- lib/httpx/plugins/follow_redirects.rb
|
170
152
|
- lib/httpx/plugins/h2c.rb
|
171
153
|
- lib/httpx/plugins/multipart.rb
|
154
|
+
- lib/httpx/plugins/multipart/encoder.rb
|
155
|
+
- lib/httpx/plugins/multipart/mime_type_detector.rb
|
156
|
+
- lib/httpx/plugins/multipart/part.rb
|
172
157
|
- lib/httpx/plugins/persistent.rb
|
173
158
|
- lib/httpx/plugins/proxy.rb
|
174
159
|
- lib/httpx/plugins/proxy/http.rb
|
@@ -176,6 +161,7 @@ files:
|
|
176
161
|
- lib/httpx/plugins/proxy/socks5.rb
|
177
162
|
- lib/httpx/plugins/proxy/ssh.rb
|
178
163
|
- lib/httpx/plugins/push_promise.rb
|
164
|
+
- lib/httpx/plugins/rate_limiter.rb
|
179
165
|
- lib/httpx/plugins/retries.rb
|
180
166
|
- lib/httpx/plugins/stream.rb
|
181
167
|
- lib/httpx/pool.rb
|
@@ -184,7 +170,6 @@ files:
|
|
184
170
|
- lib/httpx/resolver.rb
|
185
171
|
- lib/httpx/resolver/https.rb
|
186
172
|
- lib/httpx/resolver/native.rb
|
187
|
-
- lib/httpx/resolver/options.rb
|
188
173
|
- lib/httpx/resolver/resolver_mixin.rb
|
189
174
|
- lib/httpx/resolver/system.rb
|
190
175
|
- lib/httpx/response.rb
|
@@ -196,7 +181,62 @@ files:
|
|
196
181
|
- lib/httpx/transcoder/chunker.rb
|
197
182
|
- lib/httpx/transcoder/form.rb
|
198
183
|
- lib/httpx/transcoder/json.rb
|
184
|
+
- lib/httpx/utils.rb
|
199
185
|
- lib/httpx/version.rb
|
186
|
+
- sig/buffer.rbs
|
187
|
+
- sig/callbacks.rbs
|
188
|
+
- sig/chainable.rbs
|
189
|
+
- sig/connection.rbs
|
190
|
+
- sig/connection/http1.rbs
|
191
|
+
- sig/connection/http2.rbs
|
192
|
+
- sig/domain_name.rbs
|
193
|
+
- sig/errors.rbs
|
194
|
+
- sig/headers.rbs
|
195
|
+
- sig/httpx.rbs
|
196
|
+
- sig/loggable.rbs
|
197
|
+
- sig/options.rbs
|
198
|
+
- sig/parser/http1.rbs
|
199
|
+
- sig/plugins/authentication.rbs
|
200
|
+
- sig/plugins/basic_authentication.rbs
|
201
|
+
- sig/plugins/compression.rbs
|
202
|
+
- sig/plugins/compression/brotli.rbs
|
203
|
+
- sig/plugins/compression/deflate.rbs
|
204
|
+
- sig/plugins/compression/gzip.rbs
|
205
|
+
- sig/plugins/cookies.rbs
|
206
|
+
- sig/plugins/cookies/cookie.rbs
|
207
|
+
- sig/plugins/cookies/jar.rbs
|
208
|
+
- sig/plugins/digest_authentication.rbs
|
209
|
+
- sig/plugins/expect.rbs
|
210
|
+
- sig/plugins/follow_redirects.rbs
|
211
|
+
- sig/plugins/h2c.rbs
|
212
|
+
- sig/plugins/multipart.rbs
|
213
|
+
- sig/plugins/persistent.rbs
|
214
|
+
- sig/plugins/proxy.rbs
|
215
|
+
- sig/plugins/proxy/http.rbs
|
216
|
+
- sig/plugins/proxy/socks4.rbs
|
217
|
+
- sig/plugins/proxy/socks5.rbs
|
218
|
+
- sig/plugins/proxy/ssh.rbs
|
219
|
+
- sig/plugins/push_promise.rbs
|
220
|
+
- sig/plugins/rate_limiter.rbs
|
221
|
+
- sig/plugins/retries.rbs
|
222
|
+
- sig/plugins/stream.rbs
|
223
|
+
- sig/pool.rbs
|
224
|
+
- sig/registry.rbs
|
225
|
+
- sig/request.rbs
|
226
|
+
- sig/resolver.rbs
|
227
|
+
- sig/resolver/https.rbs
|
228
|
+
- sig/resolver/native.rbs
|
229
|
+
- sig/resolver/resolver_mixin.rbs
|
230
|
+
- sig/resolver/system.rbs
|
231
|
+
- sig/response.rbs
|
232
|
+
- sig/selector.rbs
|
233
|
+
- sig/session.rbs
|
234
|
+
- sig/timeout.rbs
|
235
|
+
- sig/transcoder.rbs
|
236
|
+
- sig/transcoder/body.rbs
|
237
|
+
- sig/transcoder/chunker.rbs
|
238
|
+
- sig/transcoder/form.rbs
|
239
|
+
- sig/transcoder/json.rbs
|
200
240
|
homepage: https://gitlab.com/honeyryderchuck/httpx
|
201
241
|
licenses:
|
202
242
|
- Apache 2.0
|
@@ -220,7 +260,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
220
260
|
- !ruby/object:Gem::Version
|
221
261
|
version: '0'
|
222
262
|
requirements: []
|
223
|
-
rubygems_version: 3.
|
263
|
+
rubygems_version: 3.2.3
|
224
264
|
signing_key:
|
225
265
|
specification_version: 4
|
226
266
|
summary: HTTPX, to the future, and beyond
|