Skip to content

Releases: ktorio/ktor

1.6.5 Release

02 Nov 15:12
7f9cb16
Compare
Choose a tag to compare
  • 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

01 Oct 09:15
832b70c
Compare
Choose a tag to compare

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

26 Aug 08:03
@e5l e5l
Compare
Choose a tag to compare
  • 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 without routing (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

29 Jul 11:02
Compare
Choose a tag to compare
  • 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

30 Jun 23:33
b519016
Compare
Choose a tag to compare
  • 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

28 May 13:19
@e5l e5l
Compare
Choose a tag to compare
  • 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

30 Apr 09:37
Compare
Choose a tag to compare
  • 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

05 Apr 11:04
429ed3c
Compare
Choose a tag to compare

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

26 Feb 10:00
63ec27a
Compare
Choose a tag to compare

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)

1.5.1

28 Jan 08:59
@e5l e5l
Compare
Choose a tag to compare

Published 27 Jan 2021

  • Circular reference for SocketException and StackOverflowError when using SLF4J logger (KTOR-1080)
  • start.ktor.io - Incorrect import for websockets for ktor 1.2.4 (KTOR-274)
  • Unable to catch socket exceptions (KTOR-1166)
  • Support explicit WebSocket session close (KTOR-340)
  • ktor-client-apache: thread stuck in ByteBufferChannel.readRemainingSuspend (KTOR-1463)
  • Logging tests fails due to floating log entries (KTOR-1870)
  • Adding existing dropwizard metrics registry to Ktor (KTOR-1798)
  • Exception kotlinx.serialization.SerializationException: Class 'ArrayList' is not registered for polymorphic serialization in the scope of 'Collection' in 1.5.0 (KTOR-1795)
  • Prevent double quotes on header params (KTOR-1797)
  • Post request shows empty body after upgrading v1.3.2 (KTOR-426)
  • CIO native selector doesn't select new descriptors (KTOR-1856)
  • Client logging docs don't mention all required dependencies (KTOR-280)
  • Out of date self-signed-certificate documentation (KTOR-272)
  • ClosedReceiveChannelException when making request with CIO engine using a proxy to https (KTOR-1458)
  • Incorrect encoding function used for URL path by URLBuilder (KTOR-1543)
  • A single slash gets ignored for defining a route, but 1.5 requires them due to KTOR-372 (KTOR-1615)
  • Wrong shadow plugin version in Fat JAR docs (KTOR-1359)
  • ktor server documentation is returning 404 (KTOR-1602)
  • CORS doesn't reject bad headers (KTOR-1662)
  • OkHTTP client engine tries to close the connection twice during the closing handshake (KTOR-1374)
  • Dispatcher is closing earlier than client (KTOR-1661)
  • Server losing channel exceptions at receive (KTOR-1590)
  • Request parameters should have name (KTOR-378)
  • Status-code must be 3-digit (KTOR-370)
  • Connect request sends wrong status line (KTOR-1612)
  • Response channel is always cancelled with Logging feature (KTOR-1598)
  • Java client logging tests are fluky (KTOR-1599)
  • HttpTimeoutTest.testConnect are flaky (KTOR-1583)
  • Jetty: requests to resources, that doesn't respond with HTTP/2, lead to unexpected behaviour (KTOR-874)
  • "Unfinished workers detected" using client on native (KTOR-1220)
  • HttpTimeout.testSocketTimeoutWriteFail is flaky (KTOR-1584)
  • Reserved characters in path is not encoded (KTOR-570)
  • testTimeoutCancelsWhenParentScopeCancels is flaky (KTOR-1585)
  • Java client freeze (KTOR-1567)
  • CallLoggingTest is flaky (KTOR-1582)
  • Missing dependency information the Authentication and Authorization topic (KTOR-1575)
  • "Using a Self-Signed Certificate" docs provide wrong dependency for 1.3.x (KTOR-21)
  • "Testing Http Client" docs page contains artifact name with -native suffix (KTOR-1006)
  • Custom JSON mapping with Jackson (KTOR-603)
  • Serialization for client section does not explain how to use it (KTOR-999)
  • Add information about required artifacts to the WebSockets topic (KTOR-1532)
  • Missing dependency information the Client Auth topic (KTOR-1533)
  • New documentation lacks artifacts information for Gradle and Maven (KTOR-1167)
  • ResponseException is no longer serializable starting from 1.4.0 (breaking change) (KTOR-1552)
  • Upgrade kotlin to 1.4.21 (KTOR-1637)