prefer-relative-imports
Same as prefer_relative_imports in Dart lints
- Group
- Correctness
- Path
lint/correctness/prefer-relative-imports- Default
- Off, opt in
- Origin
- Dart lints
- Rule
- 398 of 512
Prefer relative imports for libraries of the same package under lib/.
The rule runs only
for files inside the enclosing package's lib/ directory (the nearest
pubspec.yaml names the package; files outside any package, or in a package
without a name, are skipped). An import whose URI is a package: URI
naming the file's own package, such as import 'package:my_pkg/src/a.dart';
inside my_pkg/lib/, is reported and should be written relative
(import 'src/a.dart';). Imports of other packages, dart: libraries,
exports, and conditional alternatives are not checked. Incompatible with
always-use-package-imports.
Invalid
import 'package:app/src/a.dart';
import 'package:app/b.dart' as b;
import 'package:app/src/c.dart' show C;
import 'package:app/src/d.dart' deferred as d;
import "package:app/e.dart" hide E;
import 'package:app/src/f.dart'
if (dart.library.io) 'src/f_io.dart';
void main() {}import 'package:app/src/a.dart';import 'package:app/src/a.dart';import 'package:app/b.dart' as b;import 'package:app/b.dart' as b;import 'package:app/src/c.dart' show C;import 'package:app/src/c.dart' show C;import 'package:app/src/d.dart' deferred as d;import 'package:app/src/d.dart' deferred as d;import "package:app/e.dart" hide E;import "package:app/e.dart" hide E;import 'package:app/src/f.dart'Valid
import 'dart:async';
import 'src/a.dart';
import '../b.dart' as b;
import 'package:other/other.dart';
import 'package:collection/collection.dart' show IterableExtension;
void main() {}Configure prefer-relative-imports
Set its severity in falcon.json. See the configuration guide.
{
"linter": {
"rules": {
"correctness": {
"prefer-relative-imports": "error"
}
}
}
}Or silence one occurrence with a suppression comment; the reason is required.
// falcon-ignore lint/correctness/prefer-relative-imports: <reason>More correctness rules
- prefer-sealed-bloc-eventsrecommendedbloc
Flags Bloc event classes without a sealed or final modifier.
- prefer-sealed-bloc-staterecommendedbloc
Flags Bloc state classes without a sealed or final modifier.
- prefer-void-to-null
prefer_void_to_nullrecommendedFlags uses of the
Nulltype wherevoidis meant. - proper-controller-dispose
proper_controller_disposerecommendedflutterRequires Flutter controllers owned by a
Statefield to be disposed. - proper-expanded-and-flexible
proper_expanded_and_flexiblerecommendedflutterRequire
ExpandedandFlexibleto sit directly inside a flex widget. - proper-from-environment
proper_from_environmentrecommendedRequire
fromEnvironmentto be evaluated in a const context. - proper-super-init-state
proper_super_init_staterecommendedflutterRequire
super.initState()to be the first statement of a resolved FlutterStatesubclass'sinitStateoverride. - require-super-disposerecommendedflutter
Require
super.dispose()in Flutter State dispose overrides.