Compare commits
6 Commits
feature/ke
...
topic/code
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9930af5fbc | ||
| 0cf9d36d8c | |||
|
|
6ce3dfad4f | ||
| a545f58657 | |||
| 93103e4e49 | |||
| 0d7d5d8fbc |
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"spec": {
|
||||
"template_id": "kmt",
|
||||
"targets": {
|
||||
"android": {
|
||||
"ui": [
|
||||
"compose"
|
||||
]
|
||||
},
|
||||
"desktop": {
|
||||
"ui": [
|
||||
"compose"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-04-29T06:04:57.807358293Z"
|
||||
}
|
||||
@@ -23,6 +23,8 @@ jobs:
|
||||
distribution: 'temurin'
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@v3
|
||||
- name: Install missing packages
|
||||
run: apt-get update; apt-get install -y libglu1-mesa-dev
|
||||
- name: Cache SonarQube packages
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
|
||||
@@ -3,7 +3,6 @@ plugins {
|
||||
alias(libs.plugins.android.application)
|
||||
alias(libs.plugins.compose.compiler)
|
||||
alias(libs.plugins.compose)
|
||||
alias(libs.plugins.kotlin.android)
|
||||
}
|
||||
|
||||
android {
|
||||
@@ -18,23 +17,6 @@ android {
|
||||
versionName = libs.versions.app.version.name.get()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation(compose.components.resources)
|
||||
implementation(compose.runtime)
|
||||
// implementation(compose.foundation)
|
||||
implementation(compose.material3)
|
||||
implementation(compose.ui)
|
||||
implementation(compose.components.resources)
|
||||
implementation(libs.androidx.activity.compose)
|
||||
// implementation(libs.compose.ui.text.googlefonts)
|
||||
implementation(projects.commonUI)
|
||||
// implementation(compose.components.uiToolingPreview)
|
||||
implementation(libs.androidx.tooling.preview)
|
||||
|
||||
testImplementation(libs.kotlin.test)
|
||||
testImplementation(libs.atrium)
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.toVersion(libs.versions.jdk.get())
|
||||
targetCompatibility = JavaVersion.toVersion(libs.versions.jdk.get())
|
||||
@@ -42,7 +24,11 @@ android {
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
isMinifyEnabled = false
|
||||
isMinifyEnabled = true
|
||||
proguardFiles(
|
||||
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||||
"proguard-rules.pro"
|
||||
)
|
||||
}
|
||||
|
||||
debug {
|
||||
@@ -64,6 +50,18 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation(projects.commonUI)
|
||||
implementation(libs.compose.runtime)
|
||||
implementation(libs.compose.ui)
|
||||
implementation(libs.compose.material3)
|
||||
implementation(libs.compose.components.resources)
|
||||
implementation(libs.androidx.activity.compose)
|
||||
implementation(libs.androidx.core.ktx)
|
||||
debugImplementation(libs.androidx.tooling)
|
||||
|
||||
implementation(libs.compose.ui.tooling.preview)
|
||||
|
||||
debugImplementation(libs.compose.ui.tooling)
|
||||
|
||||
testImplementation(libs.kotlin.test)
|
||||
testImplementation(libs.atrium)
|
||||
}
|
||||
|
||||
17
android/proguard-rules.pro
vendored
Normal file
17
android/proguard-rules.pro
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
-dontwarn kotlinx.coroutines.debug.*
|
||||
-dontwarn kotlinx.datetime.**
|
||||
|
||||
-keep class org.jetbrains.skia.** { *; }
|
||||
-keep class org.jetbrains.skiko.** { *; }
|
||||
|
||||
-ignorewarnings
|
||||
|
||||
# Windows folders
|
||||
-keep class com.sun.jna.* { *; }
|
||||
-keepclassmembers class * extends com.sun.jna.* { public *; }
|
||||
|
||||
-assumenosideeffects public class androidx.compose.runtime.ComposerKt {
|
||||
void sourceInformation(androidx.compose.runtime.Composer,java.lang.String);
|
||||
void sourceInformationMarkerStart(androidx.compose.runtime.Composer,int,java.lang.String);
|
||||
void sourceInformationMarkerEnd(androidx.compose.runtime.Composer);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package ch.dissem.yaep.android
|
||||
|
||||
import ch.tutteli.atrium.api.fluent.en_GB.toEqual
|
||||
import ch.tutteli.atrium.api.verbs.expect
|
||||
import kotlin.test.Test
|
||||
|
||||
class DummyTest {
|
||||
@Test
|
||||
fun `ensure some test is run`() {
|
||||
expect(true).toEqual(true)
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
import com.android.build.gradle.internal.lint.AndroidLintTask
|
||||
import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask
|
||||
import nl.littlerobots.vcu.plugin.resolver.VersionSelectors
|
||||
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
|
||||
import org.sonarqube.gradle.SonarTask
|
||||
@@ -8,13 +8,14 @@ plugins {
|
||||
alias(libs.plugins.versions)
|
||||
alias(libs.plugins.sonarqube)
|
||||
alias(libs.plugins.kotlin.kover)
|
||||
alias(libs.plugins.spotless)
|
||||
|
||||
alias(libs.plugins.android.application) apply false
|
||||
alias(libs.plugins.android.library) apply false
|
||||
alias(libs.plugins.compose) apply false
|
||||
alias(libs.plugins.compose.compiler) apply false
|
||||
alias(libs.plugins.kotlin.multiplatform) apply false
|
||||
alias(libs.plugins.kotlin.jvm) apply false
|
||||
alias(libs.plugins.kotlin.android) apply false
|
||||
}
|
||||
|
||||
sonar {
|
||||
@@ -45,17 +46,26 @@ tasks.withType<KotlinJvmCompile>().configureEach {
|
||||
}
|
||||
}
|
||||
|
||||
tasks.withType<DependencyUpdatesTask> {
|
||||
rejectVersionIf {
|
||||
isNonStable(candidate.version) && !isNonStable(currentVersion)
|
||||
spotless {
|
||||
kotlin {
|
||||
target("**/*.kt")
|
||||
targetExclude("**/build/**", "**/.gradle/**")
|
||||
// ktlint("1.5.0")
|
||||
diktat("1.0.1")
|
||||
}
|
||||
kotlinGradle {
|
||||
target("**/*.gradle.kts")
|
||||
targetExclude("**/build/**", "**/.gradle/**")
|
||||
ktlint("1.5.0")
|
||||
}
|
||||
}
|
||||
|
||||
fun isNonStable(version: String): Boolean {
|
||||
return version.contains("dev", ignoreCase = true)
|
||||
|| version.contains("alpha", ignoreCase = true)
|
||||
|| version.contains("beta", ignoreCase = true)
|
||||
|| version.contains("RC", ignoreCase = true)
|
||||
versionCatalogUpdate {
|
||||
sortByKey = false
|
||||
keep {
|
||||
keepUnusedVersions = true
|
||||
}
|
||||
versionSelector(VersionSelectors.STABLE)
|
||||
}
|
||||
|
||||
subprojects {
|
||||
|
||||
@@ -22,13 +22,13 @@ kotlin {
|
||||
commonMain.dependencies {
|
||||
api(projects.domain)
|
||||
|
||||
implementation(compose.components.resources)
|
||||
implementation(compose.runtime)
|
||||
implementation(compose.foundation)
|
||||
implementation(compose.ui)
|
||||
implementation(compose.components.uiToolingPreview)
|
||||
implementation(libs.compose.components.resources)
|
||||
implementation(libs.compose.runtime)
|
||||
implementation(libs.compose.foundation)
|
||||
implementation(libs.compose.ui)
|
||||
implementation(libs.compose.ui.tooling.preview)
|
||||
|
||||
implementation(compose.material3)
|
||||
implementation(libs.compose.material3)
|
||||
|
||||
implementation(libs.bundles.logging)
|
||||
}
|
||||
@@ -37,8 +37,7 @@ kotlin {
|
||||
implementation(libs.kotlin.test)
|
||||
implementation(libs.atrium)
|
||||
|
||||
@OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class)
|
||||
implementation(compose.uiTest)
|
||||
implementation(libs.compose.ui.test)
|
||||
}
|
||||
|
||||
jvmTest.dependencies {
|
||||
@@ -46,7 +45,7 @@ kotlin {
|
||||
}
|
||||
|
||||
androidMain.dependencies {
|
||||
implementation(libs.androidx.compose.foundation)
|
||||
implementation(libs.compose.foundation)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,14 +12,14 @@ kotlin {
|
||||
|
||||
dependencies {
|
||||
implementation(compose.desktop.currentOs)
|
||||
implementation(compose.material3)
|
||||
implementation(compose.components.resources)
|
||||
implementation(libs.compose.material3)
|
||||
implementation(libs.compose.components.resources)
|
||||
implementation(projects.commonUI)
|
||||
implementation(compose.components.uiToolingPreview)
|
||||
implementation(libs.compose.ui.tooling.preview)
|
||||
|
||||
testImplementation(libs.kotlin.test)
|
||||
testImplementation(libs.atrium)
|
||||
testImplementation(compose.desktop.uiTestJUnit4)
|
||||
testImplementation(libs.compose.ui.test.desktop)
|
||||
testImplementation(compose.desktop.currentOs)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,4 +8,13 @@ android.nonTransitiveRClass=true
|
||||
android.useAndroidX=true
|
||||
|
||||
#MPP
|
||||
kotlin.mpp.androidSourceSetLayoutVersion=2
|
||||
kotlin.mpp.androidSourceSetLayoutVersion=2
|
||||
#android.defaults.buildfeatures.resvalues=true
|
||||
#android.enableAppCompileTimeRClass=false
|
||||
#android.usesSdkInManifest.disallowed=false
|
||||
#android.uniquePackageNames=false
|
||||
#android.dependency.useConstraints=true
|
||||
#android.r8.strictFullModeForKeepRules=false
|
||||
#android.r8.optimizedResourceShrinking=false
|
||||
#android.builtInKotlin=false
|
||||
#android.newDsl=false
|
||||
@@ -1,26 +1,28 @@
|
||||
[versions]
|
||||
app-version-code = "1"
|
||||
app-version-name = "1.0.0"
|
||||
agp = "8.13.2"
|
||||
agp = "9.0.0"
|
||||
jdk = "21"
|
||||
android-compileSdk = "36"
|
||||
android-minSdk = "26"
|
||||
android-targetSdk = "36"
|
||||
androidx-activityCompose = "1.12.2"
|
||||
androidx-compose = "1.10.0"
|
||||
compose-plugin = "1.9.3"
|
||||
kotlin = "2.3.0"
|
||||
coreKtx = "1.17.0"
|
||||
atrium = "1.2.0"
|
||||
|
||||
[libraries]
|
||||
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activityCompose" }
|
||||
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "coreKtx" }
|
||||
androidx-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "androidx-compose" }
|
||||
androidx-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "androidx-compose" }
|
||||
androidx-compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "androidx-compose" }
|
||||
androidx-activity-compose = { module = "androidx.activity:activity-compose", version = "1.12.2" }
|
||||
androidx-core-ktx = { module = "androidx.core:core-ktx", version = "1.17.0" }
|
||||
|
||||
atrium = { module = "ch.tutteli.atrium:atrium-fluent", version.ref = "atrium" }
|
||||
compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version = "1.10.0" }
|
||||
compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version = "1.10.0" }
|
||||
compose-material3 = { module = "org.jetbrains.compose.material3:material3", version = "1.10.0-alpha05" }
|
||||
compose-ui = { module = "org.jetbrains.compose.ui:ui", version = "1.10.0" }
|
||||
compose-components-resources = { module = "org.jetbrains.compose.components:components-resources", version = "1.10.0" }
|
||||
compose-ui-tooling = { module = "org.jetbrains.compose.ui:ui-tooling", version = "1.10.0" }
|
||||
compose-ui-tooling-preview = { module = "org.jetbrains.compose.ui:ui-tooling-preview", version = "1.10.0" }
|
||||
compose-ui-test = { module = "org.jetbrains.compose.ui:ui-test", version = "1.10.0" }
|
||||
compose-ui-test-desktop = { module = "org.jetbrains.compose.ui:ui-test-desktop", version = "1.10.0" }
|
||||
|
||||
atrium = { module = "ch.tutteli.atrium:atrium-fluent", version = "1.2.0" }
|
||||
|
||||
kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
|
||||
|
||||
@@ -31,13 +33,15 @@ logging-slf4j = { module = "org.slf4j:slf4j-simple", version = "2.0.17" }
|
||||
logging = ["logging-jvm", "logging-slf4j"]
|
||||
|
||||
[plugins]
|
||||
versions = { id = "com.github.ben-manes.versions", version = "0.53.0" }
|
||||
android-application = { id = "com.android.application", version.ref = "agp" }
|
||||
android-library = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" }
|
||||
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
||||
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
||||
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
||||
compose = { id = "org.jetbrains.compose", version.ref = "compose-plugin" }
|
||||
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
|
||||
compose = { id = "org.jetbrains.compose", version = "1.10.0" }
|
||||
versions = { id = "nl.littlerobots.version-catalog-update", version = "1.0.1" }
|
||||
|
||||
# Code Analysis Tools and Linters
|
||||
sonarqube = { id = "org.sonarqube", version = "7.2.2.6593" }
|
||||
spotless = { id = "com.diffplug.spotless", version = "8.2.0" }
|
||||
kotlin-kover = { id = "org.jetbrains.kotlinx.kover", version = "0.9.4" }
|
||||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,6 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.0-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
|
||||
Reference in New Issue
Block a user