1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
<?xml version="1.0" ?>
<SmellBaseline>
<ManuallySuppressedIssues/>
<CurrentIssues>
<ID>ComplexCondition:FeedParser.kt$FeedParser$inEntry && rel == "enclosure" && type?.startsWith("image/") == true && href != null</ID>
<ID>CyclomaticComplexMethod:ArticleListScreen.kt$@OptIn(ExperimentalMaterial3Api::class, ExperimentalFoundationApi::class, ExperimentalCoroutinesApi::class) @Composable fun ArticleListScreen( feedId: String, onOpenArticle: (String) -> Unit, onBack: () -> Unit, onOpenFeedList: () -> Unit )</ID>
<ID>CyclomaticComplexMethod:FeedFetchWorker.kt$FeedFetchWorker$private suspend fun fetchOne(feed: FeedEntity, db: AppDatabase): Int</ID>
<ID>CyclomaticComplexMethod:FeedParser.kt$FeedParser$private fun parseAtom(parser: XmlPullParser): ParsedFeed</ID>
<ID>CyclomaticComplexMethod:FeedParser.kt$FeedParser$private fun parseRss(parser: XmlPullParser): ParsedFeed</ID>
<ID>CyclomaticComplexMethod:LinkReaderScreen.kt$@SuppressLint("SetJavaScriptEnabled") @OptIn(ExperimentalMaterial3Api::class) @Composable fun LinkReaderScreen(url: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit)</ID>
<ID>CyclomaticComplexMethod:ReaderScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable private fun ReaderContent( articleId: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit, hasPrevious: Boolean, hasNext: Boolean, onPrevious: () -> Unit, onNext: () -> Unit, onNextKeepUnread: () -> Unit, fontSizePx: Int )</ID>
<ID>LongMethod:AddFeedScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable fun AddFeedScreen(onDone: () -> Unit)</ID>
<ID>LongMethod:ArticleListScreen.kt$@OptIn(ExperimentalMaterial3Api::class, ExperimentalFoundationApi::class, ExperimentalCoroutinesApi::class) @Composable fun ArticleListScreen( feedId: String, onOpenArticle: (String) -> Unit, onBack: () -> Unit, onOpenFeedList: () -> Unit )</ID>
<ID>LongMethod:FeedFetchWorker.kt$FeedFetchWorker$private suspend fun fetchOne(feed: FeedEntity, db: AppDatabase): Int</ID>
<ID>LongMethod:FeedListScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable fun FeedListScreen( onOpenFeed: (String) -> Unit, onOpenUnread: () -> Unit, onOpenOlder: () -> Unit, onOpenSaved: () -> Unit, onAddFeed: () -> Unit, onSettings: () -> Unit )</ID>
<ID>LongMethod:FeedParser.kt$FeedParser$private fun parseAtom(parser: XmlPullParser): ParsedFeed</ID>
<ID>LongMethod:FeedParser.kt$FeedParser$private fun parseRss(parser: XmlPullParser): ParsedFeed</ID>
<ID>LongMethod:LinkReaderScreen.kt$@SuppressLint("SetJavaScriptEnabled") @OptIn(ExperimentalMaterial3Api::class) @Composable fun LinkReaderScreen(url: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit)</ID>
<ID>LongMethod:MainActivity.kt$@Composable fun FeedReaderApp()</ID>
<ID>LongMethod:ReaderExtractor.kt$ReaderExtractor.<no name provided>$override fun onPageFinished(view: WebView, finishedUrl: String)</ID>
<ID>LongMethod:ReaderScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable private fun ReaderContent( articleId: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit, hasPrevious: Boolean, hasNext: Boolean, onPrevious: () -> Unit, onNext: () -> Unit, onNextKeepUnread: () -> Unit, fontSizePx: Int )</ID>
<ID>LongMethod:SettingsScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable fun SettingsScreen(onBack: () -> Unit)</ID>
<ID>LongParameterList:ArticleListScreen.kt$( article: ArticleListItem, highlighted: Boolean, showFeedName: Boolean, showReadState: Boolean, onClick: () -> Unit, onMarkReadFrom: () -> Unit )</ID>
<ID>LongParameterList:Daos.kt$FeedDao$( id: String, title: String, siteUrl: String?, lastFetchedAt: Long, etag: String?, lastModified: String?, lastError: String? )</ID>
<ID>LongParameterList:FeedListScreen.kt$( onOpenFeed: (String) -> Unit, onOpenUnread: () -> Unit, onOpenOlder: () -> Unit, onOpenSaved: () -> Unit, onAddFeed: () -> Unit, onSettings: () -> Unit )</ID>
<ID>LongParameterList:ReaderScreen.kt$( articleId: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit, hasPrevious: Boolean, hasNext: Boolean, onPrevious: () -> Unit, onNext: () -> Unit, onNextKeepUnread: () -> Unit, fontSizePx: Int )</ID>
<ID>LongParameterList:ReaderScreen.kt$( feedId: String, articleId: String, onBack: () -> Unit, onOpenLink: (String) -> Unit, onOpenBrowser: (String) -> Unit, onNavigateToArticle: (String) -> Unit )</ID>
<ID>LongParameterList:ReaderWebView.kt$( context: Context, onOpenLink: (String) -> Unit, onLongPressLink: (String) -> Unit = {}, onYouTubeVideo: (String) -> Unit = {}, onScrollChanged: (Int) -> Unit = {}, onPageFinished: (WebView) -> Unit = {} )</ID>
<ID>LongParameterList:ReaderWebView.kt$( url: String, onDismiss: () -> Unit, onOpenInBrowser: () -> Unit, onShare: () -> Unit, onSaveToStash: () -> Unit, onSaveForLater: () -> Unit )</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$10</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$11</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$3</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$4</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$5</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$6</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$7</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$8</ID>
<ID>MagicNumber:AppDatabase.kt$AppDatabase.Companion.<no name provided>$9</ID>
<ID>MagicNumber:Daos.kt$500</ID>
<ID>MagicNumber:FeedFetchWorker.kt$FeedFetchWorker$304</ID>
<ID>MagicNumber:ReaderWebView.kt$16f</ID>
<ID>MagicNumber:ReaderWebView.kt$9f</ID>
<ID>MagicNumber:StashClient.kt$StashClient$200</ID>
<ID>MagicNumber:StashClient.kt$StashClient$201</ID>
<ID>MagicNumber:StashClient.kt$StashClient$35</ID>
<ID>MagicNumber:StashClient.kt$StashClient$401</ID>
<ID>MagicNumber:StashClient.kt$StashClient$403</ID>
<ID>MagicNumber:StashClient.kt$StashClient$409</ID>
<ID>MatchingDeclarationName:ReaderWebView.kt$ReaderScrollPositions</ID>
<ID>MaxLineLength:Daos.kt$ArticleDao$"WHERE (articles.isRead = 0 OR articles.readAt >= :sinceFetch) AND (articles.publishedAt IS NULL OR articles.publishedAt >= :cutoff) "</ID>
<ID>MaxLineLength:Daos.kt$ArticleDao$"WHERE (articles.isRead = 0 OR articles.readAt >= :sinceFetch) AND articles.publishedAt IS NOT NULL AND articles.publishedAt < :cutoff "</ID>
<ID>MaxLineLength:Entities.kt$ArticleEntity$@ColumnInfo(index = true) override val feedId: String?</ID>
<ID>MaxLineLength:Entities.kt$ArticleEntity$val imageUrl: String? = null</ID>
<ID>MaxLineLength:Entities.kt$ArticleEntity$val readAt: Long? = null</ID>
<ID>MaxLineLength:LinkReaderScreen.kt$loadDataWithBaseURL(url, wrapReaderHtml(currentExtractedContent, extractedTitle), "text/html", "UTF-8", null)</ID>
<ID>MaxLineLength:LinkReaderScreen.kt$webView.loadDataWithBaseURL(url, wrapReaderHtml(currentExtractedContent, extractedTitle), "text/html", "UTF-8", null)</ID>
<ID>MaxLineLength:ReaderWebView.kt$"<figure><a href=\"https://www.youtube.com/watch?v=$id\"><img src=\"https://i.ytimg.com/vi/$id/hq720.jpg\" alt=\"YouTube video\"></a><figcaption>▶ Watch on YouTube</figcaption></figure>"</ID>
<ID>MaxLineLength:SettingsScreen.kt$DropdownMenuItem(text = { Text("Highlight") }, onClick = { newRuleAction = FilterAction.HIGHLIGHT; actionMenuExpanded = false })</ID>
<ID>MaxLineLength:SettingsScreen.kt$DropdownMenuItem(text = { Text("Mute") }, onClick = { newRuleAction = FilterAction.MUTE; actionMenuExpanded = false })</ID>
<ID>NestedBlockDepth:AppDatabase.kt$AppDatabase.Companion.<no name provided>$override fun migrate(db: SupportSQLiteDatabase)</ID>
<ID>NestedBlockDepth:FeedFetchWorker.kt$FeedFetchWorker$private suspend fun fetchOne(feed: FeedEntity, db: AppDatabase): Int</ID>
<ID>NestedBlockDepth:FeedParser.kt$FeedParser$private fun parseAtom(parser: XmlPullParser): ParsedFeed</ID>
<ID>NestedBlockDepth:FeedParser.kt$FeedParser$private fun parseRss(parser: XmlPullParser): ParsedFeed</ID>
<ID>NestedBlockDepth:Opml.kt$Opml$fun parse(input: InputStream): List<OpmlFeed></ID>
<ID>ReturnCount:ReaderWebView.kt$<no name provided>$override fun shouldOverrideUrlLoading(view: WebView, request: WebResourceRequest): Boolean</ID>
<ID>TooGenericExceptionCaught:AddFeedScreen.kt$e: Exception</ID>
<ID>TooGenericExceptionCaught:AppDatabase.kt$AppDatabase.Companion$e: Exception</ID>
<ID>TooGenericExceptionCaught:AppDatabase.kt$AppDatabase.Companion.<no name provided>$e: Exception</ID>
<ID>TooGenericExceptionCaught:FeedFetchWorker.kt$FeedFetchWorker$e: Exception</ID>
<ID>TooGenericExceptionCaught:MainActivity.kt$MainActivity$e: Exception</ID>
<ID>TooGenericExceptionCaught:MorningFetchReceiver.kt$MorningFetchReceiver$e: Exception</ID>
<ID>TooGenericExceptionCaught:MorningFetchReceiver.kt$MorningFetchReceiver.Companion$e: Exception</ID>
<ID>TooManyFunctions:Daos.kt$ArticleDao</ID>
</CurrentIssues>
</SmellBaseline>
|