Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 30, 2025

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change Age Confidence
gradle (source) minor 9.1.0 -> 9.2.1 age confidence
org.yaml:snakeyaml dependencies minor 2.3 -> 2.5 age confidence
io.github.oshai:kotlin-logging-jvm dependencies patch 7.0.0 -> 7.0.13 age confidence
com.squareup.okio:okio dependencies minor 3.9.1 -> 3.16.4 age confidence
io.ktor:ktor-websockets-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-websocket-serialization-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-utils-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-serialization-kotlinx-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-serialization-kotlinx-json-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-serialization-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-network-tls-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-network-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-io-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-http-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-http-cio-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-events-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-websockets-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-okhttp-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-core-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-content-negotiation-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-cio-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
io.ktor:ktor-client-java-jvm dependencies minor 3.0.0 -> 3.3.3 age confidence
dev.kord.cache:cache-map-jvm dependencies minor 0.5.4 -> 0.6.0 age confidence
dev.kord.cache:cache-api-jvm dependencies minor 0.5.4 -> 0.6.0 age confidence
com.github.shynixn.mccoroutine:mccoroutine-fabric-core dependencies minor 2.20.0 -> 2.22.0 age confidence
com.github.shynixn.mccoroutine:mccoroutine-fabric-api dependencies minor 2.20.0 -> 2.22.0 age confidence
dev.kord:kord-rest-jvm dependencies minor 0.15.0 -> 0.17.0 age confidence
dev.kord:kord-gateway-jvm dependencies minor 0.15.0 -> 0.17.0 age confidence
dev.kord:kord-core-jvm dependencies minor 0.15.0 -> 0.17.0 age confidence
dev.kord:kord-common-jvm dependencies minor 0.15.0 -> 0.17.0 age confidence
dev.kord:kord-core dependencies minor 0.15.0 -> 0.17.0 age confidence
org.bspfsystems:yamlconfiguration dependencies patch 3.0.1 -> 3.0.4 age confidence
me.lucko:fabric-permissions-api dependencies minor 0.3.3 -> 0.5.0 age confidence
org.jetbrains.kotlin.jvm (source) plugin minor 2.0.21 -> 2.2.21 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

gradle/gradle (gradle)

v9.2.1: 9.2.1

Compare Source

The Gradle team is excited to announce Gradle 9.2.1.

Here are the highlights of this release:

  • Windows ARM support
  • Improved publishing APIs
  • Better guidance for dependency verification failures

Read the Release Notes

We would like to thank the following community members for their contributions to this release of Gradle:
Adam,
Björn Kautler,
hasunzo,
HYEON,
Hyunjoon Park,
HYUNJUN SON,
Jendrik Johannes,
Kirill Gavrilov,
Madalin Valceleanu,
Martin Bonnin,
Matthew Haughton,
Mikhail Polivakha,
Na Minhyeok,
Philip Wedemann,
Philipp Schneider,
Róbert Papp,
Simon Marquis,
TheGoesen,
Vincent Potucek,
Xin Wang.

Upgrade instructions

Switch your build to use Gradle 9.2.1 by updating your wrapper:

./gradlew wrapper --gradle-version=9.2.1 && ./gradlew wrapper

See the Gradle 9.x upgrade guide to learn about deprecations, breaking changes and other considerations when upgrading.

For Java, Groovy, Kotlin and Android compatibility, see the full compatibility notes.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.

v9.2.0

Compare Source

oshai/kotlin-logging (io.github.oshai:kotlin-logging-jvm)

v7.0.13

Compare Source

What's Changed

Full Changelog: oshai/kotlin-logging@7.0.12...7.0.13

v7.0.12

Compare Source

What's Changed

Full Changelog: oshai/kotlin-logging@7.0.11...7.0.12

v7.0.11

Compare Source

What's Changed

Full Changelog: oshai/kotlin-logging@7.0.10...7.0.11

v7.0.10

Compare Source

Full Changelog: oshai/kotlin-logging@7.0.9...7.0.10

v7.0.7

Compare Source

What's Changed

New Contributors

Full Changelog: oshai/kotlin-logging@7.0.6...7.0.7

v7.0.6

Compare Source

What's Changed

New Contributors

Full Changelog: oshai/kotlin-logging@7.0.5...7.0.6

v7.0.5

Compare Source

What's Changed

Full Changelog: oshai/kotlin-logging@7.0.4...7.0.5

v7.0.4

Compare Source

What's Changed

Full Changelog: oshai/kotlin-logging@7.0.3...7.0.4

v7.0.3

Compare Source

What's Changed

New Contributors

Full Changelog: oshai/kotlin-logging@7.0.0...7.0.1

square/okio (com.squareup.okio:okio)

v3.16.4

2025-11-17

  • Fix: Don't delay triggering timeouts. In 3.16.0 we introduced a regression that caused timeouts
    to fire later than they were supposed to.

v3.16.3

2025-11-14

This release is the same as 3.16.2. We forgot to cherry-pick a commit before we released!

v3.16.2

2025-10-14

  • Fix: okio-assetfilesystem APIs now correctly restored as visible to Kotlin.

v3.16.1

2025-10-09

  • Fix: Don't crash when calling Socket.shutdownOutput() or shutdownInput() on an SSLSocket on
    Android API 21. This method throws an UnsupportedOperationException, so we now catch that and
    close the underlying stream instead.

v3.16.0

2025-07-29

  • Fix: Change Socket.asOkioSocket() to resolve its source InputStream and OutputStream
    eagerly. This will throw a SocketException immediately if the socket isn’t connected.
    This behavior is consistent with our similar APIs, Socket.source() and Socket.sink().

  • Fix: Optimize AsyncTimeout on systems with a very large number of active timeouts. This class
    originally kept active timeouts in a linked list; with this update the internal data structure is
    a binary heap. The old runtime was 𝑂(𝑛²) to activate 𝑛 timeouts; with this optimization the
    runtime is 𝑂(𝑛 log 𝑛).

  • Upgrade: [Kotlin 2.2.0][kotlin_2_2_0].

v3.15.0

2025-07-01

  • Upgrade: [kotlinx-datetime 0.7.0-0.6.x-compat][datetime_0_7_0_compat]. The previous 3.14.0
    release, FakeFileSystem broke binary-compatibility for calls to FakeFileSystem(). This
    restores that compatibility.

  • Breaking: Change FakeFileSystem.clock from a JVM field to a property. This avoids a crash
    running Okio in a Gradle 8.x plugin. This change is not binary-compatible.

v3.14.0

2025-06-28

  • Upgrade: [kotlinx-datetime 0.7.0][datetime_0_7_0]. This impacts the okio-fakefilesystem
    artifact only. This is a binary-incompatible backwards-incompatible change that cannot co-exist
    with previous releases of okio-fakefilesystem! If you observe a NoSuchMethodError calling
    FakeFileSystem.init, update the calling code to this release (or newer) and recompile. We don't
    like imposing backwards-incompatible changes like this on you and do so regretfully.

v3.13.0

2025-06-13

  • New: okio.Socket interface. This is a first step towards low-level streaming networking support
    for Kotlin/Multiplatform. This release provides two JVM-only implementations: asOkioSocket()
    adapts a java.net.Socket to our new interface, and inMemorySocketPair() returns a pair of
    mutually-connected sockets. We also anticipate that this interface will be a useful abstraction
    for proxies and tunnels.
  • New: In-development snapshots are now published to the [Central Portal Snapshots repository].

v3.12.0

2025-05-27

  • New: Support an optional end index when searching with BufferedSource.indexOf().
  • Fix: Don't do unnecessary work in BufferedSource.rangeEquals().
  • Upgrade: [Kotlin 2.1.21][kotlin_2_1_21].

v3.11.0

2025-04-09

  • Fix: Clear the deflater's byte array reference
  • New: Faster implementation of String.decodeHex() on Kotlin/JS.
  • New: Declare EXACTLY_ONCE execution for blocks like Closeable.use {} and FileSystem.read {}.
  • Upgrade: [Kotlin 2.1.20][kotlin_2_1_20].

v3.10.2

Compare Source

2025-01-08

  • Fix: okio-nodefilesystem artifact is no longer empty.

v3.10.1

Compare Source

2025-01-07

  • New: FileSystem.close() may prevent future access and/or clean up associated resources depending on the backing implementation. FakeFileSystem will prevent future operations once closed.
  • InputStreams created from BufferedSource.inputStream() now have a more efficient version of InputStream.transferTo() which reduces memory copies.
  • okio-nodefilesystem is no longer publised as a JS project, but a Kotlin multiplatform project with only a JS target. This change should not affect consumers in any way, and is motivated by the Kotlin Gradle plugin deprecating the JS-only plugin. Please use 3.10.2 to ensure this change actually does not affect your builds.

v3.10.0

Compare Source

2025-01-06

This version is equivalent to the subsequent 3.10.1, but it did not fully publish to Maven Central due to infrastructure problems.

ktorio/ktor (io.ktor:ktor-websockets-jvm)

v3.3.3

Compare Source

Published 26 November 2025

Improvements
  • KTOR-6837 Discrepancies when parsing URL host with CIO and Darwin engines compared to the rest engines
  • KTOR-9050 Logging: SimpleLogger should be an object, not a class
  • KTOR-9094 Jetty Client: Support HTTP/2 over cleartext (h2c)
  • KTOR-9120 OpenAPI gen: missing operationId for KDoc fields
  • KTOR-3019 Improve logging for CORS plugin
Bugfixes
  • KTOR-8671 Netty: RejectedExecutionException during shutdown on MacOS when dev mode is enabled
  • KTOR-9096 Darwin: New SSE handlers stop responding after canceling few SSE sessions
  • KTOR-9125 Double ResponseSent invocation when exception is thrown after respond
  • KTOR-8878 OpenAPI: StackOverflowError when a response object has property with @​Contextual serializer
  • KTOR-8947 Java, ContentEncoding: IllegalHeaderNameException is thrown for ":status" pseudo header with HTTP/2
  • KTOR-9092 NettyHttp2Handler throws IllegalArgumentException: 'ktor.ApplicationCall' is already in use
  • KTOR-8924 Curl: Client sends both Transfer-Encoding and Content-Length headers for DELETE requests with body
  • KTOR-8838 Exception handling issue in client cache

v3.3.2

Compare Source

Published 5 November 2025

Improvements
  • WebRTC Client. Remove redundant targets (KTOR-9062)
  • Add Socks proxy support to Darwin engine (KTOR-8968)
  • Java: Improve error message when SOCKS proxy is used (KTOR-2908)
Bugfixes
  • HttpRequestRetry: SendCountExceedException when max retries is more than maxSendCount of HttpSend (KTOR-5850)
  • Darwin: The maxFrameSize option has no effect (KTOR-6963)
  • OpenAPI: StackOverflowError when a response object has property with @​Contextual serializer (KTOR-8878)
  • OpenAPI gen: missing KDoc fields (KTOR-9021)
  • Server call.request.path() returns routing selectors in path (KTOR-7639)
  • StaticContent doesn't allow siblings (KTOR-9012)
  • HttpCache: FileStorage doesn't use given dispatcher for all file operations (KTOR-8832)
  • Curl: SOCKS proxy doesn't work (KTOR-9008)
  • Netty: java.lang.VerifyError is thrown on Android since 3.3.0 (KTOR-8916)
  • Response body channel is canceled while the body is being saved when having HttpRequestRetry and onDownload (KTOR-8975)
  • HttpCache: InvalidCacheStateException when varyKeys stored in files contain uppercase letters since 3.3.0 (KTOR-8970)

