CHANGELOG.md 6,6 КБ
Newer Older
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 0.9.2
> Unpublished

* 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)

Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
31
32
33
# 0.9.1
> Published 29 Jan 2018

Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
34
* Support for blocking servlets and GAE
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
* `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

Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
52
# 0.9.0
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
53
> Published 31 Oct 2017
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
54
55
56

* Package structure reworked
* Packages and maven groupId renamed org.jetbrains.ktor -> io.ktor
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
57
* Server-related artifacts having ktor-server-* name prefix (ktor-netty -> ktor-server-netty)
Sergey Mashkov's avatar
Sergey Mashkov включено в состав коммита
58
59
60
61
62
63
64
65
66
67
68
69
70
* 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

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
71
# 0.4.0
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
72
> Published 16 Aug 2017
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
73

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
74
* Built with Kotlin 1.1.4
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
75
* Refactored receive/response pipelines and moved them into respective ApplicationRequest & ApplicationResponse classes 
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
76
* Fixes, improvements and integration tests for HTTP/2 support
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
77
78
* Update `ContentType` to treat all parts case insensitively
* Remove `ApplicationLog` and use SLF4J `Logger` directly
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
79
* Add HttpMethod.Patch and respective builder functions 
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
80
* `routing` function will now install `Routing` feature or use existing installed feature for easier modules 
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
81
* Convert sessions to proper feature, support multiple sessions, improve DSL 
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
82
* HeadRequestSupport feature is renamed to AutoHeadResponse (with deprecated typealias)
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
83
84
85
86
87
88
89
* Replace ApplicationTransform with receive pipeline
* Introduce send/receive pipelines for all call pipelines
* Gson application feature for JSON transformation of incoming & outgoing data objects
* Added HttpBin sample (thanks to @jmfayard)
* Employ `DslMarker` annotation to prevent accidental use of route functions in get/post handlers 
* Improve diagnostics for untransformed content
* Ensure missing file (`FileNotFoundException`) can be handled properly with `StatusPages` feature 
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
90
* Websocket fixes for large frames, fragmentation and more
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
91
92
93
94
* Support for specifying config file with command line
* Improvements in Servlet-based hosts
* Memory allocation and performance optimisations
* Add Apache 2 LICENSE file
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
95
96
97
* Add documentation to some types
* New sample for static content
* Bump versions of dependencies
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
98

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
99
# 0.3.3
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
100
> Published 22 Jun 2017
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
101
102
103
104

* Execution model slightly changed to avoid global executors. ApplicationEnvironment doesn't provide `executor` anymore
* Websockets refactored with channels instead of callback functions
* Fixed bug with compression not preserving status code (thanks Diego Rocha)
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
105
106
* Fixes in Netty support: performance issues under heavy load and keep-alive connections, cancellation, closed sockets
* Fixes in session serialization, enums support
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
107
108
109
* Optimisations in Servlet and Jetty hosts, fixes in edge cases
* Fixes in chat sample

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
110
# 0.3.2
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
111
> Published 24 Apr 2017
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
112
113
114

* Fix bug in byte array response that missed Content-Length header
* Fix default encoding in FreeMarker to be UTF-8
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
115
116
117
* Fix FreeMarker writer
* Fix charset for text/* content types to be UTF-8 by default
* Fix Kweet sample application in kweet deletion
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
118
* Fix form authentication to adhere to removal of post parameters from `parameters`
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
119
120
121
122
123
124
125
* Rework static content DSL to improve usability
* Improve Accept header handling in routes
* Support local class in locations, improve diagnostics
* Add servlet host tests running in Jetty, but using servlet deployment model
* Benchmarks can now measure GC performance (and any other JMH profiler)
* Performance optimisations

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
126

Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
127
# 0.3.1
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
128
> Published 7 Apr 2017
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
129
130
131
132
133
134
135
136
137
138
139

* Replace routing function `contentType` with `accept`
* Major refactoring in internal host system to simplify and unify code
  * Use `embeddedServer(Netty, …)` instead of `embeddedNettyServer(…)`
  * Support automatic reloading in embedded hosts
  * Fix ApplicationTransform problems preventing Freemarker templates from working
* Fix json and logback dependencies to avoid propagating to clients 
* Bug fixes & performance optimisations
* Documentation

# 0.3.0
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
140
> Published 8 Mar 2017
Ilya Ryzhenkov's avatar
Ilya Ryzhenkov включено в состав коммита
141
142

* Major refactor to coroutines