http-2-next 0.2.6 → 0.3.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.
@@ -0,0 +1,12 @@
1
+ module HTTP2Next
2
+ class Server < Connection
3
+
4
+ def upgrade: (String settings, Enumerable[header_pair] headers, String body) -> void
5
+
6
+ def origin_set=: (Array[_ToS]) -> void
7
+
8
+ private
9
+
10
+ def promise: (Stream parent, Enumerable[header_pair] headers, Array[Symbol] flags) { (Stream) -> void } -> void
11
+ end
12
+ end
@@ -0,0 +1,77 @@
1
+ module HTTP2Next
2
+ class Stream
3
+ include FlowBuffer
4
+ include Emitter
5
+
6
+ attr_reader id: Integer
7
+ attr_reader state: Symbol
8
+ attr_reader parent: Stream?
9
+ attr_reader weight: Integer
10
+ attr_reader dependency: Integer
11
+ attr_reader remote_window: Integer
12
+ attr_reader local_window: Integer
13
+ attr_reader closed: Symbol?
14
+
15
+ alias window local_window
16
+
17
+ def closed?: () -> bool
18
+
19
+ def receive: (frame) -> void
20
+
21
+ alias << receive
22
+
23
+ def verify_trailers: (frame) -> void
24
+
25
+ def calculate_content_length: (Integer?) -> void
26
+
27
+ def send: (frame) -> void
28
+
29
+ def headers: (Enumerable[header_pair] headers, ?end_headers: bool, ?end_stream: bool) -> void
30
+
31
+ def promise: (Enumerable[header_pair] headers, ?end_headers: bool) { (Stream) -> void } -> void
32
+
33
+ def reprioritize: (?weight: Integer, ?dependency: Integer, ?exclusive: bool) -> void
34
+
35
+ def data: (String payload, ?end_stream: bool) -> void
36
+
37
+ def chunk_data: (String payload, Integer max_size) { (String) -> void } -> String
38
+
39
+ def close: (Symbol error) -> void
40
+ | () -> void
41
+
42
+ def cancel: () -> void
43
+
44
+ def refuse: () -> void
45
+
46
+ def window_update: (Integer increment) -> void
47
+
48
+ private
49
+
50
+ def initialize: (
51
+ connection: Connection,
52
+ id: Integer,
53
+ ?weight: Integer,
54
+ ?dependency: Integer,
55
+ ?exclusive: bool,
56
+ ?parent: Stream?,
57
+ ?state: Symbol
58
+ ) -> untyped
59
+
60
+ def transition: (frame, bool sending) -> void
61
+
62
+ def event: (Symbol newstate) -> void
63
+
64
+ def complete_transition: (frame) -> void
65
+
66
+ def process_priority: (frame) -> void
67
+
68
+ def end_frame?: () -> bool
69
+
70
+ def stream_error: (Symbol error, ?msg: String?) -> void
71
+ | () -> void
72
+
73
+ alias error stream_error
74
+
75
+ def manage_state: (frame) { () -> void } -> void
76
+ end
77
+ end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: http-2-next
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tiago Cardoso
8
8
  - Ilya Grigorik
9
9
  - Kaoru Maeda
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-03-15 00:00:00.000000000 Z
13
+ date: 2020-12-09 00:00:00.000000000 Z
14
14
  dependencies: []
15
15
  description: Pure-ruby HTTP 2.0 protocol implementation
16
16
  email:
@@ -23,24 +23,42 @@ files:
23
23
  - lib/http/2/next.rb
24
24
  - lib/http/2/next/buffer.rb
25
25
  - lib/http/2/next/client.rb
26
- - lib/http/2/next/compressor.rb
27
26
  - lib/http/2/next/connection.rb
28
27
  - lib/http/2/next/emitter.rb
29
28
  - lib/http/2/next/error.rb
30
29
  - lib/http/2/next/extensions.rb
31
30
  - lib/http/2/next/flow_buffer.rb
32
31
  - lib/http/2/next/framer.rb
33
- - lib/http/2/next/huffman.rb
34
- - lib/http/2/next/huffman_statemachine.rb
32
+ - lib/http/2/next/header.rb
33
+ - lib/http/2/next/header/compressor.rb
34
+ - lib/http/2/next/header/decompressor.rb
35
+ - lib/http/2/next/header/encoding_context.rb
36
+ - lib/http/2/next/header/huffman.rb
37
+ - lib/http/2/next/header/huffman_statemachine.rb
35
38
  - lib/http/2/next/server.rb
36
39
  - lib/http/2/next/stream.rb
37
40
  - lib/http/2/next/version.rb
38
41
  - lib/tasks/generate_huffman_table.rb
42
+ - sig/buffer.rbs
43
+ - sig/client.rbs
44
+ - sig/connection.rbs
45
+ - sig/emitter.rbs
46
+ - sig/flow_buffer.rbs
47
+ - sig/frame_buffer.rbs
48
+ - sig/framer.rbs
49
+ - sig/header.rbs
50
+ - sig/header/compressor.rbs
51
+ - sig/header/decompressor.rbs
52
+ - sig/header/encoding_context.rbs
53
+ - sig/header/huffman.rbs
54
+ - sig/next.rbs
55
+ - sig/server.rbs
56
+ - sig/stream.rbs
39
57
  homepage: https://gitlab.com/honeyryderchuck/http-2-next
40
58
  licenses:
41
59
  - MIT
42
60
  metadata: {}
43
- post_install_message:
61
+ post_install_message:
44
62
  rdoc_options: []
45
63
  require_paths:
46
64
  - lib
@@ -55,8 +73,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
55
73
  - !ruby/object:Gem::Version
56
74
  version: '0'
57
75
  requirements: []
58
- rubygems_version: 3.1.2
59
- signing_key:
76
+ rubygems_version: 3.1.4
77
+ signing_key:
60
78
  specification_version: 4
61
79
  summary: Pure-ruby HTTP 2.0 protocol implementation
62
80
  test_files: []