Skip to content

Commit e4a25a3

Browse files
committed
Updated release notes for HttpCore 5.5-alpha1 release
1 parent 85c87b5 commit e4a25a3

1 file changed

Lines changed: 204 additions & 0 deletions

File tree

RELEASE_NOTES.txt

Lines changed: 204 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,207 @@
1+
Release 5.5-alpha1
2+
------------------
3+
4+
This is the first ALPHA release in the 5.5 release series that improves
5+
performance and robustness of connection pool implementations, further
6+
improves HTTP/2 specification conformance and introduces Jackson 2 JSON
7+
message bindings.
8+
9+
This release also includes all the fixes from the stable 5.4 branch.
10+
11+
12+
Notable changes and features included in the 5.5 series:
13+
14+
* Connection pool implementation improvements.
15+
16+
* HTTP message stream APIs and support for HTTP/2 message stream timeout.
17+
18+
* SSLContexts to respect system properties by default.
19+
20+
* Cap pending HTTP/2 request commands per connection.
21+
22+
* HPACK RFC 7540 / RFC 7541 / HTTP/2 RFC 9113 conformance improvements.
23+
24+
25+
Compatibility notes:
26+
27+
* HTTP requesters and servers take into account SSL/TLS system properties
28+
by default.
29+
30+
31+
Change Log
32+
-------------------
33+
34+
* Validate HEADERS priority self-dependency (#652).
35+
Contributed by Arturo Bernal <abernal at apache.org>
36+
37+
* HPACK: Fix HPACK table size update sequencing (#651).
38+
Contributed by Arturo Bernal <abernal at apache.org>
39+
40+
* Fix lease timeout race to prevent pool entry leak (#649).
41+
Contributed by Arturo Bernal <abernal at apache.org>
42+
43+
* LaxConnPool: Deallocate pool entry upon discarding expired connection.
44+
Contributed by Ryan Schmitt <rschmitt at apache.org>
45+
46+
* HTTP/2 RFC 9113 conformance2: ignore unused PADDED flag on non-padded
47+
frames (#640).
48+
Contributed by Arturo Bernal <abernal at apache.org>
49+
50+
* HTTP/2: enforce strict 3-digit :status pseudo-header (#639).
51+
Contributed by Arturo Bernal <abernal at apache.org>
52+
53+
* HTTP/2 RFC 9113 conformance: Enforce RST_STREAM payload length regardless
54+
of stream existence (#638).
55+
Contributed by Arturo Bernal <abernal at apache.org>
56+
57+
* HTTP/2: validate pseudo-headers in inbound request trailers (#637).
58+
Contributed by Arturo Bernal <abernal at apache.org>
59+
60+
* HTTP/2 RFC 9113 conformance: require peer SETTINGS as first frame (#636).
61+
Contributed by Arturo Bernal <abernal at apache.org>
62+
63+
* HTTP/2: validate HEADERS PRIORITY payload length (#635).
64+
Contributed by Arturo Bernal <abernal at apache.org>
65+
66+
* HTTP/2 RFC 9113 conformance: handle zero WINDOW_UPDATE increment (#634).
67+
Contributed by Arturo Bernal <abernal at apache.org>
68+
69+
* HTTP/2: ignore reserved MSB in 31-bit fields (#633).
70+
Contributed by Arturo Bernal <abernal at apache.org>
71+
72+
* HTTP/2: tighten SETTINGS validation (#632).
73+
Contributed by Arturo Bernal <abernal at apache.org>
74+
75+
* Enforce ALPN when forcing HTTP/2 over TLS (#631).
76+
Contributed by Arturo Bernal <abernal at apache.org>
77+
78+
* HTTP/2: fix frame header parsing and validate SETTINGS ACK length (#628).
79+
Contributed by Arturo Bernal <abernal at apache.org>
80+
81+
* HPACK: reject integer decoding overflow (#627).
82+
Contributed by Arturo Bernal <abernal at apache.org>
83+
84+
* HPACK RFC 7541 conformance: enforce table size update sequencing (#626).
85+
Contributed by Arturo Bernal <abernal at apache.org>
86+
87+
* HPACK RFC 7540 / RFC 9113 conformance: HPACK decode failures must be treated
88+
as connection errors (COMPRESSION_ERROR) (#625).
89+
Contributed by Arturo Bernal <abernal at apache.org>
90+
91+
* Handle unknown HTTP/2 frame types gracefully (#624)
92+
Contributed by Arturo Bernal <abernal at apache.org>
93+
94+
* HTTP/2: Reject pseudo-headers in inbound and outbound trailers (#623)
95+
Contributed by Arturo Bernal <abernal at apache.org>
96+
97+
* Validate all TE header instances for HTTP/2 request conformance. (#620)
98+
Contributed by Arturo Bernal <abernal at apache.org>
99+
100+
* HTTP/2: validate Host vs `:authority` strictly (#622)
101+
Contributed by Arturo Bernal <abernal at apache.org>
102+
103+
* HTTP/2 RFC 9113 conformance: Reject Proxy-Connection header in HTTP/2 response
104+
conformance (#621).
105+
Contributed by Arturo Bernal <abernal at apache.org>
106+
107+
* HTTP/2 RFC 9113 conformance: Reject duplicate :authority pseudo-header in HTTP/2
108+
request conversion (#619).
109+
Contributed by Arturo Bernal <abernal at apache.org>
110+
111+
* HTTPCORE-794: Fix parseLenient to ignore illegal charset names (#618).
112+
Contributed by Arturo Bernal <abernal at apache.org>
113+
114+
* Provide a more flexible CharSequenceAsyncEntityConsumer in addition to
115+
StringAsyncEntityConsumer.
116+
Contributed by Oleg Kalnichevski <olegk@apache.org>
117+
118+
* Server and client-side async execution pipeline assemblers.
119+
Contributed by Oleg Kalnichevski <olegk@apache.org>
120+
121+
* Handle `:protocol` for extended CONNECT (#613).
122+
Contributed by Arturo Bernal <abernal at apache.org>
123+
124+
* `Message` class to use Java record naming convention.
125+
Contributed by Oleg Kalnichevski <olegk@apache.org>
126+
127+
* Jackson 2 based JSON message bindings.
128+
Contributed by Oleg Kalnichevski <olegk@apache.org>
129+
130+
* LaxConnPool: Prevent integer overflow in #getTotalStats.
131+
Contributed by Ryan Schmitt <rschmitt at apache.org>
132+
133+
* LaxConnPool: Loop over expired connections and discard expired ones as they
134+
are discovered, instead of returning them.
135+
Contributed by Ryan Schmitt <rschmitt at apache.org>
136+
137+
* StrictConnPool: Fix FIFO implementation.
138+
Contributed by Ryan Schmitt <rschmitt at apache.org>
139+
140+
* SSLContexts: Respect system properties by default.
141+
Contributed by Ryan Schmitt <rschmitt at apache.org>
142+
143+
* HTTP/2: per-stream idle timeout (#581).
144+
Contributed by Arturo Bernal <abernal at apache.org>
145+
146+
* Bug fix: Corrected exception propagation in protocol negotiators' exception
147+
handling code.
148+
Contributed by Oleg Kalnichevski <olegk@apache.org>
149+
150+
* Fix SOCKS handshake to fail on EOF (#604).
151+
Contributed by Arturo Bernal <abernal at apache.org>
152+
153+
* Bug fix: Handle CancelledKeyException thrown by the abort method of the H2 stream.
154+
Contributed by Oleg Kalnichevski <olegk@apache.org>
155+
156+
* ComplexCancellable: Fix race condition.
157+
Contributed by Ryan Schmitt <rschmitt at apache.org>
158+
159+
* Add RFC 7639 canonical percent codec for ALPN protocol identifiers (#596).
160+
Contributed by Arturo Bernal <abernal at apache.org>
161+
162+
* Cap pending HTTP/2 request commands per connection (#592).
163+
Contributed by Arturo Bernal <abernal at apache.org>
164+
165+
* Disable settings_push_enable on the H2Config for H2ServerBootstrap (#591).
166+
Contributed by CoolTomatos <24667806+CoolTomatos at users.noreply.github.com>
167+
168+
* MonitoringResponseOutOfOrderStrategy: Always perform a blocking read to check
169+
for data.
170+
Contributed by Ryan Schmitt <rschmitt at apache.org>
171+
172+
* Bug fix: corrected exception propagation to individual H2 streams in case of
173+
an unexpected error with the H2 connection.
174+
Contributed by Oleg Kalnichevski <olegk@apache.org>
175+
176+
* Added timeout setter to `StreamControl`.
177+
Contributed by Oleg Kalnichevski <olegk@apache.org>
178+
179+
* Add ConnPoolListener support to RouteSegmentedConnPool (#586).
180+
Contributed by Arturo Bernal <abernal at apache.org>
181+
182+
* Deflake RouteSegmentedConnPool slow disposal timing (#584).
183+
Contributed by Arturo Bernal <abernal at apache.org>
184+
185+
* Improved HTTP message stream control API.
186+
Contributed by Oleg Kalnichevski <olegk@apache.org>
187+
188+
* Fix validation of 0/8 IPv4 addresses.
189+
Contributed by Ryan Schmitt <rschmitt at apache.org>
190+
191+
* Ensure the connection is closed immediately on socket timeout.
192+
Contributed by Alexis Le Dantec <aledantec at palantir.com>
193+
194+
* RFC6874 zone IDs with minimal parsing Bracket/encode only.
195+
Contributed by Arturo Bernal <abernal at apache.org>
196+
197+
* Accept leading zeros in IPv4-mapped IPv6 (#568).
198+
Contributed by Arturo Bernal <abernal at apache.org>
199+
200+
* Relax pattern for mapped IPv4 octets (≤255); standalone IPv4 rules unchanged.
201+
Contributed by Arturo Bernal <abernal at apache.org>
202+
203+
204+
1205
Release 5.4-alpha1
2206
------------------
3207

0 commit comments

Comments
 (0)