Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 7, 2025

Bumps ktor from 3.1.2 to 3.2.1.
Updates io.ktor:ktor-serialization-kotlinx-cbor from 3.1.2 to 3.2.1

Release notes

Sourced from io.ktor:ktor-serialization-kotlinx-cbor's releases.

3.2.1

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)

3.2.0

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)

... (truncated)

Changelog

Sourced from io.ktor:ktor-serialization-kotlinx-cbor's changelog.

3.2.1

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)

3.2.0

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)

... (truncated)

Commits
  • bb76ebc Release 3.2.1 (#4975)
  • b290f07 KTOR-8635 Use kotlin.time.Clock instead of kotlinx.datetime.Clock (#4974)
  • 0c30d44 KTOR-8622 ForwardedHeaders: Parse parameters case insensitively (#4963)
  • aa6c165 Fix publishing (#4970)
  • 30d5107 KTOR-8559 Allow null values in Thymeleaf template model (#4964)
  • 7a6be4b KTOR-8618 Fix race condition in ReaderJob.flushAndClose (#4962)
  • 27045c8 KTOR-6790 Fix ObservableContent by avoiding caching the delegate's channel (#...
  • f1dd768 KTOR-4420 OAuth2: Cache body of form requests to make it available in route h...
  • d89d41e KTOR-8608 Fix handling of modules with mangled names
  • 3cbae40 KTOR-8602 Fix handling of optional module parameters
  • Additional commits viewable in compare view

Updates io.ktor:ktor-client-core from 3.1.2 to 3.2.1

Release notes

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

3.2.1

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)

3.2.0

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)

... (truncated)

Changelog

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

3.2.1

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)

3.2.0

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)

... (truncated)

Commits
  • bb76ebc Release 3.2.1 (#4975)
  • b290f07 KTOR-8635 Use kotlin.time.Clock instead of kotlinx.datetime.Clock (#4974)
  • 0c30d44 KTOR-8622 ForwardedHeaders: Parse parameters case insensitively (#4963)
  • aa6c165 Fix publishing (#4970)
  • 30d5107 KTOR-8559 Allow null values in Thymeleaf template model (#4964)
  • 7a6be4b KTOR-8618 Fix race condition in ReaderJob.flushAndClose (#4962)
  • 27045c8 KTOR-6790 Fix ObservableContent by avoiding caching the delegate's channel (#...
  • f1dd768 KTOR-4420 OAuth2: Cache body of form requests to make it available in route h...
  • d89d41e KTOR-8608 Fix handling of modules with mangled names
  • 3cbae40 KTOR-8602 Fix handling of optional module parameters
  • Additional commits viewable in compare view

Updates io.ktor:ktor-client-websockets from 3.1.2 to 3.2.1

Release notes

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

3.2.1

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)

3.2.0

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)

... (truncated)

Changelog

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

3.2.1

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)

3.2.0

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)

... (truncated)

Commits
  • bb76ebc Release 3.2.1 (#4975)
  • b290f07 KTOR-8635 Use kotlin.time.Clock instead of kotlinx.datetime.Clock (#4974)
  • 0c30d44 KTOR-8622 ForwardedHeaders: Parse parameters case insensitively (#4963)
  • aa6c165 Fix publishing (#4970)
  • 30d5107 KTOR-8559 Allow null values in Thymeleaf template model (#4964)
  • 7a6be4b KTOR-8618 Fix race condition in ReaderJob.flushAndClose (#4962)
  • 27045c8 KTOR-6790 Fix ObservableContent by avoiding caching the delegate's channel (#...
  • f1dd768 KTOR-4420 OAuth2: Cache body of form requests to make it available in route h...
  • d89d41e KTOR-8608 Fix handling of modules with mangled names
  • 3cbae40 KTOR-8602 Fix handling of optional module parameters
  • Additional commits viewable in compare view

Updates io.ktor:ktor-client-cio from 3.1.2 to 3.2.1

Release notes

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

3.2.1

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)

3.2.0

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)

... (truncated)

Changelog

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

3.2.1

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)

3.2.0

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)

... (truncated)

Commits
  • bb76ebc Release 3.2.1 (#4975)
  • b290f07 KTOR-8635 Use kotlin.time.Clock instead of kotlinx.datetime.Clock (#4974)
  • 0c30d44 KTOR-8622 ForwardedHeaders: Parse parameters case insensitively (#4963)
  • aa6c165 Fix publishing (#4970)
  • 30d5107 KTOR-8559 Allow null values in Thymeleaf template model (#4964)
  • 7a6be4b KTOR-8618 Fix race condition in ReaderJob.flushAndClose (#4962)
  • 27045c8 KTOR-6790 Fix ObservableContent by avoiding caching the delegate's channel (#...
  • f1dd768 KTOR-4420 OAuth2: Cache body of form requests to make it available in route h...
  • d89d41e KTOR-8608 Fix handling of modules with mangled names
  • 3cbae40 KTOR-8602 Fix handling of optional module parameters
  • Additional commits viewable in compare view

Updates io.ktor:ktor-server-core from 3.1.2 to 3.2.1

Release notes

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

3.2.1

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)

3.2.0

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)

... (truncated)

Changelog

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

3.2.1

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)

3.2.0

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...

    Description has been truncated

Bumps `ktor` from 3.1.2 to 3.2.1.

Updates `io.ktor:ktor-serialization-kotlinx-cbor` from 3.1.2 to 3.2.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](ktorio/ktor@3.1.2...3.2.1)

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

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

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

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

Updates `io.ktor:ktor-server-websockets` from 3.1.2 to 3.2.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](ktorio/ktor@3.1.2...3.2.1)

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

Updates `io.ktor:ktor-server-cors` from 3.1.2 to 3.2.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](ktorio/ktor@3.1.2...3.2.1)

Updates `io.ktor:ktor-server-call-logging` from 3.1.2 to 3.2.1
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](ktorio/ktor@3.1.2...3.2.1)

---
updated-dependencies:
- dependency-name: io.ktor:ktor-serialization-kotlinx-cbor
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-client-core
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-client-websockets
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-client-cio
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-server-core
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-server-websockets
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-server-cio
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-server-cors
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.ktor:ktor-server-call-logging
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file java labels Jul 7, 2025
@dependabot dependabot bot mentioned this pull request Jul 7, 2025
@whyoleg whyoleg merged commit 15a7ab9 into main Jul 13, 2025
32 checks passed
@whyoleg whyoleg deleted the dependabot/gradle/ktor-3.2.1 branch July 13, 2025 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants