All Versions
65
Latest Version
Avg Release Cycle
29 days
Latest Release
-
Changelog History
Page 6
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 forCallLogging
- 🛠 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
inktor-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
andWebSocket
server features compatibility (#745)- Server session cookie duration is optional (#736)
- 🛠 Server autreload support fixed (#736)
- 🛠
CachingOptions
resolution ambiguity fixed (#741)
- 🌲 Client logging feature (
-
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>()
andresponse.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
andUrlBuilder
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
toEngineMain
- 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
andresponse.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
toXForwardedHeaderSupport
(#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
andput
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
andContent-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 authvalidate
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
fromreceiveOrNull()
(#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
missingAccept
header support (#317)
- 🆕 New auth DSL, more suspendable functions (such as
-
v0.9.1 Changes
Published 29 Jan 2018
- 👌 Support for blocking servlets and GAE
Headers
andParameters
types instead ofValuesMap
- 👍 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
andstatus
- ⬆️ 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