avoid-commented-out-code

Path
lint/suspicious/avoid-commented-out-code
Default
Off, opt in
Origin
Falcon
Rule
33 of 512

Flags ordinary comments that contain recognizable Dart statements.

Delete obsolete code rather than keeping it in comments. This deliberately conservative heuristic recognizes declarations, calls, assignments, and return/throw statements with code punctuation. Documentation comments, fenced examples, prose, and TODO/FIXME notes are not reported.

Invalid

example.dartdart
void example() {
   // print('old');
   // final count = 3;
   // value = false;
   // return null;
  /* throw StateError('obsolete'); */
   // service.refresh();
   // final int count = 1;
   // return 42;
}
 // void obsolete(String value) {
// }
 // class Obsolete {
// }
 /*
 * print('old block');
 */
Remove commented-out code; version control preserves obsolete implementations.
1void example() {
2 // print('old');
Remove commented-out code; version control preserves obsolete implementations.
2 // print('old');
3 // final count = 3;
Remove commented-out code; version control preserves obsolete implementations.
3 // final count = 3;
4 // value = false;
Remove commented-out code; version control preserves obsolete implementations.
4 // value = false;
5 // return null;
Remove commented-out code; version control preserves obsolete implementations.
5 // return null;
6 /* throw StateError('obsolete'); */
Remove commented-out code; version control preserves obsolete implementations.
6 /* throw StateError('obsolete'); */
7 // service.refresh();
Remove commented-out code; version control preserves obsolete implementations.
7 // service.refresh();
8 // final int count = 1;
Remove commented-out code; version control preserves obsolete implementations.
8 // final int count = 1;
9 // return 42;
Remove commented-out code; version control preserves obsolete implementations.
10}
11 // void obsolete(String value) {
Remove commented-out code; version control preserves obsolete implementations.
12// }
13 // class Obsolete {
Remove commented-out code; version control preserves obsolete implementations.
14// }
15 /*

Valid

example.dartdart
/// Example implementation:
/// print('documented');
/** final count = 3; */
void example() {
  // Explain why this call is required.
  // Use service.refresh(); after reconnecting.
  // TODO: print('enable when ready');
  // FIXME: value = false;
  // The value = false; means it is disabled.
  // Max retries = 3;
  // The value = false;
  // ```dart
  // print('example');
  // ```
  // Values include `true` and `false`.
  print('live');
}

Configure avoid-commented-out-code

Set its severity in falcon.json. See the configuration guide.

falcon.jsonjson
{
  "linter": {
    "rules": {
      "suspicious": {
        "avoid-commented-out-code": "error"
      }
    }
  }
}

Or silence one occurrence with a suppression comment; the reason is required.

example.dartdart
// falcon-ignore lint/suspicious/avoid-commented-out-code: <reason>