diff --git a/config/detekt/detekt.yml b/config/detekt/detekt.yml index 462058ca..50cb8986 100644 --- a/config/detekt/detekt.yml +++ b/config/detekt/detekt.yml @@ -158,11 +158,11 @@ complexity: TooManyFunctions: active: true excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**'] - thresholdInFiles: 11 - thresholdInClasses: 11 - thresholdInInterfaces: 11 - thresholdInObjects: 11 - thresholdInEnums: 11 + thresholdInFiles: 15 + thresholdInClasses: 15 + thresholdInInterfaces: 15 + thresholdInObjects: 15 + thresholdInEnums: 15 ignoreDeprecated: false ignorePrivate: false ignoreOverridden: false @@ -325,6 +325,7 @@ naming: functionPattern: '[a-z][a-zA-Z0-9]*' excludeClassPattern: '$^' ignoreOverridden: true + ignoreAnnotated: ['Composable'] FunctionParameterNaming: active: true parameterPattern: '[a-z][A-Za-z0-9]*' @@ -357,7 +358,7 @@ naming: packagePattern: '[a-z]+(\.[a-z][A-Za-z0-9]*)*' TopLevelPropertyNaming: active: true - constantPattern: '[A-Z][_A-Z0-9]*' + constantPattern: '[A-Z][_A-Za-z0-9]*' propertyPattern: '[A-Za-z][_A-Za-z0-9]*' privatePropertyPattern: '_?[A-Za-z][_A-Za-z0-9]*' VariableMaxLength: @@ -569,7 +570,7 @@ style: - '1' - '2' ignoreHashCodeFunction: true - ignorePropertyDeclaration: false + ignorePropertyDeclaration: true ignoreLocalVariableDeclaration: false ignoreConstantDeclaration: true ignoreCompanionObjectPropertyDeclaration: true @@ -673,6 +674,7 @@ style: UnusedPrivateMember: active: true allowedNames: '(_|ignored|expected|serialVersionUID)' + ignoreAnnotated: ['Preview'] UseAnyOrNoneInsteadOfFind: active: true UseArrayLiteralsInAnnotations: diff --git a/detekt-baselines/android.xml b/detekt-baselines/android.xml index 556452c7..c958eec0 100644 --- a/detekt-baselines/android.xml +++ b/detekt-baselines/android.xml @@ -2,11 +2,6 @@ - FunctionNaming:ClawNavigationBar.kt$@Composable fun ClawNavigationBar( navController: NavController, items: List<NavigationItem>, isVisible: Boolean, modifier: Modifier = Modifier, ) - FunctionNaming:DatabasePosts.kt$@OptIn(ExperimentalFoundationApi::class) @Composable fun DatabasePosts( items: Map<Month, List<SavedPost>>, listState: LazyListState, postActions: PostActions, modifier: Modifier = Modifier, ) - FunctionNaming:ListItem.kt$@Composable fun ListItem( item: SavedPost, isSaved: suspend (SavedPost) -> Boolean, postActions: PostActions, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersApp.kt$@OptIn(ExperimentalMaterial3Api::class, ExperimentalAnimationApi::class) @Composable fun LobstersApp( viewModel: ClawViewModel = viewModel(), urlLauncher: UrlLauncher, htmlConverter: HTMLConverter, setWebUri: (String?) -> Unit, ) - FunctionNaming:NetworkPosts.kt$@Composable fun NetworkPosts( items: LazyPagingItems<LobstersPost>, listState: LazyListState, isPostSaved: suspend (SavedPost) -> Boolean, reloadPosts: () -> Unit, postActions: PostActions, modifier: Modifier = Modifier, ) FunctionOnlyReturningConstant:Destinations.kt$Destinations.Hottest$fun getRoute() FunctionOnlyReturningConstant:Destinations.kt$Destinations.Newest$fun getRoute() FunctionOnlyReturningConstant:Destinations.kt$Destinations.Saved$fun getRoute() @@ -15,13 +10,11 @@ MagicNumber:ClawApplication.kt$ClawApplication$0.25 MagicNumber:ClawApplication.kt$ClawApplication$1024 MagicNumber:ClawApplication.kt$ClawApplication$25L - MagicNumber:ClawViewModel.kt$ClawViewModel$20 MagicNumber:MainActivity.kt$MainActivity$24 MagicNumber:OkHttpModule.kt$OkHttpModule.Companion$10 MagicNumber:OkHttpModule.kt$OkHttpModule.Companion$1024 MagicNumber:OkHttpModule.kt$OkHttpModule.Companion.<no name provided>$0x000090000 TooGenericExceptionCaught:LobstersPagingSource.kt$LobstersPagingSource$e: Exception - TopLevelPropertyNaming:ClawNavigationBar.kt$private const val AnimationDuration = 100 UnnecessaryAbstractClass:CoroutineDispatcherModule.kt$CoroutineDispatcherModule$CoroutineDispatcherModule UnnecessaryAbstractClass:OkHttpModule.kt$OkHttpModule$OkHttpModule diff --git a/detekt-baselines/benchmark.xml b/detekt-baselines/benchmark.xml new file mode 100644 index 00000000..05308663 --- /dev/null +++ b/detekt-baselines/benchmark.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/detekt-baselines/common.xml b/detekt-baselines/common.xml index 12452e02..55c2d9b0 100644 --- a/detekt-baselines/common.xml +++ b/detekt-baselines/common.xml @@ -3,72 +3,10 @@ EmptyFunctionBlock:LobstersCardTest.kt$LobstersCardTest.Companion.<no name provided>${} - FunctionNaming:ClawAppBar.kt$@Composable @OptIn(ExperimentalMaterial3Api::class) fun ClawAppBar( backgroundColor: Color, modifier: Modifier = Modifier, navigationIcon: @Composable () -> Unit = {}, title: @Composable () -> Unit = {}, ) - FunctionNaming:ClawAppBar.kt$@DevicePreviews @ThemePreviews @Composable fun ClawAppBarPreview() - FunctionNaming:CommentEntry.kt$@Composable fun CommentsHeader( postDetails: ExtendedPostDetails, postActions: PostActions, ) - FunctionNaming:CommentEntry.kt$@Composable fun PostLink( linkMetadata: LinkMetadata, modifier: Modifier = Modifier, ) - FunctionNaming:CommentEntry.kt$@OptIn(ExperimentalAnimationApi::class) @Composable fun CommentEntry( comment: Comment, ) - FunctionNaming:Comments.kt$@Composable private fun CommentsPageInternal( details: ExtendedPostDetails, postActions: PostActions, modifier: Modifier = Modifier, ) - FunctionNaming:Comments.kt$@Suppress("UNCHECKED_CAST") @Composable fun CommentsPage( postId: String, getDetails: suspend (String) -> ExtendedPostDetails, postActions: PostActions, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable @OptIn(ExperimentalFoundationApi::class) fun LobstersCard( post: SavedPost, isSaved: Boolean, postActions: PostActions, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable @OptIn(ExperimentalMaterial3Api::class) fun CommentsButton( commentCount: Int?, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable fun PostDetails(post: SavedPost, modifier: Modifier = Modifier) - FunctionNaming:LobstersCard.kt$@Composable fun PostTitle( title: String, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable fun SaveButton( isSaved: Boolean, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable fun Submitter( text: AnnotatedString, avatarUrl: String, contentDescription: String, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable fun TagRow( tags: List<String>, modifier: Modifier = Modifier, ) - FunctionNaming:LobstersCard.kt$@Composable fun TagText( tag: String, modifier: Modifier = Modifier, ) - FunctionNaming:Markdown.kt$@Composable fun ThemedRichText( text: String, modifier: Modifier = Modifier, ) - FunctionNaming:Markdown.kt$@ThemePreviews @Composable fun ThemedRichTextPreview() - FunctionNaming:MonthHeader.kt$@Composable fun MonthHeader(month: Month) - FunctionNaming:MonthHeader.kt$@DevicePreviews @ThemePreviews @Composable fun MonthHeaderPreview() - FunctionNaming:NetworkError.kt$@Composable fun NetworkError( label: String, error: Throwable, modifier: Modifier = Modifier, ) - FunctionNaming:NetworkError.kt$@ThemePreviews @Composable fun NetworkErrorPreview() - FunctionNaming:NetworkImage.kt$@Composable fun NetworkImage( url: String, placeholder: Painter, contentDescription: String, modifier: Modifier = Modifier, ) - FunctionNaming:ProgressBar.kt$@Composable fun ProgressBar(modifier: Modifier = Modifier) - FunctionNaming:Theme.kt$@Composable fun LobstersTheme( darkTheme: Boolean = isSystemInDarkTheme(), dynamicColor: Boolean = false, providedValues: Array<ProvidedValue<*>> = emptyArray(), content: @Composable () -> Unit, ) - FunctionNaming:UserProfile.kt$@Composable private fun UserProfileInternal( user: User, modifier: Modifier = Modifier, ) - FunctionNaming:UserProfile.kt$@Suppress("UNCHECKED_CAST") @Composable fun UserProfile( username: String, getProfile: suspend (username: String) -> User, modifier: Modifier = Modifier, ) - MagicNumber:Color.kt$0xFF201a19 - MagicNumber:Color.kt$0xFF261a00 - MagicNumber:Color.kt$0xFF2c1511 - MagicNumber:Color.kt$0xFF362f2e - MagicNumber:Color.kt$0xFF3e2e04 - MagicNumber:Color.kt$0xFF410000 - MagicNumber:Color.kt$0xFF410001 - MagicNumber:Color.kt$0xFF442925 - MagicNumber:Color.kt$0xFF534341 - MagicNumber:Color.kt$0xFF564418 - MagicNumber:Color.kt$0xFF5d3f3a - MagicNumber:Color.kt$0xFF680003 - MagicNumber:Color.kt$0xFF690000 - MagicNumber:Color.kt$0xFF6c0000 - MagicNumber:Color.kt$0xFF705c2e - MagicNumber:Color.kt$0xFF775752 - MagicNumber:Color.kt$0xFF867370 - MagicNumber:Color.kt$0xFF8a1a10 - MagicNumber:Color.kt$0xFF930006 - MagicNumber:Color.kt$0xFFa08c89 - MagicNumber:Color.kt$0xFFac3325 - MagicNumber:Color.kt$0xFFba1b1b - MagicNumber:Color.kt$0xFFd8c2be - MagicNumber:Color.kt$0xFFdec48c - MagicNumber:Color.kt$0xFFe7bdb6 - MagicNumber:Color.kt$0xFFede0de - MagicNumber:Color.kt$0xFFf5deda - MagicNumber:Color.kt$0xFFfbdfa5 - MagicNumber:Color.kt$0xFFfbeeec - MagicNumber:Color.kt$0xFFfcfcfc - MagicNumber:Color.kt$0xFFffb4a6 - MagicNumber:Color.kt$0xFFffb4a9 - MagicNumber:Color.kt$0xFFffdad3 - MagicNumber:Color.kt$0xFFffdad4 - MagicNumber:Color.kt$0xFFffffff MagicNumber:CommentEntry.kt$16 MagicNumber:LobstersCard.kt$50 MagicNumber:LobstersCard.kt$8 MagicNumber:Theme.kt$31 - MagicNumber:Type.kt$0.25 SpreadOperator:Theme.kt$(*providedValues) SwallowedException:UrlLauncher.kt$UrlLauncher$e: ActivityNotFoundException ThrowingExceptionsWithoutMessageOrCause:NetworkError.kt$Throwable() diff --git a/detekt-baselines/database.xml b/detekt-baselines/database.xml index e722405a..05308663 100644 --- a/detekt-baselines/database.xml +++ b/detekt-baselines/database.xml @@ -1,7 +1,5 @@ - - TopLevelPropertyNaming:Database.kt$internal const val LobstersDatabaseName = "SavedPosts.db" - +