make cloudstream builds faster by caching gradle and upgrade gradle and ksp

This commit is contained in:
IndusAryan 2024-02-07 21:33:52 +05:30
parent 2b7d102716
commit 84b8072f67
4 changed files with 24 additions and 6 deletions

View file

@ -3,6 +3,7 @@ import org.jetbrains.dokka.gradle.DokkaTask
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.io.ByteArrayOutputStream
import java.net.URL
import kotlin.io.outputStream
plugins {
id("com.android.application")
@ -62,8 +63,9 @@ android {
versionCode = 63
versionName = "4.3.1"
val commitHashFile = layout.projectDirectory.file("commit-hash.txt")
resValue("string", "app_version", "${defaultConfig.versionName}${versionNameSuffix ?: ""}")
resValue("string", "commit_hash", "git rev-parse --short HEAD".execute() ?: "")
resValue("string", "commit_hash", file(commitHashFile).readText())
resValue("bool", "is_prerelease", "false")
// Reads local.properties
@ -182,7 +184,7 @@ dependencies {
// For KSP -> Official Annotation Processors are Not Yet Supported for KSP
ksp("dev.zacsweers.autoservice:auto-service-ksp:1.1.0")
implementation("com.google.guava:guava:32.1.3-android")
implementation("com.google.guava:guava:33.0.0-android")
implementation("dev.zacsweers.autoservice:auto-service-ksp:1.1.0")
// Media 3 (ExoPlayer)
@ -233,6 +235,21 @@ dependencies {
implementation("com.github.Blatzar:NiceHttp:0.4.5") // HTTP Lib
}
tasks.register<Exec>("retrieveCommitHash") {
// task needed because configurationCache does not support parallel git commands
group = "build"
description = "Retrieves the commit hash."
doFirst {
commandLine("git", "rev-parse", "--short", "HEAD")
val commitOutput = layout.projectDirectory.file("commit-hash.txt")
standardOutput = commitOutput.asFile.outputStream()
}
outputs.file(layout.projectDirectory.file("commit-hash.txt"))
mustRunAfter(tasks.assemble)
}
tasks.register("androidSourcesJar", Jar::class) {
archiveClassifier.set("sources")
from(android.sourceSets.getByName("main").java.srcDirs) // Full Sources

View file

@ -5,7 +5,7 @@ buildscript {
mavenCentral()
}
dependencies {
classpath("com.android.tools.build:gradle:8.2.1")
classpath("com.android.tools.build:gradle:8.2.2")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22")
classpath("org.jetbrains.dokka:dokka-gradle-plugin:1.9.10")
@ -22,7 +22,7 @@ allprojects {
}
plugins {
id("com.google.devtools.ksp") version "1.9.22-1.0.16" apply false
id("com.google.devtools.ksp") version "1.9.22-1.0.17" apply false
}
tasks.register<Delete>("clean") {

View file

@ -21,3 +21,4 @@ android.useAndroidX=true
kotlin.code.style=official
android.nonTransitiveRClass=false
android.nonFinalResIds=false
org.gradle.configuration-cache=true

View file

@ -1,6 +1,6 @@
#Fri Apr 30 17:11:15 CEST 2021
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME