Skip to content

⬆️ [build] Bump the routine group across 1 directory with 6 updates - #14

Merged
Grisu118 merged 1 commit into
mainfrom
dependabot/gradle/routine-241e8b9364
Nov 7, 2026
Merged

Grisu118 merged 1 commit into
mainfrom
dependabot/gradle/routine-241e8b9364

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 2, 2026

Copy link
Copy Markdown
Contributor

Bumps the routine group with 6 updates in the / directory:

Package From To
gradle-wrapper 9.8.1 9.8.2
org.jetbrains.kotlinx:kotlinx-serialization-json 1.11.0 1.12.0
io.ktor:ktor-client-core 3.6.0 3.6.1
io.ktor:ktor-client-cio 3.6.0 3.6.1
io.ktor:ktor-client-cio 3.6.0 3.6.1
ch.qos.logback:logback-classic 1.6.5 1.6.6
org.jetbrains.compose 1.12.1 1.12.2

Updates gradle-wrapper from 9.8.1 to 9.8.2

Release notes

Sourced from gradle-wrapper's releases.

9.8.2

The Gradle team is excited to announce Gradle 9.8.2.

Here are the highlights of this release:

  • Java 27 support
  • Maven mirror settings reuse
  • Linked problem locations in build output

Read the Release Notes

We would like to thank the following community members for their contributions to this release of Gradle: Aman Gautam, Björn Kautler, Eng Zer Jun, Hashim Khan, Julian Krannich, KBS, Labh R Jethe, Mark Dodgson, Maxim, monkey, nataphon-ktsystems, Paul King, Qiu Tian, rg_sandesh, Roberto Perez Alcolea, Sean, Zongle Wang.

Upgrade instructions

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

./gradlew :wrapper --gradle-version=9.8.2 && ./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.

Commits
  • 8de7bcf Speed up the AllVersionsCrossVersion flaky quarantine (#39494)
  • 66805db Run all cross-version targets in flaky quarantine
  • cdd4c8f Skip empty test tasks in the flaky test quarantine
  • 6badb77 Split the AllVersionsCrossVersion quarantine across agents
  • 1655e44 Prepare for 9.8.2 (#39492)
  • 6702214 Prepare for 9.8.2
  • 688c0c1 Fix false warning about unstable graph (#39479)
  • 3601d4f Clarify selector reuse comments in SelectorState
  • 6e836fd Fix false warning about unstable graph
  • a0790e5 Fix hidden artifact cleanup pattern in CheckProject (#39451)
  • Additional commits viewable in compare view

Updates org.jetbrains.kotlinx:kotlinx-serialization-json from 1.11.0 to 1.12.0

Release notes

Sourced from org.jetbrains.kotlinx:kotlinx-serialization-json's releases.

v1.12.0

This release is based on Kotlin 2.4.10 and contains all of the changes from 1.12.0-RC.

Additionally, it includes a fix removing unnecessary leading whitespaces from Proguard rules (#3270), and two changes stabilizing kotlin.uuid.Uuid serializer (#3263) and kotlin.time.Instant serializers (#3261).

For your convenience, the changelog for 1.12.0-RC is duplicated below:

API stabilization and deprecations

A big portion of the Json and Core APIs has been stabilized. Most important ones include: @KeepGeneratedSerializer and @SerialInfo annotations, JsonNamingStrategy, and ContextualSerializer. Additionally, various descriptor builders such as listDescriptor and JsonElementBuilder's addAll functions are also stable and can be freely used. There is also one deprecation: ChunkedDecoder interface. Since there is no demand for it, we plan to remove it in the future. See details in the #3238, #3239, and #3216.

Also, kotlin.time.Instant and kotlin.uuid.Uuid serializers are no longer annotated with experimental annotations from the Kotlin standard library (see #3261 and #3263)

Performance improvements

We also improved performance in various areas. ASCII-specific parser (#3225) brings performance of decoding from Okio and kotlinx-io sources closer to decoding performance from String. #3220 makes decoding significantly faster in case JsonElement present in your serializable classes. And #3248 should bring overall performance improvements (up to 30%) on large strings.

Exceptions rework

We continue to improve exception handling in Json encoders and decoders. #3235 makes a big change around custom serializers and @Serializable classes constructors: from now on, every exception thrown during deserialization is wrapped by decoder into a JsonException. This way, it is more predictable to write a catch and it is easier to understand what went wrong: JsonDecodingException also includes context information such as Json path and input. Besides that, #3246 limits maximum nesting depth of Json document, so you will get a proper JsonDecodingException instead of a random stack overflow error.

CBOR improvements

CBOR format also gets many improvements in this release. The most important one is memory optimization for definitely-sized collections (#3191, #3192).

The others include:

  • Encode unsigned integer types as positive integers (#3194) (thanks to Eyüp Can Akman)
  • Correctly decode CborLabel values (#3195)
  • Include actual tag info into CborDecodingException (#3197)

Protobuf improvements

Protocol buffers format received a big new feature: support for unknown fields. Using a new ProtoUnknownFieldHolder class, you can now decode and store unknown fields in Protobuf messages to retransmit them back later. See documentation updates and #2860 for details.

... (truncated)

Changelog

Sourced from org.jetbrains.kotlinx:kotlinx-serialization-json's changelog.

1.12.0 / 2026-10-19

This release is based on Kotlin 2.4.10 and contains all of the changes from 1.12.0-RC.

Additionally, it includes a fix removing unnecessary leading whitespaces from Proguard rules (#3270), and two changes stabilizing kotlin.uuid.Uuid serializer (#3263) and kotlin.time.Instant serializers (#3261).

For your convenience, the changelog for 1.12.0-RC is duplicated below:

API stabilization and deprecations

A big portion of the Json and Core APIs has been stabilized. Most important ones include: @KeepGeneratedSerializer and @SerialInfo annotations, JsonNamingStrategy, and ContextualSerializer. Additionally, various descriptor builders such as listDescriptor and JsonElementBuilder's addAll functions are also stable and can be freely used. There is also one deprecation: ChunkedDecoder interface. Since there is no demand for it, we plan to remove it in the future. See details in the #3238, #3239, and #3216.

Also, kotlin.time.Instant and kotlin.uuid.Uuid serializers are no longer annotated with experimental annotations from the Kotlin standard library (see [#3261](Kotlin/kotlinx.serialization#3261 and #3263)

Performance improvements

We also improved performance in various areas. ASCII-specific parser (#3225) brings performance of decoding from Okio and kotlinx-io sources closer to decoding performance from String. #3220 makes decoding significantly faster in case JsonElement present in your serializable classes. And #3248 should bring overall performance improvements (up to 30%) on large strings.

Exceptions rework

We continue to improve exception handling in Json encoders and decoders. #3235 makes a big change around custom serializers and @Serializable classes constructors: from now on, every exception thrown during deserialization is wrapped by decoder into a JsonException. This way, it is more predictable to write a catch and it is easier to understand what went wrong: JsonDecodingException also includes context information such as Json path and input. Besides that, #3246 limits maximum nesting depth of Json document, so you will get a proper JsonDecodingException instead of a random stack overflow error.

CBOR improvements

CBOR format also gets many improvements in this release. The most important one is memory optimization for definitely-sized collections (#3191, #3192).

... (truncated)

Commits

Updates io.ktor:ktor-client-core from 3.6.0 to 3.6.1

Release notes

Sourced from io.ktor:ktor-client-core's releases.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Changelog

Sourced from io.ktor:ktor-client-core's changelog.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Commits
  • 26cc003 Release 3.6.1 (#5970)
  • b4fc04d KTOR-10035 Deliver the queued Close frame when the session fails (#5959)
  • fbd2a80 KTOR-10036 Keep the test host WebSocket client reading until the server close...
  • 516fe19 KTOR-10037 Close the CIO connection when a response fails before writing any ...
  • 3954d0c KTOR-9938: Abort Apache5 exchanges when the response body is cancelled
  • dbc9692 KTOR-9969 Shut down native socket output inside the writer coroutine
  • 3ceecd7 KTOR-9992 Fix CIO accept busy loop (#5961)
  • bdfff2b KTOR-10023 Throw BadRequestException on malformed URL segments
  • 7378949 KTOR-9986 Remove dot segments from relative redirect targets (#5939)
  • c981394 KTOR-9430 Fix test server stopping
  • Additional commits viewable in compare view

Updates io.ktor:ktor-client-cio from 3.6.0 to 3.6.1

Release notes

Sourced from io.ktor:ktor-client-cio's releases.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Changelog

Sourced from io.ktor:ktor-client-cio's changelog.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Commits
  • 26cc003 Release 3.6.1 (#5970)
  • b4fc04d KTOR-10035 Deliver the queued Close frame when the session fails (#5959)
  • fbd2a80 KTOR-10036 Keep the test host WebSocket client reading until the server close...
  • 516fe19 KTOR-10037 Close the CIO connection when a response fails before writing any ...
  • 3954d0c KTOR-9938: Abort Apache5 exchanges when the response body is cancelled
  • dbc9692 KTOR-9969 Shut down native socket output inside the writer coroutine
  • 3ceecd7 KTOR-9992 Fix CIO accept busy loop (#5961)
  • bdfff2b KTOR-10023 Throw BadRequestException on malformed URL segments
  • 7378949 KTOR-9986 Remove dot segments from relative redirect targets (#5939)
  • c981394 KTOR-9430 Fix test server stopping
  • Additional commits viewable in compare view

Updates io.ktor:ktor-client-cio from 3.6.0 to 3.6.1

Release notes

Sourced from io.ktor:ktor-client-cio's releases.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Changelog

Sourced from io.ktor:ktor-client-cio's changelog.

3.6.1

Published 29 October 2026

Improvements

  • KTOR-10005 Native accepted TCP sockets do not enable TCP_NODELAY, unlike JVM
  • KTOR-9966 Netty poor performance on delay calls
  • KTOR-4206 The "com.typesafe.config.ConfigException$Missing" exception leaks from the typesafe config library when configuration is merged

Bugfixes

  • KTOR-10037 CIO: keep-alive connection hangs when a response fails before writing any bytes
  • KTOR-9969 Kotlin/Native CIO server occasionally closes an accepted connection with zero response bytes under CPU load
  • KTOR-9974 CIO: close_notify is written concurrently with the last record, corrupting the TLS output and the kotlinx-io segment pool
  • KTOR-9925 Resources: Constant sibling route loses to parameterized one when routes are split across separate authenticate blocks
  • KTOR-9938 Apache5: streaming response hangs when the block returns before the body arrives
  • KTOR-10023 Ktor 3.6.0 no longer throws BadRequestException for malformed paths
  • KTOR-9986 HttpRedirect: a relative Location with dot segments is not normalized, so most engines send .. in the request path
  • KTOR-10085 ETags: Ignore If-Modified-Since when If-None-Match is present
  • KTOR-9430 DI: resources are not cleaned up during testing with testApplication
  • KTOR-7175 Ktor-client, connections leak
  • KTOR-9848 Android: The Android engine crashes with Unbalanced enter/exit on response read cancellation
  • KTOR-9994 Android engine closes RawSourceChannel on the main thread and crashes with NetworkOnMainThreadException
  • KTOR-9959 Sockets: CIO writer busy-loops when a nonblocking write returns zero
  • KTOR-9970 Java: Cancelling a request before response headers does not abort the HTTP exchange
  • KTOR-10006 OpenAPI: Compiler crash on local variable using object expression
  • KTOR-9972 Android: DiskReadViolation when KtorSimpleLogger is initialized during plugin execution
  • KTOR-9985 OpenAPI compiler plugin duplicates unrelated schemas (FooDTO -> FooDTO2) after adding new routes
  • KTOR-2348 DoubleReceive: recursive receive pipeline re-entry when receiving content in a receivePipeline interceptor
  • KTOR-9968 Test engine streaming responses hang when over 1MB
  • KTOR-9894 Netty + Compression: response leaked when the client disconnects before the body is written
  • KTOR-9987 WebSockets: Netty sometimes closes socket before sending close frame
  • KTOR-9943 HttpStatement.execute can hang when its block abandons a response body
  • KTOR-9980 CallLogging: MDC entries leak stale thread-local values when provider returns null
  • KTOR-9790 testApplication: sseSession() never returns when the SSE route installs a heartbeat
  • KTOR-9884 Directories are returned as empty binaries when using nested jars
  • KTOR-4245 Code snippet in Kdoc for DefaultRequest doesn't compile
  • KTOR-10035 WebSocket drops the queued Close frame when the server session fails
  • KTOR-10036 testApplication: WebSocket client stops reading before the servers Close reply arrives
Commits
  • 26cc003 Release 3.6.1 (#5970)
  • b4fc04d KTOR-10035 Deliver the queued Close frame when the session fails (#5959)
  • fbd2a80 KTOR-10036 Keep the test host WebSocket client reading until the server close...
  • 516fe19 KTOR-10037 Close the CIO connection when a response fails before writing any ...
  • 3954d0c KTOR-9938: Abort Apache5 exchanges when the response body is cancelled
  • dbc9692 KTOR-9969 Shut down native socket output inside the writer coroutine
  • 3ceecd7 KTOR-9992 Fix CIO accept busy loop (#5961)
  • bdfff2b KTOR-10023 Throw BadRequestException on malformed URL segments
  • 7378949 KTOR-9986 Remove dot segments from relative redirect targets (#5939)
  • c981394 KTOR-9430 Fix test server stopping
  • Additional commits viewable in compare view

Updates ch.qos.logback:logback-classic from 1.6.5 to 1.6.6

Release notes

Sourced from ch.qos.logback:logback-classic's releases.

Logback 1.6.6

2026-10-25 Release of logback version 1.6.6

• LoggingEventVO now rejects, during deserialization, throwable proxies whose cause or suppressed entries point back into the graph of proxies, for example to their own parent. Such graphs cannot be produced by logback itself. However, a crafted stream sent to a socket receiver could use serialization back-references to build them, after which DefaultThrowableRenderer and SyslogAppender would loop forever and the recursive converters would overflow the stack. These streams are now rejected with an InvalidObjectException. Circular exceptions logged by the application are still transmitted correctly. This issue was reported and fixed in [PR #1079](qos-ch/logback#1079) by arfa-21.

• FileNamePattern now escapes characters with a special meaning in regular expressions, such as (, [ or +, when converting the literal parts of a file name pattern into a regex. Previously, RollingFileAppender failed to start when the path contained an unbalanced parenthesis, as in C:/Users/Michael(Financ. This issue was reported in issues/914 by danamlund. Moreover, with SizeAndTimeBasedRollingPolicy and a pattern such as app.%d.(%i).log, existing archives were not recognized. After a restart within the same period, the next rollover could overwrite an existing archive, and maxHistory and totalSizeCap never removed such archives. This issue was reported in issues/933 by GeoffreyBoulay. The fix was contributed in [PR #1077](qos-ch/logback#1077) by Jialin Chen. Regex metacharacters in %d{...} date patterns are now escaped as well.

• The conversion of date patterns into regular expressions now follows the rules of DateTimeFormatter, which logback uses to format dates, instead of those of SimpleDateFormat. In particular, the L (stand-alone month) pattern letter is now supported.

• SyslogOutputStream now connects its DatagramSocket to the syslog host. Previously, the socket was bound to the wildcard address, so that hardened environments saw an unconnected UDP listener on all interfaces for as long as the application ran. This issue was reported in issues/939 by joao-rebelo. The fix was contributed in [PR #1076](qos-ch/logback#1076) by Lyin-OTTF.

If the socket cannot be connected, for example because the network is not yet available, SyslogOutputStream falls back to an unconnected socket and SyslogAppenderBase emits a warning. When a datagram sent on a connected socket fails due to an ICMP "port unreachable" message caused by an earlier datagram, the datagram is sent once more so that no message is lost. If the retry also fails, a single warning is emitted instead of one error per event.

• OutputStreamAppender now stops its encoder when the appender is stopped. Previously, encoders holding resources until they were stopped, such as those of logstash-logback-encoder, were never released, causing heap growth at each reconfiguration. This issue was fixed in [PR #1072](qos-ch/logback#1072) by Samuel Fernandes.

• During variable substitution, an unmatched right curly brace now causes an error to be reported, with the original value left unchanged. Previously, the brace and all subsequent characters were silently dropped, so that %m}some text became %m. This issue was reported in issues/836 by philsttr.

• LogbackMDCAdapter now stores MDC entries in a LinkedHashMap, so that the %X converter outputs them in insertion order. This issue was reported in LOGBACK-1337 and fixed by Craig P. Motlin.

• A bit-wise identical binary of this version can be reproduced by building from source code at commit a9ee8019ee183e076ff5477957dbf90c4b04dd92 associated with the tag v_1.6.6. The release was built using Java "21" 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.

Commits
  • a9ee801 prepare release 1.6.6
  • 7fa8e8e throw ScanException on unmatched '}' during variable substitution, fixes #836
  • 355b931 Test round trip of circular exceptions through LoggingEventVO
  • c7b8e2f reject cyclic throwable proxies in LoggingEventVO.readObject
  • 6217f11 fix loging of ThrowableProxy constructor taking isCyclic boolean
  • 0b95858 LOGBACK-1337 LogbackMDCAdapter should store mdc in LinkedHashMap to predict o...
  • 5c1f577 add LinkedHashMap to HardenedObjectInputStream whitelist
  • 7c36c71 Escape regex metacharacters in date patterns, harden rolling tests
  • d268774 Align date pattern to regex conversion with DateTimeFormatter
  • b4b4828 Escape regex metacharacters of literal text in FileNamePattern regexes
  • Additional commits viewable in compare view

Updates org.jetbrains.compose from 1.12.1 to 1.12.2

Release notes

Sourced from

Bumps the routine group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [gradle-wrapper](https://github.com/gradle/gradle) | `9.8.1` | `9.8.2` |
| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.11.0` | `1.12.0` |
| [io.ktor:ktor-client-core](https://github.com/ktorio/ktor) | `3.6.0` | `3.6.1` |
| [io.ktor:ktor-client-cio](https://github.com/ktorio/ktor) | `3.6.0` | `3.6.1` |
| [io.ktor:ktor-client-cio](https://github.com/ktorio/ktor) | `3.6.0` | `3.6.1` |
| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.6.5` | `1.6.6` |
| [org.jetbrains.compose](https://github.com/JetBrains/compose-multiplatform) | `1.12.1` | `1.12.2` |



Updates `gradle-wrapper` from 9.8.1 to 9.8.2
- [Release notes](https://github.com/gradle/gradle/releases)
- [Commits](gradle/gradle@v9.8.1...v9.8.2)

Updates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.11.0 to 1.12.0
- [Release notes](https://github.com/Kotlin/kotlinx.serialization/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md)
- [Commits](Kotlin/kotlinx.serialization@v1.11.0...v1.12.0)

Updates `io.ktor:ktor-client-core` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/3.6.1/CHANGELOG.md)
- [Commits](ktorio/ktor@3.6.0...3.6.1)

Updates `io.ktor:ktor-client-cio` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/3.6.1/CHANGELOG.md)
- [Commits](ktorio/ktor@3.6.0...3.6.1)

Updates `io.ktor:ktor-client-cio` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/3.6.1/CHANGELOG.md)
- [Commits](ktorio/ktor@3.6.0...3.6.1)

Updates `ch.qos.logback:logback-classic` from 1.6.5 to 1.6.6
- [Release notes](https://github.com/qos-ch/logback/releases)
- [Commits](qos-ch/logback@v_1.6.5...v_1.6.6)

Updates `org.jetbrains.compose` from 1.12.1 to 1.12.2
- [Release notes](https://github.com/JetBrains/compose-multiplatform/releases)
- [Changelog](https://github.com/JetBrains/compose-multiplatform/blob/master/CHANGELOG.md)
- [Commits](JetBrains/compose-multiplatform@v1.12.1...v1.12.2)

---
updated-dependencies:
- dependency-name: gradle-wrapper
  dependency-version: 9.8.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
- dependency-name: org.jetbrains.kotlinx:kotlinx-serialization-json
  dependency-version: 1.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: routine
- dependency-name: io.ktor:ktor-client-core
  dependency-version: 3.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
- dependency-name: io.ktor:ktor-client-cio
  dependency-version: 3.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
- dependency-name: io.ktor:ktor-client-cio
  dependency-version: 3.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
- dependency-name: ch.qos.logback:logback-classic
  dependency-version: 1.6.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
- dependency-name: org.jetbrains.compose
  dependency-version: 1.12.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: routine
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update java code labels Nov 2, 2026
@coderabbitai

coderabbitai Bot commented Nov 2, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: cb2b574b-f0ea-4fae-a8ef-f42b0c9ed753

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@Grisu118
Grisu118 merged commit 2e6ecfb into main Nov 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:build dependencies Pull requests that update a dependency file java Pull requests that update java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant