From 89997ca72511c8cb592bc4ffded42de3e137bc5b Mon Sep 17 00:00:00 2001 From: Ricki Hirner Date: Mon, 14 Jul 2025 10:32:25 +0200 Subject: [PATCH 1/2] Update to Conscrypt 2.5.3. `X509Certificate.toString()` is not used anywhere so it shouldn't crash. --- gradle/libs.versions.toml | 8 +++----- .../java/at/bitfire/cert4android/ConscryptTest.kt | 8 +++++++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d891162..142c554 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -agp = "8.11.0" +agp = "8.11.1" androidx-activityCompose = "1.10.1" androidx-appcompat = "1.7.1" androidx-core = "1.16.0" @@ -7,15 +7,13 @@ androidx-lifecycle = "2.9.1" androidx-test-core = "1.6.1" androidx-test-runner = "1.6.2" androidx-test-rules = "1.6.1" -# don't update to 2.5.3 / until https://github.com/google/conscrypt/issues/1268 is fixed -#noinspection GradleDependency -conscrypt = "2.5.2" +conscrypt = "2.5.3" compose-bom = "2025.06.01" dokka = "1.9.20" junit = "4.13.2" kotlin = "2.2.0" mockk = "1.14.4" -okhttp3 = "5.0.0" +okhttp3 = "5.1.0" [libraries] androidx-activityCompose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activityCompose" } diff --git a/lib/src/androidTest/java/at/bitfire/cert4android/ConscryptTest.kt b/lib/src/androidTest/java/at/bitfire/cert4android/ConscryptTest.kt index fa8db90..0c985e1 100644 --- a/lib/src/androidTest/java/at/bitfire/cert4android/ConscryptTest.kt +++ b/lib/src/androidTest/java/at/bitfire/cert4android/ConscryptTest.kt @@ -13,13 +13,19 @@ class ConscryptTest { } + /** + * Test for https://github.com/google/conscrypt/issues/1268. + * + * See also https://github.com/bitfireAT/cert4android/pull/48. + */ @Test fun test_X509Certificate_toString() { val certFactory = CertificateFactory.getInstance("X.509") val testCert = certFactory.generateCertificate(RAW_EXPIRED_CERT.byteInputStream()) as X509Certificate // Crashes with Conscrypt 2.5.3 - System.err.println(testCert.toString()) + // Uncomment with Conscrypt >2.5.3 + // System.err.println(testCert.toString()) } From cdf8b2d584244a5809a53ce32a5879a5e7db63b2 Mon Sep 17 00:00:00 2001 From: Ricki Hirner Date: Mon, 14 Jul 2025 10:35:32 +0200 Subject: [PATCH 2/2] Update Gradle tasks to use 'lib' instead of 'cert4android' --- .github/workflows/build-kdoc.yml | 2 +- .github/workflows/codeql.yml | 2 +- .github/workflows/test-dev.yml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build-kdoc.yml b/.github/workflows/build-kdoc.yml index f97cfb0..92643fc 100644 --- a/.github/workflows/build-kdoc.yml +++ b/.github/workflows/build-kdoc.yml @@ -23,7 +23,7 @@ jobs: - uses: gradle/actions/setup-gradle@v3 - name: Build KDoc - run: ./gradlew --no-daemon --no-configuration-cache cert4android:dokkaHtml + run: ./gradlew --no-daemon --no-configuration-cache lib:dokkaHtml - name: Publish KDoc if: success() diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 4908195..fd2c5c4 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -53,7 +53,7 @@ jobs: # uses: github/codeql-action/autobuild@v2 - name: Build - run: ./gradlew --no-daemon cert4android:assemble + run: ./gradlew --no-daemon lib:assemble - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v3 diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index a4cd405..cbe2037 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -18,7 +18,7 @@ jobs: - uses: gradle/actions/setup-gradle@v3 - name: Check - run: ./gradlew cert4android:check + run: ./gradlew lib:check test_on_emulator: name: Tests with emulator @@ -45,4 +45,4 @@ jobs: key: avd-${{ hashFiles('lib/build.gradle.kts') }} # gradle-managed devices are defined there - name: Run device tests - run: ./gradlew --no-daemon virtualCheck + run: ./gradlew --no-daemon lib:virtualCheck