General
1,208 installs
Resolving Dart Static Analysis Errors
by dart-lang/skills
Uses get_runtime_errors and lsp to fetch an active stack trace, locate the failing line, apply a fix, and verify resolution via hot_reload.
Skill content
Resolving Dart Static Analysis Errors Contents - Core Concepts & Guidelines - Type System & Soundness - Null Safety - Error Handling - Workflows - Workflow: Static Analysis Resolution - Examples Core Concepts & Guidelines Type System & Soundness Enforce Dart's sound type system to prevent runtime invalid states. - Method Overrides: Maintain sound return types (covariant) and parameter types (contravariant). Never tighten a parameter type in a subclass unless explicitly marked with the covariant keyword. - Generics & Collections: Add explicit type annotations to generic classes (e.g., List<T>, Map<K, V>). Never assign a List<dynamic> to a typed list (e.g., List<Cat>). - Downcasting: Avoid implicit downcasts from dynamic. Use explicit casts (e.g., as List<Cat>) when necessary, but ensure the underlying runtime type matches to prevent TypeError exceptions. - Strict Casts: Enable strict-casts: true in analysis_options.yaml under analyzer: language: to force explicit casting and catch implicit downcast errors at compile time.