protocol-http1 0.17.0 → 0.18.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: 8d4495522852a254da8e7864cc481d08b807df88e786eafe2e40b2a87ac512ae
4
- data.tar.gz: 9f505c0853068baaf3eb4871c10f782b03e9221437254d61d3741b5430ed81ec
3
+ metadata.gz: '0521599a9879c2b6e81ff0a30b70f7279308513521d152e307e6d377b43f4718'
4
+ data.tar.gz: 5b33d64ddc8c51c3cb406df9cb51d0ac470c21d9e80dd62d1c3f9f05483206c5
5
5
  SHA512:
6
- metadata.gz: 8d727d33628c7cb500738fd0bb090ca32d3b2cffad056d4c0d6032bc2b619e6c35f511ce383c9155bbc214e487cce6a5a34a372671c8173a344cd73315946f07
7
- data.tar.gz: 4ab44f130d572da7dd2cacc96ea476aa07b4072fc4489ce5aeaaf0b226b99287d1af37c3e52f4a5ffcb12e5acd0bd1ede3fcb34cb199b0eb554909684a15787f
6
+ metadata.gz: db5b2495e0d15100ec73b0b557b9ee31d38168e83a2aa077af5d4cea2df4861fd8dc79f9a92bfae14de2e7a36483c0ee35e085023d9f8ac1e6c5ded574698609
7
+ data.tar.gz: dbbefab8f69c35b4ee40e7e0951336e646569efbbd911d0296c3ff9d720d794c45d992d69572a26f56bcaafc8adbd291fff0defd053e1548cc65514bb7bf019b
checksums.yaml.gz.sig CHANGED
@@ -1 +1,2 @@
1
- l�'����-�,.d����[,�#y��߽���,�|բ(��F}���q��Co�����a�թH�9
1
+ :_LH7'���p������a>�^k� ���xQ,,-Y�ȭX셙��7���YL%C��I=�����&���l���y���/ubQ�� CU�'x���j��%��ݎ|�r�U.��:�G�z L;������/T+�'In��w�}�������jF�Ȱ�.���֊\��BH}�? B_E��Q��F</rg�5�(����šy��9?%���gB�Z��
2
+ !O��MgQXꚧp�����ߨ�`o����l2U���b�e�h���<8��fgwOU�0����Pҩ�̲+�Y�|����2���^�9�tQ�X}������'�_X�7�xYu�-�ڕUs�̝�BI��J� ^��Z�We&����l����J� n�
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Released under the MIT License.
4
- # Copyright, 2019-2022, by Samuel Williams.
4
+ # Copyright, 2019-2024, by Samuel Williams.
5
5
 
6
6
  require 'protocol/http/body/readable'
7
7
 
@@ -14,15 +14,17 @@ module Protocol
14
14
  # block_size may be removed in the future. It is better managed by stream.
15
15
  def initialize(stream)
16
16
  @stream = stream
17
+ @empty = false
17
18
  end
18
19
 
19
20
  def empty?
20
- @stream.eof? or @stream.closed?
21
+ @empty or @stream.closed?
21
22
  end
22
23
 
23
24
  def close(error = nil)
24
25
  # We can't really do anything in this case except close the connection.
25
26
  @stream.close
27
+ @empty = true
26
28
 
27
29
  super
28
30
  end
@@ -31,6 +33,8 @@ module Protocol
31
33
  def read
32
34
  @stream.readpartial(BLOCK_SIZE)
33
35
  rescue EOFError, IOError
36
+ @empty = true
37
+
34
38
  # I noticed that in some cases you will get EOFError, and in other cases IOError!?
35
39
  return nil
36
40
  end
@@ -45,6 +49,8 @@ module Protocol
45
49
 
46
50
  def join
47
51
  @stream.read
52
+ ensure
53
+ @empty = true
48
54
  end
49
55
 
50
56
  def inspect
@@ -5,6 +5,6 @@
5
5
 
6
6
  module Protocol
7
7
  module HTTP1
8
- VERSION = "0.17.0"
8
+ VERSION = "0.18.0"
9
9
  end
10
10
  end
data/license.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # MIT License
2
2
 
3
- Copyright, 2019-2023, by Samuel Williams.
3
+ Copyright, 2019-2024, by Samuel Williams.
4
4
  Copyright, 2019, by Brian Morearty.
5
5
  Copyright, 2020, by Olle Jonsson.
6
6
  Copyright, 2020, by Bruno Sutic.
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protocol-http1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
@@ -41,7 +41,7 @@ cert_chain:
41
41
  Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
42
42
  voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
43
43
  -----END CERTIFICATE-----
44
- date: 2023-12-26 00:00:00.000000000 Z
44
+ date: 2024-01-26 00:00:00.000000000 Z
45
45
  dependencies:
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: protocol-http
@@ -92,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  - !ruby/object:Gem::Version
93
93
  version: '0'
94
94
  requirements: []
95
- rubygems_version: 3.4.10
95
+ rubygems_version: 3.5.3
96
96
  signing_key:
97
97
  specification_version: 4
98
98
  summary: A low level implementation of the HTTP/1 protocol.
metadata.gz.sig CHANGED
Binary file