diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e3a8d3b3e..b94b8dc6c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,14 +14,14 @@ jobs: name: Lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-java@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@v3 with: gradle-version: wrapper - name: Run lint @@ -33,19 +33,19 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Configure JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 - name: Setup Android SDK - uses: android-actions/setup-android@v2 + uses: android-actions/setup-android@v3 - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@v3 with: gradle-version: wrapper diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1cbf09972..7a41fd552 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -12,19 +12,19 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Configure JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 - name: Setup Android SDK - uses: android-actions/setup-android@v2 + uses: android-actions/setup-android@v3 - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@v3 - name: Upload Artifacts run: ./gradlew publishAndReleaseToMavenCentral --no-configuration-cache diff --git a/.tool-versions b/.tool-versions index 90f676bd3..0308c1000 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -java temurin-11.0.22+7 +java temurin-21.0.4+7.0.LTS diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 7c28732b0..480c8842a 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,15 +1,15 @@ [versions] -kotlin = "1.8.20" -composeUi = "1.3.3" +kotlin = "2.0.21" +composeUi = "1.7.3" composeCompiler = "1.4.6" -coroutines = "1.6.4" -ktor = "2.2.4" -work = "2.8.0" +coroutines = "1.9.0" +ktor = "3.0.0" +work = "2.9.1" serialization = "1.5.1" [libraries] # algolia -algolia-client = { group = "com.algolia", name = "algoliasearch-client-kotlin", version = "2.1.12" } +algolia-client = { group = "com.algolia", name = "algoliasearch-client-kotlin", version = "3.6.1" } algolia-telemetry = { group = "com.algolia", name = "instantsearch-telemetry", version = "0.2.0" } # network @@ -17,43 +17,43 @@ ktor-client-okhttp = { group = "io.ktor", name = "ktor-client-okhttp", version.r ktor-client-serialization-json = { group = "io.ktor", name = "ktor-serialization-kotlinx-json", version.ref = "ktor" } # kotlin -kotlinx-atomicfu = { group = "org.jetbrains.kotlinx", name = "atomicfu", version = "0.20.0" } +kotlinx-atomicfu = { group = "org.jetbrains.kotlinx", name = "atomicfu", version = "0.25.0" } kotlinx-coroutines-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version.ref = "coroutines" } kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "coroutines" } # android androidx-compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "composeUi" } -androidx-compose-material = { group = "androidx.compose.material", name = "material", version = "1.3.1" } -androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended", version = "1.3.1" } -androidx-paging3 = { group = "androidx.paging", name = "paging-runtime", version = "3.1.1" } +androidx-compose-material = { group = "androidx.compose.material", name = "material", version = "1.7.3" } +androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended", version = "1.7.3" } +androidx-paging3 = { group = "androidx.paging", name = "paging-runtime", version = "3.3.2" } androidx-work = { group = "androidx.work", name = "work-runtime-ktx", version.ref = "work" } -androidx-core = { group = "androidx.core", name = "core-ktx", version = "1.9.0" } -androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version = "1.6.1" } -androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version = "1.2.1" } +androidx-core = { group = "androidx.core", name = "core-ktx", version = "1.13.1" } +androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version = "1.7.0" } +androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version = "1.3.2" } androidx-swiperefreshlayout = { group = "androidx.swiperefreshlayout", name = "swiperefreshlayout", version = "1.1.0" } -google-material = { group = "com.google.android.material", name = "material", version = "1.8.0" } +google-material = { group = "com.google.android.material", name = "material", version = "1.12.0" } # test -test-androidx-ext = { group = "androidx.test.ext", name = "junit", version = "1.1.5" } -test-androidx-runner = { group = "androidx.test", name = "runner", version = "1.5.2" } -test-androidx-espresso = { group = "androidx.test.espresso", name = "espresso-core", version = "3.5.1" } +test-androidx-ext = { group = "androidx.test.ext", name = "junit", version = "1.2.1" } +test-androidx-runner = { group = "androidx.test", name = "runner", version = "1.6.2" } +test-androidx-espresso = { group = "androidx.test.espresso", name = "espresso-core", version = "3.6.1" } test-androidx-work = { group = "androidx.work", name = "work-testing", version.ref = "work" } test-coroutines = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "coroutines" } test-ktor-client-mock = { group = "io.ktor", name = "ktor-client-mock", version.ref = "ktor" } test-kotlin-common = { module = "org.jetbrains.kotlin:kotlin-test-common" } test-kotlin-annotations = { module = "org.jetbrains.kotlin:kotlin-test-annotations-common" } test-kotlin-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit" } -test-mockk = { group = "io.mockk", name = "mockk", version = "1.13.4" } -test-robolectric = { group = "org.robolectric", name = "robolectric", version = "4.9.2" } -test-turbine = { group = "app.cash.turbine", name = "turbine", version = "0.12.1" } +test-mockk = { group = "io.mockk", name = "mockk", version = "1.13.13" } +test-robolectric = { group = "org.robolectric", name = "robolectric", version = "4.13" } +test-turbine = { group = "app.cash.turbine", name = "turbine", version = "1.1.0" } # logging -slf4j = { group = "org.slf4j", name = "slf4j-api", version = "2.0.6" } -logback-classic = { group = "ch.qos.logback", name = "logback-classic", version = "1.4.5" } +slf4j = { group = "org.slf4j", name = "slf4j-api", version = "2.0.16" } +logback-classic = { group = "ch.qos.logback", name = "logback-classic", version = "1.5.10" } [plugins] kotlin-multiplaform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } kotlinx-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } -android = { id = "com.android.library", version = "7.4.2" } -maven-publish = { id = "com.vanniktech.maven.publish", version = "0.27.0" } -spotless = { id = "com.diffplug.gradle.spotless", version = "6.16.0" } +android = { id = "com.android.library", version = "8.7.0" } +maven-publish = { id = "com.vanniktech.maven.publish", version = "0.30.0" } +spotless = { id = "com.diffplug.gradle.spotless", version = "6.25.0" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index bdc9a83b1..5c40527d4 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists