Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add changelog for 3.3.0#5081

Merged
Stexxe merged 4 commits intomainfrom
stexxe/changelog-3.3.0
Sep 12, 2025
Merged

Add changelog for 3.3.0#5081
Stexxe merged 4 commits intomainfrom
stexxe/changelog-3.3.0

Conversation

@Stexxe
Copy link
Contributor

@Stexxe Stexxe commented Sep 12, 2025

No description provided.

@Stexxe Stexxe requested review from bjhham and osipxd and removed request for osipxd September 12, 2025 08:01
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 12, 2025

Walkthrough

Adds release notes to CHANGELOG.md: introduces version 3.3.0 (Features, Improvements, Bugfixes) published 11 September 2025 and a 3.2.3 header published 29 July 2025. Changes are documentation-only; no source code or API modifications.

Changes

Cohort / File(s) Summary of Changes
Documentation
CHANGELOG.md
Added 3.3.0 release notes (published 11 September 2025) with categorized Features (7), Improvements (8), and Bugfixes (10); added 3.2.3 header (published 29 July 2025); preserved section ordering.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Suggested reviewers

  • osipxd
  • bjhham
  • e5l

Pre-merge checks (2 passed, 1 inconclusive)

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description Check ❓ Inconclusive There is no pull request description or repository description template provided in the input, so I cannot compare the PR body against the required template or determine whether required sections are present and complete. Please paste the current PR description (the body shown on GitHub) and, if available, the repository's description template so I can verify required sections such as summary, motivation, changes, testing, and release notes, then I will re-evaluate for completeness.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The PR title "Add changelog for 3.3.0" is concise, a single sentence, and directly reflects the primary change in the changeset (adding the 3.3.0 section to CHANGELOG.md), so it accurately summarizes the main purpose of the branch for reviewers scanning history.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch stexxe/changelog-3.3.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Stexxe Stexxe requested review from marychatte and osipxd September 12, 2025 08:01
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (5)
CHANGELOG.md (5)

4-4: Heading level vs. markdownlint MD001.

markdownlint expects H2 after H1. You can either:

  • keep H3 for consistency with the rest of the file and ignore MD001 for CHANGELOG.md, or
  • switch section headings under 3.3.0 to H2.

If you choose the latter, apply:

-### Features
+## Features
...
-### Improvements
+## Improvements
...
-### Bugfixes
+## Bugfixes

Also applies to: 14-14, 24-24


5-12: Normalize terminology/casing for clarity and consistency.

Minor wording/case tweaks (HTTP/2, TLS, SHA-256, phrasing):

-* Support for server side http2 without tls (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))
+* Support for server-side HTTP/2 without TLS (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))
...
-* Serve static resources with caching headers and ETag based on sha256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))
+* Serve static resources with caching headers and ETag based on SHA-256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))
-* Jetty engine: Upgrade Jetty dependencies to the latest version 12 ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))
+* Jetty engine: Upgrade Jetty dependencies to version 12 ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))
-* staticFiles: when directory is requested, file listing or an error message should be returned ([KTOR-8115](https://youtrack.jetbrains.com/issue/KTOR-8115))
+* staticFiles: when a directory is requested, a file listing or an error message should be returned ([KTOR-8115](https://youtrack.jetbrains.com/issue/KTOR-8115))
-* Static content: Support a custom respond logic if the file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))
+* Static content: support custom respond logic when a file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))

26-26: “web socket” → “WebSocket” and phrasing.

-* Big number of simultaneous outbound web socket connections leads to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))
+* Large number of simultaneous outbound WebSocket connections leads to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))

30-30: Wrap generic type in code font.

-* SerializationException when Application.propertyOrNull() is called with type Map<String, Any?> ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))
+* SerializationException when Application.propertyOrNull() is called with type `Map<String, Any?>` ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))

32-32: Small grammar fix (“except the first”).

