diff --git a/.github/workflows/release_beta.yml b/.github/workflows/release_beta.yml index cd42975..1df8d9c 100644 --- a/.github/workflows/release_beta.yml +++ b/.github/workflows/release_beta.yml @@ -9,10 +9,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - api-level: [ 34 ] - target: [ android-34 ] + api-level: [ 35 ] + target: [ android-35 ] java-version: [ '21' ] - build-tools: [ '31.0.0' ] + build-tools: [ '29.0.3' ] steps: # Checkout code @@ -31,6 +31,11 @@ jobs: - name: Set up Android SDK uses: android-actions/setup-android@v3 + # Ensure required build tools are installed + - name: Install Android Build Tools + run: | + sdkmanager "build-tools;29.0.3" + # Set up Gradle - name: Set up Gradle uses: gradle/actions/setup-gradle@v3 @@ -54,7 +59,7 @@ jobs: GOOGLE_SERVICES: ${{ secrets.GOOGLE_SERVICES }} run: echo $GOOGLE_SERVICES | base64 -di > app/google-services.json - # Create google-services.json + # Create codemonk_service_key.json - name: Create codemonk_service_key.json env: SERVICE_KEY: ${{ secrets.SERVICE_KEY }} @@ -68,15 +73,15 @@ jobs: # Sign APK - name: Sign APK - uses: ilharp/sign-android-release@nightly + uses: r0adkll/sign-android-release@v1 with: - releaseDir: app/build/outputs/apk/release - signingKey: ${{ secrets.KEY_STORE }} - keyAlias: ${{ secrets.KEY_STORE_ALIAS }} + releaseDirectory: app/build/outputs/apk/release + signingKeyBase64: ${{ secrets.KEY_STORE }} + alias: ${{ secrets.KEY_STORE_ALIAS }} keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} keyPassword: ${{ secrets.KEY_STORE_PASSWORD }} - # Run tests + # Run tests - name: Run tests run: ./gradlew testReleaseUnitTest @@ -107,7 +112,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.TOKEN }} # Increment rc version - - name: Bump version + - name: Bump version uses: action-pack/increment@v2 id: increment with: diff --git a/.github/workflows/release_stable.yml b/.github/workflows/release_stable.yml index cf47a74..4d90337 100644 --- a/.github/workflows/release_stable.yml +++ b/.github/workflows/release_stable.yml @@ -9,10 +9,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - api-level: [ 34 ] - target: [ android-34 ] + api-level: [ 35 ] + target: [ android-35 ] java-version: [ '21' ] - build-tools: [ '31.0.0' ] + build-tools: [ '29.0.3' ] steps: # Checkout code @@ -31,6 +31,11 @@ jobs: - name: Set up Android SDK uses: android-actions/setup-android@v3 + # Ensure required build tools are installed + - name: Install Android Build Tools + run: | + sdkmanager "build-tools;29.0.3" + # Set up Gradle - name: Set up Gradle uses: gradle/actions/setup-gradle@v3 @@ -54,7 +59,7 @@ jobs: GOOGLE_SERVICES: ${{ secrets.GOOGLE_SERVICES }} run: echo $GOOGLE_SERVICES | base64 -di > app/google-services.json - # Create google-services.json + # Create codemonk_service_key.json - name: Create codemonk_service_key.json env: SERVICE_KEY: ${{ secrets.SERVICE_KEY }} @@ -66,13 +71,13 @@ jobs: - name: Build APK run: ./gradlew assembleRelease - # Sign APK + # Sign APK - name: Sign APK - uses: ilharp/sign-android-release@nightly + uses: r0adkll/sign-android-release@v1 with: - releaseDir: app/build/outputs/apk/release - signingKey: ${{ secrets.KEY_STORE }} - keyAlias: ${{ secrets.KEY_STORE_ALIAS }} + releaseDirectory: app/build/outputs/apk/release + signingKeyBase64: ${{ secrets.KEY_STORE }} + alias: ${{ secrets.KEY_STORE_ALIAS }} keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} keyPassword: ${{ secrets.KEY_STORE_PASSWORD }} diff --git a/.idea/copyright/CodeMonkProfile.xml b/.idea/copyright/CodeMonkProfile.xml index 8ba9b17..8a0c280 100644 --- a/.idea/copyright/CodeMonkProfile.xml +++ b/.idea/copyright/CodeMonkProfile.xml @@ -1,6 +1,6 @@ - \ No newline at end of file diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml index 6d0ee1c..c224ad5 100644 --- a/.idea/kotlinc.xml +++ b/.idea/kotlinc.xml @@ -1,6 +1,6 @@ - \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 01a027d..11054ff 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. @@ -13,9 +13,9 @@ import AndroidConfig.COMPILE_SDK import AndroidConfig.JAVA_VERSION -import AndroidConfig.JVM_TARGET import AndroidConfig.MIN_SDK import AndroidConfig.TARGET_SDK +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.android.application) @@ -34,8 +34,8 @@ android { applicationId = "com.mca.codemonk" minSdk = MIN_SDK targetSdk = TARGET_SDK - versionCode = 15 - versionName = "1.0.2" + versionCode = 16 + versionName = "1.0.3" testInstrumentationRunner = "com.mca.codemonk.HiltRunner" vectorDrawables { @@ -66,8 +66,10 @@ android { sourceCompatibility = JAVA_VERSION targetCompatibility = JAVA_VERSION } - kotlinOptions { - jvmTarget = JVM_TARGET + kotlin { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_21) + } } buildFeatures { compose = true @@ -76,6 +78,7 @@ android { resources { excludes += "/META-INF/{AL2.0,LGPL2.1}" excludes += "META-INF/DEPENDENCIES" + excludes += "META-INF/INDEX.LIST" } } } diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 3b276c1..2d9b293 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -12,6 +12,11 @@ -keep class com.mca.util.model.* { *; } -keep class * extends com.google.firebase.database.GenericTypeIndicator { *; } +# Suppress SLF4J missing class warnings used by Google Auth/gRPC +-dontwarn org.slf4j.** +-dontwarn com.google.auth.oauth2.Slf4jUtils +-dontwarn com.google.auth.oauth2.Slf4jLoggingHelpers + # Keep Google API classes -keep class com.google.** { *; } diff --git a/app/src/androidTest/java/com/mca/TestUtil.kt b/app/src/androidTest/java/com/mca/TestUtil.kt index 90ff716..de69ead 100644 --- a/app/src/androidTest/java/com/mca/TestUtil.kt +++ b/app/src/androidTest/java/com/mca/TestUtil.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/auth/screen/AuthScreenEndToEndTest.kt b/app/src/androidTest/java/com/mca/auth/screen/AuthScreenEndToEndTest.kt index fe817c0..d1f9092 100644 --- a/app/src/androidTest/java/com/mca/auth/screen/AuthScreenEndToEndTest.kt +++ b/app/src/androidTest/java/com/mca/auth/screen/AuthScreenEndToEndTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/auth/screen/ForgotPasswordScreenTest.kt b/app/src/androidTest/java/com/mca/auth/screen/ForgotPasswordScreenTest.kt index 517b375..129ecd7 100644 --- a/app/src/androidTest/java/com/mca/auth/screen/ForgotPasswordScreenTest.kt +++ b/app/src/androidTest/java/com/mca/auth/screen/ForgotPasswordScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/auth/screen/LoginScreenTest.kt b/app/src/androidTest/java/com/mca/auth/screen/LoginScreenTest.kt index d53981f..e338560 100644 --- a/app/src/androidTest/java/com/mca/auth/screen/LoginScreenTest.kt +++ b/app/src/androidTest/java/com/mca/auth/screen/LoginScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/auth/screen/SignUpScreenTest.kt b/app/src/androidTest/java/com/mca/auth/screen/SignUpScreenTest.kt index d725039..1b79c7d 100644 --- a/app/src/androidTest/java/com/mca/auth/screen/SignUpScreenTest.kt +++ b/app/src/androidTest/java/com/mca/auth/screen/SignUpScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/codemonk/HiltRunner.kt b/app/src/androidTest/java/com/mca/codemonk/HiltRunner.kt index 4a84fd9..086e014 100644 --- a/app/src/androidTest/java/com/mca/codemonk/HiltRunner.kt +++ b/app/src/androidTest/java/com/mca/codemonk/HiltRunner.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/codemonk/di/TestAppModule.kt b/app/src/androidTest/java/com/mca/codemonk/di/TestAppModule.kt index 564fa1d..0ac5ef6 100644 --- a/app/src/androidTest/java/com/mca/codemonk/di/TestAppModule.kt +++ b/app/src/androidTest/java/com/mca/codemonk/di/TestAppModule.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/home/screen/HomeScreenTest.kt b/app/src/androidTest/java/com/mca/home/screen/HomeScreenTest.kt index d539412..b2b151b 100644 --- a/app/src/androidTest/java/com/mca/home/screen/HomeScreenTest.kt +++ b/app/src/androidTest/java/com/mca/home/screen/HomeScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/leaderboard/screen/LeaderBoardScreenTest.kt b/app/src/androidTest/java/com/mca/leaderboard/screen/LeaderBoardScreenTest.kt index b8b81d6..d1b7763 100644 --- a/app/src/androidTest/java/com/mca/leaderboard/screen/LeaderBoardScreenTest.kt +++ b/app/src/androidTest/java/com/mca/leaderboard/screen/LeaderBoardScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/notification/screen/NotificationScreenTest.kt b/app/src/androidTest/java/com/mca/notification/screen/NotificationScreenTest.kt index d944077..100bfea 100644 --- a/app/src/androidTest/java/com/mca/notification/screen/NotificationScreenTest.kt +++ b/app/src/androidTest/java/com/mca/notification/screen/NotificationScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/notification/screen/SendNotificationScreenTest.kt b/app/src/androidTest/java/com/mca/notification/screen/SendNotificationScreenTest.kt index 37b6502..68a2b0e 100644 --- a/app/src/androidTest/java/com/mca/notification/screen/SendNotificationScreenTest.kt +++ b/app/src/androidTest/java/com/mca/notification/screen/SendNotificationScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/post/screen/AnnouncementScreenTest.kt b/app/src/androidTest/java/com/mca/post/screen/AnnouncementScreenTest.kt index 2b2f40a..d329dea 100644 --- a/app/src/androidTest/java/com/mca/post/screen/AnnouncementScreenTest.kt +++ b/app/src/androidTest/java/com/mca/post/screen/AnnouncementScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/post/screen/PostScreenTest.kt b/app/src/androidTest/java/com/mca/post/screen/PostScreenTest.kt index de165ca..c07eb1c 100644 --- a/app/src/androidTest/java/com/mca/post/screen/PostScreenTest.kt +++ b/app/src/androidTest/java/com/mca/post/screen/PostScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/profile/screen/ChangePasswordScreenTest.kt b/app/src/androidTest/java/com/mca/profile/screen/ChangePasswordScreenTest.kt index 15904bd..8a6b16e 100644 --- a/app/src/androidTest/java/com/mca/profile/screen/ChangePasswordScreenTest.kt +++ b/app/src/androidTest/java/com/mca/profile/screen/ChangePasswordScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/profile/screen/EditProfileScreenTest.kt b/app/src/androidTest/java/com/mca/profile/screen/EditProfileScreenTest.kt index 261e180..7dfcdd6 100644 --- a/app/src/androidTest/java/com/mca/profile/screen/EditProfileScreenTest.kt +++ b/app/src/androidTest/java/com/mca/profile/screen/EditProfileScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/profile/screen/ProfileScreenTest.kt b/app/src/androidTest/java/com/mca/profile/screen/ProfileScreenTest.kt index dfa0a14..67527c0 100644 --- a/app/src/androidTest/java/com/mca/profile/screen/ProfileScreenTest.kt +++ b/app/src/androidTest/java/com/mca/profile/screen/ProfileScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/profile/screen/ViewProfileScreenTest.kt b/app/src/androidTest/java/com/mca/profile/screen/ViewProfileScreenTest.kt index 93a1228..7d5bfed 100644 --- a/app/src/androidTest/java/com/mca/profile/screen/ViewProfileScreenTest.kt +++ b/app/src/androidTest/java/com/mca/profile/screen/ViewProfileScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/androidTest/java/com/mca/search/screen/SearchScreenTest.kt b/app/src/androidTest/java/com/mca/search/screen/SearchScreenTest.kt index b555bff..f3da3cf 100644 --- a/app/src/androidTest/java/com/mca/search/screen/SearchScreenTest.kt +++ b/app/src/androidTest/java/com/mca/search/screen/SearchScreenTest.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2025 Prasidh Gopal Anchan + * Copyright © 2026 Prasidh Gopal Anchan * * Licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * You may not use this file except in compliance with the License. diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 729c34c..c6813dc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@