Skip to content

Commit

Permalink
KTOR-5800 Add changelog for 2.3.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
Stexxe authored and rsinukov committed Apr 19, 2023
1 parent 00fff04 commit ea48869
Showing 1 changed file with 68 additions and 0 deletions.
68 changes: 68 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,71 @@
# 2.3.0
> Published 19 April 2023
### Features
* Support loading multiple configuration files ([KTOR-5658](https://youtrack.jetbrains.com/issue/KTOR-5658))
* Static files filters or something similar to mod_rewrite ([KTOR-818](https://youtrack.jetbrains.com/issue/KTOR-818))
* Built-in support for HEAD requests for static files ([KTOR-4052](https://youtrack.jetbrains.com/issue/KTOR-4052))
* Ability to set Content-Type of static resource ([KTOR-2312](https://youtrack.jetbrains.com/issue/KTOR-2312))
* Support regex patterns in routing ([KTOR-5110](https://youtrack.jetbrains.com/issue/KTOR-5110))
* Support Flow in ktor-serialization ([KTOR-3788](https://youtrack.jetbrains.com/issue/KTOR-3788))
* Upgrade Client Apache Engine Version to use Apache 5 ([KTOR-4547](https://youtrack.jetbrains.com/issue/KTOR-4547))
* Support for CURLOPT_CAINFO and CURLOPT_CAPATH in ktor-client-curl ([KTOR-5614](https://youtrack.jetbrains.com/issue/KTOR-5614))
* Allow passing multiple acceptable content types to accept route selector ([KTOR-419](https://youtrack.jetbrains.com/issue/KTOR-419))
* Support `100 Continue` ([KTOR-829](https://youtrack.jetbrains.com/issue/KTOR-829))

### Improvements
* The '425 Too Early' status code is missing in the HttpStatusCode enum ([KTOR-4673](https://youtrack.jetbrains.com/issue/KTOR-4673))
* Feature request: SO_REUSEADDR option for embedded server ([KTOR-5529](https://youtrack.jetbrains.com/issue/KTOR-5529))
* Add opportunity to pass type info into WebSockets serializing methods ([KTOR-5740](https://youtrack.jetbrains.com/issue/KTOR-5740))
* Ktor JS websocket client unconfigurable logging ([KTOR-5456](https://youtrack.jetbrains.com/issue/KTOR-5456))
* Update JTE to 2.3.0 ([KTOR-5698](https://youtrack.jetbrains.com/issue/KTOR-5698))
* Update Kotlin to 1.8.10 ([KTOR-5544](https://youtrack.jetbrains.com/issue/KTOR-5544))
* Migrate to the new Kotlin JS IR backend ([KTOR-5543](https://youtrack.jetbrains.com/issue/KTOR-5543))
* Prefer Node instead of browser behavior ([KTOR-5650](https://youtrack.jetbrains.com/issue/KTOR-5650))
* Update reported dependencies ([KTOR-5662](https://youtrack.jetbrains.com/issue/KTOR-5662))
* AutoHead should dispose response body ([KTOR-5684](https://youtrack.jetbrains.com/issue/KTOR-5684))
* Add `append(String, List<String>)` overload to `FormBuilder` ([KTOR-5493](https://youtrack.jetbrains.com/issue/KTOR-5493))
* Support serving static files from resources in GraalVM native image ([KTOR-5580](https://youtrack.jetbrains.com/issue/KTOR-5580))
* Comparable HttpStatusCode ([KTOR-5629](https://youtrack.jetbrains.com/issue/KTOR-5629))
* Support preCompressed with resources ([KTOR-2677](https://youtrack.jetbrains.com/issue/KTOR-2677))
* Add shutdown configuration for engine in stop method ([KTOR-5560](https://youtrack.jetbrains.com/issue/KTOR-5560))
* Logging: Add filter/sanitization of sensitive headers ([KTOR-5523](https://youtrack.jetbrains.com/issue/KTOR-5523))
* Add resource route builders accepting typed body as second parameter ([KTOR-5589](https://youtrack.jetbrains.com/issue/KTOR-5589))
* CallLogging: add config to avoid logging static file request ([KTOR-5474](https://youtrack.jetbrains.com/issue/KTOR-5474))
* Update Tomcat to 10 ([KTOR-5266](https://youtrack.jetbrains.com/issue/KTOR-5266))
* Update Jetty to version 11 ([KTOR-5267](https://youtrack.jetbrains.com/issue/KTOR-5267))
* Update Parameters and Headers DSL to be consistent with stdlib ([KTOR-627](https://youtrack.jetbrains.com/issue/KTOR-627))
* Consider quoting `Boolean` during construction of multipart requests ([KTOR-5405](https://youtrack.jetbrains.com/issue/KTOR-5405))
* Simplify Static Content Plugin ([KTOR-5265](https://youtrack.jetbrains.com/issue/KTOR-5265))

### Bugfixes
* Websockets: connection should be failed immediately when no continuation frame goes after a fragmented text frame ([KTOR-5018](https://youtrack.jetbrains.com/issue/KTOR-5018))
* Websockets: Connection should be failed immediately, since all data frames after the initial data frame must have opcode 0 ([KTOR-5014](https://youtrack.jetbrains.com/issue/KTOR-5014))
* Websockets: Connection should fail immediately (1002/Protocol Error) when control frame has a payload with more than 125 octets ([KTOR-5006](https://youtrack.jetbrains.com/issue/KTOR-5006))
* Java engine: Websockets client sends two PONG frames for each PING frame from a server ([KTOR-5653](https://youtrack.jetbrains.com/issue/KTOR-5653))
* Websockets: Erroneous trace log about expired websocket pings ([KTOR-5672](https://youtrack.jetbrains.com/issue/KTOR-5672))
* DarwinClientEngine: a request deadlocks on macOS since 2.2.2 ([KTOR-5502](https://youtrack.jetbrains.com/issue/KTOR-5502))
* Requests don't match in nested Regex Routing ([KTOR-5750](https://youtrack.jetbrains.com/issue/KTOR-5750))
* IllegalArgumentException in Regex Routing ([KTOR-5748](https://youtrack.jetbrains.com/issue/KTOR-5748))
* Unneeded escaping in Regex Routing isn't processed ([KTOR-5746](https://youtrack.jetbrains.com/issue/KTOR-5746))
* Native: Read from a closed socket doesn't throw an exception ([KTOR-5093](https://youtrack.jetbrains.com/issue/KTOR-5093))
* Reading response of HEAD request breaks when Content-Length > 0 ([KTOR-5699](https://youtrack.jetbrains.com/issue/KTOR-5699))
* "Serializer for class 'Any' is not found" error when responding with Any type since Ktor 2.2.4 ([KTOR-5687](https://youtrack.jetbrains.com/issue/KTOR-5687))
* BearerAuthProvider: Token is being refreshed multiple times when queued call finishes with 401 after refresh token succeeds ([KTOR-5681](https://youtrack.jetbrains.com/issue/KTOR-5681))
* CIO: nmap crashes server with "SocketException: Invalid argument" error ([KTOR-5636](https://youtrack.jetbrains.com/issue/KTOR-5636))
* DigestAuthProvider: realm sent from the server doesn't participate in the computation of `response` ([KTOR-4514](https://youtrack.jetbrains.com/issue/KTOR-4514))
* OAuth2: "JsonObject is not a JsonPrimitive" error when server replies with nested JSON object on a token request ([KTOR-5669](https://youtrack.jetbrains.com/issue/KTOR-5669))
* CallLogging: logs caused by an exception are suppressed when mdc provider is configured ([KTOR-5665](https://youtrack.jetbrains.com/issue/KTOR-5665))
* Metrics: ClassCastException when the DropwizardMetrics plugin is installed after the MicrometerMetrics plugin ([KTOR-5595](https://youtrack.jetbrains.com/issue/KTOR-5595))
* ByteBufferChannel throws exception when HttpCache, ContentEncoding and onDownload are used ([KTOR-5532](https://youtrack.jetbrains.com/issue/KTOR-5532))
* runBlocking in TestApplicationEngine loses coroutineContext ([KTOR-5525](https://youtrack.jetbrains.com/issue/KTOR-5525))
* Incorrect handling of private cache directive in HttpCachePlugin ([KTOR-5570](https://youtrack.jetbrains.com/issue/KTOR-5570))
* The default implementation of challengeFunction is empty, causing no session users to access protected resources ([KTOR-5467](https://youtrack.jetbrains.com/issue/KTOR-5467))
* Wrong ContentType for .mjs files ([KTOR-5533](https://youtrack.jetbrains.com/issue/KTOR-5533))
* Non-standard `Content-Type` headers for static files ([KTOR-5311](https://youtrack.jetbrains.com/issue/KTOR-5311))
* CIO: Client fails to parse response without Content-Length, Connection headers and chunked transfer encoding ([KTOR-5327](https://youtrack.jetbrains.com/issue/KTOR-5327))
* Conflict between `ContentNegotiation` and `Mustache` plugins ([KTOR-5337](https://youtrack.jetbrains.com/issue/KTOR-5337))

# 2.2.4
> Published 28 February 2023
Expand Down

0 comments on commit ea48869

Please sign in to comment.