-* HttpCache: all header values but first in HttpResponse.varyKeys() are ignored ([KTOR-6402](https://youtrack.jetbrains.com/issue/KTOR-6402))
+* HttpCache: all header values except the first in HttpResponse.varyKeys() are ignored ([KTOR-6402](https://youtrack.jetbrains.com/issue/KTOR-6402))
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 40eb608 and dab5ffe.

📒 Files selected for processing (1)
  • CHANGELOG.md (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-05-16T13:11:28.416Z
Learnt from: osipxd
PR: ktorio/ktor#4860
File: ktor-server/ktor-server-plugins/ktor-server-di/api/ktor-server-di.api:24-26
Timestamp: 2025-05-16T13:11:28.416Z
Learning: Binary incompatible changes (such as constructor signature changes) are acceptable in the ktor-server-di module when the version is not yet released, as confirmed by the development team.

Applied to files:

  • CHANGELOG.md
🪛 markdownlint-cli2 (0.17.2)
CHANGELOG.md

4-4: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3

(MD001, heading-increment)

🔇 Additional comments (1)
CHANGELOG.md (1)

1-2: Looks good overall.

Release header/date read clearly; structure matches prior entries.

@Stexxe Stexxe requested a review from bjhham September 12, 2025 08:13
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (4)
CHANGELOG.md (4)

1-4: Resolve markdownlint MD001 (heading increment) or explicitly suppress it.

The file consistently uses H1 for versions and H3 for subsections. Either keep that convention and suppress MD001 locally, or switch subsections to H2. Given the existing convention, suppression is safer.

Option A (suppress MD001 for this file):

+<!-- markdownlint-disable MD001 -->
 # 3.3.0
 > Published 11 September 2025

Option B (change subsection levels just for 3.3.0 — not recommended due to inconsistency with the rest of the file):

-### Features
+## Features

5-11: Polish capitalization/wording in Features for consistency (HTTP/2, TLS, ETag, SHA‑256, Jetty 12).

Minor editorial fixes to align with technical casing and improve clarity.

-* Support for server side http2 without tls (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))
+* Support for server‑side HTTP/2 without TLS (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))
-* Serve static resources with caching headers and ETag based on sha256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))
+* Serve static resources with caching headers and ETag based on SHA‑256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))
-* Jetty engine: Upgrade Jetty dependencies to the latest version 12 ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))
+* Jetty engine: Upgrade Jetty dependencies to version 12.x ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))
-* staticFiles: when directory is requested, file listing or an error message should be returned ([KTOR-8115](https://youtrack.jetbrains.com/issue/KTOR-8115))
+* staticFiles: when a directory is requested, return a file listing or an error message ([KTOR-8115](https://youtrack.jetbrains.com/issue/KTOR-8115))
-* Static content: Support a custom respond logic if the file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))
+* Static content: Support custom response logic when the file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))

13-21: Confirm intent of two Kotlin entries; reword one CIO item.

  • Having both “Upgrade to Kotlin 2.2” and “Bump Kotlin API level to 2.2” may be intentional (compiler vs. API level), but please confirm.
  • CIO item reads like a bug fix; keep under Improvements if that’s your taxonomy, otherwise consider moving.

23-33: Tighten wording and casing in Bugfixes; wrap code identifiers in backticks.

Improves clarity and consistency.

-* Big number of simultaneous outbound web socket connections leads to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))
+* A large number of simultaneous outbound WebSocket connections can lead to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))
-* SerializationException when Application.propertyOrNull() is called with type Map<String, Any?> ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))
+* `SerializationException` when `Application.propertyOrNull()` is called with type `Map<String, Any?>` ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))
-* "Failed resolution of: Ljava/lang/management/ManagementFactory" on Android when JvmGcMetrics are initialized ([KTOR-8714](https://youtrack.jetbrains.com/issue/KTOR-8714))
+* "Failed resolution of: `Ljava/lang/management/ManagementFactory`" on Android when `JvmGcMetrics` are initialized ([KTOR-8714](https://youtrack.jetbrains.com/issue/KTOR-8714))
-* HttpCache: all header values but first in HttpResponse.varyKeys() are ignored ([KTOR-6402](https://youtrack.jetbrains.com/issue/KTOR-6402))
+* HttpCache: all header values except the first in `HttpResponse.varyKeys()` are ignored ([KTOR-6402](https://youtrack.jetbrains.com/issue/KTOR-6402))
-* CountedByteWriteChannel: autoFlush of the source channel doesn't make the channel auto flushing ([KTOR-8411](https://youtrack.jetbrains.com/issue/KTOR-8411))
+* `CountedByteWriteChannel`: `autoFlush` of the source channel doesn't make the channel auto‑flushing ([KTOR-8411](https://youtrack.jetbrains.com/issue/KTOR-8411))
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between dab5ffe and 16bcb31.

📒 Files selected for processing (1)
  • CHANGELOG.md (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2025-06-09T07:08:35.085Z
Learnt from: bjhham
PR: ktorio/ktor#4916
File: ktor-server/ktor-server-core/api/ktor-server-core.api:151-151
Timestamp: 2025-06-09T07:08:35.085Z
Learning: Breaking changes are acceptable in Ktor codebase when the code hasn't been released yet, as confirmed by bjhham from the development team.

Applied to files:

  • CHANGELOG.md
📚 Learning: 2025-05-16T13:11:28.416Z
Learnt from: osipxd
PR: ktorio/ktor#4860
File: ktor-server/ktor-server-plugins/ktor-server-di/api/ktor-server-di.api:24-26
Timestamp: 2025-05-16T13:11:28.416Z
Learning: Binary incompatible changes (such as constructor signature changes) are acceptable in the ktor-server-di module when the version is not yet released, as confirmed by the development team.

Applied to files:

  • CHANGELOG.md
🪛 markdownlint-cli2 (0.17.2)
CHANGELOG.md

4-4: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3

(MD001, heading-increment)

🔇 Additional comments (1)
CHANGELOG.md (1)

2-2: Double‑check release date before merge.

Ensure the “Published 11 September 2025” date matches the actual tag/release date when cutting 3.3.0.

Copy link
Contributor

@bjhham bjhham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost forgot this rather significant feature:

https://youtrack.jetbrains.com/issue/KTOR-7958/WebRTC-Client-Android-WASM

@Stexxe Stexxe requested a review from bjhham September 12, 2025 08:21
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (1)
CHANGELOG.md (1)

9-9: Avoid implying default behavior; clarify it’s configurable.

This was previously flagged as potentially confusing; suggest wording to make it explicit users must opt in.

-* Static content: Support a custom respond logic if the file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))
+* Static content: Add an option to configure custom respond logic when a file is not found ([KTOR-8496](https://youtrack.jetbrains.com/issue/KTOR-8496))
🧹 Nitpick comments (7)
CHANGELOG.md (7)

4-4: Heading level vs linter (MD001).

markdownlint flags "### Features" after "# 3.3.0". The whole file uses H3 under H1 for subsections, so I'd keep it for consistency and suppress MD001 for this file.


5-5: Capitalize and hyphenate protocols.

Use “server-side HTTP/2 without TLS (h2c)” for correctness.

Apply:

-* Support for server side http2 without tls (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))
+* Support for server-side HTTP/2 without TLS (h2c) ([KTOR-4750](https://youtrack.jetbrains.com/issue/KTOR-4750))

7-7: Algorithm naming.

Prefer “SHA-256” casing.

-* Serve static resources with caching headers and ETag based on sha256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))
+* Serve static resources with caching headers and ETag based on SHA-256 of content ([KTOR-6700](https://youtrack.jetbrains.com/issue/KTOR-6700))

8-8: Tighten wording.

“latest version 12” reads oddly; simplify to “Jetty 12”.

-* Jetty engine: Upgrade Jetty dependencies to the latest version 12 ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))
+* Jetty engine: Upgrade Jetty dependencies to Jetty 12 ([KTOR-6734](https://youtrack.jetbrains.com/issue/KTOR-6734))

11-11: Clarify platforms and casing.

Use “WebRTC client (Android and WASM)”.

-* WebRTC Client, Android + WASM ([KTOR-7958](https://youtrack.jetbrains.com/issue/KTOR-7958))
+* WebRTC client (Android and WASM) ([KTOR-7958](https://youtrack.jetbrains.com/issue/KTOR-7958))

25-25: Casing and terminology for WebSocket.

Prefer “WebSocket” (one word) and simpler phrasing.

-* Big number of simultaneous outbound web socket connections leads to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))
+* A large number of simultaneous outbound WebSocket connections leads to a coroutine deadlock ([KTOR-8829](https://youtrack.jetbrains.com/issue/KTOR-8829))

29-29: Format generic type as code.

Backticks improve readability for the Map type.

-* SerializationException when Application.propertyOrNull() is called with type Map<String, Any?> ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))
+* SerializationException when Application.propertyOrNull() is called with type `Map<String, Any?>` ([KTOR-8781](https://youtrack.jetbrains.com/issue/KTOR-8781))
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 16bcb31 and c7cf541.

📒 Files selected for processing (1)
  • CHANGELOG.md (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-05-16T13:11:28.416Z
Learnt from: osipxd
PR: ktorio/ktor#4860
File: ktor-server/ktor-server-plugins/ktor-server-di/api/ktor-server-di.api:24-26
Timestamp: 2025-05-16T13:11:28.416Z
Learning: Binary incompatible changes (such as constructor signature changes) are acceptable in the ktor-server-di module when the version is not yet released, as confirmed by the development team.

Applied to files:

  • CHANGELOG.md
🪛 markdownlint-cli2 (0.17.2)
CHANGELOG.md

4-4: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3

(MD001, heading-increment)

🔇 Additional comments (2)
CHANGELOG.md (2)

1-34: LGTM: clear 3.3.0 entry with consistent sectioning.

Structure and ordering match the existing changelog style.


19-20: Possible duplication: Kotlin version vs API level.

Are both tickets required here, or should these be merged into a single bullet? If they reflect distinct work streams, consider a brief qualifier (compiler vs API level).

@Stexxe Stexxe merged commit b9abe31 into main Sep 12, 2025
18 of 21 checks passed
@Stexxe Stexxe deleted the stexxe/changelog-3.3.0 branch September 12, 2025 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants