Dartで参照されていないファイルを消したい時は、dart-code-linterを使う。元々DCMがOSSの時の実装をforkしたライブラリ。
自分たちは、dart-code-linterに付属するlinterは使っておらず参照されていないファイルがあったらエラーにするコマンドをGithub Actionsで実行するだけにしている。
fvm dart run dart_code_linter:metrics check-unused-files lib
ファイルではなくコードは以下のコマンドでよい。(ちゃんと動いてない時がありそうなのだが深く調べていない)
fvm dart run dart_code_linter:metrics check-unused-code lib
Linter自体はDartの新しいAnalyzerがきたらそっちに全部移行するつもりなので、今はあんまり頑張りすぎないようにしようという気持ちがあり、公式のものを有効にする + すでにあるカスタムルールの設定を変更するくらいにしている。
☂️ New analyzer plugin system · Issue #53402 · dart-lang/sdk