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 @@