v3.3.1

Compare Source

Published 8 October 2025

Improvements
  • Add a note about SSE session lifetime in KDoc (KTOR-8440)
  • Update Kotlin to 2.2.20 (KTOR-8896)
Bugfixes
  • NumberFormatException when Content-Length header value contains null bytes (KTOR-4828)
  • SerializationException: Serializer for class 'ClientSSESession' is not found when server responds with JSON (KTOR-7631)
  • Netty: loadConfiguration missing enableHttp2 and enableH2c properties (KTOR-8898)
  • Netty: EmbeddedServer.stop always blocks for twice of shutdownGracePeriod (KTOR-8770)
  • shutdownGracePeriod is used instead of shutdownTimeout in EmbeddedServer.stop() (KTOR-8771)
  • Support serving static resources within bootJar (KTOR-8592)

v3.3.0

Compare Source

Published 11 September 2025

Features
  • Support for server side http2 without tls (h2c) (KTOR-4750)
  • OpenAPI generation build extension preview (KTOR-8721)
  • Serve static resources with caching headers and ETag based on sha256 of content (KTOR-6700)
  • Jetty engine: Upgrade Jetty dependencies to the latest version 12 (KTOR-6734)
  • Static content: Support a custom respond logic if the file is not found (KTOR-8496)
  • Upgrade OkHttp to version 5.0.0 (KTOR-8652)
  • WebRTC Client, Android + WASM (KTOR-7958)
Improvements
  • SSE: Cannot read response body from SSEClientException (KTOR-8165)
  • SSE: "SSEClientException: Content-Length mismatch" on saving response body in DefaultResponseValidation (KTOR-8753)
  • var Route.staticRootFolder: File? should be deprecated (KTOR-5836)
  • Add image/bmp to the ContentType (KTOR-8735)
  • Add some missing image content types (KTOR-8624)
  • Upgrade to Kotlin 2.2 (KTOR-8647)
  • Bump Kotlin API level to 2.2 (KTOR-8637)
  • CIO: The engine ignores system proxy settings (KTOR-5922)
Bugfixes
  • Performance regression when using ContentEncoding and HttpRequestRetry since 3.2.0 (KTOR-8820)
  • Big number of simultaneous outbound web socket connections leads to a coroutine deadlock (KTOR-8829)
  • DI: JobCancellationException during cleanup (KTOR-8785)
  • Autoreloading: JobCancellationException when app is reloaded in the debugger since 3.2.0 (KTOR-8810)
  • HttpRedirect: The client is redirected when no Location header in response (KTOR-8697)
  • SerializationException when Application.propertyOrNull() is called with type Map<String, Any?> (KTOR-8781)
  • "Failed resolution of: Ljava/lang/management/ManagementFactory" on Android when JvmGcMetrics are initialized (KTOR-8714)
  • HttpCache: all header values but first in HttpResponse.varyKeys() are ignored (KTOR-6402)
  • HttpCache: plugin selects wrong cache entry when filtering Vary headers with different case (KTOR-7621)
  • CountedByteWriteChannel: autoFlush of the source channel doesn't make the channel auto flushing (KTOR-8411)

v3.2.3

Compare Source

Published 29 July 2025

Improvements
  • Server only accepts yaml as the configuration file suffix (KTOR-8712)
  • JS / WASM error when process global is undefined (KTOR-8686)
  • DI async duplicate resolution (KTOR-8681)
Bugfixes
  • CIO: Expect 100-continue response is missing a final \r\n (KTOR-8687)
  • Intermittent "ParserException: No colon in HTTP header" when parsing multipart request (KTOR-8523)
  • Infinite loop in ByteReadChannel.readFully (KTOR-8682)
  • ShutDownUrl: The server cannot shut down since 3.2.0 (KTOR-8674)

v3.2.2

Compare Source

Published 14 July 2025

Improvements
  • SSE: Change the order of SSE field serialization: put event before data (KTOR-8627)
