この変更が意味すること
Svelte 5.56.3 は2件のバグ修正を含むパッチリリースです。
最初の修正は 破棄済み(destroyed)エフェクト内で発生するエラーの無視 です。コンポーネントがアンマウントされた後に非同期処理が完了してエフェクトを更新しようとするケースで、不要なエラーが発生していた問題が解消されます。コンポーネントのライフサイクル管理が改善され、よりクリーンなエラーログが得られます。
もう一つは $state.snapshot() の戻り値型への BigInt のサポート追加 です。$state.snapshot() を使用してリアクティブな状態のスナップショットを取得する際、BigInt を含む状態では型定義が正確でなかった問題を型レベルで修正しました。
いずれも breaking changes を含まないバグ修正です。
主な変更点
破棄済みエフェクト内のエラーを無視(#18384)
destroyed 状態のエフェクトで発生するエラーをキャッチして無視するよう修正しました。
Svelte の非同期コンポーネントや {#await} ブロックを使用しているコンポーネントがアンマウントされたタイミングで、まだ pending 中の非同期処理が完了するとエフェクトの更新が試みられます。このとき、対象のエフェクトがすでに破棄済みであるにもかかわらずエラーが発生していました。このリリースで、destroyed エフェクト内のエラーは無視されるようになります。
$state.snapshot() の戻り値型への BigInt サポート(#18388)
$state.snapshot() の TypeScript 型定義に BigInt が含まれるよう修正しました。
Svelte 5 の $state.snapshot() は、リアクティブな状態の非リアクティブなコピーを取得するための API です。状態の型として BigInt が含まれる場合、以前は型定義が正確でなく TypeScript での型チェックが不正確でした。このリリースで BigInt を含む状態に対しても正確な型が返るようになります。
EOL / サポート状況
Svelte は endoflife.date の追跡対象外です。5 系が現行の安定バージョンです。
| dist-tag | バージョン |
|---|---|
| latest | 5.56.3 |
| next | 5.0.0-next.272 |
開発者への影響
- 非同期コンポーネントを使用しているプロジェクト: コンポーネントアンマウント後の不要なエラーが抑制されます。コンソールが静かになります
$state.snapshot()で BigInt を含む状態を扱うプロジェクト: 型定義が正確になり、TypeScript での型チェックが改善されます- その他の Svelte 5 プロジェクト: 定期アップデートとして対応してください。影響は限定的です
- breaking changes はありません: 安全にアップデート可能です
アップデート方法
# npm
npm install svelte@5.56.3
# yarn
yarn add svelte@5.56.3
# pnpm
pnpm add svelte@5.56.3
# bun
bun add svelte@5.56.3
データソース: GitHub Releases API, npm Registry
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
