dependency_validator 4.0.0 dependency_validator: ^4.0.0 copied to clipboard
Checks for missing, under-promoted, over-promoted, and unused dependencies.
Dependency Validator #
A tool to help you find missing, under-promoted, over-promoted, and unused dependencies.
Installation #
Add the following to your pubspec.yaml:
dev_dependencies:
dependency_validator: ^3.0.0
Usage #
dart run dependency_validator
This will report any missing, under-promoted, over-promoted, and unused dependencies. Any package that either provides an executable or a builder that will be auto-applied via the dart build system will be considered used even if it isn't imported.
- Missing: When a dependency is used in the package but not declared in the
pubspec.yaml
- Under-promoted: When a dependency is used within
lib/
but only declared as a dev_dependency. - Over-promoted: When a dependency is only used outside
lib/
but declared as a dependency. - Unused: When a dependency is not used in the package but declared in the
pubspec.yaml
.
Configuration #
There may be packages that are intentionally depended on but not used, or there
may be directories that need to be ignored. You can statically configure these
things in a dart_dependency_validator.yaml
file in the root of your package:
# dart_dependency_validator.yaml
# Set true if you allow pinned packages in your project.
allow_pins: true
# Exclude one or more paths from being scanned. Supports glob syntax.
exclude:
- "app/**"
# Ignore one or more packages.
ignore:
- analyzer
Note: Previously this configuration lived in the
pubspec.yaml
, but that option was deprecated becausepub publish
warns about unrecognized keys.