😇

変数の種類によってリントの警告が出る!

に公開

Tips💡

プロジェクで、定数を大文字、クラスの変数をスネークケースにしていると、Flutter標準のLintのチェックでエラーが出てしまう😅

このパッケージとGithub Actionsを導入して静的解析というのか、自動チェックを導入すると、警告が厳しくなって、エラーが連発し続ける問題が出た💦

https://zenn.dev/joo_hashi/articles/0df69b2813e93d

定数は大文字で、変数はスネークケースで使いたいので、Lintの警告を無視することにした。設定した後もチェックが続いていたので、変更を反映させるには、Android Studioを再起動する必要があった。

[変更前]

analysis_options.yamlに設定を追加する。

analysis_options.yaml
# This file configures the analyzer, which statically analyzes Dart code to
# check for errors, warnings, and lints.
#
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
# invoked from the command line by running `flutter analyze`.

# The following line activates a set of recommended lints for Flutter apps,
# packages, and plugins designed to encourage good coding practices.
include: package:flutter_lints/flutter.yaml

linter:
  # The lint rules applied to this project can be customized in the
  # section below to disable rules from the `package:flutter_lints/flutter.yaml`
  # included above or to enable additional rules. A list of all available lints
  # and their documentation is published at https://dart.dev/lints.
  #
  # Instead of disabling a lint rule for the entire project in the
  # section below, it can also be suppressed for a single line of code
  # or a specific dart file by using the `// ignore: name_of_lint` and
  # `// ignore_for_file: name_of_lint` syntax on the line or in the file
  # producing the lint.
  rules:
    constant_identifier_names: ignore # 定数は大文字で書いた時の警告を無効化
    camel_case_types: ignore # 変数をキャメルケースで書いた時の警告を無効化
    # avoid_print: false  # Uncomment to disable the `avoid_print` rule
    # prefer_single_quotes: true  # Uncomment to enable the `prefer_single_quotes` rule

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options

Android Studioを再起動すると解決できた\(^^)/

[変更後]

まとめ

Lintのパッケージを入れて、CI/CDまで導入したが、多分私しか使っていないので、メリットを感じなかった😇
コミットを戻して、警告が出ないように無効化して使うことにした。

ちなみに、Github Actionsの設定はこんな感じです。 mainブランチ意外で、pushしたら実行する。

.github/workflows/code_quality.yml
name: Check and test the source code
on:
  push:
    branches-ignore:
      - main # mainブランチ意外でのpushのみ実行
jobs:
  test:
    name: Check the source code
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: subosito/flutter-action@v2
        with:
          flutter-version: '3.19.3'
      - name: Install packages
        run: flutter pub get
      - name: Linter
        run: flutter analyze
      - name: Test
        run: flutter test

Discussion