chore(deps): bump io.ktor:ktor-bom from 3.5.2 to 3.6.0 in /samples/kotlinlang-mcp-server - #1013
Conversation
There was a problem hiding this comment.
Looks good — approving this one, thanks!
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=73caad05-2954-4f28-a93f-9d2498e14e6e
| [versions] | ||
| kotlin = "2.4.20" | ||
| ktor = "3.5.2" | ||
| ktor = "3.6.0" |
There was a problem hiding this comment.
Problem: kotlinlang-mcp-server is missing from the matrix.sample lists in both .github/workflows/samples.yml and .github/workflows/build.yml (each lists only kotlin-mcp-client, kotlin-mcp-server, simple-streamable-server, weather-stdio-server). No CI job ever compiles or tests this sample, so every green check on this PR covers code the PR does not touch, and the one line it does change is unverified.
Failure scenario: the Ktor 3.5.2 → 3.6.0 minor touches ContentNegotiation (Accept entries with q=0 are now rejected), auth, and SSE. If it breaks compilation or the Streamable HTTP endpoint in this sample, this PR still merges green and the breakage surfaces only when someone clones the sample — the same blind spot the ~20 earlier dependency bumps to this directory landed through.
Suggested fix: add - kotlinlang-mcp-server to the matrix.sample list in .github/workflows/samples.yml and .github/workflows/build.yml (a follow-up PR is fine — the sample's unit tests use mocked HTTP clients and MapApplicationConfig, so no Algolia secrets are needed for ./gradlew build). Until that lands, run ./gradlew build in samples/kotlinlang-mcp-server locally before merging this bump.
Non-blocking.
There was a problem hiding this comment.
Verification update on the local-build advice above: I ran ./gradlew build in samples/kotlinlang-mcp-server against both ktor = "3.5.2" and ktor = "3.6.0" (JDK 21 toolchain).
The bump itself is clean. Compiles, installDist works, the server boots, and a live Streamable HTTP smoke test over Ktor 3.6.0 passes: initialize → 200 + mcp-session-id, notifications/initialized → 202, tools/list returns both tools, and the GET /mcp SSE stream opens with text/event-stream. The CORS + ContentNegotiation + SSE + Netty combination this sample uses is unaffected by the 3.6.0 changes.
But the build is red for an unrelated, pre-existing reason — worth knowing before you act on a BUILD FAILED:
KotlinlangServerTest > server registers both tools with correct schema and annotations() FAILED
io.modelcontextprotocol.kotlin.sdk.types.McpException: Request timed out
ERROR i.m.kotlin.sdk.shared.Protocol - Request timed out after 60000ms: Initialize
55/56 tests pass; this one fails identically on 3.5.2, so it is not caused by this PR. The path involves no Ktor at all — it is ChannelTransport.createLinkedPair() + Client.connect() under runTest, where the SDK's 60 s initialize timeout fires immediately in virtual time.
Suggested handling: merge this bump on its own merits, and track the KotlinlangServerTest initialize timeout as a separate issue (alongside adding kotlinlang-mcp-server to the CI matrices, which is why neither problem was visible here).
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=0a8d01a9-719b-4c78-a279-9fa66a41b229
a91614b to
cae1255
Compare
There was a problem hiding this comment.
Re-checked after the rebase — the bump still looks good, approving again, thanks!
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=c1b34464-a887-4673-87fd-04f1891f3b7a
cae1255 to
ca89774
Compare
There was a problem hiding this comment.
Verified the bump builds and tests clean locally — approving, thanks!
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=eb6f7702-1ac9-402c-a2f5-ffe10c1d9906
ca89774 to
97be9bc
Compare
There was a problem hiding this comment.
Approving this one — thanks!
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=a20627d5-9244-4cdf-b703-0bbe43e27524
|
@dependabot rebase |
|
@dependabot rebase |
Bumps [io.ktor:ktor-bom](https://github.com/ktorio/ktor) from 3.5.2 to 3.6.0. - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md) - [Commits](ktorio/ktor@3.5.2...3.6.0) --- updated-dependencies: - dependency-name: io.ktor:ktor-bom dependency-version: 3.6.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
e2a8a54 to
907b57e
Compare
There was a problem hiding this comment.
Verified locally against Ktor 3.6.0 — everything builds and runs, so this is good to go. 🚀
Produced by Air Automations. Name: Code review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/409567ec-d3a7-40ac-ba95-8518ec577ac2?run=0a8d01a9-719b-4c78-a279-9fa66a41b229
Bumps io.ktor:ktor-bom from 3.5.2 to 3.6.0.
Release notes
Sourced from io.ktor:ktor-bom's releases.
... (truncated)
Changelog
Sourced from io.ktor:ktor-bom's changelog.
... (truncated)
Commits
111c580Release 3.6.0 (#5882)1e4186cKTOR-9876 Fix typo in Application.routing KDoc (#5876)6930eeeFix KTOR-9892 Digest Auth client: nc and qop ... (#5875)875b2f0Fix KTOR-9794 Digest Auth: NullPointerException when the server does not expe...dc56137KTOR-8705 Pass coroutine context to the channel writer (#5868)55f6e71Fix KTOR-9640 forward autoFlush in reader/writer helpers2b04a1fFix KTOR-9248 JWTAuthenticationProvider silently swallows exceptions (#5877)702ff9fKTOR-9889 Fix deadlock in concurrent module loading with Dependency Injection...1fab5f1Reject Accept entries with q=0 in ContentNegotiation (#5873)b06c3b5KTOR-9891 Delegate SynchronizedObject to kotlinx.atomicfu on Native (#5874)Most Recent Ignore Conditions Applied to This Pull Request