dart_code_metrics 1.7.1 dart_code_metrics: ^1.7.1 copied to clipboard
Command line tool which helps to improve code quality. Reports cyclomatic complexity and method length in plain console, JSON, HTML and Codeclimate formats
The Dart command line tool which helps to improve code quality #
Reports:
- Cyclomatic complexity of methods
- Too long methods
- Number of Arguments
- Number of Methods
Output formats:
- Plain terminal
- JSON
- HTML
- Codeclimate
Simple usage: #
pub global activate dart_code_metrics
metrics lib
Full usage: #
Usage: metrics [options...] <directories>
-h, --help Print this usage information.
-r, --reporter=<console> The format of the output of the analysis
[console (default), json, html, codeclimate]
--cyclomatic-complexity=<20> Cyclomatic complexity threshold
(defaults to "20")
--lines-of-code=<50> Lines of code threshold
(defaults to "50")
--number-of-arguments=<4> Number of arguments threshold
(defaults to "4")
--root-folder=<./> Root folder
(defaults to current directory)
--ignore-files=<{/**.g.dart,/**.template.dart}> Filepaths in Glob syntax to be ignored
(defaults to "{/**.g.dart,/**.template.dart}")
--verbose
--set-exit-on-violation-level=<warning> Set exit code 2 if code violations same or higher level than selected are detected
[noted, warning, alarm]
Use as library #
See example/example.dart
Use as analyzer plugin #
A plugin for the Dart analyzer
library package providing rules support from dart_code_metrics.
Usage
-
Add dependency to
pubspec.yaml
dev_dependencies: dart_code_metrics: ^1.5.1
-
Add settings to
analysis_options.yaml
analyzer: plugins: - dart_code_metrics dart_code_metrics: metrics: cyclomatic-complexity: 20 number-of-arguments: 4 metrics-exclude: - test/** rules: - newline-before-return - no-boolean-literal-compare - no-empty-block - prefer-trailing-comma-for-collection