diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 8ffca8ad..d49dfa82 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -22,16 +22,16 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Set up JDK 21 - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: '21' distribution: 'temurin' - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 + uses: gradle/actions/setup-gradle@v5 # Add cache-encryption-key if you set up the GRADLE_ENCRYPTION_KEY secret # with: # cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} @@ -52,7 +52,7 @@ jobs: run: ./gradlew spotlessApply - name: Commit Spotless changes - uses: stefanzweifel/git-auto-commit-action@v5 + uses: stefanzweifel/git-auto-commit-action@v7 with: commit_message: 🤖 Apply Spotless formatting file_pattern: '**/*.kt **/*.kts **/*.java **/*.xml' @@ -68,21 +68,21 @@ jobs: - name: Upload build outputs (APKs) if: ${{ !cancelled() }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: APKs path: '**/build/outputs/apk/debug/*.apk' - name: Upload JVM local test results (XML) if: ${{ !cancelled() }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: local-test-results path: '**/build/test-results/test*UnitTest/TEST-*.xml' - name: Upload lint reports (HTML) if: ${{ !cancelled() }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: lint-reports-html path: '**/build/reports/lint-results-debug.html' @@ -112,19 +112,19 @@ jobs: sudo udevadm trigger --name-match=kvm - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Copy CI gradle.properties run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - name: Set up JDK 21 - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: '21' distribution: 'temurin' - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 + uses: gradle/actions/setup-gradle@v5 - name: Decode google-services.json env: @@ -154,7 +154,7 @@ jobs: - name: Upload test reports if: ${{ !cancelled() }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: test-reports-${{ matrix.api-level }} path: '**/build/reports/androidTests' diff --git a/gradle/init.gradle.kts b/gradle/init.gradle.kts index 85d27225..e1bd5df6 100644 --- a/gradle/init.gradle.kts +++ b/gradle/init.gradle.kts @@ -2,7 +2,7 @@ val ktlintVersion = "1.5.0" initscript { - val spotlessVersion = "7.0.2" + val spotlessVersion = "8.2.1" repositories { mavenCentral() diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3197e418..fe61f92d 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,83 +3,83 @@ appVersionCode = "10" appVersionName = "1.3.0" appVersionWearOffset = "60000000" -agp = "9.0.0" +agp = "9.0.1" bcpkixJdk18on = "1.83" core = "1.7.0" -extensionsXr = "1.1.0" +extensionsXr = "1.2.0" leakcanaryAndroid = "2.14" javaVersion = "17" #dependencies accompanist = "0.37.3" -activityCompose = "1.12.1" +activityCompose = "1.12.4" adaptive = "1.2.0" -apksig = "9.0.0-alpha06" +apksig = "9.0.1" appcompat = "1.7.1" -baselineprofile = "1.5.0-alpha01" +baselineprofile = "1.5.0-alpha03" benchmarkMacroJunit4 = "1.4.1" -camerax = "1.5.2" +camerax = "1.5.3" coilCompose = "3.3.0" coilGif = "3.3.0" -composeBom = "2025.12.00" +composeBom = "2026.02.00" concurrent = "1.3.0" -converterGson = "2.11.0" +converterGson = "3.0.0" coreKtx = "1.17.0" -coreSplashscreen = "1.0.1" +coreSplashscreen = "1.2.0" crashlytics = "3.0.6" -datastore = "1.1.7" +datastore = "1.2.0" espressoCore = "3.7.0" -firebaseBom = "34.4.0" -genaiPrompt = "1.0.0-alpha1" +firebaseBom = "34.9.0" +genaiPrompt = "1.0.0-beta1" googleServices = "4.4.4" -googleOss = "17.3.0" +googleOss = "17.4.0" googleOssPlugin = "0.10.10" -guava = "33.5.0-android" -hiltAndroid = "2.59" +guava = "33.5.0-jre" +hiltAndroid = "2.59.1" hiltLifecycleViewmodel = "1.0.0-alpha03" hiltNavigationCompose = "1.3.0" junit = "4.13.2" junitVersion = "1.3.0" -kotlin = "2.3.0" -ksp = "2.3.4" +kotlin = "2.3.10" +ksp = "2.3.6" kotlinxCoroutines = "1.10.2" -kotlinxSerialization = "2.3.0" -kotlinxSerializationJson = "1.9.0" -kotlinxSerializationProtobuf = "1.9.0" +kotlinxSerialization = "2.3.10" +kotlinxSerializationJson = "1.10.0" +kotlinxSerializationProtobuf = "1.10.0" ktlint = "1.5.0" lifecycleRuntimeKtx = "2.10.0" lifecycleViewmodelNavigation3 = "2.10.0" loggingInterceptor = "5.3.2" -material3 = "1.5.0-alpha10" -media3 = "1.8.0" -navigation3 = "1.0.0" -okhttp = "4.12.0" +material3 = "1.5.0-alpha14" +media3 = "1.9.2" +navigation3 = "1.0.1" +okhttp = "5.3.2" playServicesWearable = "19.0.0" playServicesBaseTesting = "16.2.0" poseDetection = "18.0.0-beta5" profileinstaller = "1.4.1" -retrofit = "2.11.0" -robolectric = "4.16" -spotless = "8.0.0" +retrofit = "3.0.0" +robolectric = "4.16.1" +spotless = "8.2.1" startup = "1.2.0" runner = "1.7.0" -uiTextGoogleFonts = "1.9.3" -uiautomator = "2.4.0-alpha07" -uiTooling = "1.10.0" +uiTextGoogleFonts = "1.10.3" +uiautomator = "2.4.0-beta01" +uiTooling = "1.10.3" validatorPush = "1.0.0-alpha09" watchFacePush = "1.0.0-beta01" wear = "1.3.0" -wearCompose = "1.6.0-alpha09" +wearCompose = "1.6.0-alpha10" wearComposeTooling = "1.5.6" wearRemoteInteractions = "1.1.0" -window = "1.5.0" -lifecycleProcess = "2.9.4" +window = "1.5.1" +lifecycleProcess = "2.10.0" mlkitCommon = "18.11.0" mlkitSegmentation = "16.0.0-beta1" -playServicesBase = "18.9.0" +playServicesBase = "18.10.0" timber = "5.0.1" -workRuntimeKtx = "2.10.5" -xr-compose = "1.0.0-alpha07" +workRuntimeKtx = "2.11.1" +xr-compose = "1.0.0-alpha10" [libraries] accompanist-permissions = { module = "com.google.accompanist:accompanist-permissions", version.ref = "accompanist" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 19a6bdeb..37f78a6a 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-9.3.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/watchface/pack-java/Cargo.lock b/watchface/pack-java/Cargo.lock index 6d7a794c..201f1659 100644 --- a/watchface/pack-java/Cargo.lock +++ b/watchface/pack-java/Cargo.lock @@ -25,14 +25,13 @@ checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d" [[package]] name = "android_logger" -version = "0.13.3" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c494134f746c14dc653a35a4ea5aca24ac368529da5370ecf41fe0341c35772f" +checksum = "dbb4e440d04be07da1f1bf44fb4495ebd58669372fe0cffa6e48595ac5bd88a3" dependencies = [ "android_log-sys", - "env_logger", + "env_filter", "log", - "once_cell", ] [[package]] @@ -288,10 +287,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] -name = "env_logger" -version = "0.10.2" +name = "env_filter" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" +checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" dependencies = [ "log", "regex", @@ -310,7 +309,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys", ] [[package]] @@ -435,25 +434,54 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jni" -version = "0.21.1" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "051ac7b04986c689b0c2e136bd26f992509d4d3e10aff8557ca002d5de7eae39" dependencies = [ "cesu8", "cfg-if", "combine", + "jni-macros", "jni-sys", "log", + "paste", "thiserror", "walkdir", - "windows-sys 0.45.0", + "windows-link 0.2.1", +] + +[[package]] +name = "jni-macros" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cf8534090fdcb2891c0b24a46db1a11154747c83f59efd732d8fb75a7b2e48c" +dependencies = [ + "cesu8", + "proc-macro-crate", + "proc-macro2", + "quote", + "rustc_version", + "syn", ] [[package]] name = "jni-sys" -version = "0.3.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] [[package]] name = "lazy_static" @@ -493,9 +521,9 @@ checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" [[package]] name = "log" -version = "0.4.27" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "memchr" @@ -695,6 +723,12 @@ dependencies = [ "zip", ] +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + [[package]] name = "pem" version = "3.0.5" @@ -1043,6 +1077,15 @@ dependencies = [ "zeroize", ] +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + [[package]] name = "rustix" version = "1.0.8" @@ -1053,7 +1096,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.60.2", + "windows-sys", ] [[package]] @@ -1077,6 +1120,12 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "semver" +version = "1.0.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" + [[package]] name = "serde" version = "1.0.219" @@ -1224,23 +1273,23 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.60.2", + "windows-sys", ] [[package]] name = "thiserror" -version = "1.0.69" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.69" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", @@ -1322,7 +1371,7 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys", ] [[package]] @@ -1332,13 +1381,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" [[package]] -name = "windows-sys" -version = "0.45.0" +name = "windows-link" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-sys" @@ -1346,22 +1392,7 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.3", -] - -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-targets", ] [[package]] @@ -1370,47 +1401,29 @@ version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ - "windows-link", - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", + "windows-link 0.1.3", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", "windows_i686_gnullvm", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - [[package]] name = "windows_aarch64_msvc" version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - [[package]] name = "windows_i686_gnu" version = "0.53.0" @@ -1423,48 +1436,24 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - [[package]] name = "windows_i686_msvc" version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - [[package]] name = "windows_x86_64_gnu" version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - [[package]] name = "windows_x86_64_gnullvm" version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "windows_x86_64_msvc" version = "0.53.0" diff --git a/watchface/pack-java/Cargo.toml b/watchface/pack-java/Cargo.toml index 5cb80ea6..4fdc396c 100644 --- a/watchface/pack-java/Cargo.toml +++ b/watchface/pack-java/Cargo.toml @@ -9,9 +9,9 @@ crate-type = ["dylib"] [dependencies] pack-api = { git = "https://github.com/google/pack.git" } #pack-api = { path = "../pack/pack-api" } -jni = "0.21.1" +jni = "0.22.0" base64 = "0.22.1" -android_logger = "0.13" +android_logger = "0.15" log = "0.4" [workspace]