Loading...
Loading...
Workflow for identifying and fixing static analysis errors. Use this after modifying code or if `dart analyze` fails.
npx skill4agent add dart-lang/skills dart-fix-static-analysis-errors$ dart analyze$ dart analyze bin$ dart analyze lib/main.dart--fatal-infos$ dart fix --apply$ dart fix --dry-run?nullString?!laterequiredList<Animal>List<Cat>as List<Cat>List<String>Map<String, dynamic>ListMapdynamicnullif (value != null)isif (value is String)breakthrowNeveranalysis_options.yamlstrict-casts: truedynamicstrict-inference: truedynamicstrict-raw-types: true// ignore_for_file: <diagnostic_name>// ignore: <diagnostic_name>$ dart analyze$ dart fix --apply?!laterequiredas$ dart analyzeaslate--no-sound-null-safetydart runflutter run// @dart=2.9$ dart analyze$ dart analyzeclass Coffee {
String? _temperature;
void checkTemp() {
if (_temperature != null) {
// ERROR: Property cannot be promoted because it is not a local variable.
print(_temperature.length);
}
}
}class Coffee {
String? _temperature;
void checkTemp() {
final temp = _temperature; // Copy to local variable
if (temp != null) {
// SUCCESS: 'temp' is promoted to non-nullable String.
print(temp.length);
}
}
}analysis_options.yamlinclude: package:lints/recommended.yaml
analyzer:
language:
strict-casts: true
strict-inference: true
strict-raw-types: true
errors:
invalid_assignment: error
missing_return: error
dead_code: info