Bugfixes
  • CORS: server replies with the 405 status code on a preflight request when the plugin is installed in a route (KTOR-4499)
  • Darwin: The Content-Encoding header is removed since 3.0.3 (KTOR-8526)
  • JS/WASM: response doesn't contain the Content-Length header in a browser (KTOR-8377)
  • StatusPages: response headers of OutgoingContent aren't available in the status handlers (KTOR-8232)
  • testApplication: The client.sse() acts like a REST call and not a stream in test environment (KTOR-7910)
  • Config deserialization - default properties problem (KTOR-8654)
  • kotlinx.datetime is not available transitively in 3.2.1 (KTOR-8656)
  • Request builder block overrides HTTP method in specific request builders (get, post, etc) (KTOR-8636)

v3.2.1

Compare Source

Published 3 July 2025

Improvements
  • Replace kotlinx.datetime APIs with kotlin.time (KTOR-8635)
  • Thymeleaf: null values in template model (KTOR-8559)
  • Publish Javadoc as a maven artifact (KTOR-3962)
  • Netty: Invalid hex byte with malformed query string (KTOR-2934)
Bugfixes
  • "Space characters in SimpleName" error when executing R8 mergeExtDex task with 3.2.0 (KTOR-8583)
  • ForwardedHeaders: the plugin does not handle parameters case-insensitively (KTOR-8622)
  • Potential race condition in socket.awaitClosed (hangs indefinitely) since 3.2.0 (KTOR-8618)
  • Module parameter type Application.() -> kotlin.Unit is not supported in 3.2.0 (KTOR-8602)
  • OkHttp: java.net.ProtocolException when sending MultiPartFormDataContent with onUpload (KTOR-6790)
  • OAuth2 authentication provider breaks form-urlencoded POST requests when receiving request body (KTOR-4420)
  • 404 for a link in KDoc for io.ktor.server.plugins.contentnegotiation.ContentNegotiation (KTOR-8597)
  • Ktor fails to boot with default jvminline argument (KTOR-8608)
  • Flow invariant is violated since 3.2.0 (KTOR-8606)
  • ResponseSent hook handler of the plugin installed into a route isn't executed when an exception is thrown from the route (KTOR-6794)

v3.2.0

Compare Source

Published 12 June 2025

Features
  • Dependency injection Ktor extension (KTOR-8267)
  • Support Version Catalog (KTOR-8162)
  • Unix domain socket support at the Ktor Engine level (KTOR-4766)
  • Allow suspend Ktor modules (KTOR-8005)
  • Ability to use browser cookie storage (KTOR-539)
  • Configuration file deserialization (KTOR-7874)
  • HttpCache: Support evicting/clearing cache (KTOR-6653)
  • File configuration for dependencies (KTOR-8304)
Improvements
  • Excessive allocation of ApplicationConfig when loading multiple files from CLI (KTOR-8563)
  • Linux curl engine doesn't work for simultaneous websocket and http request (KTOR-8259)
  • ktor-network produces ProGuard warning (KTOR-8525)
  • More overloads for StringValuesBuilder.appendAll (KTOR-8573)
  • HttpClientCall: Deprecate wrapWithContent and wrap (KTOR-8378)
  • Add a way to create an ApplicationCall for testing (KTOR-7607)
  • Configuration access API improvements (KTOR-8185)
  • Application instance access in testApplication (KTOR-8215)
  • The TestApplication client should be configurable and mutable (KTOR-8465)
  • Support accessing resolved IP address on an instance of io.ktor.network.sockets.InetSocketAddress (KTOR-8490)
  • Deprecate SaveBodyPlugin in favor of HttpClientCall.save (KTOR-8367)
  • Obscure log message on server startup (KTOR-8519)
  • Routing: accept should return 406 if the Accept header isn't matched (KTOR-8416)
  • MicrometerMetrics: the route label can exceed length limit (KTOR-7274)
  • Micrometer: Make route label configurable (KTOR-8183)
  • Add more common ContentType values (KTOR-7108)
