Skip to content

Commit 4f17e8f

Browse files
Merge remote-tracking branch 'origin/main' into fweinberger/remove-websocket-transport
# Conflicts: # pnpm-lock.yaml
2 parents 3baf223 + 9efecc2 commit 4f17e8f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+2665
-1393
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@modelcontextprotocol/core': patch
3+
---
4+
5+
Abort in-flight request handlers when the connection closes. Previously, request handlers would continue running after the transport disconnected, wasting resources and preventing proper cleanup. Also fixes `InMemoryTransport.close()` firing `onclose` twice on the initiating side.

.changeset/busy-rice-smoke.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@modelcontextprotocol/client': patch
3+
'@modelcontextprotocol/server': patch
4+
---
5+
6+
tasks - disallow requesting a null TTL
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@modelcontextprotocol/client': patch
3+
---
4+
5+
Always set `windowsHide` when spawning stdio server processes on Windows, not just in Electron environments. Prevents unwanted console windows in non-Electron Windows applications.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@modelcontextprotocol/core': patch
3+
---
4+
5+
Add explicit `| undefined` to optional properties on the `Transport` interface and `TransportSendOptions` (`onclose`, `onerror`, `onmessage`, `sessionId`, `setProtocolVersion`, `setSupportedProtocolVersions`, `onresumptiontoken`).
6+
7+
This fixes TS2420 errors for consumers using `exactOptionalPropertyTypes: true` without `skipLibCheck`, where the emitted `.d.ts` for implementing classes included `| undefined` but the interface did not.
8+
9+
Workaround for older SDK versions: enable `skipLibCheck: true` in your tsconfig.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@modelcontextprotocol/client': minor
3+
---
4+
5+
Add `reconnectionScheduler` option to `StreamableHTTPClientTransport`. Lets non-persistent environments (serverless, mobile, desktop sleep/wake) override the default `setTimeout`-based SSE reconnection scheduling. The scheduler may return a cancel function that is invoked on `transport.close()`.

.changeset/stdio-skip-non-json.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@modelcontextprotocol/core': patch
3+
---
4+
5+
`ReadBuffer.readMessage()` now silently skips non-JSON lines instead of throwing `SyntaxError`. This prevents noisy `onerror` callbacks when hot-reload tools (tsx, nodemon) write debug output like "Gracefully restarting..." to stdout. Lines that parse as JSON but fail JSONRPC schema validation still throw.

.github/dependabot.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: 'github-actions'
4+
directory: '/'
5+
schedule:
6+
interval: 'weekly'

.github/workflows/conformance.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ jobs:
1818
runs-on: ubuntu-latest
1919
continue-on-error: true
2020
steps:
21-
- uses: actions/checkout@v4
21+
- uses: actions/checkout@v6
2222
- name: Install pnpm
23-
uses: pnpm/action-setup@v4
23+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
2424
with:
2525
run_install: false
26-
- uses: actions/setup-node@v4
26+
- uses: actions/setup-node@v6
2727
with:
2828
node-version: 24
2929
cache: pnpm
@@ -36,12 +36,12 @@ jobs:
3636
runs-on: ubuntu-latest
3737
continue-on-error: true
3838
steps:
39-
- uses: actions/checkout@v4
39+
- uses: actions/checkout@v6
4040
- name: Install pnpm
41-
uses: pnpm/action-setup@v4
41+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
4242
with:
4343
run_install: false
44-
- uses: actions/setup-node@v4
44+
- uses: actions/setup-node@v6
4545
with:
4646
node-version: 24
4747
cache: pnpm

.github/workflows/deploy-docs.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ jobs:
2525
url: ${{ steps.deployment.outputs.page_url }}
2626

2727
steps:
28-
- uses: actions/checkout@v4
28+
- uses: actions/checkout@v6
2929

3030
- name: Install pnpm
31-
uses: pnpm/action-setup@v4
31+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
3232
with:
3333
run_install: false
34-
- uses: actions/setup-node@v4
34+
- uses: actions/setup-node@v6
3535
with:
3636
node-version: 24
3737
cache: pnpm
@@ -41,13 +41,13 @@ jobs:
4141
run: bash scripts/generate-multidoc.sh tmp/docs-combined
4242

4343
- name: Configure Pages
44-
uses: actions/configure-pages@v5
44+
uses: actions/configure-pages@v6
4545

4646
- name: Upload Pages artifact
47-
uses: actions/upload-pages-artifact@v3
47+
uses: actions/upload-pages-artifact@v4
4848
with:
4949
path: tmp/docs-combined
5050

5151
- name: Deploy to GitHub Pages
5252
id: deployment
53-
uses: actions/deploy-pages@v4
53+
uses: actions/deploy-pages@v5

.github/workflows/main.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- uses: actions/checkout@v6
2020

2121
- name: Install pnpm
22-
uses: pnpm/action-setup@v4
22+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
2323
id: pnpm-install
2424
with:
2525
run_install: false
@@ -44,7 +44,7 @@ jobs:
4444
- uses: actions/checkout@v6
4545

4646
- name: Install pnpm
47-
uses: pnpm/action-setup@v4
47+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
4848
id: pnpm-install
4949
with:
5050
run_install: false
@@ -71,7 +71,7 @@ jobs:
7171
steps:
7272
- uses: actions/checkout@v6
7373
- name: Install pnpm
74-
uses: pnpm/action-setup@v4
74+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
7575
with:
7676
run_install: false
7777
- uses: actions/setup-node@v6
@@ -81,12 +81,12 @@ jobs:
8181
cache-dependency-path: pnpm-lock.yaml
8282
- name: Set up Bun
8383
if: matrix.runtime == 'bun'
84-
uses: oven-sh/setup-bun@v2
84+
uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
8585
with:
8686
bun-version: ${{ matrix.version }}
8787
- name: Set up Deno
8888
if: matrix.runtime == 'deno'
89-
uses: denoland/setup-deno@v2
89+
uses: denoland/setup-deno@667a34cdef165d8d2b2e98dde39547c9daac7282 # v2
9090
with:
9191
deno-version: ${{ matrix.version }}
9292
- run: pnpm install
@@ -105,14 +105,14 @@ jobs:
105105
id-token: write
106106

107107
steps:
108-
- uses: actions/checkout@v4
108+
- uses: actions/checkout@v6
109109

110110
- name: Install pnpm
111-
uses: pnpm/action-setup@v4
111+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
112112
id: pnpm-install
113113
with:
114114
run_install: false
115-
- uses: actions/setup-node@v4
115+
- uses: actions/setup-node@v6
116116
with:
117117
node-version: 24
118118
cache: pnpm

0 commit comments

Comments
 (0)