fork-maintainers / iceraven-browser

Iceraven Browser
4.73k stars 221 forks source link

Detekt and ktlint failures #59

Open miDeb opened 4 years ago

miDeb commented 4 years ago

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

interfect commented 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.

interfect commented 4 years ago

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?