Bugfixes
  • Logging/Darwin: IOException is thrown when detecting if body is a binary (KTOR-8581)
  • Netty: NoSuchElementException or empty headers when responding with 204 (KTOR-8528)
  • YAML configuration: NoSuchElementException when parameter is expanded with curly braces (KTOR-8575)
  • ApplicationConfig: Most of the content is absent after merging configs (KTOR-8565)
  • Android: "ProtocolException: TRACE does not support writing" when sending TRACE request (KTOR-8352)
  • The "Content-Length: 0" header is added for GET requests sent to some servers (KTOR-6508)
  • HttpRequestRetry: requests with some IOException's thrown by Java engine aren't retried (KTOR-6770)
  • HttpCookies: Encoding of request cookies is not preserved in CookiesStorage (KTOR-8343)
  • Url class mangles data URLs (KTOR-5708)
  • SaveBodyPlugin: Logging plugin consumes response body (KTOR-6474)
  • Config deserialization does not respect testApplication environment (KTOR-8436)
  • Resources: Exclude a parent from query params when it is an object (KTOR-8507)
  • BearerAuthProvider does not clear token if refreshTokens returns null (KTOR-8470)
  • Coroutines launched from RoutingContext are not cancelled upon server shutdown (KTOR-8338)
  • Application job is not joined during shutdown (KTOR-8291)
  • HttpCache: InvalidCacheStateException thrown when Vary header has different entries is overly severe (KTOR-8345)
  • Fix socket channel close handling (KTOR-8201)

v3.1.3

Compare Source

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)

v3.1.2

Compare Source

Published 27 March 2025

Improvements
Bugfixes
  • URL-safe base64 decoding problem (KTOR-8292)
  • Auth: AuthTokenHolder.clearToken executed in the middle of an ongoing token update doesn't actually clear (KTOR-8312)
  • Android: "Array has more than one element" error when starting a server with release build (KTOR-7298)
  • WebSockets: extensions in sec-websocket-extensions header must be separated by comma (KTOR-6384)
  • OkHttp: Cancelling of SSESession.incoming flow doesn't cancel connection (KTOR-8244)

v3.1.1

Compare Source

Published 24 February 2025

Improvements
  • Logging: messages are printed per line with OkHttp logger format (KTOR-8218)
  • WebSocket and SSE don't respect connection timeout set in the HttpTimeout plugin (KTOR-8206)
Bugfixes
  • formData: implementation of copying Source is broken (KTOR-8210)
  • Race condition when writing to a buffer leads to NPE inside CIOReaderKt.readFrom (KTOR-8105)
  • TLS client: IOException while writing to a closed TLS socket since 3.0.0 (KTOR-7860)
  • Exception thrown in onCallRespond makes the client wait for response indefinitely (KTOR-7139)
  • HttpCache: Cache isn't updated when Vary header for 304 response matches but not equal to Vary for 200 response (KTOR-7104)
  • OOM on SourceByteReadChannel for large input (KTOR-8190)
  • ArrayIndexOutOfBounds kotlinx-io (KTOR-8096)
  • NPE in readBuffer (KTOR-8086)
  • JS/WASM fails with "IllegalStateException: Content-Length mismatch" on requesting gzipped content (KTOR-7934)
  • Resources: a / route isn't resolved when there is a sibling staticResources (KTOR-6671)
  • Server accepts \r without a following \n as a valid line terminator in chunked transfer encoding (KTOR-8015)

v3.1.0

Compare Source

Published 11 February 2025

Features

Configuration

📅 Schedule: Branch creation - "before 12pm on Sunday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/all-minor-patch branch 2 times, most recently from 154e12c to 4dcbcc8 Compare December 7, 2025 02:27
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@renovate renovate bot force-pushed the renovate/all-minor-patch branch from 4dcbcc8 to bc91b35 Compare December 7, 2025 02:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants