mirror of
https://github.com/langchain-ai/langgraphjs.git
synced 2026-07-21 16:45:24 -04:00
@langchain/langgraph@1.4.8
1879 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
3dccad1391 |
chore: version packages (#2603)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph-api@1.4.3 ### Patch Changes - Updated dependencies []: - @langchain/langgraph-ui@1.4.3 ## @langchain/langgraph-cli@1.4.3 ### Patch Changes - [#2595](https://github.com/langchain-ai/langgraphjs/pull/2595) [`dac8c2f`](https://github.com/langchain-ai/langgraphjs/commit/dac8c2fa7edfd643aa393a1d6407759b6cd8acf4) Thanks [@christian-bromann](https://github.com/christian-bromann)! - chore: bump langsmith to ^0.8.0 - Updated dependencies []: - @langchain/langgraph-api@1.4.3 ## @langchain/langgraph@1.4.8 ### Patch Changes - [#2604](https://github.com/langchain-ai/langgraphjs/pull/2604) [`42ec394`](https://github.com/langchain-ai/langgraphjs/commit/42ec39460bfe0c3be017fb043c668c3204c8a175) Thanks [@hntrl](https://github.com/hntrl)! - fix(pregel): wait for completed-superstep persistence with sync durability - Updated dependencies [[`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa), [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b)]: - @langchain/langgraph-sdk@1.9.26 ## @langchain/langgraph-sdk@1.9.26 ### Patch Changes - [#2605](https://github.com/langchain-ai/langgraphjs/pull/2605) [`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): keep SSE reconnect enabled with custom fetch Auth/proxy fetch shims previously forced `maxReconnectAttempts: 0`, so HITL waits that lost `/stream/events` (e.g. `ERR_QUIC_PROTOCOL_ERROR`) never recovered and left `respond()`/`submit()` spinning. Fail-fast test mocks should pass `maxReconnectAttempts: 0` explicitly. Also plumbs reconnect options through framework `useStream` bindings. - [#2602](https://github.com/langchain-ai/langgraphjs/pull/2602) [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b) Thanks [@HugoDurand](https://github.com/HugoDurand)! - fix(sdk): support clearing a cron's end time via `crons.update(cronId, { endTime: null })` `CronsClient.update` now accepts `endTime: null` to clear a previously set cron end time; omitting `endTime` still leaves it unchanged. The field was typed `string`, so callers could not express "clear" even though the request already forwards an explicit `null`. ## @langchain/angular@1.0.27 ### Patch Changes - [#2605](https://github.com/langchain-ai/langgraphjs/pull/2605) [`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): keep SSE reconnect enabled with custom fetch Auth/proxy fetch shims previously forced `maxReconnectAttempts: 0`, so HITL waits that lost `/stream/events` (e.g. `ERR_QUIC_PROTOCOL_ERROR`) never recovered and left `respond()`/`submit()` spinning. Fail-fast test mocks should pass `maxReconnectAttempts: 0` explicitly. Also plumbs reconnect options through framework `useStream` bindings. - Updated dependencies [[`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa), [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b)]: - @langchain/langgraph-sdk@1.9.26 ## @langchain/react@1.0.27 ### Patch Changes - [#2605](https://github.com/langchain-ai/langgraphjs/pull/2605) [`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): keep SSE reconnect enabled with custom fetch Auth/proxy fetch shims previously forced `maxReconnectAttempts: 0`, so HITL waits that lost `/stream/events` (e.g. `ERR_QUIC_PROTOCOL_ERROR`) never recovered and left `respond()`/`submit()` spinning. Fail-fast test mocks should pass `maxReconnectAttempts: 0` explicitly. Also plumbs reconnect options through framework `useStream` bindings. - Updated dependencies [[`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa), [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b)]: - @langchain/langgraph-sdk@1.9.26 ## @langchain/svelte@1.0.27 ### Patch Changes - [#2605](https://github.com/langchain-ai/langgraphjs/pull/2605) [`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): keep SSE reconnect enabled with custom fetch Auth/proxy fetch shims previously forced `maxReconnectAttempts: 0`, so HITL waits that lost `/stream/events` (e.g. `ERR_QUIC_PROTOCOL_ERROR`) never recovered and left `respond()`/`submit()` spinning. Fail-fast test mocks should pass `maxReconnectAttempts: 0` explicitly. Also plumbs reconnect options through framework `useStream` bindings. - Updated dependencies [[`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa), [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b)]: - @langchain/langgraph-sdk@1.9.26 ## @langchain/vue@1.0.27 ### Patch Changes - [#2605](https://github.com/langchain-ai/langgraphjs/pull/2605) [`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): keep SSE reconnect enabled with custom fetch Auth/proxy fetch shims previously forced `maxReconnectAttempts: 0`, so HITL waits that lost `/stream/events` (e.g. `ERR_QUIC_PROTOCOL_ERROR`) never recovered and left `respond()`/`submit()` spinning. Fail-fast test mocks should pass `maxReconnectAttempts: 0` explicitly. Also plumbs reconnect options through framework `useStream` bindings. - Updated dependencies [[`f326b89`](https://github.com/langchain-ai/langgraphjs/commit/f326b89365043bfa846e0b428564bcafafab4aaa), [`c201256`](https://github.com/langchain-ai/langgraphjs/commit/c201256b27d55c9aa333d3d15f6ec16c2fd7de9b)]: - @langchain/langgraph-sdk@1.9.26 ## @langchain/langgraph-ui@1.4.3 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
f326b89365 |
fix(sdk): keep SSE reconnect enabled with custom fetch (#2605)
## Summary - Keep SSE auto-reconnect and idle-reconnect enabled when a custom `fetch` is supplied (auth/proxy shims), instead of silently forcing `maxReconnectAttempts: 0`. - Plumb `maxReconnectAttempts`, `streamIdleReconnect`, `reconnectDelayMs`, and `onReconnect` through `StreamController` and React/Vue/Svelte/Angular `useStream`. - Add transport unit coverage plus browser interrupt tests that drop `/stream/events` mid-HITL and assert `respond()` still completes. |
||
|
|
42ec39460b |
fix(core): enforce sync durability barriers (#2604)
## Summary Makes `durability: "sync"` enforce its superstep boundary: persistence produced by a completed superstep must settle before the scheduler prepares and dispatches the next one. Previously, persistence was tracked and awaited at final cleanup but could overlap later supersteps. ## Changes - Snapshot and await the current run's tracked `putWrites()` and ordered checkpoint `put()` promises after each completed superstep when durability is `sync`. - Preserve asynchronous and exit-only durability behavior, including the existing final persistence settlement path. - Add gated `StateGraph` regression coverage for `invoke`, `stream`, and `streamEvents`, plus coverage that async mode may progress while persistence is pending. - Add a patch changeset for `@langchain/langgraph`. |
||
|
|
dac8c2fa7e |
chore: bump langsmith to ^0.8.0 (#2595)
## Description The langsmith SDK published v0.8.0. This updates the `langsmith` dependency in the workspaces that pin it via a caret range (`langgraph-cli`) to `^0.8.0` and refreshes `pnpm-lock.yaml` so the workspace packages resolve to `0.8.0`. The broad peer/dependency range in `langgraph-api` (`>=0.5.19 <1.0.0`) already permits `0.8.0` and is left unchanged, matching prior langsmith bump PRs. Transitive `langsmith` versions pulled in by published `@langchain/*` packages are left untouched. ## Test Plan - [ ] `pnpm install --frozen-lockfile` resolves without changes Made by [Open SWE](https://openswe.vercel.app/agents/019f436f-3343-7169-a06a-5f64fe70e3af) --------- Signed-off-by: Christian Bromann <git@bromann.dev> Co-authored-by: Christian Bromann <731337+christian-bromann@users.noreply.github.com> Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
644892c7db |
docs(langgraph): fix README logo paths (#2599)
## Summary Fix the LangGraph README logo references so they render correctly from both the repository root and the `libs/langgraph-core` package directory. ## Changes - Replace context-dependent relative logo paths with absolute raw GitHub URLs. - Preserve dark- and light-mode logo selection in the shared README. |
||
|
|
c201256b27 |
fix(sdk): support clearing cron end_time via update({ endTime: null }) (#2602)
## What & why `CronsClient.update` could not clear a cron's `end_time`. The field was typed `endTime?: string`, so a type-checked caller had no way to express "remove the end time" — even though, unlike the Python SDK, the JS request builder was already correct at runtime: it uses per-field `if (payload?.endTime !== undefined)` guards (not a `None`-strip), and `null !== undefined`, so a `null` would already be forwarded and `JSON.stringify` preserves it. So the defect was purely a **type imprecision**, and the fix is at the source — the model — rather than a workaround in the request logic: - `CronsUpdatePayload.endTime`: `string` → `string | null`. PATCH semantics are now the standard tri-state: - **omit `endTime`** → keep the existing value - **`endTime: null`** → clear it - **`endTime: "<iso>"`** → set it - `CronsCreatePayload.endTime` is intentionally left `string` — create never needs to clear. This mirrors the Python SDK change in langchain-ai/langgraph#8334 (`update(end_time=None)`), and requires an Agent Server that supports clearing `end_time` via `PATCH /runs/crons/{id}` (`end_time: null`). Against an older server, `update(id, { endTime: null })` is a harmless no-op for clearing (the server coalesces `null` back to the stored value), and a clear-only patch may 400. ## Also in this PR (unify `update()`) While here, `update()`'s payload construction is unified with the existing `create()` / `createForThread()` style: the 16 repetitive `if (payload?.X !== undefined) json.Y = payload.X` guards become a single declarative object literal. `JSON.stringify` drops `undefined` keys and keeps `null`, so the wire output is **identical** — this is a behaviour-preserving refactor, pinned by the pre-existing "only sends defined fields" / "sends all updatable fields" tests. Net −44 lines in the method. ## Test plan - [x] `vitest run` on `libs/sdk/src/client/crons/index.test.ts` — **9 passed** (8 existing + 1 new: `update(id, { endTime: null })` sends body `{ end_time: null }`), no type errors. - [x] `pnpm build` (tsc compile + `attw` + `publint`) — clean. - [x] `oxlint` — 0 warnings / 0 errors; `oxfmt --check` — clean. - [x] Changeset added (`@langchain/langgraph-sdk`: patch). |
||
|
|
ada0b67696 |
fix: store auth filter enforcement (#2597)
## Summary Fixes the store API authorization filter issue flagged by Corridor by capturing and applying `handleAuthEvent()` filters for store operations. Changes: - Capture auth filters for `list_namespaces`, `search`, `put`, `delete`, and `get` store endpoints. - Evaluate filters against store item value fields plus synthetic `namespace` and `key` metadata. - Use the mutable value returned by auth handlers for `store:put`, allowing handlers to inject ownership fields before persistence. - Filter list/search responses before returning them, applying pagination after auth filtering when filters are present. - Return 404 for existing items that are outside auth scope and 403 for unauthorized new/missing write targets. - Add auth test coverage for filter-based namespace isolation on broad store search/list calls. ## Security Addresses Corridor category 3: High/Medium store API authorization filters discarded. Primary finding cluster: - Store search/get/put/delete/list_namespaces discarded `handleAuthEvent()` filters, preventing item/namespace-level authorization enforcement. ## Test plan - `git diff --check` passed. - Targeted test/typecheck not run locally because this sandbox did not have dependencies installed, and Socket Firewall (`sfw`) installation failed while downloading the required binary from GitHub with HTTP 502. CI should run the package tests on the PR. --------- Co-authored-by: Langster Security Agent <john@langchain.dev> Co-authored-by: John Kennedy <65985482+jkennedyvz@users.noreply.github.com> Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
5b4f120fe8 |
fix: Unauthenticated /internal/truncate endpoint allows complete data wipe (#2596)
## Summary This PR was generated by [Corridor](https://corridor.dev) to fix: - Unauthenticated /internal/truncate endpoint allows complete data wipe ## Changes The vulnerability stemmed from route registration order, which allowed unauthenticated access to POST /internal/truncate and destructive data loss. The fix moves the route registration to occur after the CORS, request logger, and especially after the authentication middleware, ensuring the truncate endpoint is protected by the centralized auth policy; no handler logic or validation changes were made, and endpoints remain reachable when auth is not configured to preserve existing behavior. --- Generated by Corridor Co-authored-by: corridor-security[bot] <203152403+corridor-security[bot]@users.noreply.github.com> |
||
|
|
96876a4bf0 |
chore: version packages (#2583)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph-api@1.4.2 ### Patch Changes - [#2590](https://github.com/langchain-ai/langgraphjs/pull/2590) [`f71e00c`](https://github.com/langchain-ai/langgraphjs/commit/f71e00c52600a6dafacccdde1363e83c17c8d97b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(api): inject langgraph_auth_user on protocol-v2 run.start Stamp authenticated user fields onto run config in createOrResumeRun so v2 streaming matches the REST runs API. Shared helpers also dedupe REST run config auth/header enrichment. - [#2575](https://github.com/langchain-ai/langgraphjs/pull/2575) [`e1b40c2`](https://github.com/langchain-ai/langgraphjs/commit/e1b40c29e14f8e9fb2696acc62d611e14a813f43) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(cli): support node_version 24 in langgraph.json Allow Node 24 in the CLI config schema and Docker base image resolution. The langgraphjs-api:24 image is already published from langgraph-api. - Updated dependencies [[`f71e00c`](https://github.com/langchain-ai/langgraphjs/commit/f71e00c52600a6dafacccdde1363e83c17c8d97b), [`e1b40c2`](https://github.com/langchain-ai/langgraphjs/commit/e1b40c29e14f8e9fb2696acc62d611e14a813f43)]: - @langchain/langgraph-ui@1.4.2 ## @langchain/langgraph-cli@1.4.2 ### Patch Changes - [#2590](https://github.com/langchain-ai/langgraphjs/pull/2590) [`f71e00c`](https://github.com/langchain-ai/langgraphjs/commit/f71e00c52600a6dafacccdde1363e83c17c8d97b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(api): inject langgraph_auth_user on protocol-v2 run.start Stamp authenticated user fields onto run config in createOrResumeRun so v2 streaming matches the REST runs API. Shared helpers also dedupe REST run config auth/header enrichment. - [#2575](https://github.com/langchain-ai/langgraphjs/pull/2575) [`e1b40c2`](https://github.com/langchain-ai/langgraphjs/commit/e1b40c29e14f8e9fb2696acc62d611e14a813f43) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(cli): support node_version 24 in langgraph.json Allow Node 24 in the CLI config schema and Docker base image resolution. The langgraphjs-api:24 image is already published from langgraph-api. - Updated dependencies [[`f71e00c`](https://github.com/langchain-ai/langgraphjs/commit/f71e00c52600a6dafacccdde1363e83c17c8d97b), [`e1b40c2`](https://github.com/langchain-ai/langgraphjs/commit/e1b40c29e14f8e9fb2696acc62d611e14a813f43)]: - @langchain/langgraph-api@1.4.2 ## @langchain/langgraph-ui@1.4.2 ### Patch Changes - [#2590](https://github.com/langchain-ai/langgraphjs/pull/2590) [`f71e00c`](https://github.com/langchain-ai/langgraphjs/commit/f71e00c52600a6dafacccdde1363e83c17c8d97b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(api): inject langgraph_auth_user on protocol-v2 run.start Stamp authenticated user fields onto run config in createOrResumeRun so v2 streaming matches the REST runs API. Shared helpers also dedupe REST run config auth/header enrichment. - [#2575](https://github.com/langchain-ai/langgraphjs/pull/2575) [`e1b40c2`](https://github.com/langchain-ai/langgraphjs/commit/e1b40c29e14f8e9fb2696acc62d611e14a813f43) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(cli): support node_version 24 in langgraph.json Allow Node 24 in the CLI config schema and Docker base image resolution. The langgraphjs-api:24 image is already published from langgraph-api. Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
f71e00c526 |
fix(api): inject langgraph_auth_user on protocol-v2 run.start (#2590)
## Summary - Inject `langgraph_auth_user`, `langgraph_auth_user_id`, and `langgraph_auth_permissions` into run config in protocol v2 `createOrResumeRun`, matching the REST `createValidRun` behavior. - Extract shared `applyAuthToRunConfig` / `applyRequestHeadersToRunConfig` helpers and use them from both REST and protocol paths. - Pass `userId` into `runs.put()` from the protocol path for parity with REST. |
||
|
|
8fb6376a75 |
chore: update Vitest to 4.1.9 (#2587)
## Summary - update all workspace `vitest` declarations to `4.1.9` - update `@vitest/browser-playwright` and `@vitest/browser-webdriverio` declarations to `4.1.9` - refresh `pnpm-lock.yaml` so no `vitest`/`@vitest/browser` versions below `4.1.9` remain ## Validation - `sfw pnpm install` - `pnpm format:check` - `pnpm lint` - `pnpm build` - targeted audit check: no `vitest` or `@vitest/browser` advisories remain - `pnpm --filter create-langgraph test` - `pnpm --filter @langchain/react test` - `pnpm --filter @langchain/svelte test` - `pnpm --filter @langchain/vue test` - `pnpm --filter @langchain/angular test` - `pnpm --filter @langchain/langgraph test` ## Notes - `pnpm --filter @langchain/langgraph test:browser` did not run locally because Playwright Chromium for the updated provider was not installed on this machine; Vitest exited before running tests with Playwright's `pnpm exec playwright install` message. - The SDK Vitest suites passed but printed Vitest's post-success close-timeout warning. Co-authored-by: John Kennedy <jkennedyvz@users.noreply.github.com> |
||
|
|
8f3f4596f1 |
chore(deps): bump the vue group across 1 directory with 2 updates (#2581)
Bumps the vue group with 2 updates in the / directory: [vue](https://github.com/vuejs/core) and [@vitejs/plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx). Updates `vue` from 3.5.35 to 3.5.39 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vuejs/core/releases">vue's releases</a>.</em></p> <blockquote> <h2>v3.5.39</h2> <p>For stable releases, please refer to <a href="https://github.com/vuejs/core/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details. For pre-releases, please refer to <a href="https://github.com/vuejs/core/blob/minor/CHANGELOG.md">CHANGELOG.md</a> of the <code>minor</code> branch.</p> <h2>v3.5.38</h2> <p>For stable releases, please refer to <a href="https://github.com/vuejs/core/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details. For pre-releases, please refer to <a href="https://github.com/vuejs/core/blob/minor/CHANGELOG.md">CHANGELOG.md</a> of the <code>minor</code> branch.</p> <h2>v3.5.37</h2> <p>For stable releases, please refer to <a href="https://github.com/vuejs/core/blob/main/CHANGELOG.md">CHANGELOG.md</a> for details. For pre-releases, please refer to <a href="https://github.com/vuejs/core/blob/minor/CHANGELOG.md">CHANGELOG.md</a> of the <code>minor</code> branch.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vuejs/core/blob/main/CHANGELOG.md">vue's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/vuejs/core/compare/v3.5.38...v3.5.39">3.5.39</a> (2026-06-25)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>compiler-core:</strong> correct filter rewrite recursion (<a href="https://redirect.github.com/vuejs/core/issues/14959">#14959</a>) (<a href="https://github.com/vuejs/core/commit/be7ce314b96256f1c56f53088d51ed6bc77fde28">be7ce31</a>)</li> <li><strong>hydration:</strong> force patch dynamic props when hydrating (<a href="https://redirect.github.com/vuejs/core/issues/9083">#9083</a>) (<a href="https://github.com/vuejs/core/commit/024cf06daa33db4660431f20aa050acb99cff07f">024cf06</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/9033">#9033</a></li> <li><strong>hydration:</strong> respect data-allow-mismatch on conditional branches (<a href="https://redirect.github.com/vuejs/core/issues/12801">#12801</a>) (<a href="https://github.com/vuejs/core/commit/164af639a120421194f7afe0e097bdf254c90199">164af63</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/12782">#12782</a></li> <li><strong>reactivity:</strong> avoid triggering effects when set fails (<a href="https://redirect.github.com/vuejs/core/issues/14964">#14964</a>) (<a href="https://github.com/vuejs/core/commit/e450973eabc0038f398344b981acd8759c246c50">e450973</a>)</li> <li><strong>runtime-core:</strong> handle non-isomorphic block element update (<a href="https://redirect.github.com/vuejs/core/issues/15002">#15002</a>) (<a href="https://github.com/vuejs/core/commit/932ddd058d69be9bbd8cd796c89f0d1a4fc128d7">932ddd0</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/6385">#6385</a></li> <li><strong>runtime-core:</strong> normalize function children for elements and Teleport (<a href="https://redirect.github.com/vuejs/core/issues/9108">#9108</a>) (<a href="https://github.com/vuejs/core/commit/2f374cda18cbe331ede1a49a324b423c75d0faf3">2f374cd</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/9107">#9107</a></li> <li><strong>runtime-core:</strong> pause tracking when invoking function refs (<a href="https://redirect.github.com/vuejs/core/issues/14985">#14985</a>) (<a href="https://github.com/vuejs/core/commit/3ac052b6b1e9d3978e98cc30a1a89a9b9b51358b">3ac052b</a>)</li> <li><strong>runtime-core:</strong> preserve once event listener name (<a href="https://redirect.github.com/vuejs/core/issues/8341">#8341</a>) (<a href="https://github.com/vuejs/core/commit/87b73b64a0d9b4e2dd2dacfe98f2f1c2396d7a61">87b73b6</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/8342">#8342</a></li> <li><strong>runtime-dom:</strong> preserve option modifier event names (<a href="https://redirect.github.com/vuejs/core/issues/8338">#8338</a>) (<a href="https://github.com/vuejs/core/commit/4b659e699925555464ea9ae8fa3e1984609f6dc2">4b659e6</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/8334">#8334</a></li> <li><strong>ssr:</strong> dedupe inherited scope ids during vnode rendering (<a href="https://redirect.github.com/vuejs/core/issues/15005">#15005</a>) (<a href="https://github.com/vuejs/core/commit/027da6b2810c4752131439d2645f3d931d07242f">027da6b</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/12159">#12159</a> <a href="https://redirect.github.com/vuejs/core/issues/12175">#12175</a></li> <li><strong>ssr:</strong> resolve nested async teleport content (<a href="https://redirect.github.com/vuejs/core/issues/9431">#9431</a>) (<a href="https://github.com/vuejs/core/commit/31d0f23757afb410c638a9c29d44d76d0944e18f">31d0f23</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/6207">#6207</a></li> <li><strong>teleport:</strong> handle teleport unmount edge case (<a href="https://redirect.github.com/vuejs/core/issues/12705">#12705</a>) (<a href="https://github.com/vuejs/core/commit/671997ade74e34880cebe3c340269b8598c3b26c">671997a</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/12702">#12702</a></li> <li><strong>types:</strong> support named tuple emits (<a href="https://redirect.github.com/vuejs/core/issues/12676">#12676</a>) (<a href="https://github.com/vuejs/core/commit/232f4022e3160b30b11748a6d97ea2c15ed3b74f">232f402</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/12673">#12673</a></li> <li><strong>types:</strong> validate defineModel defaults (<a href="https://redirect.github.com/vuejs/core/issues/14968">#14968</a>) (<a href="https://github.com/vuejs/core/commit/747f57e9cdb3c5f084f8da5ca7e0e0b7b326b662">747f57e</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/14966">#14966</a></li> </ul> <h2><a href="https://github.com/vuejs/core/compare/v3.5.37...v3.5.38">3.5.38</a> (2026-06-11)</h2> <h2><a href="https://github.com/vuejs/core/compare/v3.5.36...v3.5.37">3.5.37</a> (2026-06-11)</h2> <h2><a href="https://github.com/vuejs/core/compare/v3.5.35...v3.5.36">3.5.36</a> (2026-06-11)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>compiler-core:</strong> avoid crash on CDATA at the document root (<a href="https://redirect.github.com/vuejs/core/issues/14916">#14916</a>) (<a href="https://github.com/vuejs/core/commit/0ea17e232f9a8f4a9acf57c6addc78cf4f279c13">0ea17e2</a>)</li> <li><strong>compiler-core:</strong> prefix dynamic keys on v-memo elements (<a href="https://redirect.github.com/vuejs/core/issues/14922">#14922</a>) (<a href="https://github.com/vuejs/core/commit/68e978e3e71a8ae40701808e78966f2168c5907c">68e978e</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/14920">#14920</a></li> <li><strong>compiler-sfc:</strong> handle vue-ignore on leading intersection/union type (<a href="https://redirect.github.com/vuejs/core/issues/14950">#14950</a>) (<a href="https://github.com/vuejs/core/commit/0dcd225c01f211ebb8ce4dda8c8eac10539abf1a">0dcd225</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/12254">#12254</a></li> <li><strong>compiler-sfc:</strong> respect var hoisting in props destructure (<a href="https://github.com/vuejs/core/commit/48ad452dd61926a59e358da3c74c5ef750ae21c4">48ad452</a>)</li> <li><strong>reactivity:</strong> preserve watch callback return value when wrapped for <code>once: true</code> (<a href="https://redirect.github.com/vuejs/core/issues/14902">#14902</a>) (<a href="https://github.com/vuejs/core/commit/450a8a8e45520f30fe8343c5016a777d888e53fc">450a8a8</a>)</li> <li><strong>runtime-core:</strong> add dev warning for silent catch in compat mode and fix test description typo (<a href="https://redirect.github.com/vuejs/core/issues/14891">#14891</a>) (<a href="https://github.com/vuejs/core/commit/db3e117025a7193291ed6676180a5a44bbe0ae76">db3e117</a>)</li> <li><strong>runtime-core:</strong> force model update when reverted before sync (<a href="https://redirect.github.com/vuejs/core/issues/14897">#14897</a>) (<a href="https://github.com/vuejs/core/commit/7f76378b0d178a29113ee07d67faa48b637944e8">7f76378</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/13524">#13524</a></li> <li><strong>runtime-core:</strong> skip async component callbacks after unmount (<a href="https://redirect.github.com/vuejs/core/issues/14911">#14911</a>) (<a href="https://github.com/vuejs/core/commit/5300ead57b3c14942d4c155ef5e485d5409e7f02">5300ead</a>)</li> <li><strong>transition:</strong> avoid move transition for hidden v-show group children (<a href="https://redirect.github.com/vuejs/core/issues/14895">#14895</a>) (<a href="https://github.com/vuejs/core/commit/c11f6ee644412edf3eef6736991e895e4a3e1dde">c11f6ee</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/14894">#14894</a></li> <li><strong>watch:</strong> trigger immediate callback for empty sources (<a href="https://redirect.github.com/vuejs/core/issues/14914">#14914</a>) (<a href="https://github.com/vuejs/core/commit/1f2ca7e4837b1b0de0b91048fffdb03710c0b03e">1f2ca7e</a>), closes <a href="https://redirect.github.com/vuejs/core/issues/14898">#14898</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vuejs/core/commit/c0606e91798c8dca4f33d101e1dd836d672592c1"><code>c0606e9</code></a> release: v3.5.39</li> <li><a href="https://github.com/vuejs/core/commit/4b659e699925555464ea9ae8fa3e1984609f6dc2"><code>4b659e6</code></a> fix(runtime-dom): preserve option modifier event names (<a href="https://redirect.github.com/vuejs/core/issues/8338">#8338</a>)</li> <li><a href="https://github.com/vuejs/core/commit/232f4022e3160b30b11748a6d97ea2c15ed3b74f"><code>232f402</code></a> fix(types): support named tuple emits (<a href="https://redirect.github.com/vuejs/core/issues/12676">#12676</a>)</li> <li><a href="https://github.com/vuejs/core/commit/671997ade74e34880cebe3c340269b8598c3b26c"><code>671997a</code></a> fix(teleport): handle teleport unmount edge case (<a href="https://redirect.github.com/vuejs/core/issues/12705">#12705</a>)</li> <li><a href="https://github.com/vuejs/core/commit/164af639a120421194f7afe0e097bdf254c90199"><code>164af63</code></a> fix(hydration): respect data-allow-mismatch on conditional branches (<a href="https://redirect.github.com/vuejs/core/issues/12801">#12801</a>)</li> <li><a href="https://github.com/vuejs/core/commit/2f374cda18cbe331ede1a49a324b423c75d0faf3"><code>2f374cd</code></a> fix(runtime-core): normalize function children for elements and Teleport (<a href="https://redirect.github.com/vuejs/core/issues/9108">#9108</a>)</li> <li><a href="https://github.com/vuejs/core/commit/87b73b64a0d9b4e2dd2dacfe98f2f1c2396d7a61"><code>87b73b6</code></a> fix(runtime-core): preserve once event listener name (<a href="https://redirect.github.com/vuejs/core/issues/8341">#8341</a>)</li> <li><a href="https://github.com/vuejs/core/commit/027da6b2810c4752131439d2645f3d931d07242f"><code>027da6b</code></a> fix(ssr): dedupe inherited scope ids during vnode rendering (<a href="https://redirect.github.com/vuejs/core/issues/15005">#15005</a>)</li> <li><a href="https://github.com/vuejs/core/commit/024cf06daa33db4660431f20aa050acb99cff07f"><code>024cf06</code></a> fix(hydration): force patch dynamic props when hydrating (<a href="https://redirect.github.com/vuejs/core/issues/9083">#9083</a>)</li> <li><a href="https://github.com/vuejs/core/commit/be7ce314b96256f1c56f53088d51ed6bc77fde28"><code>be7ce31</code></a> fix(compiler-core): correct filter rewrite recursion (<a href="https://redirect.github.com/vuejs/core/issues/14959">#14959</a>)</li> <li>Additional commits viewable in <a href="https://github.com/vuejs/core/compare/v3.5.35...v3.5.39">compare view</a></li> </ul> </details> <br /> Updates `@vitejs/plugin-vue-jsx` from 5.1.5 to 5.1.6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite-plugin-vue/releases">@vitejs/plugin-vue-jsx's releases</a>.</em></p> <blockquote> <h2>plugin-vue-jsx@5.1.6</h2> <p>Please refer to <a href="https://github.com/vitejs/vite-plugin-vue/blob/plugin-vue-jsx@5.1.6/packages/plugin-vue-jsx/CHANGELOG.md">CHANGELOG.md</a> for details.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite-plugin-vue/blob/main/packages/plugin-vue-jsx/CHANGELOG.md">@vitejs/plugin-vue-jsx's changelog</a>.</em></p> <blockquote> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite-plugin-vue/compare/plugin-vue-jsx@5.1.5...plugin-vue-jsx@5.1.6">5.1.6</a> (2026-06-23)<!-- raw HTML omitted --></h2> <h3>Bug Fixes</h3> <ul> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite-plugin-vue/issues/738">#738</a>) (<a href="https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766">050c996</a>)</li> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite-plugin-vue/issues/762">#762</a>) (<a href="https://github.com/vitejs/vite-plugin-vue/commit/9e825b85ebe9b6006dc5927aaa8aabc0bcc7eceb">9e825b8</a>)</li> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite-plugin-vue/issues/774">#774</a>) (<a href="https://github.com/vitejs/vite-plugin-vue/commit/77dc8bc935216bb7ed13f1c2653a80ffdc99fd45">77dc8bc</a>)</li> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite-plugin-vue/issues/781">#781</a>) (<a href="https://github.com/vitejs/vite-plugin-vue/commit/d369e5a57592ed525c4da5ef0458cb89a6977ad2">d369e5a</a>)</li> </ul> <h3>Performance Improvements</h3> <ul> <li><strong>jsx:</strong> cache TypeScript Babel plugin config (<a href="https://redirect.github.com/vitejs/vite-plugin-vue/issues/799">#799</a>) (<a href="https://github.com/vitejs/vite-plugin-vue/commit/5f3ffabacdca7049747b28f7c78f52735c6fa0e1">5f3ffab</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/f6a8200c1af5fe3e4fb7d585f256b33504da065f"><code>f6a8200</code></a> release: plugin-vue-jsx@5.1.6</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/5f3ffabacdca7049747b28f7c78f52735c6fa0e1"><code>5f3ffab</code></a> perf(jsx): cache TypeScript Babel plugin config (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/799">#799</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/d369e5a57592ed525c4da5ef0458cb89a6977ad2"><code>d369e5a</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/781">#781</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/77dc8bc935216bb7ed13f1c2653a80ffdc99fd45"><code>77dc8bc</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/774">#774</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/9e825b85ebe9b6006dc5927aaa8aabc0bcc7eceb"><code>9e825b8</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/762">#762</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766"><code>050c996</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/738">#738</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/540ab15b12003946c42d03c7a47fc8d8e8932be3"><code>540ab15</code></a> release: plugin-vue-jsx@5.1.5</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/b3f23e4d0818f11a3e2f674380da870b11d260a2"><code>b3f23e4</code></a> chore: remove Vite 8 beta from supported range (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/746">#746</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/2f2ff982a1ffde62bd8ac4c94bcc404d2bf17f80"><code>2f2ff98</code></a> release: plugin-vue-jsx@5.1.4</li> <li><a href="https://github.com/vitejs/vite-plugin-vue/commit/e69d7519aeda6e7be10736197ceea8ad69d89905"><code>e69d751</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue-jsx/issues/726">#726</a>)</li> <li>Additional commits viewable in <a href="https://github.com/vitejs/vite-plugin-vue/commits/plugin-vue-jsx@5.1.6/packages/plugin-vue-jsx">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
3c8318dcc2 |
chore(deps-dev): bump the svelte group with 2 updates (#2580)
Bumps the svelte group with 2 updates: [svelte](https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte) and [vitest-browser-svelte](https://github.com/vitest-community/vitest-browser-svelte). Updates `svelte` from 5.56.1 to 5.56.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sveltejs/svelte/releases">svelte's releases</a>.</em></p> <blockquote> <h2>svelte@5.56.4</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: include wrapping parentheses in <code>{@const}</code> declarator <code>end</code> position (<a href="https://redirect.github.com/sveltejs/svelte/pull/18436">#18436</a>)</p> </li> <li> <p>fix: always unset reactivity context after restoring it (<a href="https://redirect.github.com/sveltejs/svelte/pull/18453">#18453</a>)</p> </li> <li> <p>fix: don't notify <code>searchParams</code> subscribers when the URL changes without affecting the search string (<a href="https://redirect.github.com/sveltejs/svelte/pull/18425">#18425</a>)</p> </li> <li> <p>fix: strip <code>?</code> from optional parameters in <code><script lang="ts"></code> so generated JavaScript is valid (<a href="https://redirect.github.com/sveltejs/svelte/pull/18448">#18448</a>)</p> </li> </ul> <h2>svelte@5.56.3</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: ignore errors that occur in destroyed effects (<a href="https://redirect.github.com/sveltejs/svelte/pull/18384">#18384</a>)</p> </li> <li> <p>fix: type BigInts in <code>$state.snapshot(...)</code> return values (<a href="https://redirect.github.com/sveltejs/svelte/pull/18388">#18388</a>)</p> </li> </ul> <h2>svelte@5.56.2</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: properly track effect end node for async sibling component (<a href="https://redirect.github.com/sveltejs/svelte/pull/18371">#18371</a>)</p> </li> <li> <p>fix: prevent false-positive reactivity loss warning (<a href="https://redirect.github.com/sveltejs/svelte/pull/18373">#18373</a>)</p> </li> <li> <p>chore: bump esrap dependency (<a href="https://redirect.github.com/sveltejs/svelte/pull/18372">#18372</a>)</p> </li> <li> <p>fix: ignore declaration tags for animation directive (<a href="https://redirect.github.com/sveltejs/svelte/pull/18366">#18366</a>)</p> </li> <li> <p>fix: reject pending async deriveds on discard (<a href="https://redirect.github.com/sveltejs/svelte/pull/18308">#18308</a>)</p> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sveltejs/svelte/blob/main/packages/svelte/CHANGELOG.md">svelte's changelog</a>.</em></p> <blockquote> <h2>5.56.4</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: include wrapping parentheses in <code>{@const}</code> declarator <code>end</code> position (<a href="https://redirect.github.com/sveltejs/svelte/pull/18436">#18436</a>)</p> </li> <li> <p>fix: always unset reactivity context after restoring it (<a href="https://redirect.github.com/sveltejs/svelte/pull/18453">#18453</a>)</p> </li> <li> <p>fix: don't notify <code>searchParams</code> subscribers when the URL changes without affecting the search string (<a href="https://redirect.github.com/sveltejs/svelte/pull/18425">#18425</a>)</p> </li> <li> <p>fix: strip <code>?</code> from optional parameters in <code><script lang="ts"></code> so generated JavaScript is valid (<a href="https://redirect.github.com/sveltejs/svelte/pull/18448">#18448</a>)</p> </li> </ul> <h2>5.56.3</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: ignore errors that occur in destroyed effects (<a href="https://redirect.github.com/sveltejs/svelte/pull/18384">#18384</a>)</p> </li> <li> <p>fix: type BigInts in <code>$state.snapshot(...)</code> return values (<a href="https://redirect.github.com/sveltejs/svelte/pull/18388">#18388</a>)</p> </li> </ul> <h2>5.56.2</h2> <h3>Patch Changes</h3> <ul> <li> <p>fix: properly track effect end node for async sibling component (<a href="https://redirect.github.com/sveltejs/svelte/pull/18371">#18371</a>)</p> </li> <li> <p>fix: prevent false-positive reactivity loss warning (<a href="https://redirect.github.com/sveltejs/svelte/pull/18373">#18373</a>)</p> </li> <li> <p>chore: bump esrap dependency (<a href="https://redirect.github.com/sveltejs/svelte/pull/18372">#18372</a>)</p> </li> <li> <p>fix: ignore declaration tags for animation directive (<a href="https://redirect.github.com/sveltejs/svelte/pull/18366">#18366</a>)</p> </li> <li> <p>fix: reject pending async deriveds on discard (<a href="https://redirect.github.com/sveltejs/svelte/pull/18308">#18308</a>)</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/sveltejs/svelte/commit/eae50dfd1c2269e37258ef5c09527003bcf61573"><code>eae50df</code></a> Version Packages (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18435">#18435</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/36ae0622a8da4c6e60d32cde199af3d7c3121cd3"><code>36ae062</code></a> fix: always unset reactivity context after restoring it (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18453">#18453</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/a6985bcd24faa8ec4a8de671b2013d98b0bc629f"><code>a6985bc</code></a> fix: strip <code>?</code> from optional parameters in svelte lang ts (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18448">#18448</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/c4daa490bbbf483ebba117c1afb6f71b4b19e63c"><code>c4daa49</code></a> fix: include wrapping parentheses in <code>{@const}</code> declarator end (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18436">#18436</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/0510174bc0c908c9d4980274717191fdf46a38c6"><code>0510174</code></a> fix: make <code>SvelteURLSearchParams</code> notifications accurate (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18425">#18425</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/8ea3ee8c62aed631d5c4bbc0870d491059ed7d03"><code>8ea3ee8</code></a> chore(deps-dev): bump esbuild from 0.25.11 to 0.28.1 (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18427">#18427</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/a9f48540e236d326714a1148b9d61cf785c0f98a"><code>a9f4854</code></a> Version Packages (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18389">#18389</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/71a6515bd648202b2795a80e68e7c9c7ac9ad4ee"><code>71a6515</code></a> fix: check boundary exists before calling error handler in async derived (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18">#18</a>...</li> <li><a href="https://github.com/sveltejs/svelte/commit/3d83c9abe606415c2ceee215c76582ea9bcfa7b1"><code>3d83c9a</code></a> fix: add bigint to Primitive type for $state.snapshot (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18388">#18388</a>)</li> <li><a href="https://github.com/sveltejs/svelte/commit/51baf1c1af4f02e2a8b009a87d932437f164b612"><code>51baf1c</code></a> Version Packages (<a href="https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte/issues/18357">#18357</a>)</li> <li>Additional commits viewable in <a href="https://github.com/sveltejs/svelte/commits/svelte@5.56.4/packages/svelte">compare view</a></li> </ul> </details> <br /> Updates `vitest-browser-svelte` from 2.1.1 to 2.2.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitest-community/vitest-browser-svelte/releases">vitest-browser-svelte's releases</a>.</em></p> <blockquote> <h2>v2.2.0</h2> <h3> 🚀 Features</h3> <ul> <li>Add <code>wrapper</code> option - by <a href="https://github.com/mcous"><code>@mcous</code></a> in <a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/31">vitest-community/vitest-browser-svelte#31</a> <a href="https://github.com/vitest-community/vitest-browser-svelte/commit/3715b4d"><!-- raw HTML omitted -->(3715b)<!-- raw HTML omitted --></a></li> </ul> <h5> <a href="https://github.com/vitest-community/vitest-browser-svelte/compare/v2.1.1...v2.2.0">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/351c8ff649484173f7814b92c8b0f4a560de1125"><code>351c8ff</code></a> chore: release v2.2.0 (<a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/36">#36</a>)</li> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/e29e1ee6bbe0d757d50f5683744d5b7e2a15d07e"><code>e29e1ee</code></a> ci: add zizmor (<a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/37">#37</a>)</li> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/ff6a5fabcac3a3044f0a368d76bffca663b8c362"><code>ff6a5fa</code></a> build: update the release workflow (<a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/35">#35</a>)</li> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/3715b4d7ce477049305e8f5c13b18a549130d576"><code>3715b4d</code></a> feat: add <code>wrapper</code> option (<a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/31">#31</a>)</li> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/fc777f7a974161334f89b3256ac58db69dbb2e33"><code>fc777f7</code></a> chore(deps): update Vitest and others (<a href="https://redirect.github.com/vitest-community/vitest-browser-svelte/issues/28">#28</a>)</li> <li><a href="https://github.com/vitest-community/vitest-browser-svelte/commit/23f732332b51c40f200e149dc9ea5a1e51b797f6"><code>23f7323</code></a> chore: add links to docs and package</li> <li>See full diff in <a href="https://github.com/vitest-community/vitest-browser-svelte/compare/v2.1.1...v2.2.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1cb3985878 |
chore(deps-dev): bump the react group with 2 updates (#2582)
Bumps the react group with 2 updates: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react). Updates `@types/react` from 19.2.16 to 19.2.17 <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react">compare view</a></li> </ul> </details> <br /> Updates `@vitejs/plugin-react` from 6.0.2 to 6.0.3 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md">@vitejs/plugin-react's changelog</a>.</em></p> <blockquote> <h2>6.0.3 (2026-06-23)</h2> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/640fd358a0e82393acfce4e92e19a6ac6e1641a7"><code>640fd35</code></a> release: plugin-react@6.0.3</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/889efb02cdc4ec978a5e177a37e0213cfded38a4"><code>889efb0</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1249">#1249</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/6c57dd4c5d71075b48039df2532804e72880da21"><code>6c57dd4</code></a> fix(plugin-react): use '/' base in bundledDev preamble to fix non-root base p...</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/3cc33a703636b558a1c1c99e787ddc6bd64aab2d"><code>3cc33a7</code></a> fix(deps): update react-related dependencies (<a href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1245">#1245</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/c0f7c7ff709dc9d88bc1f29f1b27c1b3e2bfcfca"><code>c0f7c7f</code></a> docs: mention the Biome rule in the "Consistent components exports" section (...</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/cd80f0f7b2b750f6e8f719f9c3dbe4f22ddd94db"><code>cd80f0f</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1241">#1241</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/e38accafea0c7c84f7fc72fd69d9cec731fa7600"><code>e38acca</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1227">#1227</a>)</li> <li><a href="https://github.com/vitejs/vite-plugin-react/commit/9a9bb26c23b966dceed47ff9ec257faeb0e777d9"><code>9a9bb26</code></a> perf(react): improve react compiler preset so that slightly more modules are ...</li> <li>See full diff in <a href="https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.3/packages/plugin-react">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
125901ed12 |
chore(deps): bump the angular group with 13 updates (#2579)
Bumps the angular group with 13 updates: | Package | From | To | | --- | --- | --- | | [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `22.0.1` | `22.0.4` | | [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `22.0.1` | `22.0.4` | | [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `22.0.1` | `22.0.4` | | [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `22.0.0` | `22.0.4` | | [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `22.0.0` | `22.0.4` | | [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `22.0.0` | `22.0.4` | | [@angular/build](https://github.com/angular/angular-cli) | `22.0.0` | `22.0.5` | | [@angular/cli](https://github.com/angular/angular-cli) | `22.0.0` | `22.0.5` | | [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `22.0.0` | `22.0.4` | | [@analogjs/vite-plugin-angular](https://github.com/analogjs/analog) | `2.6.0` | `2.6.2` | | [@analogjs/vitest-angular](https://github.com/analogjs/analog) | `2.6.0` | `2.6.2` | | [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `22.0.0` | `22.0.4` | | [vitest-browser-angular](https://github.com/vitest-community/vitest-browser-angular) | `0.4.0` | `0.5.0` | Updates `@angular/common` from 22.0.1 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/common's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/common/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/common's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8d31b82116c4128a00302abd7c4dfc035c77789e">8d31b82116</a></td> <td>fix</td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.0.3 (2026-06-25)</h1> <h3>compiler</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/cd8f472ab4b7d0565fd9c883feaa4be4fee730ef"><code>cd8f472</code></a> docs: add documentation for HttpClient response body size limit and related e...</li> <li><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><code>8cdc202</code></a> fix(http): prevent caching of responses with Set-Cookie headers</li> <li><a href="https://github.com/angular/angular/commit/6867f77ec779a0a24f6339ad6c775f444202103c"><code>6867f77</code></a> fix(http): distinguish repeated transfer cache params</li> <li><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><code>6c1f3e9</code></a> fix(common): skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/common/issues/69316">#69316</a>)</li> <li><a href="https://github.com/angular/angular/commit/7ef139906802ddd98ce12ce99fdd8c11a684d87d"><code>7ef1399</code></a> fix(http): skip transfer cache for fetch credentialed requests (<a href="https://github.com/angular/angular/tree/HEAD/packages/common/issues/69316">#69316</a>)</li> <li><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><code>94ea403</code></a> fix(common): escape anchor fragment in shadow DOM name selector</li> <li>See full diff in <a href="https://github.com/angular/angular/commits/v22.0.4/packages/common">compare view</a></li> </ul> </details> <br /> Updates `@angular/compiler` from 22.0.1 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/compiler's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/compiler's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8d31b82116c4128a00302abd7c4dfc035c77789e">8d31b82116</a></td> <td>fix</td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.0.3 (2026-06-25)</h1> <h3>compiler</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><code>f4f7f37</code></a> fix(compiler): remove unused import breaking CI in 22.0.x</li> <li><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><code>f90c20d</code></a> fix(compiler): account for NgModule dependencies in JIT-compiled partial decl...</li> <li><a href="https://github.com/angular/angular/commit/489d1707d79fe91f1c23d905c4ce9f21cfd1ddf2"><code>489d170</code></a> refactor(compiler): desable the legacy template syntax</li> <li><a href="https://github.com/angular/angular/commit/39001be266e05d73e90a8acf01d47fcddbfab612"><code>39001be</code></a> refactor(compiler): Move the attribute comment to the HTML AST</li> <li><a href="https://github.com/angular/angular/commit/74f2b91c12cef610e5e0dad2f73e036019e570f4"><code>74f2b91</code></a> refactor(compiler): correct TcbInvalidReferenceOp initializer</li> <li><a href="https://github.com/angular/angular/commit/b32ee7ceb3878d25ed58b7bbad58aaf3a01d9966"><code>b32ee7c</code></a> fix(core): treat iframe credentialless as security-sensitive</li> <li><a href="https://github.com/angular/angular/commit/f309727ada9e306c8001b54d4caf7fe71528a427"><code>f309727</code></a> refactor(compiler): Collect in-element comments</li> <li><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><code>6f11719</code></a> fix(compiler): restrict possible event handler check to property names longer...</li> <li><a href="https://github.com/angular/angular/commit/8bb3947e995906cc1e48e41e7abc65de3a3cd1f4"><code>8bb3947</code></a> refactor: optimize dom security schema lookups</li> <li>See full diff in <a href="https://github.com/angular/angular/commits/v22.0.4/packages/compiler">compare view</a></li> </ul> </details> <br /> Updates `@angular/core` from 22.0.1 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/core's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/core/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/core's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8d31b82116c4128a00302abd7c4dfc035c77789e">8d31b82116</a></td> <td>fix</td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.0.3 (2026-06-25)</h1> <h3>compiler</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><code>fd37f09</code></a> fix(migrations): resolve migration failure when tsconfig specifies rootDir</li> <li><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><code>f90c20d</code></a> fix(compiler): account for NgModule dependencies in JIT-compiled partial decl...</li> <li><a href="https://github.com/angular/angular/commit/01d58d7ad7277ca1acc07186a7114167d65b02d6"><code>01d58d7</code></a> refactor(core): Tree shake the <code>SimpleChanges</code> & co.</li> <li><a href="https://github.com/angular/angular/commit/03d1a6444a57ed654929c4b36c86cf797021c3c0"><code>03d1a64</code></a> docs(core): document resource chaining with chain() in params context</li> <li><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><code>2799304</code></a> fix(core): avoid uncaught promise errors in injectAsync prefetching</li> <li><a href="https://github.com/angular/angular/commit/3e7c83b0a30886ffc9ecb9f6d1f234debadce68d"><code>3e7c83b</code></a> Revert "fix(core): escape overlapping comment delimiters in escapeCommentText"</li> <li><a href="https://github.com/angular/angular/commit/152601ed9429d127e31a9068db92aa4406cd0ced"><code>152601e</code></a> refactor(core): add <code>childSignalProp</code> to <code>ReactiveNodeKind</code></li> <li><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><code>59dea13</code></a> fix(core): guard against DOM clobbering in declareExperimentalWebMcpTool</li> <li><a href="https://github.com/angular/angular/commit/81cb4570b2297d8af1a7287e2275758afc5b9acb"><code>81cb457</code></a> refactor(router): Add handling for ActivatedRoute-scoped injector</li> <li><a href="https://github.com/angular/angular/commit/f902d1d35e90e9220e40581fa2d7c4463b2d1190"><code>f902d1d</code></a> perf(core): detect existing signal dependency without checking all producer l...</li> <li>Additional commits viewable in <a href="https://github.com/angular/angular/commits/v22.0.4/packages/core">compare view</a></li> </ul> </details> <br /> Updates `@angular/forms` from 22.0.0 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/forms's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/forms/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/forms's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8d31b82116c4128a00302abd7c4dfc035c77789e">8d31b82116</a></td> <td>fix</td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.0.3 (2026-06-25)</h1> <h3>compiler</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/2353bf22a52563fece26047820234ae013cdc931"><code>2353bf2</code></a> refactor(forms): widen <code>AsyncValidatorOptions.factory</code></li> <li><a href="https://github.com/angular/angular/commit/d2b613900cbfeb4780d4061155e2b1b6183128be"><code>d2b6139</code></a> docs(forms): clarify debounce('blur') usage with custom FormValueControl</li> <li><a href="https://github.com/angular/angular/commit/59ee51e2d4adea02d25068b21980312164fd477d"><code>59ee51e</code></a> docs(forms): update package docs for Signal Forms graduation</li> <li><a href="https://github.com/angular/angular/commit/3f055435f6e2f5f9824bc8f70d061b284bea7c80"><code>3f05543</code></a> refactor(forms): fix initWebMcpForm description to be required</li> <li><a href="https://github.com/angular/angular/commit/11836a670af5c64153d57a2d47b4688605379014"><code>11836a6</code></a> fix(forms): delay mcp reading the form model by a <code>tick</code></li> <li><a href="https://github.com/angular/angular/commit/e51ad374ea628de33843332f6798635dc8af02ae"><code>e51ad37</code></a> fix(forms): remove animationstart listener on component destroy to prevent me...</li> <li><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd"><code>85d2d10</code></a> fix(forms): harden FormGroup control lookups against prototype shadowing</li> <li><a href="https://github.com/angular/angular/commit/cdcea80327e8984981144d99194d7b194da4889f"><code>cdcea80</code></a> fix(core): require WebMCP tool descriptions</li> <li><a href="https://github.com/angular/angular/commit/55b7b5a6b6324c1886eca8dbc492e6af5fc4cd7a"><code>55b7b5a</code></a> fix(forms): set <code>additionalProperties: false</code> on generated WebMCP form</li> <li>See full diff in <a href="https://github.com/angular/angular/commits/v22.0.4/packages/forms">compare view</a></li> </ul> </details> <br /> Updates `@angular/platform-browser` from 22.0.0 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/platform-browser's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/platform-browser's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8d31b82116c4128a00302abd7c4dfc035c77789e">8d31b82116</a></td> <td>fix</td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.0.3 (2026-06-25)</h1> <h3>compiler</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/3d536d7a8479f7360de822e8ec905a8d3a26efdd"><code>3d536d7</code></a> docs: add error guide for NG05102</li> <li><a href="https://github.com/angular/angular/commit/f598dcfda0d2c13eca237b6a2ed7006361b0506a"><code>f598dcf</code></a> docs: add error guide for NG05101</li> <li>See full diff in <a href="https://github.com/angular/angular/commits/v22.0.4/packages/platform-browser">compare view</a></li> </ul> </details> <br /> Updates `@angular/router` from 22.0.0 to 22.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/router's releases</a>.</em></p> <blockquote> <h2>22.0.4</h2> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034"><img src="https://img.shields.io/badge/fd37f09f37-fix-green" alt="fix - fd37f09f37" /></a></td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <h2>22.0.3</h2> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f90c20df4064dcdc4fe63d3148e0d696a61f562c"><img src="https://img.shields.io/badge/f90c20df40-fix-green" alt="fix - f90c20df40" /></a></td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/f4f7f3755cc74c7ee73da32a14d99cdb9265177c"><img src="https://img.shields.io/badge/f4f7f3755c-fix-green" alt="fix - f4f7f3755c" /></a></td> <td>remove unused import breaking CI in 22.0.x</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/06d854929c31213df363274f80a64b9049f0310c"><img src="https://img.shields.io/badge/06d854929c-fix-green" alt="fix - 06d854929c" /></a></td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/279930425910c804e369a04f8df3a259f16b8daf"><img src="https://img.shields.io/badge/2799304259-fix-green" alt="fix - 2799304259" /></a></td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8cdc202dfcd45b95fdcabb2af3493571f57a4762"><img src="https://img.shields.io/badge/8cdc202dfc-fix-green" alt="fix - 8cdc202dfc" /></a></td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/b4a5a2fb4eb2b2ffb6e79170d453d55af2c72e73"><img src="https://img.shields.io/badge/b4a5a2fb4e-fix-green" alt="fix - b4a5a2fb4e" /></a></td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a16f9b22633ef88f64517e18b29923c74da6bff6"><img src="https://img.shields.io/badge/a16f9b2263-fix-green" alt="fix - a16f9b2263" /></a></td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/bcc648f4b6dae63d600a9f1c40854940bf8442c7"><img src="https://img.shields.io/badge/bcc648f4b6-fix-green" alt="fix - bcc648f4b6" /></a></td> <td>support model() signals in downgradeComponent</td> </tr> </tbody> </table> <h2>22.0.2</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/94ea4035638db37e938831e3cb0e9562ca399475"><img src="https://img.shields.io/badge/94ea403563-fix-green" alt="fix - 94ea403563" /></a></td> <td>escape anchor fragment in shadow DOM name selector</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6c1f3e9d49907ef643f1bc5297ff404768017acf"><img src="https://img.shields.io/badge/6c1f3e9d49-fix-green" alt="fix - 6c1f3e9d49" /></a></td> <td>skip transfer cache for uncacheable HTTP traffic (<a href="https://github.com/angular/angular/tree/HEAD/packages/router/issues/69316">#69316</a>)</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/6f1171991a1262b5384470f34029f7312dc4fc53"><img src="https://img.shields.io/badge/6f1171991a-fix-green" alt="fix - 6f1171991a" /></a></td> <td>restrict possible event handler check to property names longer than 2 characters</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/528a34f766191da3fc684c6fac988b1bd2028f49"><img src="https://img.shields.io/badge/528a34f766-fix-green" alt="fix - 528a34f766" /></a></td> <td>avoid caching missing locale data</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e17e8d542242333359946863d0272680c966325b"><img src="https://img.shields.io/badge/e17e8d5422-fix-green" alt="fix - e17e8d5422" /></a></td> <td>escape overlapping comment delimiters in escapeCommentText</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/59dea13f802f0bf43c4ee2b65c2a1aa0e59a2a15"><img src="https://img.shields.io/badge/59dea13f80-fix-green" alt="fix - 59dea13f80" /></a></td> <td>guard against DOM clobbering in declareExperimentalWebMcpTool</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/router's changelog</a>.</em></p> <blockquote> <h1>22.0.4 (2026-06-26)</h1> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/fd37f09f371184f6160ec7eb7fdf560eb9d77034">fd37f09f37</a></td> <td>fix</td> <td>resolve migration failure when tsconfig specifies rootDir</td> </tr> </tbody> </table> <!-- raw HTML omitted --> <p><!-- raw HTML omitted --><!-- raw HTML omitted --></p> <h1>22.1.0-next.2 (2026-06-25)</h1> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ecd047578e1eb3a4cdfee7bfee9b1422e5a5db2c">ecd047578e</a></td> <td>fix</td> <td>account for NgModule dependencies in JIT-compiled partial declarations</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/8b2785b597ccf11dae3cd3f2e7ee97480233e4d6">8b2785b597</a></td> <td>fix</td> <td>report diagnostic instead of crashing on malformed host binding</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/91d168e74b7cdcd1292772b1052888b83de5f3af">91d168e74b</a></td> <td>fix</td> <td>avoid uncaught promise errors in injectAsync prefetching</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/f76e8a98c1005827e562811d5d08ffd35493f9f5">f76e8a98c1</a></td> <td>fix</td> <td>prevent caching of responses with Set-Cookie headers</td> </tr> </tbody> </table> <h3>migrations</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c75ff0255c3d5ee16f94a9969cd611ab2e02d4a2">c75ff0255c</a></td> <td>feat</td> <td>add migration from injectable to service</td> </tr> </tbody> </table> <h3>router</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/97a3fd6a55eccabf7c9adfb33f745c8d1da6d3e9">97a3fd6a55</a></td> <td>feat</td> <td>handle null and undefined inputs in RouterLinkActive</td> </tr> </tbody> </table> <h3>service-worker</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/716f9eb032baea351c94352f8e36dac8bc82468e">716f9eb032</a></td> <td>fix</td> <td>preserve referrer in asset requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/6f98f98f1f410e5343852e3c8f98c32267b29e01">6f98f98f1f</a></td> <td>fix</td> <td>preserve referrer policy in asset requests</td> </tr> </tbody> </table> <h3>upgrade</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://g... _Description has been truncated_ Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
81f63653d3 |
chore(deps): bump the langchain group with 8 updates (#2578)
Bumps the langchain group with 8 updates: | Package | From | To | | --- | --- | --- | | [@langchain/anthropic](https://github.com/langchain-ai/langchainjs) | `1.4.0` | `1.5.1` | | [langchain](https://github.com/langchain-ai/langchainjs) | `1.4.4` | `1.5.2` | | [@langchain/openai](https://github.com/langchain-ai/langchainjs) | `1.4.7` | `1.5.3` | | [@langchain/groq](https://github.com/langchain-ai/langchainjs) | `1.2.1` | `1.3.1` | | [@langchain/mistralai](https://github.com/langchain-ai/langchainjs) | `1.1.0` | `1.2.0` | | [@langchain/ollama](https://github.com/langchain-ai/langchainjs) | `1.2.7` | `1.3.0` | | [@langchain/classic](https://github.com/langchain-ai/langchainjs) | `1.0.34` | `1.0.38` | | [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.7.4` | `0.7.14` | Updates `@langchain/anthropic` from 1.4.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/anthropic's releases</a>.</em></p> <blockquote> <h2><code>@langchain/anthropic</code><a href="https://github.com/1"><code>@1</code></a>.5.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11073">#11073</a> <a href="https://github.com/langchain-ai/langchainjs/commit/baa57ba7cdce2046ba3dd40e9e8cf3c93c9c1ac4"><code>baa57ba</code></a> Thanks <a href="https://github.com/archievi"><code>@archievi</code></a>! - Stop sending <code>thinking: { type: "disabled" }</code> on <code>ChatAnthropic</code> requests when the user never configured thinking. The disabled value is now only emitted when it is explicitly set, so adaptive-only models (e.g. <code>claude-fable-5</code>) that reject an explicit <code>thinking.type: "disabled"</code> no longer fail with a 400 on a default <code>ChatAnthropic</code> instance.</li> </ul> <h2><code>@langchain/anthropic</code><a href="https://github.com/1"><code>@1</code></a>.5.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10924">#10924</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(anthropic): update native streamEvents event coverage</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/1ee0df0c49335104968f6c5130dbdb7e777f85d7"><code>1ee0df0</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11097">#11097</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f01770895c06621b469a6c6b5244747f6efdfbf7"><code>f017708</code></a> fix(core): better 429 error handling (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10674">#10674</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> fix(openai): omit empty reasoning item id in Responses API input (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11045">#11045</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> fix(openai): route standard url file blocks to native input_file in Responses...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> fix(openai): stream built-in tool progress events (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11090">#11090</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11072">#11072</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c66870ea8ebf9e3b0794ab8d969b25dfb189f2de"><code>c66870e</code></a> feat(weaviate): add X-Weaviate-Client-Integration telemetry header (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11088">#11088</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/baa57ba7cdce2046ba3dd40e9e8cf3c93c9c1ac4"><code>baa57ba</code></a> fix(anthropic): omit default disabled thinking from requests (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11073">#11073</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/04edb8d0fa3c408adbc6e4c277d1f3aaf5b40161"><code>04edb8d</code></a> docs(ibm): fix "Recieved" typo in tool_choice error message (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11066">#11066</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2b7f368c2baa3f2916a207bf099a437adce2179c"><code>2b7f368</code></a> chore(deps): bump uuid from 14.0.0 to 14.0.1 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11094">#11094</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/anthropic@1.4.0...@langchain/anthropic@1.5.1">compare view</a></li> </ul> </details> <br /> Updates `langchain` from 1.4.4 to 1.5.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">langchain's releases</a>.</em></p> <blockquote> <h2>langchain@1.5.2</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11100">#11100</a> <a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a> Thanks <a href="https://github.com/colifran"><code>@colifran</code></a>! - fix(langchain, openai): decouple strict tools from strict structured output response</li> </ul> <h2>langchain@1.5.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11087">#11087</a> <a href="https://github.com/langchain-ai/langchainjs/commit/534b43a0719c89e3fb4ab7052d3f39797660aa43"><code>534b43a</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(langchain): keep tool call streams pending across any tool interrupt</p> <p>A raw <code>interrupt()</code> raised from inside a tool surfaced as a <code>tool-error</code> and rejected the call's un-awaited <code>output</code> promise, producing an unhandled rejection that crashed HITL runs. The tool-call stream transformer now treats any serialized graph interrupt as control flow (the call stays pending and resumes), not just <code>humanInTheLoopMiddleware</code> interrupts.</p> </li> </ul> <h2>langchain@1.5.0</h2> <h3>Minor Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11062">#11062</a> <a href="https://github.com/langchain-ai/langchainjs/commit/3ebd10ae381ef7c9e12759f08d2f2b745bdfae62"><code>3ebd10a</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(langchain): surface tool-dispatched subagents on <code>run.subagents</code></p> <p>Add a native subagent stream transformer to <code>createAgent</code> so v3 runs expose named nested agents (<code>createAgent({ name })</code> invoked from tools) as typed <code>SubagentRunStream</code> handles with <code>name</code>, <code>cause</code>, scoped <code>messages</code> / <code>toolCalls</code>, and <code>output</code>. Refactors agent stream transformers into <code>agents/transformers/</code> and exports only the public stream types from the package entry.</p> </li> </ul> <h2>langchain@1.4.6</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11012">#11012</a> <a href="https://github.com/langchain-ai/langchainjs/commit/4aeaa767a48dcc5451371f14adf4a06f064d23b9"><code>4aeaa76</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(langchain): add <code>when</code> predicate to human-in-the-loop middleware</p> <p>Add an optional <code>when</code> callback on <code>InterruptOnConfig</code> so callers can dynamically skip interrupts for specific tool calls. The predicate receives a <code>ToolCallRequest</code> (batch <code>afterModel</code> context) and returns whether to interrupt or auto-approve, matching Python <code>HumanInTheLoopMiddleware</code>.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11080">#11080</a> <a href="https://github.com/langchain-ai/langchainjs/commit/e51478a4436d69a21f75f1c9e0bb84f3abb6d6f5"><code>e51478a</code></a> Thanks <a href="https://github.com/aolsenjazz"><code>@aolsenjazz</code></a>! - feat(aws): bedrock prompt caching middleware</p> <p>Adds bedrockPromptCachingMiddleware. The interface largely matches what was previous implemented with anthropicPromptCachingMiddleware, making a best-effort attempt at utilizing prompt caching features for supported models.</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f1d64ff8d6076fb6656c1f327b7b58eac520314b"><code>f1d64ff</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11101">#11101</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/72ffc4bf17dc6dca390546c0e6c9503607198f26"><code>72ffc4b</code></a> fix(aws): add Bedrock stream idle timeout (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11098">#11098</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a> fix(langchain, openai): decouple strict tools from strict structured output r...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/1ee0df0c49335104968f6c5130dbdb7e777f85d7"><code>1ee0df0</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11097">#11097</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f01770895c06621b469a6c6b5244747f6efdfbf7"><code>f017708</code></a> fix(core): better 429 error handling (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10674">#10674</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> fix(openai): omit empty reasoning item id in Responses API input (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11045">#11045</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> fix(openai): route standard url file blocks to native input_file in Responses...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> fix(openai): stream built-in tool progress events (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11090">#11090</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11072">#11072</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c66870ea8ebf9e3b0794ab8d969b25dfb189f2de"><code>c66870e</code></a> feat(weaviate): add X-Weaviate-Client-Integration telemetry header (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11088">#11088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/openai@1.4.4...langchain@1.5.2">compare view</a></li> </ul> </details> <br /> Updates `@langchain/openai` from 1.4.7 to 1.5.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/openai's releases</a>.</em></p> <blockquote> <h2><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.3</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11100">#11100</a> <a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a> Thanks <a href="https://github.com/colifran"><code>@colifran</code></a>! - fix(langchain, openai): decouple strict tools from strict structured output response</li> </ul> <h2><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11045">#11045</a> <a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> Thanks <a href="https://github.com/jackjin1997"><code>@jackjin1997</code></a>! - fix(openai): omit empty id and content on reasoning items in Responses API input</p> <p>Reasoning blocks reassembled from streaming chunks (e.g. via <code>streamEvents</code>) never carry an id, since OpenAI's streaming protocol only includes it in non-streaming responses. When such a message was replayed as Responses API input on the next turn, the reasoning item was emitted with <code>id: ""</code>, which OpenAI rejects with <code>400 Invalid 'input[n].id': ''</code>. The <code>id</code> field is now omitted when absent.</p> <p>A second error surfaced immediately after that fix: the same converter set a populated <code>content</code> array on the reasoning input item, which the Responses API also rejects (<code>400 Invalid 'input[n].content': array too long. Expected an array with maximum length 0</code>). Reasoning input items only carry <code>summary</code>, so <code>content</code> is no longer forwarded. Thanks to <a href="https://github.com/csrujanreddy"><code>@csrujanreddy</code></a> for catching the second issue and verifying both fixes against the live API.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11065">#11065</a> <a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> Thanks <a href="https://github.com/rxits"><code>@rxits</code></a>! - fix(openai): route standard url file blocks to native input_file in Responses API</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11090">#11090</a> <a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> Thanks <a href="https://github.com/nikhilpakhloo"><code>@nikhilpakhloo</code></a>! - fix(openai): stream built-in tool progress events</p> </li> </ul> <h2><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11001">#11001</a> <a href="https://github.com/langchain-ai/langchainjs/commit/80b43ecffe0701c3c375c407fb601cb452f708ef"><code>80b43ec</code></a> Thanks <a href="https://github.com/Herrtian"><code>@Herrtian</code></a>! - Wrap Responses API stream iteration errors with existing OpenAI client error handling.</li> </ul> <h2><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10924">#10924</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(openai): add native streamEvents event converters</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f1d64ff8d6076fb6656c1f327b7b58eac520314b"><code>f1d64ff</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11101">#11101</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/72ffc4bf17dc6dca390546c0e6c9503607198f26"><code>72ffc4b</code></a> fix(aws): add Bedrock stream idle timeout (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11098">#11098</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a> fix(langchain, openai): decouple strict tools from strict structured output r...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/1ee0df0c49335104968f6c5130dbdb7e777f85d7"><code>1ee0df0</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11097">#11097</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f01770895c06621b469a6c6b5244747f6efdfbf7"><code>f017708</code></a> fix(core): better 429 error handling (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10674">#10674</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> fix(openai): omit empty reasoning item id in Responses API input (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11045">#11045</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> fix(openai): route standard url file blocks to native input_file in Responses...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> fix(openai): stream built-in tool progress events (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11090">#11090</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11072">#11072</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c66870ea8ebf9e3b0794ab8d969b25dfb189f2de"><code>c66870e</code></a> feat(weaviate): add X-Weaviate-Client-Integration telemetry header (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11088">#11088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/openai@1.4.7...@langchain/openai@1.5.3">compare view</a></li> </ul> </details> <br /> Updates `@langchain/groq` from 1.2.1 to 1.3.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/groq's releases</a>.</em></p> <blockquote> <h2><code>@langchain/groq</code><a href="https://github.com/1"><code>@1</code></a>.3.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11072">#11072</a> <a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> Thanks <a href="https://github.com/atimothee"><code>@atimothee</code></a>! - fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency</p> <p>The package imports <code>@langchain/core/utils/standard_schema</code> and <code>@langchain/core/language_models/structured_output</code>, both of which were introduced in <code>@langchain/core@1.1.30</code>. The previous <code>^1.0.0</code> peer dependency range allowed installing incompatible older versions and caused module-resolution failures at build/runtime.</p> </li> </ul> <h2><code>@langchain/groq</code><a href="https://github.com/1"><code>@1</code></a>.3.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10924">#10924</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(groq): add native OpenAI-compatible streamEvents events</li> </ul> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/11069">#11069</a> <a href="https://github.com/langchain-ai/langchainjs/commit/7d61f5f19861643bd39eda333628e59783c75fa9"><code>7d61f5f</code></a> Thanks <a href="https://github.com/brandonhawi"><code>@brandonhawi</code></a>! - Tighten the <code>@langchain/core</code> peer dependency to <code>^1.1.30</code>, the version that introduced the <code>utils/standard_schema</code> and <code>language_models/structured_output</code> export subpaths imported by <code>ChatGroq</code>. The previous <code>^1.0.0</code> range allowed core versions below 1.1.30 that lack these exports, causing module-not-found build failures.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/1ee0df0c49335104968f6c5130dbdb7e777f85d7"><code>1ee0df0</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11097">#11097</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f01770895c06621b469a6c6b5244747f6efdfbf7"><code>f017708</code></a> fix(core): better 429 error handling (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10674">#10674</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> fix(openai): omit empty reasoning item id in Responses API input (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11045">#11045</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> fix(openai): route standard url file blocks to native input_file in Responses...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> fix(openai): stream built-in tool progress events (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11090">#11090</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11072">#11072</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c66870ea8ebf9e3b0794ab8d969b25dfb189f2de"><code>c66870e</code></a> feat(weaviate): add X-Weaviate-Client-Integration telemetry header (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11088">#11088</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/baa57ba7cdce2046ba3dd40e9e8cf3c93c9c1ac4"><code>baa57ba</code></a> fix(anthropic): omit default disabled thinking from requests (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11073">#11073</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/04edb8d0fa3c408adbc6e4c277d1f3aaf5b40161"><code>04edb8d</code></a> docs(ibm): fix "Recieved" typo in tool_choice error message (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11066">#11066</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2b7f368c2baa3f2916a207bf099a437adce2179c"><code>2b7f368</code></a> chore(deps): bump uuid from 14.0.0 to 14.0.1 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11094">#11094</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/groq@1.2.1...@langchain/groq@1.3.1">compare view</a></li> </ul> </details> <br /> Updates `@langchain/mistralai` from 1.1.0 to 1.2.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/mistralai's releases</a>.</em></p> <blockquote> <h2><code>@langchain/mistralai</code><a href="https://github.com/1"><code>@1</code></a>.2.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10924">#10924</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(mistralai): add native streamEvents event conversion</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c5e896270207fcd3bdf1d1877e80b94c72d35f1e"><code>c5e8962</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11059">#11059</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/e51478a4436d69a21f75f1c9e0bb84f3abb6d6f5"><code>e51478a</code></a> feat(aws): bedrock prompt caching middleware (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11080">#11080</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/7d61f5f19861643bd39eda333628e59783c75fa9"><code>7d61f5f</code></a> fix(groq): tighten <code>@langchain/core</code> peer dependency to ^1.1.30 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11069">#11069</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> feat(deps): native streamEvents ChatModelStreamEvent protocol (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10924">#10924</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/6d212ef91affd19b71dac22fd3761287a96108bf"><code>6d212ef</code></a> docs(tavily): fix "refering" typo in tool description (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11067">#11067</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/a001816b56a0f19326d1e3e5ccbea5ae90dd549f"><code>a001816</code></a> chore(deps): bump esbuild from 0.28.0 to 0.28.1 in /environment_tests/test-ex...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/234c8bbb97444357847de5751d81ee9c51a7d33f"><code>234c8bb</code></a> ci(infra): pin GitHub Actions to full-length commit SHAs (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11061">#11061</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/4aeaa767a48dcc5451371f14adf4a06f064d23b9"><code>4aeaa76</code></a> feat(langchain): add <code>when</code> predicate to human-in-the-loop middleware (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11012">#11012</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/ac0f71d03994664cfee98e71a584d4aa3321746f"><code>ac0f71d</code></a> fix(core): preserve AIMessage content blocks (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11047">#11047</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/39f338e08e6abfd9e1d02157b2e8b3c9768a673c"><code>39f338e</code></a> chore: remove deprecated <code>@langchain/google-cloud-sql-pg</code> package (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11060">#11060</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/mistralai@1.1.0...@langchain/mistralai@1.2.0">compare view</a></li> </ul> </details> <br /> Updates `@langchain/ollama` from 1.2.7 to 1.3.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/ollama's releases</a>.</em></p> <blockquote> <h2><code>@langchain/ollama</code><a href="https://github.com/1"><code>@1</code></a>.3.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10924">#10924</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(ollama): add native streamEvents event conversion</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c5e896270207fcd3bdf1d1877e80b94c72d35f1e"><code>c5e8962</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11059">#11059</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/e51478a4436d69a21f75f1c9e0bb84f3abb6d6f5"><code>e51478a</code></a> feat(aws): bedrock prompt caching middleware (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11080">#11080</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/7d61f5f19861643bd39eda333628e59783c75fa9"><code>7d61f5f</code></a> fix(groq): tighten <code>@langchain/core</code> peer dependency to ^1.1.30 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11069">#11069</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a> feat(deps): native streamEvents ChatModelStreamEvent protocol (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10924">#10924</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/6d212ef91affd19b71dac22fd3761287a96108bf"><code>6d212ef</code></a> docs(tavily): fix "refering" typo in tool description (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11067">#11067</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/a001816b56a0f19326d1e3e5ccbea5ae90dd549f"><code>a001816</code></a> chore(deps): bump esbuild from 0.28.0 to 0.28.1 in /environment_tests/test-ex...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/234c8bbb97444357847de5751d81ee9c51a7d33f"><code>234c8bb</code></a> ci(infra): pin GitHub Actions to full-length commit SHAs (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11061">#11061</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/4aeaa767a48dcc5451371f14adf4a06f064d23b9"><code>4aeaa76</code></a> feat(langchain): add <code>when</code> predicate to human-in-the-loop middleware (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11012">#11012</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/ac0f71d03994664cfee98e71a584d4aa3321746f"><code>ac0f71d</code></a> fix(core): preserve AIMessage content blocks (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11047">#11047</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/39f338e08e6abfd9e1d02157b2e8b3c9768a673c"><code>39f338e</code></a> chore: remove deprecated <code>@langchain/google-cloud-sql-pg</code> package (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11060">#11060</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/langchain@1.2.7...@langchain/ollama@1.3.0">compare view</a></li> </ul> </details> <br /> Updates `@langchain/classic` from 1.0.34 to 1.0.38 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/classic's releases</a>.</em></p> <blockquote> <h2><code>@langchain/classic</code><a href="https://github.com/1"><code>@1</code></a>.0.38</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a>]: <ul> <li><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.3</li> </ul> </li> </ul> <h2><code>@langchain/classic</code><a href="https://github.com/1"><code>@1</code></a>.0.37</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a>, <a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a>, <a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a>]: <ul> <li><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.2</li> </ul> </li> </ul> <h2><code>@langchain/classic</code><a href="https://github.com/1"><code>@1</code></a>.0.36</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langchainjs/commit/80b43ecffe0701c3c375c407fb601cb452f708ef"><code>80b43ec</code></a>]: <ul> <li><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.1</li> </ul> </li> </ul> <h2><code>@langchain/classic</code><a href="https://github.com/1"><code>@1</code></a>.0.35</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langchainjs/commit/2e2811509d75af94f57cedcc3842f178f4c020d1"><code>2e28115</code></a>]: <ul> <li><code>@langchain/openai</code><a href="https://github.com/1"><code>@1</code></a>.5.0</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f1d64ff8d6076fb6656c1f327b7b58eac520314b"><code>f1d64ff</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11101">#11101</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/72ffc4bf17dc6dca390546c0e6c9503607198f26"><code>72ffc4b</code></a> fix(aws): add Bedrock stream idle timeout (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11098">#11098</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/3205b35ac83037a2fff2998f16a66b5126b306f8"><code>3205b35</code></a> fix(langchain, openai): decouple strict tools from strict structured output r...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/1ee0df0c49335104968f6c5130dbdb7e777f85d7"><code>1ee0df0</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11097">#11097</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/f01770895c06621b469a6c6b5244747f6efdfbf7"><code>f017708</code></a> fix(core): better 429 error handling (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10674">#10674</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/05936ab45ce1bbb04b955c3ebdd03dc1451b655c"><code>05936ab</code></a> fix(openai): omit empty reasoning item id in Responses API input (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11045">#11045</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/798cb705222f43759e94d02a790ebb706ef2f099"><code>798cb70</code></a> fix(openai): route standard url file blocks to native input_file in Responses...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/80c790b593ad19668f1101f84f06c175db114909"><code>80c790b</code></a> fix(openai): stream built-in tool progress events (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11090">#11090</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2e6afcf17b269aa11a2f18444c208bc8a4b2520"><code>d2e6afc</code></a> fix(groq): require <code>@langchain/core</code> >= 1.1.30 in peer dependency (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11072">#11072</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c66870ea8ebf9e3b0794ab8d969b25dfb189f2de"><code>c66870e</code></a> feat(weaviate): add X-Weaviate-Client-Integration telemetry header (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/11088">#11088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/classic@1.0.34...@langchain/classic@1.0.38">compare view</a></li> </ul> </details> <br /> Updates `langsmith` from 0.7.4 to 0.7.14 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.7.14</h2> <h2>What's Changed</h2> <ul> <li>fix: sum Anthropic cache tokens into input_tokens for correct cost calculation by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2519">langchain-ai/langsmith-sdk#2519</a></li> <li>chore(py): Bump version: 0.7.13 → 0.7.14 by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2535">langchain-ai/langsmith-sdk#2535</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.13...v0.7.14">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.13...v0.7.14</a></p> <h2>v0.7.13</h2> <h2>What's Changed</h2> <ul> <li>fix: initialize otel exporter before background thread by <a href="https://github.com/ericdong-langchain"><code>@ericdong-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2526">langchain-ai/langsmith-sdk#2526</a></li> <li>fix: convert non primitive types to JSON strings by <a href="https://github.com/ericdong-langchain"><code>@ericdong-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2527">langchain-ai/langsmith-sdk#2527</a></li> <li>fix: missing await by <a href="https://github.com/ericdong-langchain"><code>@ericdong-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2528">langchain-ai/langsmith-sdk#2528</a></li> <li>fix: bump minimatch to resolve CVE-2026-27903 by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2502">langchain-ai/langsmith-sdk#2502</a></li> <li>feat(py): add experiment-level metadata to pytest integration by <a href="https://github.com/baskaryan"><code>@baskaryan</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2524">langchain-ai/langsmith-sdk#2524</a></li> <li>Bump version: 0.7.12 → 0.7.13 by <a href="https://github.com/baskaryan"><code>@baskaryan</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2531">langchain-ai/langsmith-sdk#2531</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.12...v0.7.13">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.12...v0.7.13</a></p> <h2>v0.7.12</h2> <h2>What's Changed</h2> <ul> <li>fix: sample before transform in ingest by <a href="https://github.com/ericdong-langchain"><code>@ericdong-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2488">langchain-ai/langsmith-sdk#2488</a></li> <li>chore: bump version by <a href="https://github.com/ericdong-langchain"><code>@ericdong-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2521">langchain-ai/langsmith-sdk#2521</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.11...v0.7.12">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.11...v0.7.12</a></p> <h2>v0.7.11</h2> <h2>What's Changed</h2> <ul> <li>add get insights reports with runs by <a href="https://github.com/Palashio"><code>@Palashio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2517">langchain-ai/langsmith-sdk#2517</a></li> <li>bump version for insights sdk changes by <a href="https://github.com/Palashio"><code>@Palashio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2520">langchain-ai/langsmith-sdk#2520</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Palashio"><code>@Palashio</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2517">langchain-ai/langsmith-sdk#2517</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.10...v0.7.11">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.10...v0.7.11</a></p> <h2>v0.7.10</h2> <h2>What's Changed</h2> <ul> <li>chore(deps-dev): bump the js-minor-and-patch group across 1 directory with 9 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2490">langchain-ai/langsmith-sdk#2490</a></li> <li>fix: update deprecated model and re-record VCR cassettes by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2503">langchain-ai/langsmith-sdk#2503</a></li> <li>chore(deps): bump minimatch from 3.1.2 to 3.1.5 in /js/internal/environment_tests/test-exports-metro in the npm_and_yarn group across 1 directory by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2489">langchain-ai/langsmith-sdk#2489</a></li> <li>fix: memory leak in _cached_attachment_args when tracing closures by <a href="https://github.com/angus-langchain"><code>@angus-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2515">langchain-ai/langsmith-sdk#2515</a></li> <li>Bump version: 0.7.9 → 0.7.10 by <a href="https://github.com/angus-langchain"><code>@angus-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2516">langchain-ai/langsmith-sdk#2516</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.9...v0.7.10">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.9...v0.7.10</a></p> <h2>v0.7.9</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/f099beb36228b2ce008e56262ab6a5846d2dbdd1"><code>f099beb</code></a> chore(py): Bump version: 0.7.13 → 0.7.14 (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2535">#2535</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/27f1b8312c39b7acda31ac9a850fd74fb99a4e29"><code>27f1b83</code></a> fix: sum Anthropic cache tokens into input_tokens for correct cost calculatio...</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/22c21bff7d1e429d0dfa7800adf95ef971ef2458"><code>22c21bf</code></a> Bump version: 0.7.12 → 0.7.13 (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2531">#2531</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/5d17205b854377bf1c8c59f2c40923c295e2c127"><code>5d17205</code></a> feat(py): add experiment-level metadata to pytest integration (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2524">#2524</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/1412ad4bfe5294e5d6407962162b2fbfcd75202d"><code>1412ad4</code></a> fix: bump minimatch to resolve CVE-2026-27903 (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2502">#2502</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/da0d6e3f137ff375d787c4ba773c8b8d7832d0d8"><code>da0d6e3</code></a> fix: missing await (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2528">#2528</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/9f587d5f45ead3f19a61bd12743827fd84541657"><code>9f587d5</code></a> fix: convert non primitive types to JSON strings (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2527">#2527</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/0efa7fb188a451857790d0066edd5e5cf28dca2f"><code>0efa7fb</code></a> fix: initialize otel exporter before background thread (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2526">#2526</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/51d4e0b867cab82fa95468099e6b2ec3fbb21644"><code>51d4e0b</code></a> chore: bump version (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2521">#2521</a>)</li> <li><a href="https://github.com/langchain-ai/langsmith-sdk/commit/f8db5d1542703c388ccf7d506cbdbff5786c9d6f"><code>f8db5d1</code></a> fix: sample before transform in ingest (<a href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2488">#2488</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.14">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
e1b40c29e1 |
fix(cli): support node_version 24 in langgraph.json (#2575)
## Summary
- Add `"24"` to `NodeVersionSchema` in `@langchain/langgraph-cli` so
`node_version: "24"` is accepted in `langgraph.json`.
- Add config, `getBaseImage`, and `configToDocker` tests for Node 24 tag
resolution (`langchain/langgraphjs-api:24` and `{api_version}-node24`).
- Update CLI README to document supported Node versions (`"20"`, `"22"`,
`"24"`).
|
||
|
|
2174637623 |
chore: version packages (#2572)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph@1.4.7 ### Patch Changes - [#2571](https://github.com/langchain-ai/langgraphjs/pull/2571) [`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): drop unused zod-to-json-schema peer dependency Remove the vestigial `zod-to-json-schema` (and its `peerDependenciesMeta`/dev) declarations. JSON Schema generation now flows through `@langchain/core`'s Zod v3/v4 interop (`toJsonSchema`), so the old `zod-to-json-schema@^3.x` peer (which pins `zod@^3.24.1`) is no longer needed and was the last source of install-time peer conflicts with Zod v4. Closes [#1706](https://github.com/langchain-ai/langgraphjs/issues/1706). ## @example/ai-elements@0.1.43 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 ## @examples/assistant-ui-claude@0.1.43 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 ## @examples/ui-angular@0.0.53 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 ## @examples/ui-multimodal@0.0.29 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 ## @examples/ui-react@0.0.29 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 ## langgraph@1.0.47 ### Patch Changes - Updated dependencies \[[`85ba859`](https://github.com/langchain-ai/langgraphjs/commit/85ba859b6f60f4bf193d3313fa24149efe05491b)]: - @langchain/langgraph@1.4.7 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
82e07d06b4 |
docs(checkpoint): document edge runtime compatibility and persistence flush
Clarify that checkpoint writes are awaited before invoke/stream resolve, and document Cloudflare Workers limitations and workarounds for Postgres and Redis checkpointers. Closes #1692. |
||
|
|
85ba859b6f |
fix(langgraph): drop unused zod-to-json-schema dependency (#2571)
## Summary - Remove the vestigial `zod-to-json-schema` peer/dev dependency from `@langchain/langgraph` (`libs/langgraph-core`) and the `langgraph` umbrella package. Nothing in source imports it anymore — graph JSON Schema generation flows through `@langchain/core/utils/json_schema`'s `toJsonSchema`, which uses Zod v4's native `toJSONSchema` with a v3 fallback. - This was the last remaining `zod@^3.24.1` peer constraint, which is what produced the install-time conflict with Zod v4 reported in #1706. - Prune the unused `zod-to-json-schema` declaration from 6 example projects (`multi_agent`, `chatbot-simulation-evaluation`, `reflection`, `rewoo`, `plan-and-execute`, `quickstart`) that declared but never used it. Kept it in `rag`, `how-tos`, and `chatbots`, whose notebooks genuinely call `zodToJsonSchema`. - Regenerate `pnpm-lock.yaml`. Fixes #1706 |
||
|
|
86389fa3a6 |
chore: version packages (#2567)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph-checkpoint@1.1.3 ### Patch Changes - [#2566](https://github.com/langchain-ai/langgraphjs/pull/2566) [`091a46f`](https://github.com/langchain-ai/langgraphjs/commit/091a46f32ddd3a85ee89e35fb9ea953dfc4cf8b4) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph-checkpoint-postgres): prevent createAgent failures with PostgresSaver Add BaseCheckpointSaver.toJSON() so ConfigurableModel can stringify runnable config without traversing pg Pool timers, and default missing checkpoint maps on load/copy so resume no longer crashes on undefined versions_seen. Closes [#1808](https://github.com/langchain-ai/langgraphjs/issues/1808). ## @langchain/langgraph-checkpoint-postgres@1.0.4 ### Patch Changes - [#2566](https://github.com/langchain-ai/langgraphjs/pull/2566) [`091a46f`](https://github.com/langchain-ai/langgraphjs/commit/091a46f32ddd3a85ee89e35fb9ea953dfc4cf8b4) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph-checkpoint-postgres): prevent createAgent failures with PostgresSaver Add BaseCheckpointSaver.toJSON() so ConfigurableModel can stringify runnable config without traversing pg Pool timers, and default missing checkpoint maps on load/copy so resume no longer crashes on undefined versions_seen. Closes [#1808](https://github.com/langchain-ai/langgraphjs/issues/1808). ## @langchain/langgraph-api@1.4.1 ### Patch Changes - [#2568](https://github.com/langchain-ai/langgraphjs/pull/2568) [`38d15e2`](https://github.com/langchain-ai/langgraphjs/commit/38d15e2f1f9dded34665a602cd9311cbcf5fbefc) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph-api): support configurable TypeScript loaders in dev server Add `node_loader` to `langgraph.json` (and `LANGGRAPH_NODE_LOADER` env override) so projects using reflect-metadata can use `ts-node` (`--loader ts-node/esm`) instead of the default tsx CLI. Other loaders default to `--import`; only registered shorthands like `ts-node` use `--loader`. `--no-reload` now also disables tsx's internal watch mode. Closes [#1834](https://github.com/langchain-ai/langgraphjs/issues/1834). - Updated dependencies \[]: - @langchain/langgraph-ui@1.4.1 ## @langchain/langgraph-cli@1.4.1 ### Patch Changes - [#2568](https://github.com/langchain-ai/langgraphjs/pull/2568) [`38d15e2`](https://github.com/langchain-ai/langgraphjs/commit/38d15e2f1f9dded34665a602cd9311cbcf5fbefc) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph-api): support configurable TypeScript loaders in dev server Add `node_loader` to `langgraph.json` (and `LANGGRAPH_NODE_LOADER` env override) so projects using reflect-metadata can use `ts-node` (`--loader ts-node/esm`) instead of the default tsx CLI. Other loaders default to `--import`; only registered shorthands like `ts-node` use `--loader`. `--no-reload` now also disables tsx's internal watch mode. Closes [#1834](https://github.com/langchain-ai/langgraphjs/issues/1834). - Updated dependencies \[[`38d15e2`](https://github.com/langchain-ai/langgraphjs/commit/38d15e2f1f9dded34665a602cd9311cbcf5fbefc)]: - @langchain/langgraph-api@1.4.1 ## @langchain/langgraph@1.4.6 ### Patch Changes - [`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): emit valid UUIDs for exit-mode delta task_ids Exit-mode DeltaChannel writes used a step-prefixed synthetic task id that produced a 6-segment string Postgres rejects for `checkpoint_writes.task_id uuid` in LangGraph API. Embed the superstep in the first UUID group instead, matching langchain-ai/langgraph#8165. - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457), [`091a46f`](https://github.com/langchain-ai/langgraphjs/commit/091a46f32ddd3a85ee89e35fb9ea953dfc4cf8b4)]: - @langchain/langgraph-sdk@1.9.25 - @langchain/langgraph-checkpoint@1.1.3 ## @langchain/langgraph-sdk@1.9.25 ### Patch Changes - [#2565](https://github.com/langchain-ai/langgraphjs/pull/2565) [`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): bundle pure-ESM deps into CJS build to fix ERR_REQUIRE_ESM Bundle the pure-ESM dependencies `p-retry` and `p-queue` (and their transitive ESM-only deps) into the build output so the CJS artifact no longer does a top-level `require()` of an ESM module. This fixes `ERR_REQUIRE_ESM` for CommonJS consumers on Node versions where `require(ESM)` is not enabled by default (< 20.19 / < 22.12). Closes [#2562](https://github.com/langchain-ai/langgraphjs/issues/2562). ## @langchain/angular@1.0.26 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457)]: - @langchain/langgraph-sdk@1.9.25 ## @langchain/react@1.0.26 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457)]: - @langchain/langgraph-sdk@1.9.25 ## @langchain/svelte@1.0.26 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457)]: - @langchain/langgraph-sdk@1.9.25 ## @langchain/vue@1.0.26 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457)]: - @langchain/langgraph-sdk@1.9.25 ## @langchain/langgraph-ui@1.4.1 ## @example/ai-elements@0.1.42 ### Patch Changes - Updated dependencies \[[`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph@1.4.6 - @langchain/react@1.0.26 ## @examples/assistant-ui-claude@0.1.42 ### Patch Changes - Updated dependencies \[[`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph@1.4.6 - @langchain/react@1.0.26 ## @examples/ui-angular@0.0.52 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457), [`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph-sdk@1.9.25 - @langchain/langgraph@1.4.6 - @langchain/angular@1.0.26 ## @examples/ui-multimodal@0.0.28 ### Patch Changes - Updated dependencies \[[`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph@1.4.6 - @langchain/react@1.0.26 ## @examples/ui-react@0.0.28 ### Patch Changes - Updated dependencies \[[`0558e47`](https://github.com/langchain-ai/langgraphjs/commit/0558e472b7697304c62cb6fe69cc3005e8e1a457), [`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph-sdk@1.9.25 - @langchain/langgraph@1.4.6 - @langchain/react@1.0.26 ## langgraph@1.0.46 ### Patch Changes - Updated dependencies \[[`03a0d8b`](https://github.com/langchain-ai/langgraphjs/commit/03a0d8b8632082e6dbf4a96fcf37f8f67151b74f)]: - @langchain/langgraph@1.4.6 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
03a0d8b863 |
fix(langgraph): emit valid UUIDs for exit-mode delta task_ids
Exit-mode DeltaChannel writes used a step-prefixed synthetic task id that Postgres rejects for checkpoint_writes.task_id uuid in LangGraph API. Embed the superstep in the first UUID group instead, matching langgraph#8165. |
||
|
|
38d15e2f1f |
fix(langgraph-api): support configurable TypeScript loaders in dev server (#2568)
## Summary - Add configurable TypeScript loader support for the in-memory dev server to fix reflect-metadata / `emitDecoratorMetadata` incompatibility with tsx (esbuild). - Introduce `node_loader` on Node `langgraph.json` configs and `LANGGRAPH_NODE_LOADER` env override; default remains `tsx` CLI watch mode. - Generalize non-tsx loaders to `node [--watch] --import <loader> --import preload entrypoint`, with shorthand mapping for `ts-node` → `ts-node/esm`. - Add `spawn-args` helper + unit tests; add `ts-node` as optional peer dependency of `@langchain/langgraph-api`. Fixes #1834 |
||
|
|
091a46f32d |
fix(langgraph-checkpoint-postgres): prevent createAgent failures with PostgresSaver (#2566)
## Summary
- Add `BaseCheckpointSaver.toJSON()` so runnable
`configurable.__pregel_checkpointer` can be JSON-stringified without
traversing backend clients (fixes the circular `Timeout` error when
using `createAgent` with `PostgresSaver`).
- Harden `copyCheckpoint()` and `PostgresSaver._loadCheckpoint()` to
default missing `channel_versions` and `versions_seen` to `{}`, fixing
resume crashes on `__input__` after a failed first run.
- Add unit and integration tests covering stringify safety and missing
`versions_seen` recovery.
Fixes #1808
|
||
|
|
0558e472b7 |
fix(sdk): bundle pure-ESM deps into CJS build to fix ERR_REQUIRE_ESM (#2565)
## Summary - Fix `ERR_REQUIRE_ESM` in `@langchain/langgraph-sdk` for CommonJS consumers on Node < 20.19 / < 22.12: the CJS build no longer does a top-level `require()` of the pure-ESM `p-retry`/`p-queue`. They (and their transitive ESM-only deps) are now bundled and transpiled into relative CJS chunks. - Add per-package build overrides via an optional `tsdown.config.ts`, mirroring the langchainjs convention. `internal/build` discovers and merges it (`config: false` disables tsdown's own discovery so the config's imports resolve from the package dir), and re-exports `defineConfig` from `@langchain/build` so packages get type-safe configs without depending on `tsdown` directly. - Remove the leftover `libs/checkpoint-redis/langchain.config.js` (from the old `@langchain/scripts` build) — it was the only package still carrying one and the current tsdown build ignores it. Fixes #2562 |
||
|
|
379bfd9a7d |
test(langgraph-checkpoint-validation): cover channel carry-over reconstruction across checkpoints
Add a getTuple conformance test reproducing #2555: a node that updates only a subset of channels must not drop the channels it left untouched. Delta-storing savers (Postgres, Redis) persist only the channels in `newVersions` on each `put`, so on read they must reconstruct the carried-over channels from blobs written by ancestor checkpoints. The existing getTuple spec only re-wrote the same channel in the child checkpoint, so it never exercised carry-over reconstruction — which is how the Redis saver shipped 1.0.9 without it (fixed in 1.0.10, #2336). The new test runs against every saver and fails on the buggy behavior (returns `{ stepCount }` instead of `{ messages, stepCount }`). |
||
|
|
31261c3be5 |
chore: version packages (#2558)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph-checkpoint-mongodb@1.4.0 ### Minor Changes - [#1928](https://github.com/langchain-ai/langgraphjs/pull/1928) [`3d7fcea`](https://github.com/langchain-ai/langgraphjs/commit/3d7fcea7d7ea7f1203d24be9df607d5a8e8717bc) Thanks [@Mihailoff](https://github.com/Mihailoff)! - Add TTL support for automatic checkpoint expiration - Add optional `ttl` parameter to MongoDBSaver (value in seconds) - Add `setup()` method to create TTL indexes on collections - Add `upserted_at` timestamp to documents when TTL is enabled - Each write refreshes TTL (expires after inactivity, not creation) ### Patch Changes - [#2556](https://github.com/langchain-ai/langgraphjs/pull/2556) [`bee3c91`](https://github.com/langchain-ai/langgraphjs/commit/bee3c91d0adc315ebde0622d8c4b1fff041c1bfd) Thanks [@mohamedkhaled4053](https://github.com/mohamedkhaled4053)! - Fix `MongoDBSaver.putWrites` throwing `MongoServerError: Invalid BulkOperation, Batch cannot be empty` when called with an empty `writes` array. This is reached by human-in-the-loop / `interrupt()` flows, where a task can complete producing zero channel writes and LangGraph calls `putWrites(config, [], taskId)`. `putWrites` now no-ops on empty writes, matching the behavior of the postgres and sqlite savers (which iterate and naturally skip empty batches). - [#2550](https://github.com/langchain-ai/langgraphjs/pull/2550) [`2b8cc2f`](https://github.com/langchain-ai/langgraphjs/commit/2b8cc2f3fd5c9d3c33b56e013292daf5d936428e) Thanks [@lazydiv](https://github.com/lazydiv)! - feat(checkpoint-mongodb): add setup() to create required indexes ## @langchain/langgraph-api@1.4.0 ### Minor Changes - [#2559](https://github.com/langchain-ai/langgraphjs/pull/2559) [`48cbdd2`](https://github.com/langchain-ai/langgraphjs/commit/48cbdd23fdf29277530f6aa05c397c9902e81206) Thanks [@christian-bromann](https://github.com/christian-bromann)! - feat(langgraph-cli): add `deploy` command for LangSmith Deployment Port the Python CLI's `langgraph deploy` workflow to `@langchain/langgraph-cli`, including local and remote build paths, deployment lifecycle subcommands (`list`, `revisions list`, `delete`, `logs`), and host-backend client utilities with tests. ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph-api): preserve non-empty response_metadata on protocol-v2 state messages The protocol-v2 state normalizer stripped `response_metadata` from messages, dropping data that HITL flows rely on — an interrupt's card is carried on `AIMessage.response_metadata` (e.g. `{ cards: ... }`). Non-empty `response_metadata` is now retained so the card reaches the client. - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`48cbdd2`](https://github.com/langchain-ai/langgraphjs/commit/48cbdd23fdf29277530f6aa05c397c9902e81206)]: - @langchain/langgraph-ui@1.4.0 ## @langchain/langgraph-cli@1.4.0 ### Minor Changes - [#2559](https://github.com/langchain-ai/langgraphjs/pull/2559) [`48cbdd2`](https://github.com/langchain-ai/langgraphjs/commit/48cbdd23fdf29277530f6aa05c397c9902e81206) Thanks [@christian-bromann](https://github.com/christian-bromann)! - feat(langgraph-cli): add `deploy` command for LangSmith Deployment Port the Python CLI's `langgraph deploy` workflow to `@langchain/langgraph-cli`, including local and remote build paths, deployment lifecycle subcommands (`list`, `revisions list`, `delete`, `logs`), and host-backend client utilities with tests. ### Patch Changes - Updated dependencies \[[`48cbdd2`](https://github.com/langchain-ai/langgraphjs/commit/48cbdd23fdf29277530f6aa05c397c9902e81206), [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e), [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-api@1.4.0 ## @langchain/langgraph-ui@1.4.0 ### Minor Changes - [#2559](https://github.com/langchain-ai/langgraphjs/pull/2559) [`48cbdd2`](https://github.com/langchain-ai/langgraphjs/commit/48cbdd23fdf29277530f6aa05c397c9902e81206) Thanks [@christian-bromann](https://github.com/christian-bromann)! - feat(langgraph-cli): add `deploy` command for LangSmith Deployment Port the Python CLI's `langgraph deploy` workflow to `@langchain/langgraph-cli`, including local and remote build paths, deployment lifecycle subcommands (`list`, `revisions list`, `delete`, `logs`), and host-backend client utilities with tests. ## @langchain/langgraph@1.4.5 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 ## @langchain/langgraph-sdk@1.9.24 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. ## @langchain/angular@1.0.25 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 ## @langchain/react@1.0.25 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 ## @langchain/svelte@1.0.25 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 ## @langchain/vue@1.0.25 ### Patch Changes - [#2557](https://github.com/langchain-ai/langgraphjs/pull/2557) [`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): apply state update and goto alongside interrupt resume `respond(decision, { update, goto })` now maps to LangGraph's `Command(resume, update, goto)`, so a human-in-the-loop UI can commit a state update (e.g. push the interrupt card into state) in the **same superstep** as the resume — one checkpoint, no separate `updateState` write, no flicker. `@langchain/langgraph-api` forwards `update`/`goto` through `input.respond`, and `@langchain/core` message instances in `update` are serialized to dicts before transport, exactly like `submit()`. Bumps `@langchain/protocol` to `^0.0.18` for the `Goto` type. `respond`/`respondAll` also apply `update` **optimistically** (mirroring `submit()`): the pushed messages paint immediately, with stable ids minted so the resumed run's echo reconciles them in place. Without this the interrupt is cleared the instant `respond()` dispatches while the pushed card only reappears a server round-trip later — so the card would flicker in that gap. The optimistic state settles on the resumed run's terminal (pending → sent, or rolled back on a failure before any echo). User-initiated optimistic writes (`submit()` / `respond()` / `respondAll()`) now commit to the store **synchronously**, in the same tick as the triggering event, instead of being coalesced onto the next macrotask. This lets a framework render the pushed message in the **same commit** as any local UI state the caller flips alongside it (e.g. a HITL form swapping its inputs for the resolved card), so the card no longer blinks out for the one-macrotask window before the flush lands. High-frequency streaming writes keep their macrotask coalescing. - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 ## @example/ai-elements@0.1.41 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/react@1.0.25 - @langchain/langgraph@1.4.5 ## @examples/assistant-ui-claude@0.1.41 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/react@1.0.25 - @langchain/langgraph@1.4.5 ## @examples/ui-angular@0.0.51 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 - @langchain/angular@1.0.25 - @langchain/langgraph@1.4.5 ## @examples/ui-multimodal@0.0.27 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/react@1.0.25 - @langchain/langgraph@1.4.5 ## @examples/ui-react@0.0.27 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph-sdk@1.9.24 - @langchain/react@1.0.25 - @langchain/langgraph@1.4.5 ## langgraph@1.0.45 ### Patch Changes - Updated dependencies \[[`b1e856d`](https://github.com/langchain-ai/langgraphjs/commit/b1e856d987ac16148dc0872d1fecf70e659ef28e)]: - @langchain/langgraph@1.4.5 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
5d279df5d5 |
chore(deps): bump langchain (#2564)
Bump langchainjs to latest release. --------- Signed-off-by: Christian Bromann <git@bromann.dev> Co-authored-by: open-swe[bot] <215916821+open-swe[bot]@users.noreply.github.com> |
||
|
|
48cbdd23fd |
feat(langgraph-cli): add deploy command for LangSmith Deployment (#2559)
## Summary - Add `langgraphjs deploy` to `@langchain/langgraph-cli`, porting the Python CLI's LangSmith Deployment workflow for JS projects. - Support local Docker build/push and remote source-archive upload paths, plus `deploy list`, `deploy revisions list`, `deploy delete`, and `deploy logs`. - Introduce host-backend client, archive/ignore/output helpers, and unit tests; wire the command into the CLI entrypoint and add the `ignore` dependency. Test on our deployment cookbook: ``` pnpm run deploy > js-langsmith@0.1.0 deploy /Users/christian.bromann/Sites/LangChain/deployment-cookbook/js-langsmith > langgraphjs deploy Note: 'langgraphjs deploy' is in beta. Expect frequent updates and improvements. Skipping reserved env var: LANGSMITH_API_KEY Skipping reserved env var: LANGSMITH_TENANT_ID Docker is installed but not running. Start Docker and try again. Using remote build instead. 1. Looking up deployment 'deployment-cookbook-agent' No deployment found. Will create. 2. Creating deployment 'deployment-cookbook-agent' Deployment ID: fc41ac21-0251-4caf-9f6b-e8e381520e59 3. Creating source archive Archive created (0.1 MB) 4. Requesting upload URL 5. Uploading source Uploading (0.1 MB)... 100% 6. Triggering remote build View status: https://smith.langchain.com/o/d7ca4f49-e65f-4c96-8d03-e1d713acb728/host/deployments/fc41ac21-0251-4caf-9f6b-e8e381520e59 QUEUED... (9s) AWAITING_BUILD... (18s) BUILDING... (3m 13s) AWAITING_DEPLOY... (3m 32s) DEPLOYING... (4m 50s) Deployment successful! URL: https://deployment-cookbook-agent-3569d4ef8d405f40850d56230f67258b.us.langgraph.app View status: https://smith.langchain.com/o/d7ca4f49-e65f-4c96-8d03-e1d713acb728/host/deployments/fc41ac21-0251-4caf-9f6b-e8e381520e59 ``` |
||
|
|
2b8cc2f3fd |
feat(checkpoint): add setup() to create required MongoDB indexes (#2550)
## Summary Fixes #2551 `MongoDBSaver` queries `checkpoints` and `checkpoint_writes` collections by `thread_id`, `checkpoint_ns`, and `checkpoint_id`, but never creates indexes on these fields. As the collections grow, every `getTuple()`, `list()`, and `putWrites()` call triggers a **full collection scan**. In production with ~450K checkpoints and ~570K checkpoint_writes, this caused: - `getState` taking **5-10 seconds** per request (scanning all 450K docs each time) - Total API response times of **30-40 seconds** instead of **3 seconds** ### Changes - Adds a `setup()` method to `MongoDBSaver` that creates a compound index `{ thread_id: 1, checkpoint_ns: 1, checkpoint_id: -1 }` on both collections - The method is idempotent (`createIndex` is a no-op when the index already exists), safe to call on every app start - Follows the same pattern as `MongoDBStore.start()` which already creates indexes ### Before / After (production, 450K checkpoints) | Metric | Before | After | |---|---|---| | Docs examined per query | 445,801 | 1 | | `checkpoints` query | 5,173ms | <10ms | | `checkpoint_writes` query | 925ms | <10ms | ### Test plan - [x] Unit test added verifying `setup()` creates indexes on both collections with correct key spec - [x] Existing integration tests pass --------- Signed-off-by: Christian Bromann <git@bromann.dev> Co-authored-by: Christian Bromann <git@bromann.dev> |
||
|
|
b1e856d987 |
feat(sdk): apply state update and goto alongside interrupt resume (#2557)
## Summary
- Add `update` and `goto` options to `respond()` across the SDK so
resolving an interrupt can apply a state update and/or directed jump in
the **same superstep** — mapped to LangGraph's `Command(resume, update,
goto)`. The canonical use case is a HITL flow that pushes the interrupt
card into state at the moment it answers, committed in one checkpoint
with no flicker.
- `@langchain/langgraph-sdk`: new `update`/`goto` fields on
`StreamRespondAllOptions`, forwarded by
`StreamController.respond`/`respondAll`; `@langchain/core` `BaseMessage`
instances under the `messagesKey` are serialized to dicts before
transport, exactly like `submit()`.
- `@langchain/langgraph-api`: forward `update`/`goto` from
`input.respond` into the run `Command` in both the protocol service and
the embedded server.
- `@langchain/react`, `@langchain/vue`, `@langchain/svelte`,
`@langchain/angular`: document the new `respond({ update, goto })`
capability (incl. `BaseMessage` examples).
- Fix: the protocol-v2 state normalizer stripped `response_metadata`,
which HITL cards ride on (`AIMessage.response_metadata`); non-empty
`response_metadata` is now preserved.
- Add React browser tests (`interrupt_card_graph` fixture via
`createAgent`) covering the approve and reject paths: the FE-pushed card
lands in committed state exactly once and persists through a slow tool
execution.
|
||
|
|
3d7fcea7d7 |
feat(langgraph-checkpoint-mongodb): add TTL support for automatic checkpoint data expiration (#1928)
Add optional TTL parameter to MongoDBSaver that enables automatic
expiration of checkpoints using MongoDB's TTL indexes.
- Add `ttl` option to MongoDBSaverParams (value in seconds)
- Add `setup()` method to create TTL indexes, returns Error[] for caller
to handle failures
- Add `upserted_at` timestamp to documents when TTL is enabled
- Each write refreshes TTL (expires after inactivity, not creation)
```js
// Create checkpointer with 1-hour TTL (in seconds)
const checkpointer = new MongoDBSaver({
client,
ttl: 3600,
});
// Create TTL indexes (call on startup/deployment)
const errors = await checkpointer.setup();
if (errors.length) {
console.warn("Failed to create TTL indexes:", errors);
}
```
Fixes # (issue)
Ever growing records in database.
---------
Co-authored-by: Christian Bromann <git@bromann.dev>
Co-authored-by: Cursor <cursoragent@cursor.com>
|
||
|
|
bee3c91d0a |
fix(langgraph-checkpoint-mongodb): no-op putWrites on empty writes (#2556)
## Summary `MongoDBSaver.putWrites` builds a `bulkWrite` operations array from `writes` and calls `collection.bulkWrite(operations)`. When `writes` is empty, `operations` is empty and the MongoDB driver throws: ``` MongoServerError: Invalid BulkOperation, Batch cannot be empty ``` This is reached in normal operation by **human-in-the-loop / `interrupt()`** flows: when a graph interrupts to wait for input, a task can complete producing **zero channel writes**, so LangGraph calls `putWrites(config, [], taskId)` and the saver throws. The other first-party savers don't hit this — `checkpoint-postgres` and `checkpoint-sqlite` iterate over `writes`, so an empty array is a natural no-op. The sibling `store.ts` in this same package already guards its bulk write with `if (bulkOps.length > 0)`. `putWrites` was simply missing the equivalent guard. ## Fix Skip the `bulkWrite` call when there are no operations, mirroring the existing guard in `store.ts`. The guard is at the call site (not an early return), so the existing `configurable` validation is preserved. This aligns the MongoDB saver's empty-writes behavior with the postgres and sqlite savers. ## Tests - **Unit** (`checkpoints.test.ts`): asserts `putWrites(config, [], taskId)` resolves and that `bulkWrite` is **not** called. Verified to fail before the fix (`bulkWrite` was called with `[]`). - **Integration** (`checkpoints.int.test.ts`): asserts `putWrites` with empty writes resolves and persists nothing — the truest repro against the real driver. `pnpm build`, `pnpm lint`, `pnpm format:check`, and the unit suite all pass locally. A changeset is included (`@langchain/langgraph-checkpoint-mongodb` patch). ## Related Same class of HITL / `interrupt()` + `putWrites` bug previously fixed for the Redis saver: #1996 / #2026. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
e6082e0575 |
chore: version packages (#2554)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph@1.4.4 ### Patch Changes - [#2552](https://github.com/langchain-ai/langgraphjs/pull/2552) [`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): isolate concurrent singleton-agent invocations by thread `ensureLangGraphConfig` ignores the ambient `AsyncLocalStorage` `configurable` on root-level invokes that supply an invoke-time `thread_id` and have no nesting keys (ignoring graph-bound `.withConfig()` defaults). On a fresh top-level run the ambient `configurable` can belong to another concurrent invocation, so its keys — internal scratchpad/task-input as well as user keys like `tenant_id`/`user_id` — must not leak in; values the caller wants arrive through the explicit (bound + invoke-time) configs. Ambient nesting (`__pregel_read__`) and bound child graphs invoked from parent tasks are unaffected. This prevents cross-invocation leakage between concurrent `invoke()` calls on a shared compiled graph (e.g. BullMQ workers with `concurrency > 1`). Complements the config-merge fix that stopped shared graph-bound `metadata`/`configurable` objects from being mutated across invocations ([#2040](https://github.com/langchain-ai/langgraphjs/issues/2040)). - [#2553](https://github.com/langchain-ai/langgraphjs/pull/2553) [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): recognize JSON-erased `Overwrite` values across runtimes `Overwrite` already survives JSON serialization in JS because `Overwrite.toJSON()` emits the canonical `{ "__overwrite__": value }` sentinel. `_getOverwriteValue` now additionally recognizes the discriminator form `{ "type": "__overwrite__", value }` produced when a typed `Overwrite` from another runtime (e.g. a Python dataclass routed through the LangGraph API server) is serialized and its type is erased. This keeps `Overwrite` (and `DeltaChannel`) semantics intact across cross-runtime JSON boundaries. These delta-channel APIs remain Beta. ## @example/ai-elements@0.1.40 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 ## @examples/assistant-ui-claude@0.1.40 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 ## @examples/ui-angular@0.0.50 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 ## @examples/ui-multimodal@0.0.26 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 ## @examples/ui-react@0.0.26 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 ## langgraph@1.0.44 ### Patch Changes - Updated dependencies \[[`d662cbb`](https://github.com/langchain-ai/langgraphjs/commit/d662cbbc63eebdf1312e57d41908da1b9018e783), [`1c2aa5b`](https://github.com/langchain-ai/langgraphjs/commit/1c2aa5bfeacd8b7463e3d5b6010daee26e9217e0)]: - @langchain/langgraph@1.4.4 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
d662cbbc63 |
fix(langgraph): isolate concurrent singleton-agent invocations by thread (#2552)
## Summary - Hardens `ensureLangGraphConfig` so root-level invokes with an explicit `thread_id` (and no nesting keys) no longer inherit langgraph-internal `configurable` entries from `AsyncLocalStorage`, preventing scratchpad/`currentTaskInput` leakage between concurrent `invoke()` calls on a singleton agent. - Adds unit tests for the new ALS-skipping behavior and an end-to-end regression test that verifies checkpoint and tool state stay isolated across concurrent invocations on a shared graph with `.withConfig()`. - Complements #2531 (config merge / shared bound-config mutation fix), which was the primary cause of cross-thread contamination reported in #2040. fixes #2040 |
||
|
|
1c2aa5bfea |
fix(langgraph): recognize JSON-erased Overwrite values across runtimes (#2553)
## Summary
- JS `Overwrite` already survives JSON serialization because
`Overwrite.toJSON()` emits the canonical `{ "__overwrite__": value }`
sentinel, which `_getOverwriteValue` recognizes.
- This adds recognition of the discriminator form `{ "type":
"__overwrite__", value }` that results when a typed `Overwrite` from
another runtime (notably a Python dataclass, post
langchain-ai/langgraph#8127) is serialized through a JSON boundary and
its type is erased.
- Brings JS to full parity with Python's three-form `_get_overwrite`
(instance, sentinel dict, discriminator dict), so `Overwrite`
round-trips both directions across the JS↔Python API boundary.
Delta-channel APIs remain Beta.
|
||
|
|
73ecaa0fb5 |
chore: version packages (#2536)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @langchain/langgraph-checkpoint@1.1.2 ### Patch Changes - [#2544](https://github.com/langchain-ai/langgraphjs/pull/2544) [`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): make concurrent DeltaChannel writes deterministic on replay Concurrent same-superstep writes to a `DeltaChannel` could reconstruct from a checkpoint differently than they were applied live, because live execution ordered them by task path while savers replayed them by task id. This fixes that divergence in two complementary ways: - Plain concurrent writes are now applied in the canonical `(task_id, idx)` order on both paths: `_applyWrites` orders them that way live, and the `getDeltaChannelHistory` walk enforces the same order so reconstruction matches live for every saver (Postgres, SQLite, MongoDB, Redis, and custom). - An `Overwrite` now wins its entire super-step: every sibling write in the same step — before AND after the `Overwrite` — is discarded, matching `BinaryOperatorAggregate`. This makes the result independent of the (unstable) ordering of concurrent fan-in writes; previously a plain write that landed after an `Overwrite` in the same step was still folded in. To keep reconstruction in sync with this `Overwrite` rule, any `DeltaChannel` that sees an `Overwrite` in a super-step is now force-snapshotted at the next checkpoint (and, under `"exit"` durability, in the final checkpoint). The post-overwrite value is materialized into `channel_values`, so a cold read seeds from that snapshot and never has to replay across the reset — making live and reconstructed state identical without changing the sparse-replay history shape. These delta-channel APIs remain Beta. - [#2531](https://github.com/langchain-ai/langgraphjs/pull/2531) [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): forward task metadata and name subagents via lc_agent_name `mapDebugTasks` now forwards filtered user-meaningful task config metadata (including `lc_agent_name`) onto `tasks` stream payloads. The lifecycle transformer uses that metadata to set subagent `graph_name` from `lc_agent_name` and recover `cause: { type: "toolCall", tool_call_id }` from parent tool-dispatch tasks. Adds the shared `EXCLUDED_METADATA_KEYS` constant to `@langchain/langgraph-checkpoint`. Ports langgraph#7928. ## @langchain/langgraph-checkpoint-redis@1.0.10 ### Patch Changes - [#2336](https://github.com/langchain-ai/langgraphjs/pull/2336) [`25907eb`](https://github.com/langchain-ai/langgraphjs/commit/25907eb0be25258c26327c6c68c72bc828ee1cff) Thanks [@MohMaherId](https://github.com/MohMaherId)! - fix(langgraph-checkpoint-redis): persist and reconstruct full `channel_values` across multi-node graphs. `RedisSaver.put()` delta-filters `channel_values` to only the channels written by the current node, but `getTuple()` had no reconstruction logic — unlike `PostgresSaver` — so any multi-node graph whose last node wrote a subset of channels silently lost the others. Each changed channel is now persisted as a version-keyed `checkpoint_blob:*` entry in `put()` and missing channels are reconstructed from those blobs on read. `deleteThread()` now also deletes the `checkpoint_blob:*` keys. Without this the blobs introduced above would orphan forever (memory growth) and thread deletion would be incomplete, matching `PostgresSaver.deleteThread()` parity. When `ttlConfig.refreshOnRead` is enabled, reads now refresh the TTL of the reconstructed `checkpoint_blob:*` keys alongside the checkpoint key. Otherwise a read would keep the checkpoint alive while the blobs it depends on expired, silently dropping reconstructed channels. On write, `put()` now refreshes the TTL of every blob the checkpoint references (the full `channel_versions` set), not just the channels changed by the current node, so carried-over blobs from earlier nodes expire in lockstep with the checkpoint doc. This write-side refresh is independent of `refreshOnRead`. The per-channel blob writes also now run in parallel. Known limitation: with TTL enabled, a carried-over blob can still be lost if it expires during an idle gap longer than `defaultTTL` (no read or write refreshed it in time). When that happens the channel is left cleanly absent on read rather than erroring. Fully closing this gap (re-persisting expired blobs) is tracked as a follow-up. ## @langchain/langgraph@1.4.3 ### Patch Changes - [#2544](https://github.com/langchain-ai/langgraphjs/pull/2544) [`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): make concurrent DeltaChannel writes deterministic on replay Concurrent same-superstep writes to a `DeltaChannel` could reconstruct from a checkpoint differently than they were applied live, because live execution ordered them by task path while savers replayed them by task id. This fixes that divergence in two complementary ways: - Plain concurrent writes are now applied in the canonical `(task_id, idx)` order on both paths: `_applyWrites` orders them that way live, and the `getDeltaChannelHistory` walk enforces the same order so reconstruction matches live for every saver (Postgres, SQLite, MongoDB, Redis, and custom). - An `Overwrite` now wins its entire super-step: every sibling write in the same step — before AND after the `Overwrite` — is discarded, matching `BinaryOperatorAggregate`. This makes the result independent of the (unstable) ordering of concurrent fan-in writes; previously a plain write that landed after an `Overwrite` in the same step was still folded in. To keep reconstruction in sync with this `Overwrite` rule, any `DeltaChannel` that sees an `Overwrite` in a super-step is now force-snapshotted at the next checkpoint (and, under `"exit"` durability, in the final checkpoint). The post-overwrite value is materialized into `channel_values`, so a cold read seeds from that snapshot and never has to replay across the reset — making live and reconstructed state identical without changing the sparse-replay history shape. These delta-channel APIs remain Beta. - [#2531](https://github.com/langchain-ai/langgraphjs/pull/2531) [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): merge instead of overwrite in `ensureLangGraphConfig` `ensureLangGraphConfig` now per-key merges `callbacks`, `tags`, `metadata`, and `configurable` across configs instead of last-write-wins, so values bound via `.withConfig({...})` survive when a later (e.g. invoke-time) config supplies other keys. The merged dicts are fresh objects, fixing a by-reference mutation of shared base configs. Also drops the now-redundant `combineCallbacks` workaround in `streamEvents`, which double-registered and double-fired graph-bound callbacks. - [#2531](https://github.com/langchain-ai/langgraphjs/pull/2531) [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): preserve namespace nesting for imperative graph invokes When a compiled graph is invoked from inside another graph's running task (e.g. a tool body calling `subAgent.invoke(...)`), the surrounding task context — including the langgraph-internal nesting keys (`__pregel_read`, `__pregel_stream`, `checkpoint_ns`, the checkpoint map) — is propagated implicitly via `AsyncLocalStorage`. The base `Runnable.stream` calls langchain-core's `ensureConfig`, which replaces the ambient `configurable` wholesale whenever the caller passes its own. Because `createAgent` always supplies a `configurable`, every tool-invoked sub-agent lost those keys, ran as a fresh root run, and had its streamed events flattened to the root namespace instead of nesting under the triggering task. `Pregel.stream` now merges the ambient `configurable` underneath the caller's (caller keys win per-key) when the ambient marks an active task (`__pregel_read` present) but the explicit `configurable` is missing it. Declared subgraph nodes (which already carry their own `__pregel_read`) and top-level runs are unaffected. - [#2537](https://github.com/langchain-ai/langgraphjs/pull/2537) [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): dispatch stream messages handler inline The v3 `messages` handler (`StreamProtocolMessagesHandler`, which powers `run.messages`) only performs a synchronous `push()` onto the run's stream, but its callbacks were dispatched on LangChain's background callback queue (the default `awaitHandlers === false`). A model or tool call inside a nested or parallel task could therefore flush its `messages` chunk _after_ the Pregel loop returned and sealed the stream, where `IterableReadableWritableStream.push` silently drops chunks once closed. This surfaced as empty per-message streams (`sub.messages`) for subagents dispatched in parallel from a single tools step. The handler now sets `awaitHandlers = true` so its callbacks run inline — every push happens during the originating model/chain call while the stream is still open. This avoids the global over-wait, fake-timer deadlock, and error-path unhandled rejections that a blanket `awaitAllCallbacks()` drain before close would have introduced. - [#2531](https://github.com/langchain-ai/langgraphjs/pull/2531) [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): forward task metadata and name subagents via lc_agent_name `mapDebugTasks` now forwards filtered user-meaningful task config metadata (including `lc_agent_name`) onto `tasks` stream payloads. The lifecycle transformer uses that metadata to set subagent `graph_name` from `lc_agent_name` and recover `cause: { type: "toolCall", tool_call_id }` from parent tool-dispatch tasks. Adds the shared `EXCLUDED_METADATA_KEYS` constant to `@langchain/langgraph-checkpoint`. Ports langgraph#7928. - [#2549](https://github.com/langchain-ai/langgraphjs/pull/2549) [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(langgraph): support DeltaChannel fields in StateSchema Add a `DeltaValue` state field (and a `MessagesDeltaValue` prebuilt) so a `DeltaChannel` can be declared via `StateSchema`, not just `Annotation.Root` or a raw channel map. `StateSchema` now maps `DeltaValue` to a `DeltaChannel` (forwarding `snapshotFrequency` and the value-schema default) and validates its inputs/`Overwrite` updates like `ReducedValue`. - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b)]: - @langchain/langgraph-checkpoint@1.1.2 - @langchain/langgraph-sdk@1.9.23 ## @langchain/langgraph-sdk@1.9.23 ### Patch Changes - [#2545](https://github.com/langchain-ai/langgraphjs/pull/2545) [`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236) Thanks [@christian-bromann](https://github.com/christian-bromann)! - fix(sdk): avoid scoped stream resubscribe churn Defer final projection disposal by one microtask so framework bindings that release and immediately reacquire the same scoped projection during reactive updates keep the existing stream subscription instead of rotating through root-only and scoped SSE filters. ## @langchain/angular@1.0.24 ### Patch Changes - Updated dependencies \[[`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236)]: - @langchain/langgraph-sdk@1.9.23 ## @langchain/react@1.0.24 ### Patch Changes - Updated dependencies \[[`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236)]: - @langchain/langgraph-sdk@1.9.23 ## @langchain/svelte@1.0.24 ### Patch Changes - Updated dependencies \[[`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236)]: - @langchain/langgraph-sdk@1.9.23 ## @langchain/vue@1.0.24 ### Patch Changes - Updated dependencies \[[`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236)]: - @langchain/langgraph-sdk@1.9.23 ## @example/ai-elements@0.1.39 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 - @langchain/react@1.0.24 ## @examples/assistant-ui-claude@0.1.39 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 - @langchain/react@1.0.24 ## @examples/ui-angular@0.0.49 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 - @langchain/langgraph-sdk@1.9.23 - @langchain/angular@1.0.24 ## @examples/ui-multimodal@0.0.25 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 - @langchain/react@1.0.24 ## @examples/ui-react@0.0.25 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`2134c8a`](https://github.com/langchain-ai/langgraphjs/commit/2134c8a2c0bc8dd2ebea33e1191c8dd0c4b83236), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 - @langchain/langgraph-sdk@1.9.23 - @langchain/react@1.0.24 ## langgraph@1.0.43 ### Patch Changes - Updated dependencies \[[`4487214`](https://github.com/langchain-ai/langgraphjs/commit/448721449f0801009ba76b03dd2e9c16f900bbba), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`be09666`](https://github.com/langchain-ai/langgraphjs/commit/be096663f42fe7ea9355d6c0def4854e657866d8), [`38cfe01`](https://github.com/langchain-ai/langgraphjs/commit/38cfe01ff02490ff6bcc86c66708ef671f2e0d4b), [`bc667a9`](https://github.com/langchain-ai/langgraphjs/commit/bc667a998ae9909d15795387dad45048e8947219)]: - @langchain/langgraph@1.4.3 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
448721449f |
fix(langgraph): replay concurrent DeltaChannel writes in live order (#2544)
## Summary - Fix a non-deterministic divergence where a `DeltaChannel`'s reconstructed state did not match its live state when concurrent writes (notably a plain write + an `Overwrite`) were applied in the same super-step. Live execution applied concurrent writes in task-**path** order, while every checkpointer replays persisted writes in task-**id** order, so an `Overwrite` hard reset could land at a different point on reload. - `_applyWrites` (`@langchain/langgraph`) now applies concurrent `DeltaChannel` writes in the canonical `(task_id, idx)` order — the same order checkpointers replay them in. - The base `getDeltaChannelHistory` (`@langchain/langgraph-checkpoint`) now stable-sorts each ancestor checkpoint's writes by `task_id`, making reconstruction order independent of how a saver returns `pendingWrites`. This fixes Postgres, SQLite, MongoDB, Redis, and any custom saver in one place; MemorySaver was already correct via its override. |
||
|
|
bc667a998a |
fix(langgraph): support DeltaChannel fields in StateSchema (#2549)
## Summary - Add `DeltaValue<Value, Input>` (`state/values/delta.ts`), a `StateSchema` field backed by a `DeltaChannel`'s batch reducer + `snapshotFrequency` — distinct from `ReducedValue`'s single-value reducer. - Wire `DeltaValue` into `StateSchema`: `getChannels()` maps it to a `DeltaChannel` (forwarding `snapshotFrequency` and seeding the initial value from the value-schema default); `getJsonSchema()`/`getInputJsonSchema()`/`validateInput()` handle it (incl. `Overwrite`) like `ReducedValue`; and the type helpers infer `State`/`Update` correctly. - Add the `MessagesDeltaValue` prebuilt (a `DeltaChannel`-backed drop-in for `MessagesValue`); export `DeltaValue` and `MessagesDeltaValue` from `@langchain/langgraph`. - Previously `DeltaChannel` was only usable via `Annotation.Root` / raw channel maps; the `StateSchema` class and Zod paths threw. This closes the `StateSchema` gap (Zod remains a separate follow-up). |
||
|
|
e73bf8a260 | test(langgraph-core): add test coverage on merging tags and metadata | ||
|
|
2134c8a2c0 |
fix(sdk): avoid scoped stream resubscribe churn (#2545)
## Summary - Defer final `ChannelRegistry` projection disposal by one microtask so same-turn reacquires keep the existing projection runtime alive. - Preserve `registry.size` as an active-consumer diagnostic while allowing pending disposals to be cancelled. - Add regression coverage for release-then-reacquire behavior. |
||
|
|
be096663f4 |
fix(langgraph): dispatch stream messages handler inline (#2537)
## Summary - The v3 `messages` handler (`StreamProtocolMessagesHandler`) defaulted to background callback dispatch (`awaitHandlers === false`), so its synchronous `push()` onto the run stream could land after the Pregel loop sealed the stream — where `IterableReadableWritableStream.push` silently drops chunks. - This caused empty per-message streams (`sub.messages`) for subagents dispatched in parallel from a single tools step. - Fix: set `awaitHandlers = true` so the handler dispatches inline and every push happens during the originating model/chain call while the stream is still open. This avoids the global over-wait, fake-timer deadlock, and error-path unhandled rejections that a blanket `awaitAllCallbacks()` drain before `stream.close()` would have introduced. --------- Signed-off-by: Christian Bromann <git@bromann.dev> |
||
|
|
c18622faf7 |
chore(deps): bump @angular/compiler from 22.0.0 to 22.0.1 (#2541)
Bumps [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) from 22.0.0 to 22.0.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/compiler's releases</a>.</em></p> <blockquote> <h2>22.0.1</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c4b5fa3c9263ac127f5053c5a03dd4b6313659b8"><img src="https://img.shields.io/badge/c4b5fa3c92-fix-green" alt="fix - c4b5fa3c92" /></a></td> <td>escape CSS string-terminating characters in escapeCssUrl</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/dfff57ede93dbc51a7eeac3311ff2b1279595ee5"><img src="https://img.shields.io/badge/dfff57ede9-fix-green" alt="fix - dfff57ede9" /></a></td> <td>Limits date format string length</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3c2892c8dffbbbe32940306b53779cc0c4e3f73c"><img src="https://img.shields.io/badge/3c2892c8df-fix-green" alt="fix - 3c2892c8df" /></a></td> <td>prevent prototype pollution in formatDateTime</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/1d87c49f6ee4aac27146f39ef370a87ba707a2c1"><img src="https://img.shields.io/badge/1d87c49f6e-fix-green" alt="fix - 1d87c49f6e" /></a></td> <td>use cryptographically secure SHA-256 for transfer cache key generation</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce"><img src="https://img.shields.io/badge/1ee224ca30-fix-green" alt="fix - 1ee224ca30" /></a></td> <td>disallow i18n event attributes</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a56f1cdf8fa24e335409250798ee804d95eae136"><img src="https://img.shields.io/badge/a56f1cdf8f-fix-green" alt="fix - a56f1cdf8f" /></a></td> <td>more robust logic to check if regex can be optimized</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b"><img src="https://img.shields.io/badge/5946c18275-fix-green" alt="fix - 5946c18275" /></a></td> <td>sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the MathML namespace</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/393b84caf8bda05b31cfac014751deed142eb918"><img src="https://img.shields.io/badge/393b84caf8-fix-green" alt="fix - 393b84caf8" /></a></td> <td>sanitize two-way properties</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/3d9ca2f1730689232f0ba1d6eddbd7dcedd1da39"><img src="https://img.shields.io/badge/3d9ca2f173-fix-green" alt="fix - 3d9ca2f173" /></a></td> <td>bind switch exhaustive check expressions</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/669146b0e74ab1bed4196ccebe1c3608f52fd4f8"><img src="https://img.shields.io/badge/669146b0e7-fix-green" alt="fix - 669146b0e7" /></a></td> <td>disable WebMCP during SSR</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/562a566eadfdec3d9708f1a5e03e7dd2821d3432"><img src="https://img.shields.io/badge/562a566ead-fix-green" alt="fix - 562a566ead" /></a></td> <td>Handle synchronous errors in PendingTasks.run function</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/fa546f382de10af46d0508733c6630ffe4bef328"><img src="https://img.shields.io/badge/fa546f382d-fix-green" alt="fix - fa546f382d" /></a></td> <td>harden TransferState restoration against DOM clobbering</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/29fdb98684a57c99417efb5aac5a3b7f205e2c8f"><img src="https://img.shields.io/badge/29fdb98684-fix-green" alt="fix - 29fdb98684" /></a></td> <td>prevent dangling prevConsumer reference from leaking destroyed views (<a href="https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/68681">#68681</a>)</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/cdcea80327e8984981144d99194d7b194da4889f"><img src="https://img.shields.io/badge/cdcea80327-fix-green" alt="fix - cdcea80327" /></a></td> <td>require WebMCP tool descriptions</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4289c4c8408056eb90cd25cdb76475d00de129d6"><img src="https://img.shields.io/badge/4289c4c840-fix-green" alt="fix - 4289c4c840" /></a></td> <td>update comment for Default change detection</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3dd433b39a66609412427f06162fb4ebc2b3e4aa"><img src="https://img.shields.io/badge/3dd433b39a-fix-green" alt="fix - 3dd433b39a" /></a></td> <td>use Object.hasOwn to handle null-prototype objects in toStylingKeyValueArray</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/045bb736b373a5a0301cde3a4469194404b289c5"><img src="https://img.shields.io/badge/045bb736b3-fix-green" alt="fix - 045bb736b3" /></a></td> <td>validate lowercase SVG animation attribute names</td> </tr> </tbody> </table> <h3>forms</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/11836a670af5c64153d57a2d47b4688605379014"><img src="https://img.shields.io/badge/11836a670a-fix-green" alt="fix - 11836a670a" /></a></td> <td>delay mcp reading the form model by a <code>tick</code></td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd"><img src="https://img.shields.io/badge/85d2d100e3-fix-green" alt="fix - 85d2d100e3" /></a></td> <td>harden FormGroup control lookups against prototype shadowing</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e51ad374ea628de33843332f6798635dc8af02ae"><img src="https://img.shields.io/badge/e51ad374ea-fix-green" alt="fix - e51ad374ea" /></a></td> <td>remove animationstart listener on component destroy to prevent memory leak</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/55b7b5a6b6324c1886eca8dbc492e6af5fc4cd7a"><img src="https://img.shields.io/badge/55b7b5a6b6-fix-green" alt="fix - 55b7b5a6b6" /></a></td> <td>set <code>additionalProperties: false</code> on generated WebMCP form</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ffb06c0514ace66e83160e544dec63f36340c297"><img src="https://img.shields.io/badge/ffb06c0514-fix-green" alt="fix - ffb06c0514" /></a></td> <td>ensure query parameters are inserted before URL fragments</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/2dd65d21e656186cd2598a11dd51a34fcab2ecfe"><img src="https://img.shields.io/badge/2dd65d21e6-fix-green" alt="fix - 2dd65d21e6" /></a></td> <td>pass down the <code>reportUploadProgress</code> and <code>reportDownloadProgress</code> on post/patch requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4254eb416c81570a6d3313711aaeba7817305320"><img src="https://img.shields.io/badge/4254eb416c-fix-green" alt="fix - 4254eb416c" /></a></td> <td>preserve empty referrer option in HttpRequest</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/167bd4c162d6af87cd207650bbc41d6c7a073c22"><img src="https://img.shields.io/badge/167bd4c162-fix-green" alt="fix - 167bd4c162" /></a></td> <td>Rejects non-HTTP(S) URLs in JSONP requests</td> </tr> </tbody> </table> <h3>language-service</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/43a0e2872908d1a614139317e8dfeb52d9f69f75"><img src="https://img.shields.io/badge/43a0e28729-fix-green" alt="fix - 43a0e28729" /></a></td> <td>prevent external template inlay hints from appearing in TS files</td> </tr> </tbody> </table> <h3>platform-server</h3> <p>| Commit | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/compiler's changelog</a>.</em></p> <blockquote> <h1>22.0.1 (2026-06-10)</h1> <h2>Deprecations</h2> <h3>platform-server</h3> <ul> <li>XHR support in <code>@angular/platform-server</code> is deprecated. Use standard <code>fetch</code> APIs instead. (cherry picked from commit 8446e46f8bc33bd4419fa7f6106b8d117ca2e099)</li> </ul> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c4b5fa3c9263ac127f5053c5a03dd4b6313659b8">c4b5fa3c92</a></td> <td>fix</td> <td>escape CSS string-terminating characters in escapeCssUrl</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/dfff57ede93dbc51a7eeac3311ff2b1279595ee5">dfff57ede9</a></td> <td>fix</td> <td>Limits date format string length</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3c2892c8dffbbbe32940306b53779cc0c4e3f73c">3c2892c8df</a></td> <td>fix</td> <td>prevent prototype pollution in formatDateTime</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/1d87c49f6ee4aac27146f39ef370a87ba707a2c1">1d87c49f6e</a></td> <td>fix</td> <td>use cryptographically secure SHA-256 for transfer cache key generation</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce">1ee224ca30</a></td> <td>fix</td> <td>disallow i18n event attributes</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a56f1cdf8fa24e335409250798ee804d95eae136">a56f1cdf8f</a></td> <td>fix</td> <td>more robust logic to check if regex can be optimized</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b">5946c18275</a></td> <td>fix</td> <td>sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the MathML namespace</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/393b84caf8bda05b31cfac014751deed142eb918">393b84caf8</a></td> <td>fix</td> <td>sanitize two-way properties</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/3d9ca2f1730689232f0ba1d6eddbd7dcedd1da39">3d9ca2f173</a></td> <td>fix</td> <td>bind switch exhaustive check expressions</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/669146b0e74ab1bed4196ccebe1c3608f52fd4f8">669146b0e7</a></td> <td>fix</td> <td>disable WebMCP during SSR</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/562a566eadfdec3d9708f1a5e03e7dd2821d3432">562a566ead</a></td> <td>fix</td> <td>Handle synchronous errors in PendingTasks.run function</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/fa546f382de10af46d0508733c6630ffe4bef328">fa546f382d</a></td> <td>fix</td> <td>harden TransferState restoration against DOM clobbering</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/29fdb98684a57c99417efb5aac5a3b7f205e2c8f">29fdb98684</a></td> <td>fix</td> <td>prevent dangling prevConsumer reference from leaking destroyed views (<a href="https://redirect.github.com/angular/angular/pull/68681">#68681</a>)</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/cdcea80327e8984981144d99194d7b194da4889f">cdcea80327</a></td> <td>fix</td> <td>require WebMCP tool descriptions</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4289c4c8408056eb90cd25cdb76475d00de129d6">4289c4c840</a></td> <td>fix</td> <td>update comment for Default change detection</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3dd433b39a66609412427f06162fb4ebc2b3e4aa">3dd433b39a</a></td> <td>fix</td> <td>use Object.hasOwn to handle null-prototype objects in toStylingKeyValueArray</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/045bb736b373a5a0301cde3a4469194404b289c5">045bb736b3</a></td> <td>fix</td> <td>validate lowercase SVG animation attribute names</td> </tr> </tbody> </table> <h3>forms</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/11836a670af5c64153d57a2d47b4688605379014">11836a670a</a></td> <td>fix</td> <td>delay mcp reading the form model by a <code>tick</code></td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd">85d2d100e3</a></td> <td>fix</td> <td>harden FormGroup control lookups against prototype shadowing</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e51ad374ea628de33843332f6798635dc8af02ae">e51ad374ea</a></td> <td>fix</td> <td>remove animationstart listener on component destroy to prevent memory leak</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/55b7b5a6b6324c1886eca8dbc492e6af5fc4cd7a">55b7b5a6b6</a></td> <td>fix</td> <td>set <code>additionalProperties: false</code> on generated WebMCP form</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ffb06c0514ace66e83160e544dec63f36340c297">ffb06c0514</a></td> <td>fix</td> <td>ensure query parameters are inserted before URL fragments</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/2dd65d21e656186cd2598a11dd51a34fcab2ecfe">2dd65d21e6</a></td> <td>fix</td> <td>pass down the <code>reportUploadProgress</code> and <code>reportDownloadProgress</code> on post/patch requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4254eb416c81570a6d3313711aaeba7817305320">4254eb416c</a></td> <td>fix</td> <td>preserve empty referrer option in HttpRequest</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/167bd4c162d6af87cd207650bbc41d6c7a073c22">167bd4c162</a></td> <td>fix</td> <td>Rejects non-HTTP(S) URLs in JSONP requests</td> </tr> </tbody> </table> <h3>language-service</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/4645850e24d2764313040b6711af93d3fd426825"><code>4645850</code></a> refactor(compiler): Remove 80 char limit on AbstractEmitterVisitor</li> <li><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce"><code>1ee224c</code></a> fix(compiler): disallow i18n event attributes</li> <li><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b"><code>5946c18</code></a> fix(compiler): sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the ...</li> <li><a href="https://github.com/angular/angular/commit/393b84caf8bda05b31cfac014751deed142eb918"><code>393b84c</code></a> fix(compiler): sanitize two-way properties</li> <li><a href="https://github.com/angular/angular/commit/3d9ca2f1730689232f0ba1d6eddbd7dcedd1da39"><code>3d9ca2f</code></a> fix(compiler-cli): bind switch exhaustive check expressions</li> <li><a href="https://github.com/angular/angular/commit/a56f1cdf8fa24e335409250798ee804d95eae136"><code>a56f1cd</code></a> fix(compiler): more robust logic to check if regex can be optimized</li> <li>See full diff in <a href="https://github.com/angular/angular/commits/v22.0.1/packages/compiler">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
38cfe01ff0 |
fix(langgraph): merge instead of overwrite in ensureLangGraphConfig (#2531)
## Summary
- Port of langgraph#7926: `ensureLangGraphConfig` now per-key merges
`callbacks`, `tags`, `metadata`, and `configurable` across configs
instead of overwriting, so values bound via `.withConfig({...})` are
preserved when a later config (e.g. invoke-time `thread_id`) only
supplies a subset of keys. Later configs still win per key on collision.
- Merged dicts are fresh objects, fixing a by-reference mutation where
`propagateConfigurableToMetadata` could mutate a shared bound config's
`metadata` across invocations.
- Removed the now-redundant `combineCallbacks` pre-combine in
`Pregel.streamEvents` (v1/v2). Because the config merge now folds in
`this.config` callbacks, pre-combining re-registered graph-bound
handlers and double-fired them; only call-time callbacks are forwarded
now.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
|
||
|
|
4808541753 |
chore(deps): bump @angular/core from 22.0.0 to 22.0.1 (#2538)
Bumps [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) from 22.0.0 to 22.0.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/releases">@angular/core's releases</a>.</em></p> <blockquote> <h2>22.0.1</h2> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c4b5fa3c9263ac127f5053c5a03dd4b6313659b8"><img src="https://img.shields.io/badge/c4b5fa3c92-fix-green" alt="fix - c4b5fa3c92" /></a></td> <td>escape CSS string-terminating characters in escapeCssUrl</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/dfff57ede93dbc51a7eeac3311ff2b1279595ee5"><img src="https://img.shields.io/badge/dfff57ede9-fix-green" alt="fix - dfff57ede9" /></a></td> <td>Limits date format string length</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3c2892c8dffbbbe32940306b53779cc0c4e3f73c"><img src="https://img.shields.io/badge/3c2892c8df-fix-green" alt="fix - 3c2892c8df" /></a></td> <td>prevent prototype pollution in formatDateTime</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/1d87c49f6ee4aac27146f39ef370a87ba707a2c1"><img src="https://img.shields.io/badge/1d87c49f6e-fix-green" alt="fix - 1d87c49f6e" /></a></td> <td>use cryptographically secure SHA-256 for transfer cache key generation</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce"><img src="https://img.shields.io/badge/1ee224ca30-fix-green" alt="fix - 1ee224ca30" /></a></td> <td>disallow i18n event attributes</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a56f1cdf8fa24e335409250798ee804d95eae136"><img src="https://img.shields.io/badge/a56f1cdf8f-fix-green" alt="fix - a56f1cdf8f" /></a></td> <td>more robust logic to check if regex can be optimized</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b"><img src="https://img.shields.io/badge/5946c18275-fix-green" alt="fix - 5946c18275" /></a></td> <td>sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the MathML namespace</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/393b84caf8bda05b31cfac014751deed142eb918"><img src="https://img.shields.io/badge/393b84caf8-fix-green" alt="fix - 393b84caf8" /></a></td> <td>sanitize two-way properties</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/3d9ca2f1730689232f0ba1d6eddbd7dcedd1da39"><img src="https://img.shields.io/badge/3d9ca2f173-fix-green" alt="fix - 3d9ca2f173" /></a></td> <td>bind switch exhaustive check expressions</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/669146b0e74ab1bed4196ccebe1c3608f52fd4f8"><img src="https://img.shields.io/badge/669146b0e7-fix-green" alt="fix - 669146b0e7" /></a></td> <td>disable WebMCP during SSR</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/562a566eadfdec3d9708f1a5e03e7dd2821d3432"><img src="https://img.shields.io/badge/562a566ead-fix-green" alt="fix - 562a566ead" /></a></td> <td>Handle synchronous errors in PendingTasks.run function</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/fa546f382de10af46d0508733c6630ffe4bef328"><img src="https://img.shields.io/badge/fa546f382d-fix-green" alt="fix - fa546f382d" /></a></td> <td>harden TransferState restoration against DOM clobbering</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/29fdb98684a57c99417efb5aac5a3b7f205e2c8f"><img src="https://img.shields.io/badge/29fdb98684-fix-green" alt="fix - 29fdb98684" /></a></td> <td>prevent dangling prevConsumer reference from leaking destroyed views (<a href="https://github.com/angular/angular/tree/HEAD/packages/core/issues/68681">#68681</a>)</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/cdcea80327e8984981144d99194d7b194da4889f"><img src="https://img.shields.io/badge/cdcea80327-fix-green" alt="fix - cdcea80327" /></a></td> <td>require WebMCP tool descriptions</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4289c4c8408056eb90cd25cdb76475d00de129d6"><img src="https://img.shields.io/badge/4289c4c840-fix-green" alt="fix - 4289c4c840" /></a></td> <td>update comment for Default change detection</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3dd433b39a66609412427f06162fb4ebc2b3e4aa"><img src="https://img.shields.io/badge/3dd433b39a-fix-green" alt="fix - 3dd433b39a" /></a></td> <td>use Object.hasOwn to handle null-prototype objects in toStylingKeyValueArray</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/045bb736b373a5a0301cde3a4469194404b289c5"><img src="https://img.shields.io/badge/045bb736b3-fix-green" alt="fix - 045bb736b3" /></a></td> <td>validate lowercase SVG animation attribute names</td> </tr> </tbody> </table> <h3>forms</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/11836a670af5c64153d57a2d47b4688605379014"><img src="https://img.shields.io/badge/11836a670a-fix-green" alt="fix - 11836a670a" /></a></td> <td>delay mcp reading the form model by a <code>tick</code></td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd"><img src="https://img.shields.io/badge/85d2d100e3-fix-green" alt="fix - 85d2d100e3" /></a></td> <td>harden FormGroup control lookups against prototype shadowing</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e51ad374ea628de33843332f6798635dc8af02ae"><img src="https://img.shields.io/badge/e51ad374ea-fix-green" alt="fix - e51ad374ea" /></a></td> <td>remove animationstart listener on component destroy to prevent memory leak</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/55b7b5a6b6324c1886eca8dbc492e6af5fc4cd7a"><img src="https://img.shields.io/badge/55b7b5a6b6-fix-green" alt="fix - 55b7b5a6b6" /></a></td> <td>set <code>additionalProperties: false</code> on generated WebMCP form</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ffb06c0514ace66e83160e544dec63f36340c297"><img src="https://img.shields.io/badge/ffb06c0514-fix-green" alt="fix - ffb06c0514" /></a></td> <td>ensure query parameters are inserted before URL fragments</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/2dd65d21e656186cd2598a11dd51a34fcab2ecfe"><img src="https://img.shields.io/badge/2dd65d21e6-fix-green" alt="fix - 2dd65d21e6" /></a></td> <td>pass down the <code>reportUploadProgress</code> and <code>reportDownloadProgress</code> on post/patch requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4254eb416c81570a6d3313711aaeba7817305320"><img src="https://img.shields.io/badge/4254eb416c-fix-green" alt="fix - 4254eb416c" /></a></td> <td>preserve empty referrer option in HttpRequest</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/167bd4c162d6af87cd207650bbc41d6c7a073c22"><img src="https://img.shields.io/badge/167bd4c162-fix-green" alt="fix - 167bd4c162" /></a></td> <td>Rejects non-HTTP(S) URLs in JSONP requests</td> </tr> </tbody> </table> <h3>language-service</h3> <table> <thead> <tr> <th>Commit</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/43a0e2872908d1a614139317e8dfeb52d9f69f75"><img src="https://img.shields.io/badge/43a0e28729-fix-green" alt="fix - 43a0e28729" /></a></td> <td>prevent external template inlay hints from appearing in TS files</td> </tr> </tbody> </table> <h3>platform-server</h3> <p>| Commit | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/angular/angular/blob/main/CHANGELOG.md">@angular/core's changelog</a>.</em></p> <blockquote> <h1>22.0.1 (2026-06-10)</h1> <h2>Deprecations</h2> <h3>platform-server</h3> <ul> <li>XHR support in <code>@angular/platform-server</code> is deprecated. Use standard <code>fetch</code> APIs instead. (cherry picked from commit 8446e46f8bc33bd4419fa7f6106b8d117ca2e099)</li> </ul> <h3>common</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/c4b5fa3c9263ac127f5053c5a03dd4b6313659b8">c4b5fa3c92</a></td> <td>fix</td> <td>escape CSS string-terminating characters in escapeCssUrl</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/dfff57ede93dbc51a7eeac3311ff2b1279595ee5">dfff57ede9</a></td> <td>fix</td> <td>Limits date format string length</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3c2892c8dffbbbe32940306b53779cc0c4e3f73c">3c2892c8df</a></td> <td>fix</td> <td>prevent prototype pollution in formatDateTime</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/1d87c49f6ee4aac27146f39ef370a87ba707a2c1">1d87c49f6e</a></td> <td>fix</td> <td>use cryptographically secure SHA-256 for transfer cache key generation</td> </tr> </tbody> </table> <h3>compiler</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce">1ee224ca30</a></td> <td>fix</td> <td>disallow i18n event attributes</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/a56f1cdf8fa24e335409250798ee804d95eae136">a56f1cdf8f</a></td> <td>fix</td> <td>more robust logic to check if regex can be optimized</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b">5946c18275</a></td> <td>fix</td> <td>sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the MathML namespace</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/393b84caf8bda05b31cfac014751deed142eb918">393b84caf8</a></td> <td>fix</td> <td>sanitize two-way properties</td> </tr> </tbody> </table> <h3>compiler-cli</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/3d9ca2f1730689232f0ba1d6eddbd7dcedd1da39">3d9ca2f173</a></td> <td>fix</td> <td>bind switch exhaustive check expressions</td> </tr> </tbody> </table> <h3>core</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/669146b0e74ab1bed4196ccebe1c3608f52fd4f8">669146b0e7</a></td> <td>fix</td> <td>disable WebMCP during SSR</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/562a566eadfdec3d9708f1a5e03e7dd2821d3432">562a566ead</a></td> <td>fix</td> <td>Handle synchronous errors in PendingTasks.run function</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/fa546f382de10af46d0508733c6630ffe4bef328">fa546f382d</a></td> <td>fix</td> <td>harden TransferState restoration against DOM clobbering</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/29fdb98684a57c99417efb5aac5a3b7f205e2c8f">29fdb98684</a></td> <td>fix</td> <td>prevent dangling prevConsumer reference from leaking destroyed views (<a href="https://redirect.github.com/angular/angular/pull/68681">#68681</a>)</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/cdcea80327e8984981144d99194d7b194da4889f">cdcea80327</a></td> <td>fix</td> <td>require WebMCP tool descriptions</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4289c4c8408056eb90cd25cdb76475d00de129d6">4289c4c840</a></td> <td>fix</td> <td>update comment for Default change detection</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/3dd433b39a66609412427f06162fb4ebc2b3e4aa">3dd433b39a</a></td> <td>fix</td> <td>use Object.hasOwn to handle null-prototype objects in toStylingKeyValueArray</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/045bb736b373a5a0301cde3a4469194404b289c5">045bb736b3</a></td> <td>fix</td> <td>validate lowercase SVG animation attribute names</td> </tr> </tbody> </table> <h3>forms</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/11836a670af5c64153d57a2d47b4688605379014">11836a670a</a></td> <td>fix</td> <td>delay mcp reading the form model by a <code>tick</code></td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd">85d2d100e3</a></td> <td>fix</td> <td>harden FormGroup control lookups against prototype shadowing</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/e51ad374ea628de33843332f6798635dc8af02ae">e51ad374ea</a></td> <td>fix</td> <td>remove animationstart listener on component destroy to prevent memory leak</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/55b7b5a6b6324c1886eca8dbc492e6af5fc4cd7a">55b7b5a6b6</a></td> <td>fix</td> <td>set <code>additionalProperties: false</code> on generated WebMCP form</td> </tr> </tbody> </table> <h3>http</h3> <table> <thead> <tr> <th>Commit</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/angular/angular/commit/ffb06c0514ace66e83160e544dec63f36340c297">ffb06c0514</a></td> <td>fix</td> <td>ensure query parameters are inserted before URL fragments</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/2dd65d21e656186cd2598a11dd51a34fcab2ecfe">2dd65d21e6</a></td> <td>fix</td> <td>pass down the <code>reportUploadProgress</code> and <code>reportDownloadProgress</code> on post/patch requests</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/4254eb416c81570a6d3313711aaeba7817305320">4254eb416c</a></td> <td>fix</td> <td>preserve empty referrer option in HttpRequest</td> </tr> <tr> <td><a href="https://github.com/angular/angular/commit/167bd4c162d6af87cd207650bbc41d6c7a073c22">167bd4c162</a></td> <td>fix</td> <td>Rejects non-HTTP(S) URLs in JSONP requests</td> </tr> </tbody> </table> <h3>language-service</h3> <p>| Commit | Type | Description |</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/angular/angular/commit/4b0c3b8b8f1dbdb6ba31cb6499c393b1ccd81c6c"><code>4b0c3b8</code></a> refactor(core): Update registerNgModuleType to support codegen typechecking</li> <li><a href="https://github.com/angular/angular/commit/dbf64c8eb55ef5d2480abfbb4e362edccf79f971"><code>dbf64c8</code></a> test(core): fix AI tools test flake</li> <li><a href="https://github.com/angular/angular/commit/045bb736b373a5a0301cde3a4469194404b289c5"><code>045bb73</code></a> fix(core): validate lowercase SVG animation attribute names</li> <li><a href="https://github.com/angular/angular/commit/1ee224ca30b9b5a7906b4f481135f1fb900fb3ce"><code>1ee224c</code></a> fix(compiler): disallow i18n event attributes</li> <li><a href="https://github.com/angular/angular/commit/5946c18275800539b2f47f80a573ee9312a45e8b"><code>5946c18</code></a> fix(compiler): sanitize <code>href</code>/<code>xlink:href</code> attributes of any element of the ...</li> <li><a href="https://github.com/angular/angular/commit/b1f02eb5c5fd6c4a62cadf4ff4f04a3046a65002"><code>b1f02eb</code></a> refactor(core): add internal utility</li> <li><a href="https://github.com/angular/angular/commit/85d2d100e38999f1342742573166c7af0f29b4bd"><code>85d2d10</code></a> fix(forms): harden FormGroup control lookups against prototype shadowing</li> <li><a href="https://github.com/angular/angular/commit/6e3d51d7df3c8a4013cee7ec96c03835e0eeb9e2"><code>6e3d51d</code></a> refactor(migrations): Improve <code>safeNavigationMigration</code> heuristic</li> <li><a href="https://github.com/angular/angular/commit/01ea640539efda57e35807cef61abaf403686fe9"><code>01ea640</code></a> refactor(core): Fix DirectiveDefinition interface to allow abstract classes</li> <li><a href="https://github.com/angular/angular/commit/a704b08379e92294c59e47af7703edfefdaff6b8"><code>a704b08</code></a> docs: add Signal Forms and v22 guidance to AI best-practices and llms.txt</li> <li>Additional commits viewable in <a href="https://github.com/angular/angular/commits/v22.0.1/packages/core">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
a9fce5ea1c |
chore(deps-dev): bump @vitest/browser from 4.1.8 to 4.1.9 (#2539)
Bumps [@vitest/browser](https://github.com/vitest-dev/vitest/tree/HEAD/packages/browser) from 4.1.8 to 4.1.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitest-dev/vitest/releases">@vitest/browser's releases</a>.</em></p> <blockquote> <h2>v4.1.9</h2> <h3>🐞 Bug Fixes</h3> <ul> <li>Fix <code>importOriginal</code> with optimizer and query import [backport to v4] - by <strong>Hiroshi Ogawa</strong>, <strong>David Harris</strong>, <strong>Codex</strong>and <strong>Vladimir</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10546">vitest-dev/vitest#10546</a> <a href="https://github.com/vitest-dev/vitest/commit/a5180190c"><!-- raw HTML omitted -->(a5180)<!-- raw HTML omitted --></a></li> <li><strong>browser</strong>: <ul> <li>Wait for orchestrator readiness before resolving browser sessions [backport to v4] - by <strong>Vladimir</strong> and <strong>Séamus O'Connor</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10555">vitest-dev/vitest#10555</a> <a href="https://github.com/vitest-dev/vitest/commit/7fb29651a"><!-- raw HTML omitted -->(7fb29)<!-- raw HTML omitted --></a></li> <li>Wait for iframe tester readiness before preparing [backport to v4] - by <strong>Vladimir</strong> and <strong>Séamus O'Connor</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10497">vitest-dev/vitest#10497</a> and <a href="https://redirect.github.com/vitest-dev/vitest/issues/10556">vitest-dev/vitest#10556</a> <a href="https://github.com/vitest-dev/vitest/commit/fbc626c40"><!-- raw HTML omitted -->(fbc62)<!-- raw HTML omitted --></a></li> </ul> </li> <li><strong>mocker</strong>: <ul> <li>Hoist vi.mock() for vite-plus/test imports [backport to v4] - by <strong>Hiroshi Ogawa</strong>, <strong>LongYinan</strong>, <strong>Claude Opus 4.8</strong> and <strong>Vladimir</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10548">vitest-dev/vitest#10548</a> <a href="https://github.com/vitest-dev/vitest/commit/2c9559c02"><!-- raw HTML omitted -->(2c955)<!-- raw HTML omitted --></a></li> </ul> </li> <li><strong>pool</strong>: <ul> <li>Prevent test run hang on worker crash [backport to v4] - by <strong>Ari Perkkiö</strong> and <strong>Jattioui Ismail</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10543">vitest-dev/vitest#10543</a> and <a href="https://redirect.github.com/vitest-dev/vitest/issues/10564">vitest-dev/vitest#10564</a> <a href="https://github.com/vitest-dev/vitest/commit/934b0f587"><!-- raw HTML omitted -->(934b0)<!-- raw HTML omitted --></a></li> </ul> </li> </ul> <h5><a href="https://github.com/vitest-dev/vitest/compare/v4.1.8...v4.1.9">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vitest-dev/vitest/commit/a7a61e78c7d0718f00173cff6800a91a344457d4"><code>a7a61e7</code></a> chore: release v4.1.9 (<a href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/browser/issues/10598">#10598</a>)</li> <li><a href="https://github.com/vitest-dev/vitest/commit/fbc626c401ee9215ee07c0d19801cff820e289d6"><code>fbc626c</code></a> fix(browser): wait for iframe tester readiness before preparing (<a href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/browser/issues/10497">#10497</a>) [bac...</li> <li><a href="https://github.com/vitest-dev/vitest/commit/7fb29651afbae2a9b0cefe6c031a9308f168ac60"><code>7fb2965</code></a> fix(browser): wait for orchestrator readiness before resolving browser sessio...</li> <li>See full diff in <a href="https://github.com/vitest-dev/vitest/commits/v4.1.9/packages/browser">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
7d8295dcca |
chore(deps): bump hono from 4.12.23 to 4.12.25 (#2548)
Bumps [hono](https://github.com/honojs/hono) from 4.12.23 to 4.12.25. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/honojs/hono/releases">hono's releases</a>.</em></p> <blockquote> <h2>v4.12.25</h2> <h2>Security fixes</h2> <p>This release includes fixes for the following security issues:</p> <h3>CORS Middleware reflects any Origin with credentials when <code>origin</code> defaults to the wildcard</h3> <p>Affects: <code>hono/cors</code>. Fixes the wildcard origin reflecting the request <code>Origin</code> and sending <code>Access-Control-Allow-Credentials: true</code> when <code>credentials: true</code> is set without an explicit <code>origin</code>, where any site a logged-in user visited could make credentialed cross-origin requests and read responses from cookie-authenticated endpoints. GHSA-88fw-hqm2-52qc</p> <h3>Body Limit Middleware can be bypassed on AWS Lambda by understating <code>Content-Length</code></h3> <p>Affects: <code>hono/body-limit</code> on AWS Lambda (<code>hono/aws-lambda</code>, <code>hono/lambda-edge</code>). Fixes the request being built with the client-declared <code>Content-Length</code> while the body is delivered fully buffered, where a client could declare a small <code>Content-Length</code> with a much larger body and slip past the configured size limit. GHSA-rv63-4mwf-qqc2</p> <h3>Path traversal in <code>serve-static</code> on Windows via encoded backslash (<code>%5C</code>)</h3> <p>Affects: <code>serveStatic</code> on Windows (Node, Bun, Deno adapters). Fixes the path guard allowing a lone backslash, where an encoded backslash (<code>%5C</code>) decoded to <code>\</code> was treated as a separator by the Windows path resolver, letting a single URL segment escape into a middleware-guarded subtree. GHSA-wwfh-h76j-fc44</p> <h3>AWS Lambda adapter merges multiple <code>Set-Cookie</code> headers into one value, dropping cookies on ALB single-header and Lattice</h3> <p>Affects: <code>hono/aws-lambda</code>. Fixes multiple <code>Set-Cookie</code> response headers being joined into one comma-separated value for ALB single-header responses and VPC Lattice v2, where the value could not be split back into individual cookies and clients silently dropped or misparsed them. GHSA-j6c9-x7qj-28xf</p> <h3>Lambda@Edge adapter keeps only the last value of a repeated request header, dropping the rest</h3> <p>Affects: <code>hono/lambda-edge</code>. Fixes repeated request headers being written with overwrite instead of append, where only the last value of a header such as <code>X-Forwarded-For</code> reached the application and the remaining values were silently dropped. GHSA-wgpf-jwqj-8h8p</p> <h2>v4.12.24</h2> <h2>What's Changed</h2> <ul> <li>docs(contribution): simplifyAI Usage Policy by <a href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4972">honojs/hono#4972</a></li> <li>chore: remove <code>@types/glob</code> by <a href="https://github.com/rtritto"><code>@rtritto</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4978">honojs/hono#4978</a></li> <li>fix(bearer-auth): mention verifyToken in missing-options error message by <a href="https://github.com/tan7vir"><code>@tan7vir</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4987">honojs/hono#4987</a></li> <li>refactor(language): Test/improve tests on languages middleware by <a href="https://github.com/iNeoO"><code>@iNeoO</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4980">honojs/hono#4980</a></li> <li>fix(utils/ipaddr): expand "::" to eight zero groups by <a href="https://github.com/youcefzemmar"><code>@youcefzemmar</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4973">honojs/hono#4973</a></li> <li>fix: clean up config files trailing comma, stale excludes, typesVersions gaps, jsr paths by <a href="https://github.com/Mohammad-Faiz-Cloud-Engineer"><code>@Mohammad-Faiz-Cloud-Engineer</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4982">honojs/hono#4982</a></li> <li>refactor(timing): Test/add test for middleware timing by <a href="https://github.com/iNeoO"><code>@iNeoO</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4991">honojs/hono#4991</a></li> <li>fix(utils/ipaddr): render the unspecified address binary as "::" by <a href="https://github.com/sarathfrancis90"><code>@sarathfrancis90</code></a> in <a href="https://redirect.github.com/honojs/hono/pull/4998">honojs/hono#4998</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/honojs/hono/compare/v4.12.23...v4.12.24">https://github.com/honojs/hono/compare/v4.12.23...v4.12.24</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/honojs/hono/commit/fce483e11466b72d27e61d44523c7e6edeb19e50"><code>fce483e</code></a> 4.12.25</li> <li><a href="https://github.com/honojs/hono/commit/751ba41ba26dff20351a13964c07627ddcf382b6"><code>751ba41</code></a> Merge commit from fork</li> <li><a href="https://github.com/honojs/hono/commit/f0b094db8474696344d98e5665a4ac2a6d5f346e"><code>f0b094d</code></a> Merge commit from fork</li> <li><a href="https://github.com/honojs/hono/commit/fa5f9bfcc25d65e08af85211cc2e5ecd0e0ea24b"><code>fa5f9bf</code></a> Merge commit from fork</li> <li><a href="https://github.com/honojs/hono/commit/3892a6c2b54f974505de41013fcac88a71908e3d"><code>3892a6c</code></a> Merge commit from fork</li> <li><a href="https://github.com/honojs/hono/commit/74c2cf8ef4f5cc29a876380df1ba230ff7128b3f"><code>74c2cf8</code></a> test(aws-lambda): update integration tests (<a href="https://redirect.github.com/honojs/hono/issues/5012">#5012</a>)</li> <li><a href="https://github.com/honojs/hono/commit/7ae7cbae5d0ed8a40e8b9cc353e13175b9d7e3e1"><code>7ae7cba</code></a> Merge commit from fork</li> <li><a href="https://github.com/honojs/hono/commit/1b1384815485f9d6590c6966e23a06fd07166cb7"><code>1b13848</code></a> chore(ci): bump codecov-action to v7.0.0 (<a href="https://redirect.github.com/honojs/hono/issues/5011">#5011</a>)</li> <li><a href="https://github.com/honojs/hono/commit/5fdde5ab5a7d7c89eba4d1ceab76f4a7c011cd3b"><code>5fdde5a</code></a> 4.12.24</li> <li><a href="https://github.com/honojs/hono/commit/c78932d745cdf6284ae131a156479ac930da0262"><code>c78932d</code></a> fix(utils/ipaddr): render the unspecified address binary as "::" (<a href="https://redirect.github.com/honojs/hono/issues/4998">#4998</a>)</li> <li>Additional commits viewable in <a href="https://github.com/honojs/hono/compare/v4.12.23...v4.12.25">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/langchain-ai/langgraphjs/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1a42b9f21f |
chore(deps): bump tar from 7.5.11 to 7.5.16 (#2547)
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.11 to 7.5.16. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/isaacs/node-tar/commit/cf213384ac558b539c07c830ed7cca5ffc9e8550"><code>cf21338</code></a> 7.5.16</li> <li><a href="https://github.com/isaacs/node-tar/commit/21a822027658c8063542be330530bbecdf0dbbfe"><code>21a8220</code></a> do not apply PAX header fields to meta entries</li> <li><a href="https://github.com/isaacs/node-tar/commit/52632cf38fdbdbbc7ab86184d68a85b11fdb0970"><code>52632cf</code></a> update project deps</li> <li><a href="https://github.com/isaacs/node-tar/commit/302f51ff3f8eefeccc06be4caf7d0de9b7c321d7"><code>302f51f</code></a> fix inconsequential typo in PENDINGLINKS symbol name</li> <li><a href="https://github.com/isaacs/node-tar/commit/55dbb99b27640bb12b2ac059b26883c23523b3e3"><code>55dbb99</code></a> remove some uses of mutate-fs</li> <li><a href="https://github.com/isaacs/node-tar/commit/87cc309f13c21d598b0b833235d387a252455058"><code>87cc309</code></a> 7.5.15</li> <li><a href="https://github.com/isaacs/node-tar/commit/7aef486f0d21c10fd7790b16b1b28f04648cf334"><code>7aef486</code></a> fix: regression in pending links detection</li> <li><a href="https://github.com/isaacs/node-tar/commit/6244eb33846bbd407443f5d0e339bd8c91663cd6"><code>6244eb3</code></a> 7.5.14</li> <li><a href="https://github.com/isaacs/node-tar/commit/9704d8c6f639573775133cbbd541aba83cb46c9c"><code>9704d8c</code></a> stricter protection against hardlinks preempting their targets</li> <li><a href="https://github.com/isaacs/node-tar/commit/700734f9aeb113bcc5f1400d81b8be7d499e54a2"><code>700734f</code></a> update workflows and deps</li> <li>Additional commits viewable in <a href="https://github.com/isaacs/node-tar/compare/v7.5.11...v7.5.16">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/langchain-ai/langgraphjs/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
ada52690f6 |
chore(deps-dev): bump ws from 8.20.1 to 8.21.0 (#2546)
Bumps [ws](https://github.com/websockets/ws) from 8.20.1 to 8.21.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/websockets/ws/releases">ws's releases</a>.</em></p> <blockquote> <h2>8.21.0</h2> <h1>Features</h1> <ul> <li>Introduced the <code>maxBufferedChunks</code> and <code>maxFragments</code> options (2b2abd45).</li> </ul> <h1>Bug fixes</h1> <ul> <li>Fixed a remote memory exhaustion DoS vulnerability (2b2abd45).</li> </ul> <p>A high volume of tiny fragments and data chunks could be sent by a peer, using modest network traffic, to crash a <code>ws</code> server or client due to OOM.</p> <pre lang="js"><code>import { WebSocket, WebSocketServer } from 'ws'; <p>const wss = new WebSocketServer({ port: 0 }, function () { const data = Buffer.alloc(1); const options = { fin: false }; const { port } = wss.address(); const ws = new WebSocket(<code>ws://localhost:${port}</code>);</p> <p>ws.on('open', function () { (function send() { ws.send(data, options, function (err) { if (err) return; send(); }); })(); });</p> <p>ws.on('error', console.error); ws.on('close', function (code, reason) { console.log(<code>client close - code: ${code} reason: ${reason.toString()}</code>); }); });</p> <p>wss.on('connection', function (ws) { ws.on('error', console.error); ws.on('close', function (code, reason) { console.log(<code>server close - code: ${code} reason: ${reason.toString()}</code>); }); }); </code></pre></p> <p>The vulnerability was responsibly disclosed and fixed by <a href="https://github.com/Nadav0077">Nadav Magier</a>.</p> <p>In vulnerable versions, the issue can be mitigated by lowering the value of the <code>maxPayload</code> option if possible.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/websockets/ws/commit/bca91adf15677e47dbe4f959653452727be28b94"><code>bca91ad</code></a> [dist] 8.21.0</li> <li><a href="https://github.com/websockets/ws/commit/2b2abd458a1b647d0b6033bd62a619c36189839a"><code>2b2abd4</code></a> [security] Limit retained message parts</li> <li><a href="https://github.com/websockets/ws/commit/78eabe2a6677b231bf9c82601bde86ff91639490"><code>78eabe2</code></a> [security] Add latest vulnerability to SECURITY.md</li> <li>See full diff in <a href="https://github.com/websockets/ws/compare/8.20.1...8.21.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/langchain-ai/langgraphjs/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
58a29a2e61 |
chore(deps-dev): bump vite from 8.0.5 to 8.0.16 (#2543)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.5 to 8.0.16. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/releases">vite's releases</a>.</em></p> <blockquote> <h2>v8.0.16</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.16/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.15</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.15/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.14</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.14/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.13</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.13/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.12</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.12/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.11</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.11/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.10</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.10/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.9</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.9/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.8</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.8/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.7</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.7/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v8.0.6</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v8.0.6/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's changelog</a>.</em></p> <blockquote> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite/compare/v8.0.15...v8.0.16">8.0.16</a> (2026-06-01)<!-- raw HTML omitted --></h2> <h3>Bug Fixes</h3> <ul> <li><strong>deps:</strong> reject UNC paths for launch-editor-middleware (<a href="https://redirect.github.com/vitejs/vite/issues/22571">#22571</a>) (<a href="https://github.com/vitejs/vite/commit/50b951225bbf6151eb84a3ad5a454908ab4a76c9">50b9512</a>)</li> <li>reject windows alternate paths (<a href="https://redirect.github.com/vitejs/vite/issues/22572">#22572</a>) (<a href="https://github.com/vitejs/vite/commit/dc245c71e5007ea4d891a025e2d69ac96c736546">dc245c7</a>)</li> </ul> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite/compare/v8.0.14...v8.0.15">8.0.15</a> (2026-06-01)<!-- raw HTML omitted --></h2> <h3>Features</h3> <ul> <li>send 408 on request timeout (<a href="https://redirect.github.com/vitejs/vite/issues/22476">#22476</a>) (<a href="https://github.com/vitejs/vite/commit/c85c9eeb9aaf41f477b48b057146887bd5620797">c85c9ee</a>)</li> <li>update rolldown to 1.0.3 (<a href="https://redirect.github.com/vitejs/vite/issues/22538">#22538</a>) (<a href="https://github.com/vitejs/vite/commit/646dbedd2870f8ec48df0321177d8aa64bbd1575">646dbed</a>)</li> </ul> <h3>Bug Fixes</h3> <ul> <li>capitalize error messages and remove spurious space in parse error (<a href="https://redirect.github.com/vitejs/vite/issues/22488">#22488</a>) (<a href="https://github.com/vitejs/vite/commit/85a0eff1c82bbb7c99a0fe8e63704316578a40d3">85a0eff</a>)</li> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite/issues/22511">#22511</a>) (<a href="https://github.com/vitejs/vite/commit/2686d7d0b722402204d3bcc687a87adea1bcf9fa">2686d7d</a>)</li> <li><strong>dev:</strong> fix html-proxy cache key mismatch for /@fs/ HTML paths (<a href="https://redirect.github.com/vitejs/vite/issues/21762">#21762</a>) (<a href="https://github.com/vitejs/vite/commit/47c4213f134f562c41ed7c031e4788510cf7e31e">47c4213</a>)</li> <li><strong>glob:</strong> error on relative glob in virtual module when no files match (<a href="https://redirect.github.com/vitejs/vite/issues/22497">#22497</a>) (<a href="https://github.com/vitejs/vite/commit/5c8e98f8b584ac5d42f0f9b8580c49792213b13c">5c8e98f</a>)</li> <li><strong>optimizer:</strong> close the rolldown bundle when write() rejects (<a href="https://redirect.github.com/vitejs/vite/issues/22528">#22528</a>) (<a href="https://github.com/vitejs/vite/commit/e3cfb9deecff563550fa1b8abd27656b8b292815">e3cfb9d</a>)</li> <li><strong>resolve:</strong> provide onWarn for viteResolvePlugin in JS plugin containers (<a href="https://redirect.github.com/vitejs/vite/issues/22509">#22509</a>) (<a href="https://github.com/vitejs/vite/commit/40985f1c09b7696e594e6c5695fbc315d2da2c83">40985f1</a>)</li> </ul> <h3>Miscellaneous Chores</h3> <ul> <li><strong>deps:</strong> update rolldown-related dependencies (<a href="https://redirect.github.com/vitejs/vite/issues/22566">#22566</a>) (<a href="https://github.com/vitejs/vite/commit/3052a67d9350f4c5076ab1c222c4a21a589cbcdd">3052a67</a>)</li> </ul> <h3>Code Refactoring</h3> <ul> <li>correct logic in <code>collectAllModules</code> function (<a href="https://redirect.github.com/vitejs/vite/issues/22562">#22562</a>) (<a href="https://github.com/vitejs/vite/commit/6978a9ceb942c4f5e211d52b8a1e569f8a65c80c">6978a9c</a>)</li> </ul> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite/compare/v8.0.13...v8.0.14">8.0.14</a> (2026-05-21)<!-- raw HTML omitted --></h2> <h3>Features</h3> <ul> <li>update rolldown to 1.0.2 (<a href="https://redirect.github.com/vitejs/vite/issues/22484">#22484</a>) (<a href="https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0">96efc88</a>)</li> </ul> <h3>Bug Fixes</h3> <ul> <li><strong>deps:</strong> update all non-major dependencies (<a href="https://redirect.github.com/vitejs/vite/issues/22471">#22471</a>) (<a href="https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3">98b8163</a>)</li> <li><strong>dev:</strong> handle errors when sending messages to vite server (<a href="https://redirect.github.com/vitejs/vite/issues/22450">#22450</a>) (<a href="https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217">e8e9a34</a>)</li> <li><strong>html:</strong> handle trailing slash paths in transformIndexHtml (<a href="https://redirect.github.com/vitejs/vite/issues/22480">#22480</a>) (<a href="https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693">5d94d1b</a>)</li> <li><strong>optimizer:</strong> pass oxc jsx options to transformSync in dependency scan (<a href="https://redirect.github.com/vitejs/vite/issues/22342">#22342</a>) (<a href="https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262">b3132da</a>)</li> </ul> <h3>Miscellaneous Chores</h3> <ul> <li><strong>deps:</strong> update rolldown-related dependencies (<a href="https://redirect.github.com/vitejs/vite/issues/22470">#22470</a>) (<a href="https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f">7cb728e</a>)</li> <li>remove irrelevant commits from changelog (<a href="https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086">2c69495</a>)</li> </ul> <h3>Code Refactoring</h3> <ul> <li><strong>glob:</strong> do not rewrite import path for absolute base (<a href="https://redirect.github.com/vitejs/vite/issues/22310">#22310</a>) (<a href="https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975b8132769fc35b302">0ae2844</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vitejs/vite/commit/f94df87ff03b40b65e29bacdc04cc18c7bccaa4a"><code>f94df87</code></a> release: v8.0.16</li> <li><a href="https://github.com/vitejs/vite/commit/dc245c71e5007ea4d891a025e2d69ac96c736546"><code>dc245c7</code></a> fix: reject windows alternate paths (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22572">#22572</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/50b951225bbf6151eb84a3ad5a454908ab4a76c9"><code>50b9512</code></a> fix(deps): reject UNC paths for launch-editor-middleware (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22571">#22571</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/8d1b0195fd186d0b3297d7cd17acff6c96797420"><code>8d1b019</code></a> release: v8.0.15</li> <li><a href="https://github.com/vitejs/vite/commit/2686d7d0b722402204d3bcc687a87adea1bcf9fa"><code>2686d7d</code></a> fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22511">#22511</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/3052a67d9350f4c5076ab1c222c4a21a589cbcdd"><code>3052a67</code></a> chore(deps): update rolldown-related dependencies (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22566">#22566</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/e3cfb9deecff563550fa1b8abd27656b8b292815"><code>e3cfb9d</code></a> fix(optimizer): close the rolldown bundle when write() rejects (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22528">#22528</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/6978a9ceb942c4f5e211d52b8a1e569f8a65c80c"><code>6978a9c</code></a> refactor: correct logic in <code>collectAllModules</code> function (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22562">#22562</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/646dbedd2870f8ec48df0321177d8aa64bbd1575"><code>646dbed</code></a> feat: update rolldown to 1.0.3 (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22538">#22538</a>)</li> <li><a href="https://github.com/vitejs/vite/commit/85a0eff1c82bbb7c99a0fe8e63704316578a40d3"><code>85a0eff</code></a> fix: capitalize error messages and remove spurious space in parse error (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22488">#22488</a>)</li> <li>Additional commits viewable in <a href="https://github.com/vitejs/vite/commits/v8.0.16/packages/vite">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |