Skip to content

3.1.3

Latest
Compare
Choose a tag to compare
@Stexxe Stexxe released this 06 May 11:52
· 70 commits to main since this release
ebe93a7

Published 5 May 2025

Improvements

  • Implement toString for staticContentRoute (KTOR-8451)
  • Don't send Authorization header for requests marked with markAsRefreshTokenRequest (KTOR-8107)
  • ByteChannel single-byte operations are slow (KTOR-8412)
  • Receiving multipart without Content-Length is very slow (KTOR-8407)
  • MicrometerMetrics: different path 404s requests can be abused to trigger OOM (KTOR-8276)
  • Compression & Static Content: No Vary Header when serving a compressed resource (KTOR-8326)
  • HttpTimeout: Reference to nonexistent INFINITE_TIMEOUT_MS in the exception message (KTOR-8358)

Bugfixes

  • Websockets: Unable to send a frame when ktor-serialization-kotlinx-json-jvm dependency is defined in Maven build (KTOR-7662)
  • OkHttp: Cancelling of SSE request job doesn't cancel the connection (KTOR-8409)
  • OkHttp: Exceptions are not propagated to flow collectors (KTOR-7947)
  • OOM in CountedByteReadChannel while copying from multipart/form-data part channel (KTOR-8317)
  • Apache5: "ProtocolException: OPTIONS request must have Content-Type header" is thrown when body isn't set (KTOR-8318)
  • Netty/Websockets: server processes hanging in CLOSE_WAIT state after many concurrent requests (KTOR-7965)
  • Update JTE to the version supporting Kotlin 2.1.0 (KTOR-8030)