Skip to main content

unnecessary_unawaited

Stable
Fix available

Unnecessary use of 'unawaited'.

Details

#

A call to a function, method, or operator, or a reference to a field, getter, or top-level variable which is annotated with @awaitNotRequired does not need to be wrapped in a call to unawaited().

BAD:

dart
@awaitNotRequired
Future<LogMessage> log(String message) { ... }

void f() {
  unawaited(log('Message.'));
}

GOOD:

dart
@awaitNotRequired
Future<LogMessage> log(String message) { ... }

void f() {
  log('Message.');
}

Enable

#

To enable the unnecessary_unawaited rule, add unnecessary_unawaited under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_unawaited

If you're instead using the YAML map syntax to configure linter rules, add unnecessary_unawaited: true under linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_unawaited: true