|
6 | 6 |
|
7 | 7 | ## v0.34.1 |
8 | 8 |
|
9 | | -- Fix connection state handling to allow idempotent response body closing. |
10 | | -- Add `kisaten` fuzzing integration for improved security testing. |
| 9 | + - Fix connection state handling to allow idempotent response body closing. |
| 10 | + - Add `kisaten` fuzzing integration for improved security testing. |
11 | 11 |
|
12 | 12 | ## v0.34.0 |
13 | 13 |
|
14 | | -- Support empty header values in HTTP parsing for better compatibility. |
| 14 | + - Support empty header values in HTTP parsing for better compatibility. |
15 | 15 |
|
16 | 16 | ## v0.33.0 |
17 | 17 |
|
18 | | -- Support high-byte characters in HTTP headers for improved international compatibility. |
| 18 | + - Support high-byte characters in HTTP headers for improved international compatibility. |
19 | 19 |
|
20 | 20 | ## v0.32.0 |
21 | 21 |
|
22 | | -- Fix header parsing to handle tab characters between values correctly. |
23 | | -- Complete documentation coverage for all public APIs. |
| 22 | + - Fix header parsing to handle tab characters between values correctly. |
| 23 | + - Complete documentation coverage for all public APIs. |
24 | 24 |
|
25 | 25 | ## v0.31.0 |
26 | 26 |
|
27 | | -- Enforce one-way transition for persistent connections to prevent invalid state changes. |
| 27 | + - Enforce one-way transition for persistent connections to prevent invalid state changes. |
28 | 28 |
|
29 | 29 | ## v0.30.0 |
30 | 30 |
|
31 | | -- Make `authority` header optional in HTTP requests for improved flexibility. |
| 31 | + - Make `authority` header optional in HTTP requests for improved flexibility. |
32 | 32 |
|
33 | 33 | ## v0.29.0 |
34 | 34 |
|
35 | | -- Add block/yield interface to `read_request` and `read_response` methods. |
| 35 | + - Add block/yield interface to `read_request` and `read_response` methods. |
36 | 36 |
|
37 | 37 | ## v0.28.1 |
38 | 38 |
|
39 | | -- Fix handling of `nil` lines in HTTP parsing. |
| 39 | + - Fix handling of `nil` lines in HTTP parsing. |
40 | 40 |
|
41 | 41 | ## v0.28.0 |
42 | 42 |
|
43 | | -- Add configurable maximum line length to prevent denial of service attacks. |
| 43 | + - Add configurable maximum line length to prevent denial of service attacks. |
44 | 44 |
|
45 | 45 | ## v0.27.0 |
46 | 46 |
|
47 | | -- Improve error message clarity and debugging information. |
48 | | -- Separate state machine logic from connection callbacks for better architecture. |
| 47 | + - Improve error message clarity and debugging information. |
| 48 | + - Separate state machine logic from connection callbacks for better architecture. |
49 | 49 |
|
50 | 50 | ## v0.26.0 |
51 | 51 |
|
52 | | -- Improve error handling propagation through connection closure. |
| 52 | + - Improve error handling propagation through connection closure. |
53 | 53 |
|
54 | 54 | ## v0.25.0 |
55 | 55 |
|
56 | | -- Fix connection stream handling when closing response bodies. |
57 | | -- Improve connection state management for better reliability. |
| 56 | + - Fix connection stream handling when closing response bodies. |
| 57 | + - Improve connection state management for better reliability. |
58 | 58 |
|
59 | 59 | ## v0.24.0 |
60 | 60 |
|
61 | | -- Add connection state tracking for safer connection reuse. |
| 61 | + - Add connection state tracking for safer connection reuse. |
62 | 62 |
|
63 | 63 | ## v0.23.0 |
64 | 64 |
|
65 | | -- Add `Body#discard` method support for improved resource management. |
| 65 | + - Add `Body#discard` method support for improved resource management. |
66 | 66 |
|
67 | 67 | ## v0.22.0 |
68 | 68 |
|
69 | | -- Improve handling of underlying stream objects for better stability. |
| 69 | + - Improve handling of underlying stream objects for better stability. |
70 | 70 |
|
71 | 71 | ## v0.21.0 |
72 | 72 |
|
73 | | -- Fix connection persistence handling for `1xx` responses and remainder bodies. |
74 | | -- Improve debug output readability by using `.inspect` instead of `.dump`. |
75 | | -- Enhanced request upgrade body handling. |
| 73 | + - Fix connection persistence handling for `1xx` responses and remainder bodies. |
| 74 | + - Improve debug output readability by using `.inspect` instead of `.dump`. |
| 75 | + - Enhanced request upgrade body handling. |
76 | 76 |
|
77 | 77 | ## v0.20.0 |
78 | 78 |
|
79 | | -- Restructure error hierarchy for better error handling consistency. |
| 79 | + - Restructure error hierarchy for better error handling consistency. |
80 | 80 |
|
81 | 81 | ## v0.19.1 |
82 | 82 |
|
83 | | -- Fix stream flushing in `write_body_and_close` for proper connection cleanup. |
| 83 | + - Fix stream flushing in `write_body_and_close` for proper connection cleanup. |
84 | 84 |
|
85 | 85 | ## v0.19.0 |
86 | 86 |
|
87 | | -- Add `#hijacked?` method to check connection hijack status. |
| 87 | + - Add `#hijacked?` method to check connection hijack status. |
88 | 88 |
|
89 | 89 | ## v0.18.0 |
90 | 90 |
|
91 | | -- Add persistent connection handling examples. |
92 | | -- Improve performance by avoiding blocking operations on `eof?` checks. |
| 91 | + - Add persistent connection handling examples. |
| 92 | + - Improve performance by avoiding blocking operations on `eof?` checks. |
93 | 93 |
|
94 | 94 | ## v0.17.0 |
95 | 95 |
|
96 | | -- Add `HTTP/1` client and server example implementations. |
| 96 | + - Add `HTTP/1` client and server example implementations. |
97 | 97 |
|
98 | 98 | ## v0.16.1 |
99 | 99 |
|
100 | | -- Allow external control of persistent connection settings. |
101 | | -- Separate request line and response status line parsing for better maintainability. |
| 100 | + - Allow external control of persistent connection settings. |
| 101 | + - Separate request line and response status line parsing for better maintainability. |
102 | 102 |
|
103 | 103 | ## v0.16.0 |
104 | 104 |
|
105 | | -- Add support for HTTP interim (informational) responses like `103 Early Hints`. |
106 | | -- Improve error messages by including `content_length` in debugging output. |
| 105 | + - Add support for HTTP interim (informational) responses like `103 Early Hints`. |
| 106 | + - Improve error messages by including `content_length` in debugging output. |
107 | 107 |
|
108 | 108 | ## v0.15.1 |
109 | 109 |
|
110 | | -- Add strict validation for `content-length` and chunk length values. |
| 110 | + - Add strict validation for `content-length` and chunk length values. |
111 | 111 |
|
112 | 112 | ## v0.15.0 |
113 | 113 |
|
114 | | -- Migrate test suite to `Sus` testing framework with 100% coverage. |
| 114 | + - Migrate test suite to `Sus` testing framework with 100% coverage. |
115 | 115 |
|
116 | 116 | ## v0.14.6 |
117 | 117 |
|
118 | | -- Handle `IOError` for closed streams gracefully. |
119 | | -- Improve memory management by removing string ownership model. |
120 | | -- Add early hints server example. |
| 118 | + - Handle `IOError` for closed streams gracefully. |
| 119 | + - Improve memory management by removing string ownership model. |
| 120 | + - Add early hints server example. |
121 | 121 |
|
122 | 122 | ## v0.14.4 |
123 | 123 |
|
124 | | -- Improve trailer handling when content length is known in advance. |
| 124 | + - Improve trailer handling when content length is known in advance. |
125 | 125 |
|
126 | 126 | ## v0.14.3 |
127 | 127 |
|
128 | | -- Enhanced trailer support with comprehensive test coverage. |
| 128 | + - Enhanced trailer support with comprehensive test coverage. |
129 | 129 |
|
130 | 130 | ## v0.14.2 |
131 | 131 |
|
132 | | -- Prefer chunked transfer encoding when possible for better streaming performance. |
| 132 | + - Prefer chunked transfer encoding when possible for better streaming performance. |
133 | 133 |
|
134 | 134 | ## v0.14.1 |
135 | 135 |
|
136 | | -- Improve error handling when reading chunk length lines. |
| 136 | + - Improve error handling when reading chunk length lines. |
137 | 137 |
|
138 | 138 | ## v0.14.0 |
139 | 139 |
|
140 | | -- Rename "trailers" to "trailer" for HTTP specification compliance. |
| 140 | + - Rename "trailers" to "trailer" for HTTP specification compliance. |
141 | 141 |
|
142 | 142 | ## v0.13.2 |
143 | 143 |
|
144 | | -- Enable `HTTP/1.1` connections to write fixed-length message bodies. |
| 144 | + - Enable `HTTP/1.1` connections to write fixed-length message bodies. |
145 | 145 |
|
146 | 146 | ## v0.13.1 |
147 | 147 |
|
148 | | -- Fix `HTTP/1` request parsing example in documentation. |
| 148 | + - Fix `HTTP/1` request parsing example in documentation. |
149 | 149 |
|
150 | 150 | ## v0.13.0 |
151 | 151 |
|
152 | | -- Implement pessimistic flushing strategy for better performance. |
153 | | -- Add fuzzing infrastructure for security testing. |
| 152 | + - Implement pessimistic flushing strategy for better performance. |
| 153 | + - Add fuzzing infrastructure for security testing. |
154 | 154 |
|
155 | 155 | ## v0.12.0 |
156 | 156 |
|
157 | | -- Update dependencies to latest compatible versions. |
| 157 | + - Update dependencies to latest compatible versions. |
158 | 158 |
|
159 | 159 | ## v0.11.1 |
160 | 160 |
|
161 | | -- Improve header and trailer processing logic. |
162 | | -- Update behavior to match new `write_body` semantics. |
| 161 | + - Improve header and trailer processing logic. |
| 162 | + - Update behavior to match new `write_body` semantics. |
163 | 163 |
|
164 | 164 | ## v0.11.0 |
165 | 165 |
|
166 | | -- Add comprehensive HTTP trailer support for chunked transfers. |
167 | | -- Simplify chunked encoding implementation. |
| 166 | + - Add comprehensive HTTP trailer support for chunked transfers. |
| 167 | + - Simplify chunked encoding implementation. |
168 | 168 |
|
169 | 169 | ## v0.10.3 |
170 | 170 |
|
171 | | -- Improve handling of `HEAD` requests and responses. |
172 | | -- Better error handling for incomplete fixed-length message bodies. |
| 171 | + - Improve handling of `HEAD` requests and responses. |
| 172 | + - Better error handling for incomplete fixed-length message bodies. |
173 | 173 |
|
174 | 174 | ## v0.10.2 |
175 | 175 |
|
176 | | -- Add RFC-compliant header validation during read and write operations. |
177 | | -- Improve performance with `frozen_string_literals: true`. |
| 176 | + - Add RFC-compliant header validation during read and write operations. |
| 177 | + - Improve performance with `frozen_string_literals: true`. |
178 | 178 |
|
179 | 179 | ## v0.10.1 |
180 | 180 |
|
181 | | -- Drop support for Ruby 2.3 (end of life). |
182 | | -- Validate that response header values don't contain `CR` or `LF` characters. |
| 181 | + - Drop support for Ruby 2.3 (end of life). |
| 182 | + - Validate that response header values don't contain `CR` or `LF` characters. |
183 | 183 |
|
184 | 184 | ## v0.10.0 |
185 | 185 |
|
186 | | -- Parse HTTP `connection` header values as case-insensitive per RFC specification. |
| 186 | + - Parse HTTP `connection` header values as case-insensitive per RFC specification. |
187 | 187 |
|
188 | 188 | ## v0.9.0 |
189 | 189 |
|
190 | | -- Enhanced `Remainder` body implementation with comprehensive test coverage. |
191 | | -- Improve HTTP `CONNECT` method handling for both client and server. |
192 | | -- Improve performance by removing array allocation in method arguments. |
| 190 | + - Enhanced `Remainder` body implementation with comprehensive test coverage. |
| 191 | + - Improve HTTP `CONNECT` method handling for both client and server. |
| 192 | + - Improve performance by removing array allocation in method arguments. |
193 | 193 |
|
194 | 194 | ## v0.8.3 |
195 | 195 |
|
196 | | -- Restore Ruby 2.3 compatibility using monkey patches. |
197 | | -- Enhanced test suite with improved memory and file handling utilities. |
| 196 | + - Restore Ruby 2.3 compatibility using monkey patches. |
| 197 | + - Enhanced test suite with improved memory and file handling utilities. |
198 | 198 |
|
199 | 199 | ## v0.8.2 |
200 | 200 |
|
201 | | -- Simplify HTTP request line validation logic. |
| 201 | + - Simplify HTTP request line validation logic. |
202 | 202 |
|
203 | 203 | ## v0.8.1 |
204 | 204 |
|
205 | | -- Improve error handling and recovery for malformed HTTP requests. |
| 205 | + - Improve error handling and recovery for malformed HTTP requests. |
206 | 206 |
|
207 | 207 | ## v0.8.0 |
208 | 208 |
|
209 | | -- Add automatic HTTP reason phrase generation based on status codes. |
| 209 | + - Add automatic HTTP reason phrase generation based on status codes. |
210 | 210 |
|
211 | 211 | ## v0.7.0 |
212 | 212 |
|
213 | | -- Enhanced connection hijacking support for pooled connections. |
| 213 | + - Enhanced connection hijacking support for pooled connections. |
214 | 214 |
|
215 | 215 | ## v0.6.0 |
216 | 216 |
|
217 | | -- Adopt `Protocol::HTTP` Body abstractions for better consistency. |
218 | | -- Require callers to handle hijacking for `HTTP/1` protocol upgrades. |
219 | | -- Add flexible request/response body and upgrade handling. |
220 | | -- Fix WebSocket compatibility issues with Safari browser. |
| 217 | + - Adopt `Protocol::HTTP` Body abstractions for better consistency. |
| 218 | + - Require callers to handle hijacking for `HTTP/1` protocol upgrades. |
| 219 | + - Add flexible request/response body and upgrade handling. |
| 220 | + - Fix WebSocket compatibility issues with Safari browser. |
221 | 221 |
|
222 | 222 | ## v0.5.0 |
223 | 223 |
|
224 | | -- Return `nil` when unable to read HTTP request line (connection closed). |
| 224 | + - Return `nil` when unable to read HTTP request line (connection closed). |
225 | 225 |
|
226 | 226 | ## v0.4.1 |
227 | 227 |
|
228 | | -- Ensure output streams are properly closed within accept blocks. |
| 228 | + - Ensure output streams are properly closed within accept blocks. |
229 | 229 |
|
230 | 230 | ## v0.4.0 |
231 | 231 |
|
232 | | -- Improve handling of HTTP upgrade request and response message bodies. |
| 232 | + - Improve handling of HTTP upgrade request and response message bodies. |
233 | 233 |
|
234 | 234 | ## v0.3.0 |
235 | 235 |
|
236 | | -- Enhanced support for partial connection hijacking and protocol upgrades. |
| 236 | + - Enhanced support for partial connection hijacking and protocol upgrades. |
237 | 237 |
|
238 | 238 | ## v0.2.0 |
239 | 239 |
|
240 | | -- Improve error handling throughout the codebase. |
| 240 | + - Improve error handling throughout the codebase. |
241 | 241 |
|
242 | 242 | ## v0.1.0 |
243 | 243 |
|
244 | | -- Initial public release of `Protocol::HTTP1`. |
245 | | -- Low-level `HTTP/1.0` and `HTTP/1.1` protocol implementation. |
246 | | -- Support for persistent connections, chunked transfer encoding, and connection upgrades. |
| 244 | + - Initial public release of `Protocol::HTTP1`. |
| 245 | + - Low-level `HTTP/1.0` and `HTTP/1.1` protocol implementation. |
| 246 | + - Support for persistent connections, chunked transfer encoding, and connection upgrades. |
0 commit comments