From 805e408c78931a35c8f7b42200a57b1caf8f8497 Mon Sep 17 00:00:00 2001 From: aminecmi Date: Tue, 22 Mar 2022 16:51:45 +0100 Subject: [PATCH] Compilation is now working. --- androidApp/build.gradle.kts | 104 +++++++++++++++++++++++++++++++----- build.gradle.kts | 2 + gradle.properties | 29 ++++++---- 3 files changed, 112 insertions(+), 23 deletions(-) diff --git a/androidApp/build.gradle.kts b/androidApp/build.gradle.kts index ecec90d..f675617 100644 --- a/androidApp/build.gradle.kts +++ b/androidApp/build.gradle.kts @@ -3,26 +3,30 @@ import java.io.ByteArrayOutputStream plugins { id("com.android.application") kotlin("android") + kotlin("kapt") } -fun Project.execWithOutput(cmd: String): String { - val byteOut: ByteArrayOutputStream = ByteArrayOutputStream() - project.exec { - commandLine = cmd.split(" ") - standardOutput = byteOut +fun Project.execWithOutput(cmd: String, ignore: Boolean = false): String { + var result: String = ByteArrayOutputStream().use { outputStream -> + project.exec { + commandLine = cmd.split(" ") + standardOutput = outputStream + isIgnoreExitValue = ignore ?: false + } + outputStream.toString() } - return byteOut.toByteArray().toString() + return result } fun gitVersion(): String { var process = "" - val maybeTagOfCurrentCommit = execWithOutput("git describe --contains HEAD") + val maybeTagOfCurrentCommit = execWithOutput("git -C ../ describe --contains HEAD", true) process = if (maybeTagOfCurrentCommit.isEmpty()) { println("No tag on current commit. Will take the latest one.") - execWithOutput("git for-each-ref refs/tags --sort=-authordate --format='%(refname:short)' --count=1") + execWithOutput("git -C ../ for-each-ref refs/tags --sort=-authordate --format='%(refname:short)' --count=1") } else { println("Tag found on current commit") - execWithOutput("git describe --contains HEAD") + execWithOutput("git -C ../ describe --contains HEAD") } return process.replace("'", "").substring(1).replace("\\.", "").trim() } @@ -98,8 +102,84 @@ android { dependencies { implementation(project(":shared")) - implementation("com.google.android.material:material:1.4.0") - implementation("androidx.appcompat:appcompat:1.3.1") - implementation("androidx.constraintlayout:constraintlayout:2.1.0") + implementation("com.google.android.material:material:1.5.0") + implementation("androidx.appcompat:appcompat:1.4.1") + implementation("androidx.constraintlayout:constraintlayout:2.1.3") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0") + + implementation("androidx.preference:preference-ktx:1.1.1") + + // Testing + androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0-alpha02") + androidTestImplementation("androidx.test:runner:1.3.1-alpha02") + // Espresso-contrib for DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource + androidTestImplementation("androidx.test.espresso:espresso-contrib:3.4.0-alpha02") + // Espresso-intents for validation and stubbing of Intents + androidTestImplementation("androidx.test.espresso:espresso-intents:3.4.0-alpha02") + implementation(fileTree(mapOf("include" to listOf("*.jar"), "dir" to "libs"))) + + // Android Support + implementation("androidx.appcompat:appcompat:1.4.1") + implementation("com.google.android.material:material:1.5.0") + implementation("androidx.recyclerview:recyclerview:1.3.0-alpha01") + implementation("androidx.legacy:legacy-support-v4:1.0.0") + implementation("androidx.vectordrawable:vectordrawable:1.2.0-alpha02") + implementation("androidx.browser:browser:1.4.0") + implementation("androidx.cardview:cardview:1.0.0") + implementation("androidx.annotation:annotation:1.3.0") + implementation("androidx.work:work-runtime-ktx:2.7.1") + implementation("androidx.constraintlayout:constraintlayout:2.1.3") + implementation("org.jsoup:jsoup:1.14.3") + + coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:1.1.5") + + //multidex + implementation("androidx.multidex:multidex:2.0.1") + + // About + implementation("com.mikepenz:aboutlibraries-core:8.9.4") + implementation("com.mikepenz:aboutlibraries:8.9.4") + implementation("com.mikepenz:aboutlibraries-definitions:8.9.4") + + // Async + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0") + + // Retrofit + http logging + okhttp + implementation("com.squareup.retrofit2:retrofit:2.9.0") + implementation("com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.3") + implementation("com.squareup.retrofit2:converter-gson:2.9.0") + implementation("com.burgstaller:okhttp-digest:2.5") + + // Material-ish things + implementation("com.ashokvarma.android:bottom-navigation-bar:2.2.0") + implementation("com.amulyakhare:com.amulyakhare.textdrawable:1.0.1") + + // glide + kapt("com.github.bumptech.glide:compiler:4.11.0") + implementation("com.github.bumptech.glide:okhttp3-integration:4.1.1") + + // Drawer + implementation("com.mikepenz:materialdrawer:8.4.5") + + // Themes + implementation("com.52inc:scoops:1.0.0") + implementation("com.jaredrummler:colorpicker:1.1.0") + implementation("com.github.rubensousa:floatingtoolbar:1.5.1") + + // Pager + implementation("me.relex:circleindicator:2.1.6") + implementation("androidx.viewpager2:viewpager2:1.1.0-beta01") + + //PhotoView + implementation("com.github.chrisbanes:PhotoView:2.3.0") + + implementation("androidx.core:core-ktx:1.7.0") + + implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.4.0") + implementation("androidx.lifecycle:lifecycle-common-java8:2.4.0") + + implementation("androidx.room:room-ktx:2.4.0-beta01") + kapt("androidx.room:room-compiler:2.4.0-beta01") + + implementation("android.arch.work:work-runtime-ktx:1.0.1") } \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index bcfe0ac..eb35706 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -14,6 +14,8 @@ allprojects { repositories { google() mavenCentral() + jcenter() + maven { url = uri("https://www.jitpack.io") } } } diff --git a/gradle.properties b/gradle.properties index 3211eb8..cab4d3d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,13 +1,20 @@ -#Gradle -org.gradle.jvmargs=-Xmx2048M -Dkotlin.daemon.jvm.options\="-Xmx2048M" - -#Kotlin +## For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx1024m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +# +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +#Tue Mar 22 16:50:00 CET 2022 kotlin.code.style=official - -#Android -android.useAndroidX=true - -#MPP -kotlin.mpp.enableGranularSourceSetsMetadata=true +kotlin.mpp.enableCInteropCommonization=true +org.gradle.jvmargs=-Xmx2048M -Dkotlin.daemon.jvm.options\="-Xmx2048M" kotlin.native.enableDependencyPropagation=false -kotlin.mpp.enableCInteropCommonization=true \ No newline at end of file +android.useAndroidX=true +android.enableJetifier=true +kotlin.mpp.enableGranularSourceSetsMetadata=true