diff --git a/app/src/main/java/be/scri/App.kt b/app/src/main/java/be/scri/App.kt index 51d1f3bda..0fb27bda7 100644 --- a/app/src/main/java/be/scri/App.kt +++ b/app/src/main/java/be/scri/App.kt @@ -15,15 +15,12 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.pager.HorizontalPager import androidx.compose.foundation.pager.PagerState -import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Scaffold -import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import androidx.lifecycle.viewmodel.compose.viewModel @@ -44,6 +41,7 @@ import be.scri.ui.screens.SelectTranslationSourceLanguageScreen import be.scri.ui.screens.ThirdPartyScreen import be.scri.ui.screens.WikimediaScreen import be.scri.ui.screens.about.AboutScreen +import be.scri.ui.screens.conjugate.ConjugateScreen import be.scri.ui.screens.download.CheckUpdateActions import be.scri.ui.screens.download.DataDownloadViewModel import be.scri.ui.screens.download.DownloadActions @@ -167,13 +165,12 @@ fun ScribeApp( } is BottomBarScreen.Conjugate -> { Box( - modifier = - Modifier.fillMaxSize(), - contentAlignment = Alignment.Center, + modifier = Modifier.fillMaxSize(), ) { - Text( - text = "Conjugate App", - style = MaterialTheme.typography.headlineMedium, + ConjugateScreen( + isDarkTheme = isDarkTheme, + downloadStates = downloadStates, + onDownloadAction = onDownloadAction, ) } HandleBackPress(pagerState, coroutineScope) diff --git a/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateScreen.kt b/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateScreen.kt new file mode 100644 index 000000000..472b55ff6 --- /dev/null +++ b/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateScreen.kt @@ -0,0 +1,131 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +package be.scri.ui.screens.conjugate + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.lifecycle.viewmodel.compose.viewModel +import be.scri.R +import be.scri.ui.common.appcomponents.PageTitle +import be.scri.ui.common.components.DownloadDataOptionComp +import be.scri.ui.screens.download.DownloadState + +/** + * Main Conjugate Screen displaying empty state and download action. + */ +@Composable +fun ConjugateScreen( + isDarkTheme: Boolean, + downloadStates: Map, + onDownloadAction: (String, Boolean) -> Unit, + modifier: Modifier = Modifier, + viewModel: ConjugateViewModel = viewModel(), +) { + val isDataAvailable by viewModel.isDataAvailable.collectAsState() + val conjugateDownloadState = downloadStates["conjugate_data"] ?: DownloadState.Ready + + Scaffold( + topBar = { + // Using PageTitle as a stand-in for the shared TabBar from issue #560 + // if an explicit TabBar component is not present in the current branch. + PageTitle( + pageTitle = "Conjugate", // Can be replaced by i18n string + modifier = Modifier.fillMaxWidth(), + ) + }, + modifier = modifier.fillMaxSize(), + ) { paddingValues -> + Box( + modifier = + Modifier + .fillMaxSize() + .padding(paddingValues), + contentAlignment = Alignment.Center, + ) { + if (!isDataAvailable) { + ConjugateEmptyState( + isDarkTheme = isDarkTheme, + downloadState = conjugateDownloadState, + onDownloadClick = { + onDownloadAction("conjugate_data", false) + }, + ) + } else { + // Next page content (out of scope for #563) + Text("Conjugation UI will be here") + } + } + } +} + +/** + * The "No Data" Empty state representation for Conjugation. + */ +@Composable +fun ConjugateEmptyState( + isDarkTheme: Boolean, + downloadState: DownloadState, + onDownloadClick: () -> Unit, + modifier: Modifier = Modifier, +) { + Column( + modifier = modifier.padding(16.dp), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center, + ) { + // SVG Placeholder logo + Icon( + painter = painterResource(id = R.drawable.scribe_logo), + contentDescription = null, + modifier = Modifier.size(120.dp), + tint = MaterialTheme.colorScheme.onSurfaceVariant, + ) + + Spacer(modifier = Modifier.height(24.dp)) + + Text( + text = stringResource(id = R.string.i18n_app_download_menu_option_conjugate_description), + style = MaterialTheme.typography.bodyLarge, + textAlign = TextAlign.Center, + color = MaterialTheme.colorScheme.onSurface, + ) + + Spacer(modifier = Modifier.height(32.dp)) + + DownloadDataOptionComp( + onClick = onDownloadClick, + isDarkTheme = isDarkTheme, + downloadState = downloadState, + modifier = Modifier.padding(horizontal = 16.dp), + ) + + Spacer(modifier = Modifier.height(16.dp)) + + Text( + text = stringResource(id = R.string.i18n_app_download_menu_option_conjugate_download_data_start), + style = MaterialTheme.typography.bodyMedium, + textAlign = TextAlign.Center, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } +} diff --git a/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateViewModel.kt b/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateViewModel.kt new file mode 100644 index 000000000..1fec3a32e --- /dev/null +++ b/app/src/main/java/be/scri/ui/screens/conjugate/ConjugateViewModel.kt @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +package be.scri.ui.screens.conjugate + +import androidx.lifecycle.ViewModel +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.asStateFlow + +class ConjugateViewModel : ViewModel() { + private val _isDataAvailable = MutableStateFlow(false) + val isDataAvailable: StateFlow = _isDataAvailable.asStateFlow() + + // Assuming we would check actual data availability via a repository or ConjugateDataManager. + fun checkDataAvailability(hasData: Boolean) { + _isDataAvailable.value = hasData + } +} diff --git a/build2.log b/build2.log new file mode 100644 index 000000000..eaf8b2dd2 Binary files /dev/null and b/build2.log differ diff --git a/build2_utf8.log b/build2_utf8.log new file mode 100644 index 000000000..afa276f63 --- /dev/null +++ b/build2_utf8.log @@ -0,0 +1,216 @@ +> Task :app:moveFromi18n NO-SOURCE +> Task :app:preBuild UP-TO-DATE +> Task :app:preConjugateDebugBuild UP-TO-DATE +> Task :app:mergeConjugateDebugNativeDebugMetadata NO-SOURCE +> Task :app:checkKotlinGradlePluginConfigurationErrors SKIPPED +> Task :app:dataBindingMergeDependencyArtifactsConjugateDebug UP-TO-DATE +> Task :app:generateConjugateDebugResValues UP-TO-DATE +> Task :app:generateConjugateDebugResources UP-TO-DATE +> Task :app:mergeConjugateDebugResources UP-TO-DATE +> Task :app:dataBindingGenBaseClassesConjugateDebug UP-TO-DATE +> Task :app:generateConjugateDebugBuildConfig UP-TO-DATE +> Task :app:checkConjugateDebugAarMetadata UP-TO-DATE +> Task :app:processConjugateDebugNavigationResources UP-TO-DATE +> Task :app:compileConjugateDebugNavigationResources UP-TO-DATE +> Task :app:mapConjugateDebugSourceSetPaths UP-TO-DATE +> Task :app:createConjugateDebugCompatibleScreenManifests UP-TO-DATE +> Task :app:extractDeepLinksConjugateDebug UP-TO-DATE +> Task :app:processConjugateDebugMainManifest UP-TO-DATE +> Task :app:processConjugateDebugManifest UP-TO-DATE +> Task :app:processConjugateDebugManifestForPackage UP-TO-DATE +> Task :app:javaPreCompileConjugateDebug UP-TO-DATE +> Task :app:mergeConjugateDebugShaders UP-TO-DATE +> Task :app:compileConjugateDebugShaders NO-SOURCE +> Task :app:generateConjugateDebugAssets UP-TO-DATE +> Task :app:mergeConjugateDebugAssets UP-TO-DATE +> Task :app:compressConjugateDebugAssets UP-TO-DATE +> Task :app:generateConjugateDebugJacocoPropertiesFile UP-TO-DATE +> Task :app:checkConjugateDebugDuplicateClasses UP-TO-DATE +> Task :app:desugarConjugateDebugFileDependencies UP-TO-DATE +> Task :app:mergeExtDexConjugateDebug UP-TO-DATE +> Task :app:mergeLibDexConjugateDebug UP-TO-DATE +> Task :app:mergeConjugateDebugJniLibFolders UP-TO-DATE +> Task :app:mergeConjugateDebugNativeLibs UP-TO-DATE +> Task :app:stripConjugateDebugDebugSymbols UP-TO-DATE +> Task :app:validateSigningConjugateDebug UP-TO-DATE +> Task :app:writeConjugateDebugAppMetadata UP-TO-DATE +> Task :app:writeConjugateDebugSigningConfigVersions UP-TO-DATE +> Task :app:preKeyboardsDebugBuild UP-TO-DATE +> Task :app:mergeKeyboardsDebugNativeDebugMetadata NO-SOURCE +> Task :app:dataBindingMergeDependencyArtifactsKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugResValues UP-TO-DATE +> Task :app:generateKeyboardsDebugResources UP-TO-DATE +> Task :app:mergeKeyboardsDebugResources UP-TO-DATE +> Task :app:dataBindingGenBaseClassesKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugBuildConfig UP-TO-DATE +> Task :app:checkKeyboardsDebugAarMetadata UP-TO-DATE +> Task :app:processKeyboardsDebugNavigationResources UP-TO-DATE +> Task :app:compileKeyboardsDebugNavigationResources UP-TO-DATE +> Task :app:mapKeyboardsDebugSourceSetPaths UP-TO-DATE +> Task :app:createKeyboardsDebugCompatibleScreenManifests UP-TO-DATE +> Task :app:extractDeepLinksKeyboardsDebug UP-TO-DATE +> Task :app:processKeyboardsDebugMainManifest UP-TO-DATE +> Task :app:processKeyboardsDebugManifest UP-TO-DATE +> Task :app:processKeyboardsDebugManifestForPackage UP-TO-DATE +> Task :app:javaPreCompileKeyboardsDebug UP-TO-DATE +> Task :app:mergeKeyboardsDebugShaders UP-TO-DATE +> Task :app:compileKeyboardsDebugShaders NO-SOURCE +> Task :app:generateKeyboardsDebugAssets UP-TO-DATE +> Task :app:mergeKeyboardsDebugAssets UP-TO-DATE +> Task :app:compressKeyboardsDebugAssets UP-TO-DATE +> Task :app:checkKeyboardsDebugDuplicateClasses UP-TO-DATE +> Task :app:desugarKeyboardsDebugFileDependencies UP-TO-DATE +> Task :app:mergeExtDexKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugJacocoPropertiesFile UP-TO-DATE +> Task :app:mergeLibDexKeyboardsDebug UP-TO-DATE +> Task :app:mergeKeyboardsDebugJniLibFolders UP-TO-DATE +> Task :app:mergeKeyboardsDebugNativeLibs UP-TO-DATE +> Task :app:stripKeyboardsDebugDebugSymbols UP-TO-DATE +> Task :app:validateSigningKeyboardsDebug UP-TO-DATE +> Task :app:writeKeyboardsDebugAppMetadata UP-TO-DATE +> Task :app:writeKeyboardsDebugSigningConfigVersions UP-TO-DATE +warn: removing resource be.scri.conjugate.debug:string/i18n.app.about.community.view_apps without required default value. +warn: removing resource be.scri.conjugate.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_1 without required default value. +warn: removing resource be.scri.conjugate.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_2 without required default value. +warn: removing resource be.scri.conjugate.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_3 without required default value. + +> Task :app:processConjugateDebugResources FAILED +warn: removing resource be.scri.keyboards.debug:string/i18n.app.about.community.view_apps without required default value. +warn: removing resource be.scri.keyboards.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_1 without required default value. +warn: removing resource be.scri.keyboards.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_2 without required default value. +warn: removing resource be.scri.keyboards.debug:string/i18n.app.keyboard.not_in_wiktionary.explanation_3 without required default value. + +> Task :app:processKeyboardsDebugResources FAILED +.\gradlew : +At line:1 char:1 ++ .\gradlew +assembleDebug > +build2.log 2>&1 ++ ~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ +~ + + CategoryInfo + : NotSpe + cified: (:String + ) [], RemoteExce +ption + + FullyQualified + ErrorId : Native + CommandError + +FAILURE: Build +completed with 2 +failures. + +1: Task failed with +an exception. +----------- +* What went wrong: +Execution failed for +task ':app:processCon +jugateDebugResources' +. +> A failure occurred +while executing com.a +ndroid.build.gradle.i +nternal.res.LinkAppli +cationAndroidResource +sTask$TaskAction + > Issue parsing +symbol table from +package 'be.scri' at +D:\Code\Scribe\Scribe +-Android\app\build\in +termediates\runtime_s +ymbol_list\conjugateD +ebug\processConjugate +DebugResources\R.txt. + Duplicate key: +(row=string, column=i +18n_app_download_menu +_option_conjugate_des +cription), values: +[UNDEFINED string i18 +n_app_download_menu_o +ption_conjugate_descr +iption = 0x7f1000f8, +UNDEFINED string i18n +_app_download_menu_op +tion_conjugate_descri +ption = 0x7f10009e]. + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. +===================== +===================== +===================== +=============== + +2: Task failed with +an exception. +----------- +* What went wrong: +Execution failed for +task ':app:processKey +boardsDebugResources' +. +> A failure occurred +while executing com.a +ndroid.build.gradle.i +nternal.res.LinkAppli +cationAndroidResource +sTask$TaskAction + > Issue parsing +symbol table from +package 'be.scri' at +D:\Code\Scribe\Scribe +-Android\app\build\in +termediates\runtime_s +ymbol_list\keyboardsD +ebug\processKeyboards +DebugResources\R.txt. + Duplicate key: +(row=string, column=i +18n_app_download_menu +_option_conjugate_des +cription), values: +[UNDEFINED string i18 +n_app_download_menu_o +ption_conjugate_descr +iption = 0x7f1000f8, +UNDEFINED string i18n +_app_download_menu_op +tion_conjugate_descri +ption = 0x7f10009e]. + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. +===================== +===================== +===================== +=============== + +BUILD FAILED in 4s +62 actionable tasks: 2 executed, 60 up-to-date diff --git a/build3.log b/build3.log new file mode 100644 index 000000000..2644f5b55 Binary files /dev/null and b/build3.log differ diff --git a/build3_utf8.log b/build3_utf8.log new file mode 100644 index 000000000..dc6aad021 --- /dev/null +++ b/build3_utf8.log @@ -0,0 +1,210 @@ +> Task :app:moveFromi18n NO-SOURCE +> Task :app:preBuild UP-TO-DATE +> Task :app:preConjugateDebugBuild UP-TO-DATE +> Task :app:mergeConjugateDebugNativeDebugMetadata NO-SOURCE +> Task :app:checkKotlinGradlePluginConfigurationErrors SKIPPED +> Task :app:dataBindingMergeDependencyArtifactsConjugateDebug UP-TO-DATE +> Task :app:generateConjugateDebugResValues UP-TO-DATE +> Task :app:generateConjugateDebugResources UP-TO-DATE +> Task :app:mergeConjugateDebugResources UP-TO-DATE +> Task :app:dataBindingGenBaseClassesConjugateDebug UP-TO-DATE +> Task :app:generateConjugateDebugBuildConfig UP-TO-DATE +> Task :app:checkConjugateDebugAarMetadata UP-TO-DATE +> Task :app:processConjugateDebugNavigationResources UP-TO-DATE +> Task :app:compileConjugateDebugNavigationResources UP-TO-DATE +> Task :app:mapConjugateDebugSourceSetPaths UP-TO-DATE +> Task :app:createConjugateDebugCompatibleScreenManifests UP-TO-DATE +> Task :app:extractDeepLinksConjugateDebug UP-TO-DATE +> Task :app:processConjugateDebugMainManifest UP-TO-DATE +> Task :app:processConjugateDebugManifest UP-TO-DATE +> Task :app:processConjugateDebugManifestForPackage UP-TO-DATE +> Task :app:processConjugateDebugResources UP-TO-DATE +> Task :app:kspConjugateDebugKotlin UP-TO-DATE +> Task :app:javaPreCompileConjugateDebug UP-TO-DATE +> Task :app:mergeConjugateDebugShaders UP-TO-DATE +> Task :app:compileConjugateDebugShaders NO-SOURCE +> Task :app:generateConjugateDebugAssets UP-TO-DATE +> Task :app:mergeConjugateDebugAssets UP-TO-DATE +> Task :app:compressConjugateDebugAssets UP-TO-DATE +> Task :app:generateConjugateDebugJacocoPropertiesFile UP-TO-DATE +> Task :app:checkConjugateDebugDuplicateClasses UP-TO-DATE +> Task :app:desugarConjugateDebugFileDependencies UP-TO-DATE +> Task :app:mergeExtDexConjugateDebug UP-TO-DATE +> Task :app:mergeLibDexConjugateDebug UP-TO-DATE +> Task :app:mergeConjugateDebugJniLibFolders UP-TO-DATE +> Task :app:mergeConjugateDebugNativeLibs UP-TO-DATE +> Task :app:stripConjugateDebugDebugSymbols UP-TO-DATE +> Task :app:validateSigningConjugateDebug UP-TO-DATE +> Task :app:writeConjugateDebugAppMetadata UP-TO-DATE +> Task :app:writeConjugateDebugSigningConfigVersions UP-TO-DATE +> Task :app:preKeyboardsDebugBuild UP-TO-DATE +> Task :app:mergeKeyboardsDebugNativeDebugMetadata NO-SOURCE +> Task :app:dataBindingMergeDependencyArtifactsKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugResValues UP-TO-DATE +> Task :app:generateKeyboardsDebugResources UP-TO-DATE +> Task :app:mergeKeyboardsDebugResources UP-TO-DATE +> Task :app:dataBindingGenBaseClassesKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugBuildConfig UP-TO-DATE +> Task :app:checkKeyboardsDebugAarMetadata UP-TO-DATE +> Task :app:processKeyboardsDebugNavigationResources UP-TO-DATE +> Task :app:compileKeyboardsDebugNavigationResources UP-TO-DATE +> Task :app:mapKeyboardsDebugSourceSetPaths UP-TO-DATE +> Task :app:createKeyboardsDebugCompatibleScreenManifests UP-TO-DATE +> Task :app:extractDeepLinksKeyboardsDebug UP-TO-DATE +> Task :app:processKeyboardsDebugMainManifest UP-TO-DATE +> Task :app:processKeyboardsDebugManifest UP-TO-DATE +> Task :app:processKeyboardsDebugManifestForPackage UP-TO-DATE +> Task :app:processKeyboardsDebugResources UP-TO-DATE +> Task :app:kspKeyboardsDebugKotlin UP-TO-DATE +> Task :app:javaPreCompileKeyboardsDebug UP-TO-DATE +> Task :app:mergeKeyboardsDebugShaders UP-TO-DATE +> Task :app:compileKeyboardsDebugShaders NO-SOURCE +> Task :app:generateKeyboardsDebugAssets UP-TO-DATE +> Task :app:mergeKeyboardsDebugAssets UP-TO-DATE +> Task :app:compressKeyboardsDebugAssets UP-TO-DATE +> Task :app:checkKeyboardsDebugDuplicateClasses UP-TO-DATE +> Task :app:desugarKeyboardsDebugFileDependencies UP-TO-DATE +> Task :app:mergeExtDexKeyboardsDebug UP-TO-DATE +> Task :app:generateKeyboardsDebugJacocoPropertiesFile UP-TO-DATE +> Task :app:mergeLibDexKeyboardsDebug UP-TO-DATE +> Task :app:mergeKeyboardsDebugJniLibFolders UP-TO-DATE +> Task :app:mergeKeyboardsDebugNativeLibs UP-TO-DATE +> Task :app:stripKeyboardsDebugDebugSymbols UP-TO-DATE +> Task :app:validateSigningKeyboardsDebug UP-TO-DATE +> Task :app:writeKeyboardsDebugAppMetadata UP-TO-DATE +> Task :app:writeKeyboardsDebugSigningConfigVersions UP-TO-DATE + +> Task :app:compileKeyboardsDebugKotlin FAILED +.\gradlew : e: file:/ +//D:/Code/Scribe/Scri +be-Android/app/src/ma +in/java/be/scri/ui/sc +reens/conjugate/Conju +gateScreen.kt:52:17 +No parameter with +name 'title' found. +At line:1 char:1 ++ .\gradlew +assembleDebug > +build3.log 2>&1 ; +Get-Content +build3.log | ... ++ ~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ +~ + + CategoryInfo + : NotSpe + cified: (e: file + :///D:/C... 'tit +le' found.:Strin +g) [], RemoteExc +eption + + FullyQualified + ErrorId : Native + CommandError + +e: file:///D:/Code/Sc +ribe/Scribe-Android/a +pp/src/main/java/be/s +cri/ui/screens/conjug +ate/ConjugateScreen.k +t:53:17 No value +passed for parameter +'pageTitle'. + +> Task :app:compileConjugateDebugKotlin FAILED +e: file:///D:/Code/Sc +ribe/Scribe-Android/a +pp/src/main/java/be/s +cri/ui/screens/conjug +ate/ConjugateScreen.k +t:52:17 No parameter +with name 'title' +found. +e: file:///D:/Code/Sc +ribe/Scribe-Android/a +pp/src/main/java/be/s +cri/ui/screens/conjug +ate/ConjugateScreen.k +t:53:17 No value +passed for parameter +'pageTitle'. + +FAILURE: Build +completed with 2 +failures. + +1: Task failed with +an exception. +----------- +* What went wrong: +Execution failed for +task ':app:compileKey +boardsDebugKotlin'. +> A failure occurred +while executing org.j +etbrains.kotlin.compi +lerRunner.GradleCompi +lerRunnerWithWorkers$ +GradleKotlinCompilerW +orkAction + > Compilation +error. See log for +more details + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. +===================== +===================== +===================== +=============== + +2: Task failed with +an exception. +----------- +* What went wrong: +Execution failed for +task ':app:compileCon +jugateDebugKotlin'. +> A failure occurred +while executing org.j +etbrains.kotlin.compi +lerRunner.GradleCompi +lerRunnerWithWorkers$ +GradleKotlinCompilerW +orkAction + > Compilation +error. See log for +more details + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. +===================== +===================== +===================== +=============== + +BUILD FAILED in 8s +66 actionable tasks: 2 executed, 64 up-to-date diff --git a/build_output.txt b/build_output.txt new file mode 100644 index 000000000..5a0403d65 Binary files /dev/null and b/build_output.txt differ diff --git a/detekt.log b/detekt.log new file mode 100644 index 000000000..36d257b53 Binary files /dev/null and b/detekt.log differ diff --git a/detekt3.log b/detekt3.log new file mode 100644 index 000000000..e8af16712 Binary files /dev/null and b/detekt3.log differ diff --git a/detekt3_utf8.log b/detekt3_utf8.log new file mode 100644 index 000000000..b202ec5af --- /dev/null +++ b/detekt3_utf8.log @@ -0,0 +1,54 @@ +> Task :detekt NO-SOURCE + +> Task :app:detekt FAILED +D:\Code\Scribe\Scribe-Android\app\src\main\java\be\scri\ui\screens\conjugate\ConjugateScreen.kt:134:13: Private function `ConjugateEmptyStatePreview` is unused. [UnusedPrivateMember] +D:\Code\Scribe\Scribe-Android\app\src\main\java\be\scri\ui\screens\conjugate\ConjugateScreen.kt:146:13: Private function `ConjugateEmptyStateDarkPreview` is unused. [UnusedPrivateMember] + +.\gradlew : +At line:1 char:1 ++ .\gradlew detekt +lintKotlin > +detekt3.log 2>&1 ; +Get-Content detekt3. +... ++ ~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ +~~~~~~ + + CategoryInfo + : +NotSpecified: +(:String) [], Remote + Exception + + +FullyQualifiedErro + rId : +NativeCommandE +rror + +FAILURE: Build +failed with an +exception. + +* What went wrong: +Execution failed for +task ':app:detekt'. +> Analysis failed +with 2 weighted +issues. + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. + +BUILD FAILED in 10s +1 actionable task: 1 executed diff --git a/detekt_utf8.log b/detekt_utf8.log new file mode 100644 index 000000000..65188e9aa --- /dev/null +++ b/detekt_utf8.log @@ -0,0 +1,56 @@ +Starting a Gradle Daemon, 1 busy and 1 incompatible Daemons could not be reused, use --status for details +> Task :detekt NO-SOURCE +> Task :app:detekt +D:\Code\Scribe\Scribe-Android\app\src\main\java\be\scri\ui\screens\conjugate\ConjugateScreen.kt:134:5: Composables annotated with @Preview that are used only for previewing the UI should not be public. + +See https://mrmans0n.github.io/compose-rules/rules/#preview-composables-should-not-be-public for more information. [PreviewPublic] +D:\Code\Scribe\Scribe-Android\app\src\main\java\be\scri\ui\screens\conjugate\ConjugateScreen.kt:146:5: Composables annotated with @Preview that are used only for previewing the UI should not be public. + +See https://mrmans0n.github.io/compose-rules/rules/#preview-composables-should-not-be-public for more information. [PreviewPublic] + + +> Task :app:detekt FAILED +.\gradlew : +At line:1 char:1 ++ .\gradlew detekt +lintKotlin > +detekt.log 2>&1 ++ ~~~~~~~~~~~~~~~~~~~ +~~~~~~~~~~~~~~~~~~~~~ +~~~~~ + + CategoryInfo + : NotSpe + cified: (:String + ) [], RemoteExce +ption + + FullyQualified + ErrorId : Native + CommandError + +FAILURE: Build +failed with an +exception. + +* What went wrong: +Execution failed for +task ':app:detekt'. +> Analysis failed +with 2 weighted +issues. + +* Try: +> Run with +--stacktrace option +to get the stack +trace. +> Run with --info or +--debug option to +get more log output. +> Run with --scan to +get full insights. +> Get more help at ht +tps://help.gradle.org +. + +BUILD FAILED in 1m +1 actionable task: 1 executed