From efe54047da190cb96d0a26f9be14fb5758105cf3 Mon Sep 17 00:00:00 2001 From: Reid-Agent <269567208+reidbaker-agent@users.noreply.github.com> Date: Tue, 4 Aug 2026 12:04:32 -0400 Subject: [PATCH 1/2] Remove unused dart_code_linter dependency and dead config --- tool/dart_skills_lint/analysis_options.yaml | 39 +-------------------- tool/dart_skills_lint/pubspec.yaml | 1 - 2 files changed, 1 insertion(+), 39 deletions(-) diff --git a/tool/dart_skills_lint/analysis_options.yaml b/tool/dart_skills_lint/analysis_options.yaml index df98b2fe..f0e4ff4a 100644 --- a/tool/dart_skills_lint/analysis_options.yaml +++ b/tool/dart_skills_lint/analysis_options.yaml @@ -15,9 +15,6 @@ analyzer: strict-casts: true strict-inference: true strict-raw-types: true - # dart_code_linter is intentionally NOT registered as an analyzer - # `plugin` here. When it was, `dart analyze` had racy false positives. - # See https://github.com/flutter/agent-plugins/issues/144 errors: # allow deprecated members (we do this because otherwise we have to annotate # every member in every test, assert, etc, when we or the Dart SDK deprecates @@ -267,38 +264,4 @@ linter: # - use_to_and_as_if_applicable # has false positives, so we prefer to catch this by code-review - use_truncating_division - valid_regexps - - void_checks - -dart_code_linter: - rules: - # Explicit typing - - avoid-dynamic - - avoid-unnecessary-type-assertions - - avoid-unnecessary-type-casts - - avoid-unrelated-type-assertions - - avoid-collection-methods-with-unrelated-types - - # Predictable structure - - avoid-nested-conditional-expressions - - no-equal-then-else - - no-boolean-literal-compare - - no-empty-block - - avoid-redundant-async - - avoid-passing-async-when-sync-expected - # `late` for fields initialized in `setUp` is the idiomatic Dart test - # fixture pattern; enforce this rule on lib only. - - avoid-late-keyword: - exclude: - - test/** - - prefer-named-record-fields - - # Clean up - - avoid-unused-parameters - - prefer-moving-to-variable - # Test files must be named `*_test.dart` for the test runner, and commonly - # hold several small fixture/mock classes, so they can never match this - # rule's "file name == first class name" convention. Enforce it on lib only. - - prefer-match-file-name: - exclude: - - test/** - - always-remove-listener \ No newline at end of file + - void_checks \ No newline at end of file diff --git a/tool/dart_skills_lint/pubspec.yaml b/tool/dart_skills_lint/pubspec.yaml index 2214978a..905fff1a 100644 --- a/tool/dart_skills_lint/pubspec.yaml +++ b/tool/dart_skills_lint/pubspec.yaml @@ -34,7 +34,6 @@ dev_dependencies: json_serializable: ^6.7.0 build_runner: ^2.4.0 cognitive_complexity: ^0.2.0 - dart_code_linter: ^4.0.3 coverage: ^1.15.0 executables: From 48a2ea1fca95e29f7136bbc6fadf5a8e4375aa7e Mon Sep 17 00:00:00 2001 From: Reid Baker <1063596+reidbaker@users.noreply.github.com> Date: Tue, 4 Aug 2026 12:06:44 -0400 Subject: [PATCH 2/2] Update analysis_options.yaml --- tool/dart_skills_lint/analysis_options.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tool/dart_skills_lint/analysis_options.yaml b/tool/dart_skills_lint/analysis_options.yaml index f0e4ff4a..798b9c72 100644 --- a/tool/dart_skills_lint/analysis_options.yaml +++ b/tool/dart_skills_lint/analysis_options.yaml @@ -264,4 +264,5 @@ linter: # - use_to_and_as_if_applicable # has false positives, so we prefer to catch this by code-review - use_truncating_division - valid_regexps - - void_checks \ No newline at end of file + - void_checks +