Flutter Webアプリ13本に
使われていないcanvaskitが約400MB残っていた
Flutter Webで配信している13本のアプリ全てに、ビルドをそのまま置いたときのcanvaskit/フォルダが残っていた。1本あたり十数MB〜30MB前後、合計すると約400MBがリポジトリの重複データになっていた。
ビルドはGoogleの配信元から読んでいた
Flutter Webのビルドはflutter_bootstrap.js経由で、canvaskit本体をGoogleのgstatic配信元から読み込む設定になっている。つまりp/{アプリ}/canvaskit/配下に置いていたファイルは、デプロイしてもブラウザから一度も読まれていなかった。実際に13本分をまるごと削除してみても、アプリの表示・動作は変わらなかった。
13本で同じ重複をくり返していた
各アプリをビルドするたびにbuild/web/一式をそのままp/配下へコピーしていたため、使われないcanvaskit/も毎回一緒に置かれていた。対象はboueki-hub本体と配下の4本(english-word・jitsumu-word・kentei・srs)、drone/anki、focus-dice、jinsei_pyramid、kao_type_diag、lifeisrpg、rakuraku、toiteの計13本。削除した差分は196ファイル・約81万行で、そのほとんどがwasm・JSのバイナリとソースマップだった。
直したこととルール化
13本分のcanvaskit/を削除し、CLAUDE.mdに「Flutter Webのビルドを置くときはcanvaskit/フォルダを消す」ことを明記した。次に新しいビルドを置くときも、同じ重複を増やさないようにする。
Today's App
といて — 数学・英語の問題をカメラで撮るだけでAIが解説するアプリ →
← ブログ一覧に戻る