protocol-http2 0.25.0 → 0.26.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b8f43f3f03b10cd9477abc3b46090c9e8902eda24994ee6b7ded6d5ee801895d
4
- data.tar.gz: f72cb844993482f485cbb713e4c71d08cb1a9b83bef2d9551f9db7e754d7a34b
3
+ metadata.gz: 79326887f1adad2dd75f4d18db606e315f00f67fdc1d402bc301750a4dbd5ffb
4
+ data.tar.gz: 03aa0c871daec5f5cc4a96e6c74b794b1521f1d31aac3e3b3ee51ab5ec6eb4ee
5
5
  SHA512:
6
- metadata.gz: c6b7113982c91dcd97920ce8c44330093c3cd90f2d1623928333e5c5ebbf09358b678452cda940f0645da5a1bbe7f1a1b6dc155344913cdee1dafd14b33f2f75
7
- data.tar.gz: bdae54364a9e64218bb10c20112ffc6b3511098b68c305a06c8789ecabcfe1d62d2954ba1bee0451fea5014313f1d7e0c782dd49127986c632b87b9890195902
6
+ metadata.gz: aa3a73466c2fe93bf092fb225e67a60fa861a6225e2234cc71e620651d8900b6344546cc7aa834bb7ccda6a7bfe62c09c329215bbe7b7abe3661c7a3c9c57baf
7
+ data.tar.gz: 6d22ca63b5db8bb4e08b5dac9c9b19e3949bd148f47c48b786cd51b176ddb9d67d58a961cba51939c6d78572e8338f88b2c38f61f2eb0a61165afff84224cef5
checksums.yaml.gz.sig CHANGED
Binary file
@@ -238,7 +238,7 @@ module Protocol
238
238
  self.close!
239
239
 
240
240
  # Streams above the last stream ID were not processed by the remote peer and are safe to retry (RFC 9113 §6.8).
241
- error = ::Protocol::HTTP::RequestRefusedError.new("GOAWAY: request not processed.")
241
+ error = ::Protocol::HTTP::RefusedError.new("GOAWAY: request not processed.")
242
242
 
243
243
  @streams.each_value do |stream|
244
244
  if stream.id > @remote_stream_id
@@ -250,7 +250,11 @@ module Protocol
250
250
  @connection.delete(@id)
251
251
 
252
252
  if error_code
253
- error = StreamError.new("Stream closed!", error_code)
253
+ if error_code == REFUSED_STREAM
254
+ error = ::Protocol::HTTP::RefusedError.new("Stream refused.")
255
+ else
256
+ error = StreamError.new("Stream closed!", error_code)
257
+ end
254
258
  end
255
259
 
256
260
  self.closed(error)
@@ -7,6 +7,6 @@
7
7
  module Protocol
8
8
  # @namespace
9
9
  module HTTP2
10
- VERSION = "0.25.0"
10
+ VERSION = "0.26.0"
11
11
  end
12
12
  end
data/readme.md CHANGED
@@ -14,6 +14,10 @@ Please see the [project documentation](https://socketry.github.io/protocol-http2
14
14
 
15
15
  Please see the [project releases](https://socketry.github.io/protocol-http2/releases/index) for all releases.
16
16
 
17
+ ### v0.26.0
18
+
19
+ - On RST\_STREAM with REFUSED\_STREAM, close the stream with `Protocol::HTTP::RefusedError` instead of `StreamError`.
20
+
17
21
  ### v0.25.0
18
22
 
19
23
  - On GOAWAY, proactively close unprocessed streams (ID above `last_stream_id`) with `Protocol::HTTP::RequestRefusedError`, enabling safe retry of non-idempotent requests.
@@ -56,11 +60,6 @@ Please see the [project releases](https://socketry.github.io/protocol-http2/rele
56
60
  - Improved window update frame handling and performance optimizations.
57
61
  - Better implementation of `Window#inspect` for debugging.
58
62
 
59
- ### v0.19.2
60
-
61
- - Added traces to framer for better debugging and monitoring capabilities.
62
- - Minor fixes to logging output.
63
-
64
63
  ## See Also
65
64
 
66
65
  - [Async::HTTP](https://github.com/socketry/async-http) - A high-level HTTP client and server implementation.
data/releases.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Releases
2
2
 
3
+ ## v0.26.0
4
+
5
+ - On RST\_STREAM with REFUSED\_STREAM, close the stream with `Protocol::HTTP::RefusedError` instead of `StreamError`.
6
+
3
7
  ## v0.25.0
4
8
 
5
9
  - On GOAWAY, proactively close unprocessed streams (ID above `last_stream_id`) with `Protocol::HTTP::RequestRefusedError`, enabling safe retry of non-idempotent requests.
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protocol-http2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.25.0
4
+ version: 0.26.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
@@ -62,14 +62,14 @@ dependencies:
62
62
  requirements:
63
63
  - - "~>"
64
64
  - !ruby/object:Gem::Version
65
- version: '0.61'
65
+ version: '0.62'
66
66
  type: :runtime
67
67
  prerelease: false
68
68
  version_requirements: !ruby/object:Gem::Requirement
69
69
  requirements:
70
70
  - - "~>"
71
71
  - !ruby/object:Gem::Version
72
- version: '0.61'
72
+ version: '0.62'
73
73
  executables: []
74
74
  extensions: []
75
75
  extra_rdoc_files: []
metadata.gz.sig CHANGED
Binary file