Open miDeb opened 4 years ago
Yeah, we should make a pass over this. We also might want some CI to check for these on PRs. We can't use Mozilla's TaskCluster, but we can probably set up Travis or something.
Here's what ./gradlew detekt
complains about today:
> Task :detekt
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
559 kotlin files were analyzed.
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt - 3h 15min debt
AbsentOrWrongFileLicense - [TopSheetBehavior.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:1:1
LargeClass - 465/200 - [TopSheetBehavior] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:40:7
ComplexMethod - 15/15 - [onLayoutChild] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:191:18
ComplexMethod - 17/15 - [onInterceptTouchEvent] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:241:18
NestedBlockDepth - 4/4 - [updateDrawableForTargetState] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:512:17
TooManyFunctions - 18/11 - [TopSheetBehavior] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:40:7
ComplexCondition - 4/4 - [state] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:469:21
CollapsibleIfStatements - [onTouchEvent] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:321:13
ReturnCount - [onInterceptTouchEvent] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:241:5
ReturnCount - [tryCaptureView] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:575:9
NewLineAtEndOfFile - [TopSheetBehavior.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:810:1
WildcardImport - [TopSheetBehavior.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:9:1
UnnecessaryAbstractClass - [TopSheetCallback] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:47:5
MagicNumber - [TopSheetBehavior] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:151:70
MagicNumber - [TopSheetBehavior] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:151:74
MagicNumber - [yVelocity] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/components/topsheet/TopSheetBehavior.kt:570:55
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt - 25min debt
LargeClass - 242/200 - [AddonsManagementFragment] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt:46:7
WildcardImport - [AddonsManagementFragment.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt:9:1
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt - 30min debt
NestedBlockDepth - 4/4 - [updateTabsTrayLayout] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt:363:9
MagicNumber - [columnWidthDp] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt:326:29
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayDialogFragment.kt - 20min debt
LongMethod - 75/75 - [onViewCreated] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayDialogFragment.kt:167:18
/z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt - 30min debt
EmptyDefaultConstructor - [AbstractFirebasePushService] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:12:43
EmptyFunctionBlock - [start] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:14:42
EmptyFunctionBlock - [onNewToken] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:17:47
EmptyFunctionBlock - [onMessageReceived] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:20:67
EmptyFunctionBlock - [stop] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:23:31 IDLE
EmptyFunctionBlock - [deleteToken] at /z/home/anovak/workspace/fenix/app/src/main/java/mozilla/components/lib/push/firebase/AbstractFirebasePushService.kt:26:32
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt - 10min debt
MayBeConst - [waitUntilPaintToDraw] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt:34:5
MayBeConst - [externalDownloadManager] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt:39:5
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt - 10min debt
WildcardImport - [CustomizationFragment.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt:13:1
MaxLineLength - [reverseOrderPref] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt:156:9
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayViewHolder.kt - 5min debt
WildcardImport - [TabTrayViewHolder.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayViewHolder.kt:33:1
/z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt - 5min debt
WildcardImport - [SessionControlAdapter.kt] at /z/home/anovak/workspace/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt:26:1
@abhijitvalluri a bunch of these seem related to your tab tray/customization stuff. Some of them are just robots daring to have opinions on your code; if a class really deserves to be big there's annotations you have to add to shut the linter up. But some probably should be fixed, like adding license comments to match the rest of the codebase. Do you want to work on those?
We should take a look at detekt/ktlint failures and fix/suppress them. I think they are useful, but if they already report issues on a clean checkout they'll be ignored. cc @abhijitvalluri