Releases: ktorio/ktor
Releases · ktorio/ktor
1.6.6 Release
- Some Netty EngineMain properties are not set (KTOR-3464)
- Session cookie with BASE64 encoding fails to set correct cookie (KTOR-524)
- corsCheckRequestHeaders false (KTOR-445)
- DropwizardMetrics does not append baseName to the 'per endpoint'-metrics (KTOR-2527)
- Cookies that added to request got removed if HttpCookies plugin is installed (KTOR-3105)
- Development mode isn't taken into account for subroutes (KTOR-3316)
- URL port should be in 0..65535 (KTOR-3314)
- Basic auth not sending second request (KTOR-3472)
- Update Kotlin to 1.6.0 (KTOR-3422)
1.6.5 Release
- Bump kotlin from 1.5.30 to 1.5.31
- Bump tomcat from 9.0.48 to 9.0.54
- Bump logback from 1.2.3 to 1.2.6
- Bump slf4j from 1.7.30 to 1.7.32
- Bump gson from 2.8.6 to 2.8.9
- Bump okhttp from 4.6.0 to 4.9.2
- Bump jackson from 2.12.3 to 2.13.0
- Bump mockk from 1.10.6 to 1.12.0
- Add Apple Silicon targets (KTOR-3082)
- Fix HttpCookies feature overwriting request cookies (KTOR-3105)
- Change EAP version scheme (KTOR-3319)
- Update Netty to 4.1.69.Final (KTOR-472)
- Allow wildcard origins for CORS requests (KTOR-316)
- Add a host check for illegal symbols (KTOR-384)
- Add check to prevent anyHost with allowCredentials (KTOR-2872)
- Bump metrics-core from 4.2.3 to 4.2.4
- Bump webjars-locator-core from 0.47 to 0.48
- Bump metrics-jvm from 4.2.3 to 4.2.4
- Fix ProxyType.SOCKS being mapped to Proxy.Type.DIRECT
- fix grammar (KTOR-3237)
- Bump micrometer-core from 1.7.4 to 1.7.5
- Ignore flaky testTimeoutPriority (KTOR-3243)
- Fix npe if static file not found (KTOR-2811)
- Fix flaky timeoutPriorityTest (KTOR-3243)
- Fill Content-Length for PartialContent (KTOR-308)
- Change default log-level to INFO (KTOR-806)
- Use require from the stdlib instead of internal require (KTOR-2626)
1.6.4 Release
1.6.4
Published 30 September 2021
- [Auth] [Interceptors] Phase Phase('Challenge') was not registered for this pipeline (KTOR-3156)
- insertPhaseBefore and insertPhaseAfter lead to different order (KTOR-438)
- Ktor 1.6.3 crashes on restart due to java.lang.ClassNotFoundException: Didn't find class "java.nio.file.WatchService" on Android 24 (KTOR-3166)
- GraalVM binary using CIO fails on start "Module function cannot be found" (KTOR-2987)
- Logging in Shutdown thread looks not informative (KTOR-3175)
- Installed Closeable features not closed when closing HttpClient (KTOR-3116)
- Explain method(HttpMethod.Options) in docs for CORS (KTOR-2913)
- ContentType.parse("text/html qqq") must fail with error (KTOR-3080)
- Update JSON topics using code snippets from the 'codeSnippets' project (KTOR-2955)
- Could not find artifact org.jetbrains.kotlinx:kotlinx-html-jvm:pom:0.7.2 (KTOR-2481)
- Update the 'Modules' topic (KTOR-1861)
- Native engines tests are not run outside of the
ktor-client-tests
module (KTOR-3069) - MultiPartData.readAllParts throws IOException when the epilogue is omitted (KTOR-3173)
- Update Kotlin and Coroutines Versions (KTOR-3103)
1.6.3
- Auth Feature: token refresh works only on main thread in Kotlin/Native (KTOR-3055)
- FUS report mixes up feature id and feature version (KTOR-3067)
- SessionTrackerById - doesn't remove invalid session id (KTOR-2584)
- Bearer Token is Not Initialized after Clean (KTOR-3008)
- ktor does not support semicolon query parameter in Netty Engine (KTOR-2991)
- HOCON config not resolved in ServletApplicationEngine (KTOR-3020)
- Deploy WAR on Tomcat (KTOR-2867)
- The wizard missing the Pebble plugin (KTOR-2922)
- Wizard: Creating a project without sample code creates
Application.configureRouting
withoutrouting
(KTOR-2581) - The 'Create Run Configuration automatically' option name is cropped (KTOR-2898)
- InvalidMutabilityException when using withContext and SavedHttpCall (KTOR-2033)
- Reuse Package Search to add dependencies for Ktor Features in Plugin (KTOR-2433)
- Server: TLSConfigBuilder.addKeyStore: store.getCertificateChain could return null(KTOR-3047)
1.6.2
- Fixed Ktor plugin raises StackOverflowError when opening some files (KTOR-2950)
- Added parseUrlEncodedParameters Documentation (KTOR-2843)
- Fixed CIO WebSockets client incorrectly sends Sec-WebSocket-Extensions header even if empty regression (KTOR-2388)
- Updated serialization version to 1.2.2 (KTOR-2968)
- Made code example complete in OAuth documentation(KTOR-1415)
- Added quick action on a Application.module(...) to generate tests for a given module with all the endpoints in plugin (KTOR-2411)
- Fixed kotlin.native.concurrent.InvalidMutabilityException: mutation attempt of frozen @72c18 (KTOR-2883)
- Fixed 404 errors in ktor docs (KTOR-2915)
- Added prometeus version to Ktor docs (KTOR-2015)
- Fixed incorrect Structured Markup (LD+JSON) on Ktor docs (KTOR-2943)
- Fixed confusing/incorrect JWT auth documentation (KTOR-979)
- Fixed embedded Netty Server with watch paths is crashing in API level 22 when calling stopping server (KTOR-1613)
- Fixed NoSuchMethodError: No virtual method getParameterCount on Android API 25 and lower regression (KTOR-2924)
- Fixed X-Forwarded-Port Parse Exception when it contains comma separated list of ports regression (KTOR-2918)
- Made CookieConfiguration default to secure configuration and require user opt-out long-standing (KTOR-628)
- Updated docs section about testing with cookies (KTOR-273)
- Fixed "ApplicationEngineEnvironment was not started" when accessing application before server is started (KTOR-1854)
- Updated HTTP/2 documentation (KTOR-267)
- Fixed NPE in ApacheRequestProducer when "http://" is requested (KTOR-1405)
- Updated vulnerable versions from sonatype report (KTOR-2875)
- Fixed ByteReadChannel.readUTF8Line() indefinitely returns empty lines when
\r
is not followed by\n
(KTOR-2868)
1.6.1
- Linked back to site from Docs (KTOR-2843)
- Fixed unbound public symbol for public io.ktor.network.sockets/SocketTimeoutException when iosArm64 framework (KTOR-2276)
- Fixed configureBootstrap hook overwritten by Ktor settings (KTOR-356)
- Fixed crypto is undefined in IE11 (KTOR-409)
- Added support for X-Forwarded-Port header in XForwardedHeaderSupport plugin (KTOR-2788)
- Fixed StatusPages doesn't catch FreeMarker exceptions (KTOR-343)
- Fixed java.nio.charset.IllegalCharsetNameException: %s (KTOR-2645)
- Added application startup and hot-reloading time log (KTOR-2816)
- Fixed postpone (and don't cache) name resolution in cio client (KTOR-2513)
- Improved diagnostics for exceptions inherited from IOException (KTOR-2691)
- Fixed refresh token gets stuck (KTOR-2797)
- Fixed developmentMode is on by default in tests (KTOR-2727)
- Fixed unable to run new Ktor project (KTOR-2586)
- Fixed unhandled get freezes with
CIO
server (KTOR-333) - Fixed double host header (KTOR-379)
- Fixed use kotlin.reflect.jvm.javaType instead of the type token pattern in io.ktor.util.reflect.typeInfo (KTOR-2709)
- Fixed "JWK Public Key of type ""EC""" (KTOR-2387)
- Fixed lots of Run Configurations Created for Ktor Project with the Similar Names (KTOR-2803)
- Fixed ApplicationEngineEnvironmentBuilder.module { … } is executed twice on Exception (KTOR-2734)
- Researched shared indexes for Ktor (KTOR-2774)
- Fixed selecting custom package name in Ktor wizard still results in example.com import in ApplicationTest.kt (KTOR-2707)
- Fixed generated project with specific security and session features selected fails to compile / run (KTOR-2636)
- Fixed Wizard: Misleading comment in Static Feature (KTOR-2560)
- Fixed "Update ktor 1.5.0 docs. Deprecated ""challenge"" function for form auth in docs." (KTOR-1974)
- Fixed Auth Feature Code Snippet: form authentication the doesn't work (KTOR-821)
- Fixed the '-ea' flag works differently when running a server using Application.module and embeddedServer (KTOR-1758)
- Fixed enabled-by-default development mode breaks reflection by overriding classloader (KTOR-2306)
- Reviewed documentation for the onUpload/onDownload client callbacks (KTOR-2710)
- Fixed Ktor fails to deliver response with error: failed with exception: kotlinx.coroutines.JobCancellationException: Parent job is Completed; (KTOR-2711)
- Replaced kotlin-test dependency with junit in ktor-server-test-host (KTOR-2555)
1.6.0
- Ktor fails to deliver response with error: failed with exception: kotlinx.coroutines.JobCancellationException: Parent job is Completed; (KTOR-2711)
- Wrong Tabs Name in Code Blocks (KTOR-2726)
- Apache HTTP Client does not send Content-Length header if body is empty content (KTOR-556)
- Review Auth providers (KTOR-2637)
- When the main thread executes runBlocking, using the iOS engine will cause a deadlock (KTOR-2683)
- Deprecate TestApplicationCall.requestHandled (KTOR-2712)
- Update Dokka: Dokka tasks fails with old dokka version and Gradle 7 (KTOR-2693)
- Duplicate server
Features
Section on the Documentation Website (KTOR-2702) - Duplicate entry "Features" in Server docs (KTOR-1546)
- Upgrading from 1.4.3 to 1.5.2 introduced a routing precedence (KTOR-2278)
- Sporadic OkHttp errors after upgrading to ktor 1.3.1 (KTOR-449)
- Netty: server freezes after start error (KTOR-803)
- aSocket().bind() sometimes throws Already bound SocketException (KTOR-638)
- UDPSocketTest.testBroadcastSuccessful[jvm] is failing (KTOR-2616)
- Fix flaky CIOHttpsTest.customDomainsTest[jvm] (KTOR-2065)
- Occasionally empty response using Netty + Jackson (KTOR-1973)
- '%3D' inside query of redirect target location will be replaced to '=' (KTOR-2057)
- CIO: TLSConfigBuilder JVM allow null as password (KTOR-940)
- route("{...}") stopped matching root (KTOR-1965)
- call.respond() will not check or apply ContentNegotiation for some types (KTOR-2194)
- Add support for Velocity Tools (KTOR-2345)
- Base name of micrometer metrics is not configurable (KTOR-2210)
- Support for Compression Extensions for WebSocket (RFC 7692) (KTOR-688)
- Document usage of Bearer token in Http Client (KTOR-2439)
- How to track leaked buffers in ktor-io? (KTOR-2442)
- Routing: Add PutTyped and PatchTyped Overload (KTOR-1344)
- Migrate to Dokka 1.4.0 (KTOR-1032)
- Client upload/download progress observer/handler/interceptor (KTOR-400)
- HTTP-client auth with Bearer token (KTOR-331)
- Expose TrailingSlashRouteSelector (KTOR-2511)
- Add an option to disable URL Encoding (KTOR-553)
1.5.4
- Fixed extra trailing slashes in Route.toString (KTOR-2427)
- Fixed ByteReadChannel.read related issues (KTOR-2615,
KTOR-2519) - Fixed silently ignored exceptions in HTML DSL with StatusPages feature (KTOR-756)
- Changed IosHttpRequestException supertype to IOException (KTOR-2566)
- Fixed utility collection implementation for K/N (KTOR-2482)
- Fixed client Digest auth realm handling (KTOR-1464)
1.5.3 Release
Published 2 Apr 2021
- Upgraded to coroutines 1.4.3 (KTOR-2254)
- Upgraded kotlinx.serialization to 1.1.0 (KTOR-2238)
- Fixed I/O readRemaining sometimes looses exception (KTOR-2263)
- Fixed autoreload with 1.5.x when using embeddedServer NOT in debug mode regression (KTOR-2214)
- Fixed flaky CIOSustainabilityTest.testBlockingConcurrency[jvm] (KTOR-2265)
- Resolve 'node-fetch' on libs produced by jsBrowserProductionLibraryDistribution regression (KTOR-2230)
- Updated doc string for FormPart (KTOR-2173)
- Fixed java.lang.IllegalStateException: No instance for key AttributeKey: ExpectSuccessAttribyteKey regression (KTOR-2389)
- Supported overriding Kotlin module configuration using jackson dsl function (KTOR-1692)
- Fixed CORS can't pass on some none standard orgin on jvm (KTOR-469)
- Fixed unexpected exception when using Session feature: "Using blocking primitives on this dispatcher is not allowed" regression jvm (KTOR-1452)
- Fixed NettyApplicationEngine providing a configureBootstrap in the configuration throws IllegalStateException: group set already (KTOR-2078)
- Fixed wrong indentation in
Serving Static Content
guide (KTOR-2017) - Fixed InsufficientSpaceException trying to build ByteReadPacket jvm (KTOR-960)
- Fixed flaky ProxyTest.testHttpProxy[CIO][jvm] (KTOR-2082)
- Fixed invalid assertion for existence of the key in the key store (KTOR-2311)
- Fixed incorrect grammar in exception messages (KTOR-2284)
- Fixed flaky JavaEngineTests.testThreadLeak[jvm] (KTOR-2098)
- Fixed flaky JettyStressTest.highLoadStressTest (KTOR-2080)
- Fixed flaky ExceptionsJvmTest.testConnectionClosedDuringRequest[jvm] (KTOR-2063)
1.5.2 Release
1.5.2
Published 25 Feb 2021
- Fixed Dokka building for master (KTOR-2206)
- Fixed native build on linux machine (KTOR-2200)
- Fixed docker doc is incorrect / does not work (KTOR-2179)
- Fixed crash with Firebase Performance in iOS (KTOR-642)
- Fixed Ktor Client CIO engine Jvm ignores Cipher suites with key strength more than 128 bits. (KTOR-1914)
- Fixed mandatory Path Segment parameter can be empty, if no explicit route with trailing / is defined (KTOR-2054)
- Fixed flaky ClientSocketTest.testSelfConnect[jvm] (KTOR-2060)
- Switch JS Fetch API to Standard Library (org.w3c.fetch.*) (KTOR-1460)
- Fixed CIO server always start on "0.0.0.0" - does not respect "connector" configuration (KTOR-334)
- Fixed server/netty: IllegalReferenceCountException (KTOR-1801)
- Fixed digest authentication: cannot successfully pass authentication using curl or web browser (KTOR-1466)
- Fixed HTTP Client exception is masked by JobCancellationException with Ktor 1.5.0 (KTOR-1967)
- Fixed changing
requestTimeoutMillis
in config of HttpTimeout feature doesn't change the CIO's timeout (KTOR-2000) - Fixed test a POST with MultiPart using TestApplicationEngine does not success or fail (KTOR-345)
- Fixed default Headers feature adds duplicated Server header (KTOR-1976)
- Fixed custom response validation is not running when default is disabled (KTOR-2007)
- Fixed session cookie with very long max age duration (KTOR-692)