Skip to content

Commit be9b366

Browse files
Update historical release notes.
1 parent 4594793 commit be9b366

File tree

1 file changed

+157
-0
lines changed

1 file changed

+157
-0
lines changed

releases.md

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,3 +125,160 @@ def call(request)
125125
# ...
126126
end
127127
```
128+
129+
## v0.29.0
130+
131+
- Introduce `rewind` and `rewindable?` methods for body rewinding capabilities.
132+
- Add support for output buffer in `read_partial`/`readpartial` methods.
133+
- `Reader#buffered!` now returns `self` for method chaining.
134+
135+
## v0.28.0
136+
137+
- Add convenient `Reader#buffered!` method to buffer the body.
138+
- Modernize gem infrastructure with RuboCop integration.
139+
140+
## v0.27.0
141+
142+
- Expand stream interface to support `gets`/`puts` operations.
143+
- Skip empty key/value pairs in header processing.
144+
- Prefer lowercase method names for consistency.
145+
- Add `as_json` support to avoid default Rails implementation.
146+
- Use `@callback` to track invocation state.
147+
- Drop `base64` gem dependency.
148+
149+
## v0.26.0
150+
151+
- Prefer connection `close` over `keep-alive` when both are present.
152+
- Add support for `#readpartial` method.
153+
- Add `base64` dependency.
154+
155+
## v0.25.0
156+
157+
- Introduce explicit support for informational responses (1xx status codes).
158+
- Add `cache-control` support for `must-revalidate`, `proxy-revalidate`, and `s-maxage` directives.
159+
- Add `#strong_match?` and `#weak_match?` methods to `ETags` header.
160+
- Fix `last-modified`, `if-modified-since` and `if-unmodified-since` headers to use proper `Date` parsing.
161+
- Improve date/expires header parsing.
162+
- Add tests for `Stream#close_read`.
163+
- Check if input is closed before raising `IOError`.
164+
- Ensure saved files truncate existing file by default.
165+
166+
## v0.24.0
167+
168+
- Add output stream `#<<` as alias for `#write`.
169+
- Add support for `Headers#include?` and `#key?` methods.
170+
- Fix URL unescape functionality.
171+
- Fix cookie parsing issues.
172+
- Fix superclass mismatch in `Protocol::HTTP::Middleware::Builder`.
173+
- Allow trailers without explicit `trailer` header.
174+
- Fix cookie handling and Ruby 2 keyword arguments.
175+
176+
## v0.23.0
177+
178+
- Improve argument handling.
179+
- Rename `path` parameter to `target` to better match RFCs.
180+
181+
## v0.22.0
182+
183+
- Rename `trailers` to `trailer` for consistency.
184+
185+
## v0.21.0
186+
187+
- Streaming interface improvements.
188+
- Rename `Streamable` to `Completable`.
189+
190+
## v0.20.0
191+
192+
- Improve `Authorization` header implementation.
193+
194+
## v0.19.0
195+
196+
- Expose `Body#ready?` for more efficient response handling.
197+
198+
## v0.18.0
199+
200+
- Add `#trailers` method which enumerates trailers without marking tail.
201+
- Don't clear trailers in `#dup`, move functionality to `flatten!`.
202+
- All requests and responses must have mutable headers instance.
203+
204+
## v0.17.0
205+
206+
- Remove deferred headers due to complexity.
207+
- Remove deprecated `Headers#slice!`.
208+
- Add support for static, dynamic and streaming content to `cache-control` model.
209+
- Initial support for trailers.
210+
- Add support for `Response#not_modified?`.
211+
212+
## v0.16.0
213+
214+
- Add support for `if-match` and `if-none-match` headers.
215+
- Revert `Request#target` change for HTTP/2 compatibility.
216+
217+
## v0.15.0
218+
219+
- Prefer `Request#target` over `Request#path`.
220+
- Add body implementation to support HEAD requests.
221+
- Add support for computing digest on buffered body.
222+
- Add `Headers#set(key, value)` to replace existing values.
223+
- Add support for `vary` header.
224+
- Add support for `no-cache` & `no-store` cache directives.
225+
226+
## v0.14.0
227+
228+
- Add `Cacheable` body for buffering and caching responses.
229+
- Add support for `cache-control` header.
230+
231+
## v0.13.0
232+
233+
- Add support for `connection` header.
234+
- Fix handling of keyword arguments.
235+
236+
## v0.12.0
237+
238+
- Improved handling of `cookie` header.
239+
- Add `Headers#clear` method.
240+
241+
## v0.11.0
242+
243+
- Ensure `Body#call` invokes `stream.close` when done.
244+
245+
## v0.10.0
246+
247+
- Allow user to specify size for character devices.
248+
249+
## v0.9.1
250+
251+
- Add support for `authorization` header.
252+
253+
## v0.8.0
254+
255+
- Remove `reason` from `Response`.
256+
257+
## v0.7.0
258+
259+
- Explicit path handling in `Reference#with`.
260+
261+
## v0.6.0
262+
263+
- Initial version with basic HTTP protocol support.
264+
265+
## v0.5.1
266+
267+
- Fix path splitting behavior when path is empty.
268+
- Add `connect` method.
269+
- Support protocol in `[]` constructor.
270+
- Incorporate middleware functionality.
271+
272+
## v0.4.0
273+
274+
- Add `Request`, `Response` and `Body` classes from `async-http`.
275+
- Allow deletion of non-existent header fields.
276+
277+
## v0.3.0
278+
279+
- **Initial release** of `protocol-http` gem.
280+
- Initial implementation of HTTP/2 flow control.
281+
- Support for connection preface and settings frames.
282+
- Initial headers support.
283+
- Implementation of `Connection`, `Client` & `Server` classes.
284+
- HTTP/2 protocol framing and headers.

0 commit comments

Comments
 (0)