News & Articles

Full archive

February 12

2018

Akka HTTP 10.1.0-RC2 Released

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 use delayCancellation 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