All Versions
65
Latest Version
Avg Release Cycle
29 days
Latest Release
-

Changelog History
Page 6

  • v1.1.1 Changes

    Published 26 Dec 2018

    • 🛠 Fixed broken pom files
  • v1.1.0 Changes

    Published 24 Dec 2018

    • ⬇️ Reduced JDK7/8 dependencies (including #762)
    • 🗄 Discarded deprecated API
    • 👍 Coroutines debug agent support
      • see Kotlin/kotlinx.coroutines/core/kotlinx-coroutines-debug/README.md
    • 🛠 Fixed IndexOutOfBounds during main module function search
    • okhttp-client: pass contentLength for multipart form data
    • 👌 Improved auto-reloading feature in corner-cases (#783)
    • 🛠 Fixed HTTP server upgrade to delay socket close (#674)
    • ➕ Added Mustache templating feature (#713)
    • ➕ Added ability to configure Logger instance for CallLogging
    • 🛠 Fixed session HMAC to do a constant time comparison
    • ➕ Added Node.js suport for js http client (#791)
    • 🗄 SessionTransportTransformerDigest is deprecated (#792)
      • also switched to SHA-384 by default that is not vulnerable
    • 🛠 Fixed jetty server thread names (#756)
    • 🛠 Fix conditional headers zoned dates (#476)
    • NettyChannelInitializer made public (#286)
    • 🛠 Fixed slf4j dependency (#808)
    • 🛠 Fixed client logging freeze
    • ➕ Added client DigestAuth feature
    • 🛠 Fixed apache client response reading freeze
    • 🛠 Fixed apache client engine errors handling
    • Kotlin 1.3.11, kotlinx.coroutines 1.1.0
  • v1.0.1 Changes

    Published 4 Dec 2018

    • 🌲 Client logging feature (Logging in ktor-client-logging)
    • 👀 Client user agent feature (see UserAgent)
    • 👍 Client top-level list serialization support (#739)
    • JS client body handling fix (#746)
    • 🛠 Client redirect edge cases fixed
    • Client close/cancel handling improved
    • 🛠 CIO client bugfixes
    • 👍 Unicode filenames support in multipart fileupload (#757, #687, #596)
    • ContentNegotiation and WebSocket server features compatibility (#745)
    • Server session cookie duration is optional (#736)
    • 🛠 Server autreload support fixed (#736)
    • 🛠 CachingOptions resolution ambiguity fixed (#741)
  • v1.0.0 Changes

    Published 19 Nov 2018

    • 👌 Improved documentation
    • 👌 Improved performance
    • Kotlin 1.3.10
    • 👍 kotlinx.coroutines 1.0.1 and structured concurrency support:
      • Coroutine scopes introduced per pipeline, call, application and web socket session
    • 🛠 Fixed client response cancelation via receive<Unit>() and response.cancel()
    • 0️⃣ Disabled client pipelining by default to provide safe behavior by default
    • GMTDate improvements on js and native
    • ➕ Added client response observer for response logging purpose
    • ✅ Test client and mock engine improvements
    • 🛠 Cookies dates, domains and dupicate parameters processing fixed
    • 🛠 Server pipeline fixed to discard request body if not used (#609, #574)
    • 🛠 Websocket session lifecycle fixed during close sequence
    • 🛠 Several Url and UrlBuilder fixes and improvements
    • Introduced ExpectSuccess client feature
    • 🛠 Fixed StatusPages to handle child job failures (#646)
    • 🛠 Compression bugfixes (including #708, #685)
    • 🛠 Fixed timeouts in websockets with Jetty
    • 📇 Renamed DevelopmentEngine to EngineMain
    • Restricted @Location annotation targets, allow on a typealias (#539)
    • ✂ Removed default connector on port 80 (#670)
    • 🛠 Several JWT and OAuth bugfixes and error habdling improvements (#664, #676, #550)
    • 👌 Improved serialization client feature
  • v0.9.5 Changes

    Published 19 Sept 2018

    • ➕ Added shorthand client functions for HEAD, OPTIONS, PATCH and DELETE methods (#562)
    • 📜 URLBuilder's parser improved (#553, #567)
    • 👌 Improved client's cookie matching and processing
    • Introduced CallId feature
    • ➕ Added MDC support to CallLogging feature
    • 🛠 Fixed setting charset encoding for non-text content types
    • ➕ Added respondOutputStream { } response function
    • Migrated to Kotlin 1.2.70
    • Split Infrastructure phase into Monitoring and Features phases
  • v0.9.4 Changes

    Published 29 Aug 2018

    • ➕ Added multiplatform client support (android and ios)
    • ➕ Added Android client engine (UrlConnection)
    • ➕ Added OkHttp client engine (Android support)
    • ➕ Added Jackson feature support
    • ➕ Added Ios client engine
    • 🗄 Deprecated response.contentType and response.contentLength
    • 🗄 Strengthened IncomingContent deprecation
    • ⬆️ Upgraded Jetty ALPN, Tomcat
    • 🛠 Fixed config evaluation issues (#488)
    • ⬆️ Disabled async incoming upgrade stream at Tomcat
    • Prohibited appending unsafe headers to request headers
    • 📇 Renamed XForwardedHeadersSupport to XForwardedHeaderSupport (#547)
    • ➕ Added HttpResponse.receive<T> method to run response pipeline on raw response
    • 📜 Introduced kotlin multiplatform url-parser
    • 👌 Supported client form data and multipart
    • ➕ Added missing client builders for post and put methods
    • 🔧 Simplify client configuration API
    • 🛠 Fixed several compression issues
    • 🛠 Fixed client attributes evaluation
    • 🛠 Fixed CIO engine random algorithm selection
    • 🛠 Fixed url parsing (#511)
    • 🛠 Fixed ambiguity in writing client Content-Type and Content-Length headers
    • 🐎 Minor performance fixes
    • 🛠 Netty HTTP/2 fixes
    • 🛠 Fixed IOOBE in satic resource resolution (#493)
    • 🛠 Fixed JWT error handling
    • Kotlin 1.2.61, kotlinx.coroutines 0.25.0
  • v0.9.3 Changes

    Published 26 Jun 2018

    • 👌 Improved WebSocket API
    • Websocket header Sec-WebSocket-Key is now optional
    • 🛠 Fixed client cookies rendering to avoid x-enc
    • 🛠 Fixed plain text client reader (#392)
    • Added EC support in CIO TLS (#394: ECDHE_RSA_AES256_SHA384, ECDHE_RSA_AES128_SHA256)
    • 🛠 Fix client certificate validation
    • Introduced optional authentication
    • ➕ Added ApplicationCall as receiver for auth validate functions
    • Introduced call.respondBytes (#395)
    • 👌 Improved JWT support: multiple schemes, nullable issuer
    • Conversion service enum type diagnostics improved (#403)
    • 👍 Avoided using apos entity in HTML escaping as IE doesn't support it (#400)
    • 👍 Converter support for java big numbers
    • Ability to add auth methods to existing feature on the fly
    • 👌 Improved auth header scheme and contents validation (#415)
    • 0️⃣ Default charset for BasicAuth is now UTF-8 (#420)
    • ➕ Added ByteArrayContent.contentLength (#421)
    • 🛠 Fixed headersOf case insensitive issue (#426)
    • Client deserialization improved by using type token
    • 0️⃣ Ability to disable client default transformers
    • Explicit Accept header in client request
    • Turn on masking in client websockets (#423)
    • 🛠 Fixed inverted PartialContent.Configuration.maxRangeCount check (#440)
    • 🛠 Fixed uncaught UnsupportedMediaTypeException from receiveOrNull() (#442)
    • 🛠 Fix multipart boundary header parsing
    • ⬆️ Upgraded jwks/jwt, applied RSA256 by default if unspecified (#434, #435)
    • ⬆️ Upgrade coroutine version to 0.23.3
    • ⬆️ Upgrade Jetty version to 9.4.11.v20180605
    • ➕ Add client-mock-engine for testing purpose
    • 0️⃣ Use default available engine by deafult
    • ⬆️ Upgrade kotlin to 1.2.50

    🚚 Move ktor-samples to a separate repository (#340). https://github.com/ktorio/ktor-samples

  • v0.9.2 Changes

    Published 23 Apr 2018

    • 🆕 New auth DSL, more suspendable functions (such as verify/validate)
    • RoutingResolveTrace for introspecting routing resolution process
    • 🛠 HTTP client improvements and bugfixes (DSL, reconnect, redirect, cookies, websockets and more)
    • 👍 CIO http client pipelining support, chunked and more
    • 👍 CIO initial TLS support
    • Session authentication provider
    • OAuth2: introduce ability to generate and verify state field
    • OAuth: fix scopes parameter to conform to RFC (#329)
    • OAuth2: fix bug with double scopes encoding (#370)
    • OAuth2: add ability to intercept redirect URL
    • CORS: introduce allowSameOrigin option
    • Auth: provide application call as receiver for validate functions (#375 and related)
    • ✅ Test host reworked, handleRequest reads the body and redirects the exceptions correctly
    • 🛠 Servlets: fixed inputStream acquisition, fixed error handling
    • Java 9 compatibility improved (no modules yet)
    • 🛠 Digest auth fixes (#380)
    • 🌲 Log running connectors details for better development experience (#318)
    • Last-Modified header and related functionality to work in proper GMT time zone (#344)
    • 🗄 IncomingContent is deprecated
    • 🛠 URLBuilder fixes and improvements
    • 📚 Documentation improvements
    • 🐎 Performance optimizations (Netty, CIO server backends)
    • CIO server improved stability
    • 👍 Encrypted session support (SessionTransportTransformerEncrypt)
    • Empty (null) model for freemarker (#291)
    • 👍 ContentNegotiation missing Accept header support (#317)
  • v0.9.1 Changes

    Published 29 Jan 2018

    • 👌 Support for blocking servlets and GAE
    • Headers and Parameters types instead of ValuesMap
    • 👍 Velocity templates support
    • Unsafe (Forbidden) headers checks added
    • 🗄 Deprecated Resource type
    • ➕ Added support for extensible version providers to ConditionalHeaders feature
    • 🔧 Engine-specific configuration support for application.conf
    • ➕ Added filtering and customisation of log level to CallLogging feature
    • ➕ Added ability to skip authentication using a predicate, add documentation to Authentication feature
    • Introduced auth0 JWT/JWKS authentication (#266)
    • ktor http client DSL improvements
    • 🐎 CIO engine improvements, stability and performance
    • Introduced [OutgoingContent] properties contentLength, contentType and status
    • ⬆️ Upgrade Netty in the corresponding engine implementation
    • Introduced shareWorkGroup option for Netty engine
    • 📚 More documentation
    • ⬆️ Bump versions of dependencies
  • v0.9.0 Changes

    Published 31 Oct 2017

    • 📦 Package structure reworked
    • 📦 Packages and maven groupId renamed org.jetbrains.ktor -> io.ktor
    • Server-related artifacts having ktor-server-* name prefix (ktor-netty -> ktor-server-netty)
    • Application Host renamed to Application Engine
    • FinalContent renamed to OutgoingContent as opposite to IncomingContent (introduced in 0.4.0)
    • ➕ Added Application Engine configure facilities so one can specify thread pool size or some engine-specific parameter
    • 🎉 Initial idiomatic ktor HTTP client implementation (artifacts prefixed with ktor-client-*)
    • 👍 Metrics support, DropWizard integration
    • 👌 Improve routing API, tune resolution mechanics, hide some implementation details
    • 👍 ContentNegotiation feature to support variable content on send and receive
    • 👍 Jackson support
    • Experimental pure kotlin application engine on coroutines (CIOApplicationEngine) and CIO-based http client backend
    • 👌 Improved stability under load
    • Status pages processing improvements
    • 📚 A lot of documentation