async-http 0.95.0 → 0.96.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
- checksums.yaml.gz.sig +2 -6
- data/lib/async/http/protocol/http1/finishable.rb +3 -3
- data/lib/async/http/protocol/http2/connection.rb +10 -0
- data/lib/async/http/version.rb +1 -1
- data/lib/traces/provider/async/http/client.rb +1 -0
- data/lib/traces/provider/async/http/protocol/http1/client.rb +1 -0
- data/lib/traces/provider/async/http/protocol/http2/client.rb +1 -0
- data/lib/traces/provider/async/http/server.rb +1 -0
- data/readme.md +8 -8
- data/releases.md +8 -0
- data.tar.gz.sig +0 -0
- metadata +4 -32
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 84a34661bca7f007c6fb80b74101fb59c5689578f5e17076901c976755ceeb50
|
|
4
|
+
data.tar.gz: 3ccd85841ed36c4b1d30e6993c5740992db9f8a30c1c1dbbdcdd1fd6197252f4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2d828bcd131713d846d86d987664fbbd18124363f043efd0824acb974e121703b60f8bb0e2ed4cccd01c7fbbc479c69f63b77bbdf0c498caf4ae609a9795f18d
|
|
7
|
+
data.tar.gz: c06921dbbe22ee735fef89fa1999e3e7a181d21d7d30da93529eff7a590b8f163f99b3ac44b01d1cf310e59dbe7ead8f925a49397f1d6aafae0e0cf37eee0787
|
checksums.yaml.gz.sig
CHANGED
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
z��[6ڄ���\wc��wG��bo��z�I���Sx
|
|
4
|
-
���!_���ei|�k-<r`$�����}j�9�ƅ�p�X|�R_[�$�!����{����v�5��"Cf��z
|
|
5
|
-
�pW��M:6h�ft��@��#��v�i+eY�0�xQ0㻵O7�p�gN�~� �5�[K�͠���ѕ
|
|
6
|
-
>��6��"�sg�R���QGN����H�٧+�������Y`8���uJK�
|
|
1
|
+
��n��&���I�ͤѵH�j�_K}���N�VZ(�6B�m��0�j�Bw�X���{a���OX5�k+�L~�r�`J K�E���#��j�" ���V�f��时d�Dp(C��-s�YwC�i;�H��-Q%!��}
|
|
2
|
+
�������x�_1D�V~T�'�����~�;�q_C��@��!���r�+ArHwͬ/�n���,��e�������ImW6������ܠx��d��B��H]�$�xY0�p��ڱ�)SvlH���d���TԡMĕ�k6]
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# Copyright, 2024, by Samuel Williams.
|
|
5
5
|
|
|
6
6
|
require "protocol/http/body/wrapper"
|
|
7
|
-
require "async/
|
|
7
|
+
require "async/promise"
|
|
8
8
|
|
|
9
9
|
module Async
|
|
10
10
|
module HTTP
|
|
@@ -17,7 +17,7 @@ module Async
|
|
|
17
17
|
def initialize(body)
|
|
18
18
|
super(body)
|
|
19
19
|
|
|
20
|
-
@closed = Async::
|
|
20
|
+
@closed = Async::Promise.new
|
|
21
21
|
@error = nil
|
|
22
22
|
|
|
23
23
|
@reading = false
|
|
@@ -42,7 +42,7 @@ module Async
|
|
|
42
42
|
|
|
43
43
|
unless @closed.resolved?
|
|
44
44
|
@error = error
|
|
45
|
-
@closed.
|
|
45
|
+
@closed.resolve(true)
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
48
|
|
|
@@ -44,6 +44,16 @@ module Async
|
|
|
44
44
|
@write_frame_guard.acquire(&block)
|
|
45
45
|
end
|
|
46
46
|
|
|
47
|
+
# Write a single frame, deferring stop until the frame is written.
|
|
48
|
+
def write_frame(frame)
|
|
49
|
+
Task.current.defer_stop{super}
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Write multiple frames, deferring stop until the frames are written.
|
|
53
|
+
def write_frames
|
|
54
|
+
Task.current.defer_stop{super}
|
|
55
|
+
end
|
|
56
|
+
|
|
47
57
|
# @returns [String] A string representation of this connection.
|
|
48
58
|
def to_s
|
|
49
59
|
"\#<#{self.class} #{@streams.count} active streams>"
|
data/lib/async/http/version.rb
CHANGED
data/readme.md
CHANGED
|
@@ -16,6 +16,14 @@ Please see the [project documentation](https://socketry.github.io/async-http/) f
|
|
|
16
16
|
|
|
17
17
|
Please see the [project releases](https://socketry.github.io/async-http/releases/index) for all releases.
|
|
18
18
|
|
|
19
|
+
### v0.96.0
|
|
20
|
+
|
|
21
|
+
- Made `metrics` and `traces` optional runtime dependencies. Applications that use the providers should depend on the corresponding gem and require the provider explicitly.
|
|
22
|
+
|
|
23
|
+
### v0.95.1
|
|
24
|
+
|
|
25
|
+
- Fix handling of reset stream causing complete connection failure.
|
|
26
|
+
|
|
19
27
|
### v0.95.0
|
|
20
28
|
|
|
21
29
|
- Use `Protocol::HTTP::RefusedError` for safe retry of requests not processed by the server, including non-idempotent methods like PUT.
|
|
@@ -51,14 +59,6 @@ Please see the [project releases](https://socketry.github.io/async-http/releases
|
|
|
51
59
|
|
|
52
60
|
- Don't emit `resource:` keyword argument in traces - it's unsupported by OpenTelemetry.
|
|
53
61
|
|
|
54
|
-
### v0.88.0
|
|
55
|
-
|
|
56
|
-
- [Support custom protocols with options](https://socketry.github.io/async-http/releases/index#support-custom-protocols-with-options)
|
|
57
|
-
|
|
58
|
-
### v0.87.0
|
|
59
|
-
|
|
60
|
-
- [Unify HTTP/1 and HTTP/2 `CONNECT` semantics](https://socketry.github.io/async-http/releases/index#unify-http/1-and-http/2-connect-semantics)
|
|
61
|
-
|
|
62
62
|
## See Also
|
|
63
63
|
|
|
64
64
|
- [benchmark-http](https://github.com/socketry/benchmark-http) — A benchmarking tool to report on web server concurrency.
|
data/releases.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Releases
|
|
2
2
|
|
|
3
|
+
## v0.96.0
|
|
4
|
+
|
|
5
|
+
- Made `metrics` and `traces` optional runtime dependencies. Applications that use the providers should depend on the corresponding gem and require the provider explicitly.
|
|
6
|
+
|
|
7
|
+
## v0.95.1
|
|
8
|
+
|
|
9
|
+
- Fix handling of reset stream causing complete connection failure.
|
|
10
|
+
|
|
3
11
|
## v0.95.0
|
|
4
12
|
|
|
5
13
|
- Use `Protocol::HTTP::RefusedError` for safe retry of requests not processed by the server, including non-idempotent methods like PUT.
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: async-http
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.96.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Samuel Williams
|
|
@@ -68,14 +68,14 @@ dependencies:
|
|
|
68
68
|
requirements:
|
|
69
69
|
- - ">="
|
|
70
70
|
- !ruby/object:Gem::Version
|
|
71
|
-
version: 2.
|
|
71
|
+
version: 2.35.1
|
|
72
72
|
type: :runtime
|
|
73
73
|
prerelease: false
|
|
74
74
|
version_requirements: !ruby/object:Gem::Requirement
|
|
75
75
|
requirements:
|
|
76
76
|
- - ">="
|
|
77
77
|
- !ruby/object:Gem::Version
|
|
78
|
-
version: 2.
|
|
78
|
+
version: 2.35.1
|
|
79
79
|
- !ruby/object:Gem::Dependency
|
|
80
80
|
name: async-pool
|
|
81
81
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -118,20 +118,6 @@ dependencies:
|
|
|
118
118
|
- - "~>"
|
|
119
119
|
- !ruby/object:Gem::Version
|
|
120
120
|
version: '0.6'
|
|
121
|
-
- !ruby/object:Gem::Dependency
|
|
122
|
-
name: metrics
|
|
123
|
-
requirement: !ruby/object:Gem::Requirement
|
|
124
|
-
requirements:
|
|
125
|
-
- - "~>"
|
|
126
|
-
- !ruby/object:Gem::Version
|
|
127
|
-
version: '0.12'
|
|
128
|
-
type: :runtime
|
|
129
|
-
prerelease: false
|
|
130
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
131
|
-
requirements:
|
|
132
|
-
- - "~>"
|
|
133
|
-
- !ruby/object:Gem::Version
|
|
134
|
-
version: '0.12'
|
|
135
121
|
- !ruby/object:Gem::Dependency
|
|
136
122
|
name: protocol-http
|
|
137
123
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -188,20 +174,6 @@ dependencies:
|
|
|
188
174
|
- - "~>"
|
|
189
175
|
- !ruby/object:Gem::Version
|
|
190
176
|
version: '0.2'
|
|
191
|
-
- !ruby/object:Gem::Dependency
|
|
192
|
-
name: traces
|
|
193
|
-
requirement: !ruby/object:Gem::Requirement
|
|
194
|
-
requirements:
|
|
195
|
-
- - "~>"
|
|
196
|
-
- !ruby/object:Gem::Version
|
|
197
|
-
version: '0.10'
|
|
198
|
-
type: :runtime
|
|
199
|
-
prerelease: false
|
|
200
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
201
|
-
requirements:
|
|
202
|
-
- - "~>"
|
|
203
|
-
- !ruby/object:Gem::Version
|
|
204
|
-
version: '0.10'
|
|
205
177
|
executables: []
|
|
206
178
|
extensions: []
|
|
207
179
|
extra_rdoc_files: []
|
|
@@ -284,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
284
256
|
- !ruby/object:Gem::Version
|
|
285
257
|
version: '0'
|
|
286
258
|
requirements: []
|
|
287
|
-
rubygems_version: 4.0.
|
|
259
|
+
rubygems_version: 4.0.10
|
|
288
260
|
specification_version: 4
|
|
289
261
|
summary: A HTTP client and server library.
|
|
290
262
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|