Dear hakkers,
we are happy to announce Akka Http 10.1.0-RC2, the second release candidate for the upcoming Akka HTTP 10.1.0 release. We focused on stabilizing the new client connection pool. Over the last month our test suite caught lots of edge cases that were fixed for this release. Also, we improved logging output for the new pool.
We also merged a lot of small (but valuable!) contributions.
Please try out the new release candidate, especially for client usages, so that we gain confidence for releasing the final release.
Note, that OSGI support was removed from the build starting with 10.1.0-RC1 because the sbt OSGI plugin once again broke the release process. If you care for OSGI support of Akka HTTP binaries, please step up to reestablish and maintain Akka Http’s OSGI support.
List of changes
Improvements
akka-http-core
- Add HTTP status code
421
(#1749) - Add HTTP status code
103
(#1803) - Add
Uri.Path
?/
operator #1793 (#1794) - Add
UserAgent
header parse Java Api (#1807) - Optimization: Avoid creation of async callback per request in RequestTimeoutStage (#1848)
- Add
application/grpc+proto
content type / media type (#1844) - LogByteStringTools now logs errors on debug log (it’s a debug feature after all) (#1780)
- Suggest valid max-open-requests values on config error (#1806)
- Log the timed out request on server (#1813)
- Be more lenient to allow trailing whitespace after chunk size (#1812)
- In
Http().serverLayer
usedelayCancellation
to make behavior consistent with other server entry points (#1822) - Add
HttpMessage.withProtocol
overload to return Scala type (#1730)
akka-http2-support
- Add
Tls-session-info
header for http/2 (#1432)
akka-http
- Add Java onSuccess overload to take a strict value (#1821)
Infrastructure
- Lots of small documentation fixes
- Use sbt-header to manage copyright headers
- Introduce
WithLogCapturing
trait for suppressing log output for successful tests which allows more aggressive logging by default (which will be shown only for failures) - Fix search on documentation pages to return only one version of each page
- Disable parallel testing on Jenkins to reduce spurious failures
Bug Fixes
akka-http-core
- New client pool: Fix double registration for dispatch (#1726)
- New client pool: Automatically close connection when slot state -> Unconnected (#1724)
- New client pool: Make sure that failed and retryable requests are re-dispatched immediately (#1735)
- New client pool: Ignore “request entity completed” in state WaitingForResponseDispatch (#1774)
- New client pool: After slot failures remove slot from response dispatching queue (#1775)
- New client pool: Log retried request info (#1781)
- Parse and render token correctly for HttpChallenge and GenericHttpCredentials (#1353)
- Fix utf16 surrogate pair decoding in utf8 encoder (#1760)
- Use
431
status code when header exceeds max length for name or value (#1800) - Fix customMediaTypes disabling predefined media type parsing (#1786)
- TLS should close connection when instructed by stream completion (#380)
Credits
A total of 60 issues were closed since 10.1.0-RC1.
The complete list of closed issues can be found on the 10.1.0-RC2 milestone milestones on GitHub.
For this release we had the help of 23 contributors – thank you all very much!
commits added removed
35 507 215 Johannes Rudolph
13 170 78 Johan Andrén
8 83 32 Arnout Engelen
3 4 4 Konrad `ktoso` Malawski
3 5 10 Josep Prat
3 10 2 Philippus Baalman
3 8 38 Martynas Mickevičius
2 137 76 Korneliusz Rabczak
2 56 11 Denys Zadorozhnyi
1 1 1 satansk
1 4 0 Ayush Mishra
1 5 5 Marcos Pereira
1 48 53 ilke-zilci
1 10 8 Oleksii Tkachuk
1 36 9 Song Kun
1 6 0 Konrad Malawski
1 1421 1146 Jonas Fonseca
1 150 5 aholg
1 1 1 Scott Antipa
1 13 2 Łukasz Krenski
1 6 0 Gergő Törcsvári
1 1 1 PJ Fanning
1 2 0 Aaron Gutierrez
Happy hakking!
– The Akka Team