更新と移行
既存プロジェクトを更新する順番
- 使用中のコンパイラ、
dicks.json、dicks.lock、デプロイ済み生成物を記録します。 - 更新対象の変更履歴を読み、言語・ホストABI・パッケージの互換性を確認します。
- 別ブランチでツールチェーンを更新し、
dicks checkを実行します。 dicks auditとdicks outdatedを実行し、更新する依存だけを完全一致の版で指定します。- ロックの差分を確認し、アプリのテストとCloudflareのローカル検証を行います。
- 新しい生成物を別途ビルドして検証後に配備します。問題があれば以前の生成物とロックへ戻します。
D1のschema変更は別の移行作業です。コードのロールバックはDBを元へ戻しません。削除を伴うmigrationを依存更新に混ぜないでください。
今回のリポジトリ分離
公式ライブラリは dicks-lang/<package>、レジストリは dicks-lang/registry、ドキュメントは dicks-lang/docs へ分かれました。既存の @dicks/* import名とパッケージの公開APIは変更していません。Gitのremoteを更新してもlockfileを無断で最新化しません。
互換性がない更新
破壊的変更には、影響する旧コード、新コード、診断コード、必要な最小バージョン、戻す方法を変更履歴に明記します。0.xでも破壊的変更を暗黙に行いません。現在、過去の正式リリースからの検証済み移行経路は公開していません。