httpx 0.11.3 → 0.14.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/doc/release_notes/0_10_1.md +1 -1
  4. data/doc/release_notes/0_11_1.md +5 -1
  5. data/doc/release_notes/0_12_0.md +55 -0
  6. data/doc/release_notes/0_13_0.md +58 -0
  7. data/doc/release_notes/0_13_1.md +5 -0
  8. data/doc/release_notes/0_13_2.md +9 -0
  9. data/doc/release_notes/0_14_0.md +79 -0
  10. data/lib/httpx.rb +3 -3
  11. data/lib/httpx/adapters/faraday.rb +4 -6
  12. data/lib/httpx/altsvc.rb +1 -0
  13. data/lib/httpx/callbacks.rb +12 -3
  14. data/lib/httpx/chainable.rb +2 -2
  15. data/lib/httpx/connection.rb +92 -37
  16. data/lib/httpx/connection/http1.rb +37 -19
  17. data/lib/httpx/connection/http2.rb +82 -31
  18. data/lib/httpx/headers.rb +1 -1
  19. data/lib/httpx/io.rb +16 -3
  20. data/lib/httpx/io/ssl.rb +35 -24
  21. data/lib/httpx/io/tcp.rb +50 -28
  22. data/lib/httpx/io/tls.rb +218 -0
  23. data/lib/httpx/io/tls/box.rb +365 -0
  24. data/lib/httpx/io/tls/context.rb +199 -0
  25. data/lib/httpx/io/tls/ffi.rb +390 -0
  26. data/lib/httpx/io/udp.rb +31 -7
  27. data/lib/httpx/io/unix.rb +27 -12
  28. data/lib/httpx/options.rb +97 -74
  29. data/lib/httpx/parser/http1.rb +4 -4
  30. data/lib/httpx/plugins/aws_sdk_authentication.rb +84 -0
  31. data/lib/httpx/plugins/aws_sigv4.rb +219 -0
  32. data/lib/httpx/plugins/basic_authentication.rb +8 -3
  33. data/lib/httpx/plugins/compression.rb +24 -12
  34. data/lib/httpx/plugins/compression/brotli.rb +10 -7
  35. data/lib/httpx/plugins/compression/deflate.rb +8 -10
  36. data/lib/httpx/plugins/compression/gzip.rb +4 -3
  37. data/lib/httpx/plugins/cookies.rb +3 -7
  38. data/lib/httpx/plugins/digest_authentication.rb +5 -5
  39. data/lib/httpx/plugins/expect.rb +6 -6
  40. data/lib/httpx/plugins/follow_redirects.rb +4 -4
  41. data/lib/httpx/plugins/grpc.rb +247 -0
  42. data/lib/httpx/plugins/grpc/call.rb +62 -0
  43. data/lib/httpx/plugins/grpc/message.rb +85 -0
  44. data/lib/httpx/plugins/h2c.rb +43 -58
  45. data/lib/httpx/plugins/internal_telemetry.rb +93 -0
  46. data/lib/httpx/plugins/multipart.rb +2 -0
  47. data/lib/httpx/plugins/multipart/encoder.rb +4 -9
  48. data/lib/httpx/plugins/multipart/part.rb +1 -1
  49. data/lib/httpx/plugins/proxy.rb +4 -8
  50. data/lib/httpx/plugins/proxy/http.rb +1 -1
  51. data/lib/httpx/plugins/proxy/socks4.rb +8 -0
  52. data/lib/httpx/plugins/proxy/socks5.rb +8 -0
  53. data/lib/httpx/plugins/proxy/ssh.rb +3 -3
  54. data/lib/httpx/plugins/push_promise.rb +3 -2
  55. data/lib/httpx/plugins/rate_limiter.rb +1 -1
  56. data/lib/httpx/plugins/retries.rb +15 -16
  57. data/lib/httpx/plugins/stream.rb +99 -77
  58. data/lib/httpx/plugins/upgrade.rb +84 -0
  59. data/lib/httpx/plugins/upgrade/h2.rb +54 -0
  60. data/lib/httpx/pool.rb +14 -6
  61. data/lib/httpx/registry.rb +1 -7
  62. data/lib/httpx/request.rb +36 -3
  63. data/lib/httpx/resolver/https.rb +3 -11
  64. data/lib/httpx/resolver/native.rb +7 -3
  65. data/lib/httpx/response.rb +18 -7
  66. data/lib/httpx/selector.rb +5 -0
  67. data/lib/httpx/session.rb +41 -8
  68. data/lib/httpx/transcoder/body.rb +3 -5
  69. data/lib/httpx/transcoder/chunker.rb +1 -1
  70. data/lib/httpx/version.rb +1 -1
  71. data/sig/callbacks.rbs +2 -0
  72. data/sig/chainable.rbs +2 -1
  73. data/sig/connection/http1.rbs +7 -2
  74. data/sig/connection/http2.rbs +10 -4
  75. data/sig/options.rbs +16 -22
  76. data/sig/plugins/aws_sdk_authentication.rbs +19 -0
  77. data/sig/plugins/aws_sigv4.rbs +64 -0
  78. data/sig/plugins/basic_authentication.rbs +2 -0
  79. data/sig/plugins/compression.rbs +7 -5
  80. data/sig/plugins/compression/brotli.rbs +1 -1
  81. data/sig/plugins/compression/deflate.rbs +1 -1
  82. data/sig/plugins/compression/gzip.rbs +1 -1
  83. data/sig/plugins/cookies.rbs +0 -1
  84. data/sig/plugins/digest_authentication.rbs +0 -1
  85. data/sig/plugins/expect.rbs +0 -2
  86. data/sig/plugins/follow_redirects.rbs +0 -2
  87. data/sig/plugins/h2c.rbs +5 -10
  88. data/sig/plugins/persistent.rbs +0 -1
  89. data/sig/plugins/proxy.rbs +0 -1
  90. data/sig/plugins/push_promise.rbs +1 -1
  91. data/sig/plugins/retries.rbs +0 -4
  92. data/sig/plugins/stream.rbs +17 -16
  93. data/sig/plugins/upgrade.rbs +23 -0
  94. data/sig/request.rbs +7 -2
  95. data/sig/response.rbs +4 -1
  96. data/sig/session.rbs +4 -0
  97. metadata +56 -33
  98. data/lib/httpx/timeout.rb +0 -67
  99. data/sig/timeout.rbs +0 -29
@@ -0,0 +1,19 @@
1
+ module HTTPX
2
+ module Plugins
3
+ module AwsSdkAuthentication
4
+ class Credentials
5
+ include _SigV4Credentials
6
+ end
7
+
8
+ def self.load_dependencies: (singleton(Session)) -> void
9
+
10
+ def self.configure: (singleton(Session)) -> void
11
+
12
+ def self.extra_options: (Options) -> (Options)
13
+
14
+ module InstanceMethods
15
+ def aws_sdk_authentication: (**untyped) -> instance
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,64 @@
1
+ module HTTPX
2
+ module Plugins
3
+
4
+ interface _SigV4Credentials
5
+ def username: () -> String
6
+ def password: () -> String
7
+ def security_token: () -> String?
8
+ end
9
+
10
+ module AWSSigV4
11
+
12
+ Credentials: _SigV4Credentials
13
+
14
+
15
+ class Signer
16
+
17
+ def sign!: (Request) -> void
18
+
19
+ private
20
+
21
+ def initialize: (
22
+ service: String,
23
+ region: String,
24
+ ?credentials: _SigV4Credentials,
25
+ ?username: String,
26
+ ?password: String,
27
+ ?security_token: String,
28
+ ?provider_prefix: String,
29
+ ?header_provider_field: String,
30
+ ?unsigned_headers: Array[String],
31
+ ?apply_checksum_header: bool,
32
+ ?algorithm: String
33
+ ) -> untyped
34
+
35
+
36
+ def sha256_hexdigest: (bodyIO value) -> String
37
+
38
+ def hmac: (String key, String value) -> String
39
+ def hexhmac: (String key, String value) -> String
40
+ end
41
+
42
+
43
+ interface _SigV4Options
44
+ def sigv4_signer: () -> Signer?
45
+ def sigv4_signer=: (Signer) -> Signer
46
+ end
47
+
48
+ def self.extra_options: (Options) -> (Options & _SigV4Options)
49
+ def self.load_dependencies: (singleton(Session)) -> void
50
+
51
+ module InstanceMethods
52
+ def aws_sigv4_authentication: (**untyped) -> instance
53
+ end
54
+
55
+ module RequestMethods
56
+ def canonical_path: () -> String
57
+
58
+ def canonical_query: () -> String
59
+ end
60
+ end
61
+
62
+ type awsSigV4Session = Session & Plugins::AWSSigV4::InstanceMethods
63
+ end
64
+ end
@@ -3,6 +3,8 @@ module HTTPX
3
3
  module BasicAuthentication
4
4
  def self.load_dependencies: (singleton(Session)) -> void
5
5
 
6
+ def self.configure: (singleton(Session)) -> void
7
+
6
8
  module InstanceMethods
7
9
  def basic_authentication: (string user, string password) -> instance
8
10
  end
@@ -1,13 +1,13 @@
1
1
  module HTTPX
2
2
  module Plugins
3
3
  module Compression
4
- extend Registry[Symbol, Class]
4
+ type encodings_registry = Registry[Symbol, Class]
5
5
 
6
6
  type deflatable = _Reader | _ToS
7
7
 
8
8
  interface _Deflater
9
- def deflate: (deflatable, _Writer, chunk_size: Integer) -> void
10
- | (deflatable, _Writer, chunk_size: Integer) { (String) -> void } -> void
9
+ def deflate: (deflatable, ?_Writer, ?chunk_size: Integer) -> _ToS
10
+ | (deflatable, ?_Writer, ?chunk_size: Integer) { (String) -> void } -> _ToS
11
11
  end
12
12
 
13
13
  interface _Inflater
@@ -16,12 +16,14 @@ module HTTPX
16
16
  def initialize: (Numeric bytesize) -> untyped
17
17
  end
18
18
 
19
- def self.load_dependencies: (singleton(Session)) -> void
19
+ def self.configure: (singleton(Session)) -> void
20
20
 
21
21
  interface _CompressionOptions
22
22
  def compression_threshold_size: () -> _Integer?
23
23
  def compression_threshold_size=: (int) -> int
24
- def with_compression_threshold_size: (int) -> instance
24
+
25
+ def encodings: () -> encodings_registry?
26
+ def encodings=: (encodings_registry) -> encodings_registry
25
27
  end
26
28
 
27
29
  def self.extra_options: (Options) -> (Options & _CompressionOptions)
@@ -3,7 +3,7 @@ module HTTPX
3
3
  module Compression
4
4
  module Brotli
5
5
  def self.load_dependencies: (singleton(Session)) -> void
6
- def self.configure: (*untyped) -> void
6
+ def self.configure: (singleton(Session)) -> void
7
7
 
8
8
  def self?.deflater: () -> _Deflater
9
9
  def self?.decoder: (Numeric bytesize) -> Inflater
@@ -3,7 +3,7 @@ module HTTPX
3
3
  module Compression
4
4
  module Deflate
5
5
  def self.load_dependencies: (singleton(Session)) -> void
6
- def self.configure: (*untyped) -> void
6
+ def self.configure: (singleton(Session)) -> void
7
7
 
8
8
  def self?.deflater: () -> _Deflater
9
9
  def self?.inflater: (Numeric bytesize) -> GZIP::Inflater
@@ -3,7 +3,7 @@ module HTTPX
3
3
  module Compression
4
4
  module GZIP
5
5
  def self.load_dependencies: (singleton(Session)) -> void
6
- def self.configure: (*untyped) -> void
6
+ def self.configure: (singleton(Session)) -> void
7
7
 
8
8
  def self?.deflater: () -> _Deflater
9
9
  def self?.inflater: (Numeric bytesize) -> Inflater
@@ -6,7 +6,6 @@ module HTTPX
6
6
  interface _CookieOptions
7
7
  def cookies: () -> Jar?
8
8
  def cookies=: (jar) -> Jar
9
- def with_cookies: (jar) -> instance
10
9
  end
11
10
 
12
11
  def self.extra_options: (Options) -> (Options & _CookieOptions)
@@ -6,7 +6,6 @@ module HTTPX
6
6
  interface _DigestOptions
7
7
  def digest: () -> Digest?
8
8
  def digest=: (Digest) -> Digest
9
- def with_digest: (Digest) -> instance
10
9
  end
11
10
 
12
11
  def self.extra_options: (Options) -> (Options & _DigestOptions)
@@ -6,11 +6,9 @@ module HTTPX
6
6
  interface _ExpectOptions
7
7
  def expect_timeout: () -> Integer?
8
8
  def expect_timeout=: (int) -> Integer
9
- def with_expect_timeout: (int) -> instance
10
9
 
11
10
  def expect_threshold_size: () -> Integer?
12
11
  def expect_threshold_size=: (int) -> Integer
13
- def with_expect_threshold_size: (int) -> instance
14
12
  end
15
13
 
16
14
  def self.extra_options: (Options) -> (Options & _ExpectOptions)
@@ -9,11 +9,9 @@ module HTTPX
9
9
  interface _FollowRedirectsOptions
10
10
  def max_redirects: () -> Integer?
11
11
  def max_redirects=: (int) -> Integer
12
- def with_max_redirects: (int) -> instance
13
12
 
14
13
  def follow_insecure_redirects: () -> bool?
15
14
  def follow_insecure_redirects=: (bool) -> bool
16
- def with_follow_insecure_redirects: (bool) -> instance
17
15
  end
18
16
 
19
17
  def self.extra_options: (Options) -> (Options & _FollowRedirectsOptions)
data/sig/plugins/h2c.rbs CHANGED
@@ -1,23 +1,18 @@
1
1
  module HTTPX
2
2
  module Plugins
3
3
  module H2C
4
- def self.load_dependencies: (singleton(Session)) -> void
5
-
6
- module InstanceMethods
7
- VALID_H2C_METHODS: Array[Symbol]
8
-
9
- private
4
+ VALID_H2C_VERBS: Array[Symbol]
10
5
 
11
- def valid_h2c_upgrade_request: (Request) -> bool
12
- def valid_h2c_upgrade?: (Request, Response, Options) -> bool
13
- end
6
+ def self.load_dependencies: (*untyped) -> void
7
+ def self.configure: (singleton(Session)) -> void
8
+ def self.call: (Connection, Request, response) -> void
14
9
 
15
10
  class H2CParser < Connection::HTTP2
16
11
  def upgrade: (Request, Response) -> void
17
12
  end
18
13
 
19
14
  module ConnectionMethods
20
- def upgrade: (Request, Response) -> void
15
+ def upgrade_to_h2c: (Request, Response) -> void
21
16
  end
22
17
  end
23
18
 
@@ -6,7 +6,6 @@ module HTTPX
6
6
  interface _PersistentOptions
7
7
  def persistent: () -> bool?
8
8
  def persistent=: (bool) -> bool
9
- def with_persistent: (bool) -> instance
10
9
  end
11
10
 
12
11
  def self.extra_options: (Options) -> (Options & _PersistentOptions)
@@ -28,7 +28,6 @@ module HTTPX
28
28
  interface _ProxyOptions
29
29
  def proxy: () -> proxyParam?
30
30
  def proxy=: (Parameters | _ToHash) -> proxyParam
31
- def with_proxy: (Parameters | _ToHash) -> instance
32
31
  end
33
32
 
34
33
  def self.extra_options: (Options) -> (Options & _ProxyOptions)
@@ -11,7 +11,7 @@ module HTTPX
11
11
  module InstanceMethods
12
12
  private
13
13
 
14
- def promise_headers: () -> Hash[HTTP2Next::Stream, Request]
14
+ def promise_headers: () -> Hash[HTTP2Next::Stream, Request]
15
15
  def __on_promise_request: (Connection::HTTP2, HTTP2Next::Stream, headers_input) -> void
16
16
  def __on_promise_response: (Connection::HTTP2, HTTP2Next::Stream, headers_input) -> void
17
17
  end
@@ -12,19 +12,15 @@ module HTTPX
12
12
  interface _RetriesOptions
13
13
  def retry_after: () -> Numeric?
14
14
  def retry_after=: (Numeric) -> Numeric
15
- def with_retry_after: (Numeric) -> instance
16
15
 
17
16
  def max_retries: () -> Integer?
18
17
  def max_retries=: (int) -> Integer
19
- def with_max_retries: (int) -> instance
20
18
 
21
19
  def retry_change_requests: () -> bool?
22
20
  def retry_change_requests=: (bool) -> bool
23
- def with_retry_change_requests: (bool) -> instance
24
21
 
25
22
  def retry_on: () -> _RetryCallback?
26
23
  def retry_on=: (_RetryCallback) -> _RetryCallback
27
- def with_retry_on: (_RetryCallback) -> instance
28
24
  end
29
25
 
30
26
  def self.extra_options: (Options) -> (Options & _RetriesOptions)
@@ -1,4 +1,21 @@
1
1
  module HTTPX
2
+ class StreamResponse
3
+ include _ToS
4
+
5
+ def each: () { (String) -> void } -> void
6
+ | () -> Enumerable[String]
7
+
8
+ def each_line: () { (String) -> void } -> void
9
+ | () -> Enumerable[String]
10
+
11
+ def on_chunk: (string) -> void
12
+
13
+ private
14
+
15
+ def response: () -> response
16
+ def initialize: (Request, Session, Array[Connection]) -> untyped
17
+ end
18
+
2
19
  module Plugins
3
20
  module Stream
4
21
  module InstanceMethods
@@ -16,22 +33,6 @@ module HTTPX
16
33
  def stream: () -> StreamResponse?
17
34
  end
18
35
 
19
- class StreamResponse
20
- include _ToS
21
-
22
- def each: () { (String) -> void } -> void
23
- | () -> Enumerable[String]
24
-
25
- def each_line: () { (String) -> void } -> void
26
- | () -> Enumerable[String]
27
-
28
- def on_chunk: (string) -> void
29
-
30
- private
31
-
32
- def response: () -> response
33
- def initialize: (Request, Session) -> untyped
34
- end
35
36
  end
36
37
 
37
38
  type sessionStream = Session & Plugins::Stream::InstanceMethods
@@ -0,0 +1,23 @@
1
+ module HTTPX
2
+ module Plugins
3
+ module Upgrade
4
+ type handlers_registry = Registry[Symbol, Class]
5
+
6
+ def self.configure: (singleton(Session)) -> void
7
+
8
+ interface _UpgradeOptions
9
+ def upgrade_handlers: () -> handlers_registry?
10
+ def upgrade_handlers=: (handlers_registry) -> handlers_registry
11
+ end
12
+
13
+ def self.extra_options: (Options) -> (Options & _UpgradeOptions)
14
+
15
+ module ConnectionMethods
16
+ attr_reader upgrade_protocol: Symbol?
17
+ attr_reader hijacked: boolish
18
+
19
+ def hijack_io: () -> void
20
+ end
21
+ end
22
+ end
23
+ end
data/sig/request.rbs CHANGED
@@ -11,7 +11,8 @@ module HTTPX
11
11
  attr_reader body: Body
12
12
  attr_reader state: Symbol
13
13
  attr_reader options: Options
14
- attr_reader response: Response?
14
+ attr_reader response: response?
15
+ attr_reader drain_error: StandardError?
15
16
 
16
17
  def initialize: (verb | String, uri, ?options?) -> untyped
17
18
 
@@ -21,7 +22,7 @@ module HTTPX
21
22
 
22
23
  def scheme: () -> ("http" | "https")
23
24
 
24
- def response=: (Response response) -> void
25
+ def response=: (response) -> void
25
26
 
26
27
  def path: () -> String
27
28
 
@@ -39,6 +40,10 @@ module HTTPX
39
40
 
40
41
  def expects?: () -> boolish
41
42
 
43
+ def trailers: () -> Headers
44
+
45
+ def trailers?: () -> boolish
46
+
42
47
  class Body
43
48
  def initialize: (Headers, Options) -> untyped
44
49
  def each: () { (String) -> void } -> void
data/sig/response.rbs CHANGED
@@ -37,6 +37,8 @@ module HTTPX
37
37
  include _ToStr
38
38
 
39
39
  @state: :idle | :memory | :buffer
40
+ @threshold_size: Integer
41
+ @window_size: Integer
40
42
 
41
43
  def each: () { (String) -> void } -> void
42
44
  | () -> Enumerable[String]
@@ -45,10 +47,11 @@ module HTTPX
45
47
  def empty?: () -> bool
46
48
  def copy_to: (_ToPath | _Writer destination) -> void
47
49
  def close: () -> void
50
+ def closed?: () -> bool
48
51
 
49
52
  private
50
53
 
51
- def initialize: (Response, ?threshold_size: Integer, ?window_size: Integer) -> untyped
54
+ def initialize: (Response, options) -> untyped
52
55
  def rewind: () -> void
53
56
  def transition: () -> void
54
57
  end
data/sig/session.rbs CHANGED
@@ -45,5 +45,9 @@ module HTTPX
45
45
  def build_connection: (URI, Options) -> Connection
46
46
 
47
47
  def send_requests: (*Request, options) -> Array[response]
48
+
49
+ def _send_requests: (Array[Request], options) -> Array[Connection]
50
+
51
+ def receive_requests: (Array[Request], Array[Connection], options) -> Array[response]
48
52
  end
49
53
  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.11.3
4
+ version: 0.14.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: 2021-02-15 00:00:00.000000000 Z
11
+ date: 2021-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: http-2-next
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.2
19
+ version: 0.4.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.2
26
+ version: 0.4.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: timers
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -47,39 +47,44 @@ extra_rdoc_files:
47
47
  - LICENSE.txt
48
48
  - README.md
49
49
  - doc/release_notes/0_0_1.md
50
- - doc/release_notes/0_0_2.md
51
- - doc/release_notes/0_0_3.md
52
- - doc/release_notes/0_0_4.md
50
+ - doc/release_notes/0_1_0.md
53
51
  - 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
52
+ - doc/release_notes/0_0_4.md
53
+ - doc/release_notes/0_14_0.md
54
+ - doc/release_notes/0_6_5.md
55
+ - doc/release_notes/0_13_0.md
56
+ - doc/release_notes/0_6_1.md
59
57
  - doc/release_notes/0_11_2.md
58
+ - doc/release_notes/0_7_0.md
59
+ - doc/release_notes/0_6_0.md
60
+ - doc/release_notes/0_10_2.md
60
61
  - doc/release_notes/0_11_3.md
61
- - doc/release_notes/0_1_0.md
62
- - doc/release_notes/0_2_0.md
63
- - doc/release_notes/0_2_1.md
64
- - doc/release_notes/0_3_0.md
65
- - doc/release_notes/0_3_1.md
66
- - doc/release_notes/0_4_0.md
67
- - doc/release_notes/0_4_1.md
62
+ - doc/release_notes/0_8_2.md
63
+ - doc/release_notes/0_6_4.md
64
+ - doc/release_notes/0_13_1.md
65
+ - doc/release_notes/0_12_0.md
66
+ - doc/release_notes/0_9_0.md
67
+ - doc/release_notes/0_6_3.md
68
+ - doc/release_notes/0_10_1.md
69
+ - doc/release_notes/0_11_0.md
70
+ - doc/release_notes/0_8_1.md
68
71
  - doc/release_notes/0_5_0.md
72
+ - doc/release_notes/0_6_7.md
73
+ - doc/release_notes/0_13_2.md
74
+ - doc/release_notes/0_4_1.md
69
75
  - doc/release_notes/0_5_1.md
70
- - doc/release_notes/0_6_0.md
71
- - doc/release_notes/0_6_1.md
72
- - doc/release_notes/0_6_2.md
73
- - doc/release_notes/0_6_3.md
74
- - doc/release_notes/0_6_4.md
75
- - doc/release_notes/0_6_5.md
76
76
  - doc/release_notes/0_6_6.md
77
- - doc/release_notes/0_6_7.md
78
- - doc/release_notes/0_7_0.md
77
+ - doc/release_notes/0_4_0.md
78
+ - doc/release_notes/0_6_2.md
79
+ - doc/release_notes/0_10_0.md
80
+ - doc/release_notes/0_11_1.md
79
81
  - doc/release_notes/0_8_0.md
80
- - doc/release_notes/0_8_1.md
81
- - doc/release_notes/0_8_2.md
82
- - doc/release_notes/0_9_0.md
82
+ - doc/release_notes/0_3_0.md
83
+ - doc/release_notes/0_2_1.md
84
+ - doc/release_notes/0_0_3.md
85
+ - doc/release_notes/0_0_2.md
86
+ - doc/release_notes/0_3_1.md
87
+ - doc/release_notes/0_2_0.md
83
88
  files:
84
89
  - LICENSE.txt
85
90
  - README.md
@@ -95,6 +100,11 @@ files:
95
100
  - doc/release_notes/0_11_1.md
96
101
  - doc/release_notes/0_11_2.md
97
102
  - doc/release_notes/0_11_3.md
103
+ - doc/release_notes/0_12_0.md
104
+ - doc/release_notes/0_13_0.md
105
+ - doc/release_notes/0_13_1.md
106
+ - doc/release_notes/0_13_2.md
107
+ - doc/release_notes/0_14_0.md
98
108
  - doc/release_notes/0_1_0.md
99
109
  - doc/release_notes/0_2_0.md
100
110
  - doc/release_notes/0_2_1.md
@@ -135,12 +145,18 @@ files:
135
145
  - lib/httpx/io.rb
136
146
  - lib/httpx/io/ssl.rb
137
147
  - lib/httpx/io/tcp.rb
148
+ - lib/httpx/io/tls.rb
149
+ - lib/httpx/io/tls/box.rb
150
+ - lib/httpx/io/tls/context.rb
151
+ - lib/httpx/io/tls/ffi.rb
138
152
  - lib/httpx/io/udp.rb
139
153
  - lib/httpx/io/unix.rb
140
154
  - lib/httpx/loggable.rb
141
155
  - lib/httpx/options.rb
142
156
  - lib/httpx/parser/http1.rb
143
157
  - lib/httpx/plugins/authentication.rb
158
+ - lib/httpx/plugins/aws_sdk_authentication.rb
159
+ - lib/httpx/plugins/aws_sigv4.rb
144
160
  - lib/httpx/plugins/basic_authentication.rb
145
161
  - lib/httpx/plugins/compression.rb
146
162
  - lib/httpx/plugins/compression/brotli.rb
@@ -153,7 +169,11 @@ files:
153
169
  - lib/httpx/plugins/digest_authentication.rb
154
170
  - lib/httpx/plugins/expect.rb
155
171
  - lib/httpx/plugins/follow_redirects.rb
172
+ - lib/httpx/plugins/grpc.rb
173
+ - lib/httpx/plugins/grpc/call.rb
174
+ - lib/httpx/plugins/grpc/message.rb
156
175
  - lib/httpx/plugins/h2c.rb
176
+ - lib/httpx/plugins/internal_telemetry.rb
157
177
  - lib/httpx/plugins/multipart.rb
158
178
  - lib/httpx/plugins/multipart/encoder.rb
159
179
  - lib/httpx/plugins/multipart/mime_type_detector.rb
@@ -168,6 +188,8 @@ files:
168
188
  - lib/httpx/plugins/rate_limiter.rb
169
189
  - lib/httpx/plugins/retries.rb
170
190
  - lib/httpx/plugins/stream.rb
191
+ - lib/httpx/plugins/upgrade.rb
192
+ - lib/httpx/plugins/upgrade/h2.rb
171
193
  - lib/httpx/pool.rb
172
194
  - lib/httpx/registry.rb
173
195
  - lib/httpx/request.rb
@@ -179,7 +201,6 @@ files:
179
201
  - lib/httpx/response.rb
180
202
  - lib/httpx/selector.rb
181
203
  - lib/httpx/session.rb
182
- - lib/httpx/timeout.rb
183
204
  - lib/httpx/transcoder.rb
184
205
  - lib/httpx/transcoder/body.rb
185
206
  - lib/httpx/transcoder/chunker.rb
@@ -201,6 +222,8 @@ files:
201
222
  - sig/options.rbs
202
223
  - sig/parser/http1.rbs
203
224
  - sig/plugins/authentication.rbs
225
+ - sig/plugins/aws_sdk_authentication.rbs
226
+ - sig/plugins/aws_sigv4.rbs
204
227
  - sig/plugins/basic_authentication.rbs
205
228
  - sig/plugins/compression.rbs
206
229
  - sig/plugins/compression/brotli.rbs
@@ -224,6 +247,7 @@ files:
224
247
  - sig/plugins/rate_limiter.rbs
225
248
  - sig/plugins/retries.rbs
226
249
  - sig/plugins/stream.rbs
250
+ - sig/plugins/upgrade.rbs
227
251
  - sig/pool.rbs
228
252
  - sig/registry.rbs
229
253
  - sig/request.rbs
@@ -235,7 +259,6 @@ files:
235
259
  - sig/response.rbs
236
260
  - sig/selector.rbs
237
261
  - sig/session.rbs
238
- - sig/timeout.rbs
239
262
  - sig/transcoder.rbs
240
263
  - sig/transcoder/body.rbs
241
264
  - sig/transcoder/chunker.rbs
@@ -264,7 +287,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
264
287
  - !ruby/object:Gem::Version
265
288
  version: '0'
266
289
  requirements: []
267
- rubygems_version: 3.2.3
290
+ rubygems_version: 3.1.6
268
291
  signing_key:
269
292
  specification_version: 4
270
293
  summary: HTTPX, to the future, and beyond