diff --git a/.github/workflows/continuous-delivery-pipeline.yml b/.github/workflows/continuous-delivery-pipeline.yml
index 62bd6829..e283ee39 100644
--- a/.github/workflows/continuous-delivery-pipeline.yml
+++ b/.github/workflows/continuous-delivery-pipeline.yml
@@ -17,10 +17,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Make gradlew executable
run: chmod +x ./gradlew
@@ -47,10 +48,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Make gradlew executable
run: chmod +x ./gradlew
@@ -83,10 +85,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Cache between builds
uses: actions/cache@v2
@@ -120,10 +123,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Cache between builds
uses: actions/cache@v2
@@ -185,10 +189,11 @@ jobs:
- name: Checkout
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Cache between builds
uses: actions/cache@v2
@@ -250,10 +255,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Cache between builds
uses: actions/cache@v2
diff --git a/.github/workflows/promote-release-in-playstore.yml b/.github/workflows/promote-release-in-playstore.yml
index 60b789ed..c71fb656 100644
--- a/.github/workflows/promote-release-in-playstore.yml
+++ b/.github/workflows/promote-release-in-playstore.yml
@@ -42,10 +42,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
with:
- java-version: 11
+ distribution: 'adopt'
+ java-version: 17
- name: Decode Gradle Play Publisher Credentials
id: decode_play_store_credentials
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index fb7f4a8a..b589d56e 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index efd61053..6a40f519 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -155,7 +155,7 @@ android {
}
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
resources.excludes += "META-INF/licenses/ASM"
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index e6f2dd13..be5dd383 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -25,3 +25,17 @@
# @Serializable and @Polymorphic are used at runtime for polymorphic serialization.
-keepattributes RuntimeVisibleAnnotations,AnnotationDefault
+
+# generated by the Android Gradle plugin
+-dontwarn com.google.errorprone.annotations.Immutable
+-dontwarn org.bouncycastle.jsse.BCSSLParameters
+-dontwarn org.bouncycastle.jsse.BCSSLSocket
+-dontwarn org.bouncycastle.jsse.provider.BouncyCastleJsseProvider
+-dontwarn org.conscrypt.Conscrypt$Version
+-dontwarn org.conscrypt.Conscrypt
+-dontwarn org.conscrypt.ConscryptHostnameVerifier
+-dontwarn org.gradle.api.Plugin
+-dontwarn org.openjsse.javax.net.ssl.SSLParameters
+-dontwarn org.openjsse.javax.net.ssl.SSLSocket
+-dontwarn org.openjsse.net.ssl.OpenJSSE
+-dontwarn org.slf4j.impl.StaticLoggerBinder
diff --git a/app/src/main/kotlin/photos/network/ui/SearchBar.kt b/app/src/main/kotlin/photos/network/ui/SearchBar.kt
index 2f25ddb9..318e0f01 100644
--- a/app/src/main/kotlin/photos/network/ui/SearchBar.kt
+++ b/app/src/main/kotlin/photos/network/ui/SearchBar.kt
@@ -42,7 +42,6 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import com.google.accompanist.insets.LocalWindowInsets
-import photos.network.R
class SearchContentProvider : PreviewParameterProvider {
override val values = sequenceOf("Searchphrase", "")
@@ -68,7 +67,7 @@ fun SearchViewPreview(@PreviewParameter(SearchContentProvider::class) search: St
value = textState.value,
onValueChange = { newTextFieldValue -> textState.value = newTextFieldValue },
onSearch = {},
- hint = stringResource(id = R.string.search_hint),
+ hint = stringResource(id = photos.network.ui.common.R.string.search_hint),
)
}
}
@@ -79,7 +78,7 @@ fun Searchbar(
value: TextFieldValue,
onValueChange: (TextFieldValue) -> Unit,
onSearch: () -> Unit = {},
- hint: String = stringResource(id = R.string.search_hint),
+ hint: String = stringResource(id = photos.network.ui.common.R.string.search_hint),
maxLength: Int = 200,
keyboardOptions: KeyboardOptions = KeyboardOptions.Default.copy(
imeAction = ImeAction.Search,
diff --git a/domain/albums/build.gradle.kts b/domain/albums/build.gradle.kts
index c8b1dfb9..c38a9008 100644
--- a/domain/albums/build.gradle.kts
+++ b/domain/albums/build.gradle.kts
@@ -36,7 +36,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/domain/folders/build.gradle.kts b/domain/folders/build.gradle.kts
index 2553f808..7cb0b19a 100644
--- a/domain/folders/build.gradle.kts
+++ b/domain/folders/build.gradle.kts
@@ -36,7 +36,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/domain/photos/build.gradle.kts b/domain/photos/build.gradle.kts
index eb5dd643..e2e8d218 100644
--- a/domain/photos/build.gradle.kts
+++ b/domain/photos/build.gradle.kts
@@ -36,7 +36,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/domain/search/build.gradle.kts b/domain/search/build.gradle.kts
index 2b2d2a3d..a7d325b0 100644
--- a/domain/search/build.gradle.kts
+++ b/domain/search/build.gradle.kts
@@ -36,7 +36,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/domain/settings/build.gradle.kts b/domain/settings/build.gradle.kts
index 4f584a63..4d8636b9 100644
--- a/domain/settings/build.gradle.kts
+++ b/domain/settings/build.gradle.kts
@@ -36,7 +36,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/domain/sharing/build.gradle.kts b/domain/sharing/build.gradle.kts
index 8cd332d8..4a718fd5 100644
--- a/domain/sharing/build.gradle.kts
+++ b/domain/sharing/build.gradle.kts
@@ -35,7 +35,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
}
diff --git a/gradle.properties b/gradle.properties
index d18538fb..2e6c2409 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -6,7 +6,7 @@
# 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.
-org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
+org.gradle.jvmargs=-Xmx4096m -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
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 9d05b60e..8cc6a5fa 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,20 +1,20 @@
[versions]
-compileSdk = "33"
+compileSdk = "34"
# https://kotlinlang.org/
-kotlin = "1.8.10" # 1.8.21
+kotlin = "1.9.0"
# https://github.com/google/ksp
-ksp = "1.8.10-1.0.9" # 1.8.21-1.0.11
+ksp = "1.9.0-1.0.13"
# https://developer.android.com/build/releases/gradle-plugin
-androidGradlePlugin = "7.4.0" # 8.0.0
+androidGradlePlugin = "8.1.0"
# https://developer.android.com/jetpack/compose/bom
-compose-bom = "2023.03.00" # 2023.04.01
+compose-bom = "2023.08.00"
# https://developer.android.com/jetpack/androidx/releases/compose-compiler
-compose-compiler = "1.4.2" # 1.4.7
+compose-compiler = "1.5.1"
# https://detekt.dev/
detekt = "1.22.0"
diff --git a/repository/folders/build.gradle.kts b/repository/folders/build.gradle.kts
index 93dc72f9..075ccf5e 100644
--- a/repository/folders/build.gradle.kts
+++ b/repository/folders/build.gradle.kts
@@ -40,7 +40,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
resources.excludes += "META-INF/licenses/ASM"
diff --git a/repository/photos/build.gradle.kts b/repository/photos/build.gradle.kts
index 8733c37c..4cc653fe 100644
--- a/repository/photos/build.gradle.kts
+++ b/repository/photos/build.gradle.kts
@@ -40,7 +40,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
resources.excludes += "META-INF/licenses/ASM"
diff --git a/repository/settings/build.gradle.kts b/repository/settings/build.gradle.kts
index c9e26ce6..d04bd8c0 100644
--- a/repository/settings/build.gradle.kts
+++ b/repository/settings/build.gradle.kts
@@ -58,7 +58,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
resources.excludes += "META-INF/licenses/ASM"
diff --git a/repository/sharing/build.gradle.kts b/repository/sharing/build.gradle.kts
index c0dedc01..325713f7 100644
--- a/repository/sharing/build.gradle.kts
+++ b/repository/sharing/build.gradle.kts
@@ -57,7 +57,7 @@ android {
freeCompilerArgs = freeCompilerArgs + "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
- packagingOptions {
+ packaging {
resources.excludes += "META-INF/AL2.0"
resources.excludes += "META-INF/LGPL2.1"
resources.excludes += "META-INF/licenses/ASM"
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 151c107c..6cb2a090 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -16,11 +16,10 @@ pluginManagement {
}
plugins {
- kotlin("android").version("1.8.10")
- id("com.android.application").version("7.4.0")
- id("com.android.library").version("7.4.0")
- // kotlin("kapt").version("1.8.10")
- id("com.google.devtools.ksp").version("1.8.10-1.0.9")
+ kotlin("android").version("1.9.0")
+ id("com.android.application").version("8.1.0")
+ id("com.android.library").version("8.1.0")
+ id("com.google.devtools.ksp").version("1.9.0-1.0.13")
}
}
diff --git a/ui/search/src/main/kotlin/photos/network/ui/search/SearchScreen.kt b/ui/search/src/main/kotlin/photos/network/ui/search/SearchScreen.kt
index 9dd37232..74c890d9 100644
--- a/ui/search/src/main/kotlin/photos/network/ui/search/SearchScreen.kt
+++ b/ui/search/src/main/kotlin/photos/network/ui/search/SearchScreen.kt
@@ -115,7 +115,7 @@ internal fun SearchHeader(
.padding(top = 32.dp)
.testTag("SEARCH_HEADER_TITLE")
.fillMaxWidth(),
- text = stringResource(id = R.string.app_name_full),
+ text = stringResource(id = photos.network.ui.common.R.string.app_name_full),
style = MaterialTheme.typography.headlineLarge,
textAlign = TextAlign.Center,
color = Color.White,
diff --git a/ui/settings/build.gradle.kts b/ui/settings/build.gradle.kts
index 37be3f89..758a7396 100644
--- a/ui/settings/build.gradle.kts
+++ b/ui/settings/build.gradle.kts
@@ -44,6 +44,7 @@ android {
buildFeatures {
compose = true
+ buildConfig = true
}
composeOptions {
kotlinCompilerExtensionVersion = libs.versions.compose.compiler.get()
diff --git a/ui/settings/src/main/kotlin/photos/network/ui/settings/composable/SettingsHeader.kt b/ui/settings/src/main/kotlin/photos/network/ui/settings/composable/SettingsHeader.kt
index d36d9479..ddf44ac5 100644
--- a/ui/settings/src/main/kotlin/photos/network/ui/settings/composable/SettingsHeader.kt
+++ b/ui/settings/src/main/kotlin/photos/network/ui/settings/composable/SettingsHeader.kt
@@ -71,7 +71,7 @@ internal fun SettingsHeader(
.padding(top = 24.dp)
.testTag("SETTINGS_HEADER_TITLE")
.fillMaxWidth(),
- text = stringResource(id = R.string.app_name_full),
+ text = stringResource(id = photos.network.ui.common.R.string.app_name_full),
style = MaterialTheme.typography.headlineLarge,
textAlign = TextAlign.Center,
color = Color.White,