feat(repo): add dart_code_metrics

Signed-off-by: xsahil03x <[email protected]>
This commit is contained in:
Sahil Kumar
2021-10-01 16:44:19 +05:30
committed by xsahil03x
parent 62714e375d
commit 6e48f9754d
7 changed files with 67 additions and 8 deletions
+42 -1
View File
@@ -1,4 +1,6 @@
analyzer:
plugins:
- dart_code_metrics
exclude:
- packages/*/lib/**/*.g.dart
- packages/*/lib/src/emoji
@@ -143,4 +145,43 @@ linter:
- cast_nullable_to_non_nullable
- unnecessary_null_checks
- tighten_type_of_initializing_formals
- null_check_on_nullable_type_parameter
- null_check_on_nullable_type_parameter
# https://dartcodemetrics.dev/docs/getting-started/introduction
dart_code_metrics:
metrics-exclude:
- packages/*/test/**
metrics:
- weight-of-class: 0.33
- source-lines-of-code: 90
- cyclomatic-complexity: 20
- maximum-nesting-level: 5
rules:
# Dart Specific
- avoid-ignoring-return-values
# - avoid-non-null-assertion
- avoid-unused-parameters
- binary-expression-operand-order
- double-literal-format
# - member-ordering-extended
- member-ordering:
alphabetize: false
order:
- constructors
- public-fields
- private-fields
- no-boolean-literal-compare
- no-equal-arguments
- no-equal-then-else
- no-magic-number:
allowed: [ 3.14 ]
- prefer-match-file-name
# - prefer-trailing-comma:
# break-on: 2
# Flutter specific
- always-remove-listener
# - avoid-returning-widgets
- avoid-unnecessary-setstate
- avoid-wrapping-in-padding
+18 -3
View File
@@ -11,6 +11,10 @@ scripts:
run: melos run analyze && melos run format
description: Run all static analysis checks
analyze:all:
run: melos run analyze && melos run metrics
description: Run all
analyze:
run: |
melos exec -c 5 --ignore="*example*" -- \
@@ -24,6 +28,14 @@ scripts:
description: |
Run `flutter format --set-exit-if-changed .` in all packages.
metrics:
run: |
melos exec -c 1 --ignore="*example*" -- \
flutter pub run dart_code_metrics:metrics analyze lib
description: |
Run `dart_code_metrics` in all packages.
- Note: you can also rely on your IDEs Dart Analysis / Issues window.
lint:pub:
run: |
melos exec -c 5 --no-private --ignore="*example*" -- \
@@ -71,10 +83,13 @@ scripts:
docs:
run: |
npm install -g https://github.com/GetStream/stream-chat-docusaurus-cli &&
npx stream-chat-docusaurus -i -s
npm install -g https://github.com/GetStream/stream-chat-docusaurus-cli &&
npx stream-chat-docusaurus -i -s
description: Runs the docusaurus documentation locally.
dev_dependencies:
dart_code_metrics: ^4.2.0-dev.1
environment:
sdk: '>=2.12.0 <3.0.0'
flutter: '>=1.22.4 <2.0.0'
flutter: '>=1.17.0 <2.0.0'
+1
View File
@@ -27,6 +27,7 @@ dependencies:
dev_dependencies:
build_runner: ^2.0.1
dart_code_metrics: ^4.2.0-dev.1
freezed: ^0.14.1+3
json_serializable: ^4.1.0
mocktail: ^0.1.1
+1 -2
View File
@@ -55,10 +55,9 @@ flutter:
uses-material-design: true
dev_dependencies:
dart_code_metrics: ^4.2.0-dev.1
flutter_test:
sdk: flutter
golden_toolkit: ^0.9.0
mocktail: ^0.1.2
path: ^1.8.0
pedantic: ^1.11.0
@@ -19,6 +19,7 @@ dependencies:
stream_chat: ^3.0.0
dev_dependencies:
dart_code_metrics: ^4.2.0-dev.1
fake_async: ^1.2.0
flutter_test:
sdk: flutter
@@ -17,5 +17,6 @@ dependencies:
stream_chat_flutter: ^3.0.0
dev_dependencies:
dart_code_metrics: ^4.2.0-dev.1
flutter_test:
sdk: flutter
@@ -7,6 +7,7 @@ issue_tracker: https://github.com/GetStream/stream-chat-flutter/issues
environment:
sdk: ">=2.12.0 <3.0.0"
flutter: ">=1.17.0"
dependencies:
flutter:
@@ -22,8 +23,8 @@ dependencies:
dev_dependencies:
build_runner: ^2.0.1
dart_code_metrics: ^4.2.0-dev.1
flutter_test:
sdk: flutter
mocktail: ^0.1.1
moor_generator: ^4.2.1
pedantic: ^1.11.0
moor_generator: ^4.2.1