お久しぶりです。みやかわです。
タイトルどおり、Flutterでコーディングしていたときに突然パッケージが自動挿入されなくなりました。
自動でパッケージが挿入されないと、コーディングにかなり支障がでます。
色々調べた末、ようやく解決することができたのでまとめておきます。
そもそもの原因
そもそもの原因は単純で、パッケージが自動挿入されないファイルを analysis_options.yaml で解析対象外にしていたためでした。
テストコードはlint無効で書きたいと思って、テストコードを書いているファイルは以下のように設定をしていました。
analyzer:
exclude:
- "**/*.g.dart"
- "**/*.freezed.dart"
- "**/*.mocks.dart"
- "test/*_test.dart" // lint を無効化したいファイル
どうやら、これをするとlint以外も無効化(パッケージの自動挿入等)するとのことでした。
ググると同じ問題を抱えている人を発見しました。
Provide an `exclude` option for linters in .analysis_options · Issue #57389 · dart-lang/sdk
github.com
解決策
現状の解決策は、 analysis_options.yaml にlint対象外のファイルは入れずに、個々のファイルに対してlint対象外のコメントを文言を追加ことです。
// ignore_for_file: type=lint
その他
突然自動パッケージの自動挿入ができなくなったので、いつも使っているエディタのアインストールして色々試していました。
結局原因は、上記に書いたとおり、analysis_options.yaml でした。
この問題にかなり時間を割いてしまいまいした。。。
同じ問題を抱えている人に届いてほしいです。