From f14f5f9c458ef5424791a37579182dc9312fa972 Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Fri, 16 Jan 2026 09:37:05 +0100 Subject: [PATCH] Bump to Gradle 9 Signed-off-by: tobiasKaminsky --- gradle.properties | 12 ++++- gradle/verification-keyring.keys | 93 ++++++++++++++++++++++++++++++++ gradle/verification-metadata.xml | 34 ++++++++++++ library/build.gradle | 9 ++-- sample_client/build.gradle | 8 +-- 5 files changed, 148 insertions(+), 8 deletions(-) diff --git a/gradle.properties b/gradle.properties index bdfb4a4ced..f61f809640 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,7 @@ NC_TEST_SERVER_PASSWORD=test NC_TEST_SERVER_USERNAME2=admin NC_TEST_SERVER_PASSWORD2=admin android.useAndroidX=true -android.defaults.buildfeatures.buildconfig=true +# android.defaults.buildfeatures.buildconfig=true android.nonTransitiveRClass=false android.nonFinalResIds=false @@ -22,3 +22,13 @@ kotlin.daemon.jvmargs=-Xmx4096m org.gradle.caching=true org.gradle.parallel=true org.gradle.configureondemand=true +android.defaults.buildfeatures.resvalues=true +android.sdk.defaultTargetSdkToCompileSdkIfUnset=false +android.enableAppCompileTimeRClass=false +android.usesSdkInManifest.disallowed=false +android.uniquePackageNames=false +android.dependency.useConstraints=true +android.r8.strictFullModeForKeepRules=false +android.r8.optimizedResourceShrinking=false +android.builtInKotlin=false +android.newDsl=false diff --git a/gradle/verification-keyring.keys b/gradle/verification-keyring.keys index 0afa0248cc..1e4e5dd05a 100644 --- a/gradle/verification-keyring.keys +++ b/gradle/verification-keyring.keys @@ -1248,6 +1248,34 @@ xxhY1RITnc2C33wjXAW0h+qq7/7Yq3w3/7ncv9sWIzU= =3nku -----END PGP PUBLIC KEY BLOCK----- +pub BF984B4145EA13F7 +uid Egor Andreevici + +sub 84761D363E7B0FC4 +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xsBNBF7rgogBCADU9OwoEFdIgN5U0JU5pI7s3T1T1LeDMzAQ8l2Hq4jFrhnrjcEA +ieDSut1YIv5NTBoZv4CrklaKvvQNUXPvKrFImA4OKhBodKV3wsq2efCATDGa1JAw +VEJx6nJxxMsCLCJvmZsD+YE8/DIBI6jjnjh8jagZVkxkSRPvUIxlZCxytIyqXI0t +O8pLh8+8p5e0PgGb9OoszxEQZdBavsixdpe+0feU9cz0l0jJYx3W4ErZeCGGwNat +UUiW0ctb3iz7BkNhhoV9zepxkSLzCf5zBeyA+WfD34028pAfPpyAfDYXF4x55sVP +/3MdWGB6eU6KzPG2/QV/6or5E+C1yCMrnMy1ABEBAAG0I0Vnb3IgQW5kcmVldmlj +aSA8ZWdvckBzcXVhcmV1cC5jb20+zsBNBF7rgogBCADBMYkuALuhT0pTMowmk/BH +8T9OXsu/a2EkmXf4sZqslcyZF2G3/0iQgXl/fjbVlNyxLi9C/Vl4AAPWLNfDWicw +TAuJIkCX8lyuimpO7FH2Vlr8dwHdyLd+V+LLyTbkfRqKoLDrwg9Uj4CuzH03ABfH +uI9lFKoEZ4zOUunUWugB9rN2wo/BhPmEh/QINqLDXCgYKLDYr8NOLWIfrI8fFuXo +SmjhDKwQzvDjGFXoiBDrwSI7AmaSYAJzgT4f+8yEO9rT2vTrt5wFgcHYjwYKr+RU +yFZh1jHwCSkUQluK4toTeraBxq4yTIKG7cFuer04m2/NhBi3WNwReNQ0E9jBIjNV +ABEBAAHCwHwEGAEIACYWIQQdCoted8Z4p8ckRFq/mEtBReoT9wUCXuuCiAIbDAUJ +A8JnAAAKCRC/mEtBReoT91VqB/9VIYofkP4iSHXbwWrVnc6YDntN6aSvaQlmdinq +bpCC20fG6V93KlIk2xQ91vsm662NJODnvYV3Jt63tDdhgHxFn7UZJ8Vx9EzHslqA +ZZXX0jOQ465YzPPFwCJJP09sHAEb9TwufSCGRijqYsSLReT6bGCCOGM5a4qVPfLF +wU0pSS1Nf1GWk+1zTmfTtfz1cQA6VSHh+jFXVoeFuwFf3WGeY3d9TW1w07cgyQVG +KIqtobtdPkTaKqtvFpiUBg/GqiLijqXgQPBIqy3EaAxhC0qmE5UMgvJ5fD+T4JBG +eQh3BspmZac4oUdxAqzyU5N/Um+w90sQluFqwoVd5FX5i4L3 +=ciUG +-----END PGP PUBLIC KEY BLOCK----- + pub C3BAB45F4AF71FAB uid Yang Song @@ -2699,6 +2727,31 @@ fVJykhD1P8/4BedOSN7DqsnvIUfFaQ== =iddT -----END PGP PUBLIC KEY BLOCK----- +pub 07D3516820BCF6B1 +sub 11F4CE313A637CC1 +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xsBNBF3HgdMBCAC3ET5ipFXdZ9GGMbtsCQ3HGT40saajsNDOdov2nMJxzKkVe3wk +sN3bpgbsqBU9ykVkIhX8zV5+v8DOBzkV0pJ2eLjFa9jBPvNjV+KoK2BAI5pzNzYg +sHPwo1aRXdI0MvCy+7iaIiiGF4/O16AhU4LmALHnaRQZCyuN6VOQ8rlqNvcczwUf +J2DQeLHqR/tsch7S01hGpPAptBeu19PyAlQsntYN0yLCLKoe9dFXWCDkvd1So5LF +6So+ryPqupumBbh4WxCmTp9qwDJYJItjAE0zyPe890FurOtxrFTwtRtX6d6qGKkY +/B4T3r0tTE1EiOUpmSnxmGNItMh7/l5UtnHjABEBAAHOwE0EXceB0wEIAK7dVAoq +ZqBw9twxk6psNcTmIrfQbvjasKl/+PfLCfBNklD/nwe0CLz799fFSFMezCg43ZPC +KIescCQ5t74r0D6O/QTGMpUyZD+w4JhZkMQYy2HjImfMNtPVOWb+XaLku/RloPt9 +MSG2mtA25TTp295N4mzMPKq0r1PzSa8jj4Yfn3AzzSXXLq6PwoDiljQ91IWBvJL2 +IAUAMaxSxzq3UqJnlbX2h0yMM+VC0nbSmbkK8mUNltg1EnngJKV1mKRG+Y1GDmZZ +1Es19tEwUMsV9x1gt05YlecC31woUkL0//8i1kWuWG7dqRMf/8cXaTFA1brVJ33b +/G0VQP/a03UaVd8AEQEAAcLAdgQYAQgAIBYhBGNe5ic0Xzwd1CKy4gfTUWggvPax +BQJdx4HTAhsMAAoJEAfTUWggvPaxrJIIAKJsimeWznAmR9fUH/u0ONaTaEQZlhwB +KvTGn8MPBKAnl50HK5A1AXtEe4KTSR7ohAZ/K0wsmVd4Qi7v0O+A9qTEE/mIb5zT +3kVuFG772cISRGpC+inh8Dtl2G56s7K45tbPz6jdnZHLBY9eUr4X/2ImI7+q2+Z0 +5G6KQm031XGC8BS8A1lG2XOMvb3qnRMnMapeHJ6vjoIeX9iPtO1foSmdkOCJpBs5 +ZEU5nnHzXEjv1tAPsTAPN+vBAduNAOSqGTA6hXparbf1loeHqnsZcedCQMxDQf/t +ja3Do8flUzx8MmQkoXY8i6QmtRdrToqqt1n1jGq9Ka7lRjq0xJHAZak= +=bIm3 +-----END PGP PUBLIC KEY BLOCK----- + pub 083891AD4774845A uid Eclipse Project for JAXB @@ -2984,6 +3037,31 @@ FJXLEW77wWHN+QpRD6BShYZDvUA2mtO0zlB8reU+VCxgnFfm66DkUg== =jYDe -----END PGP PUBLIC KEY BLOCK----- +pub 17A27CE7A60FF5F0 +sub E86F52398AF20855 +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQENBF/AfL8BCADpdkr7+1epRZLZJ6/si+Aj6fmELbzWHZmSSUYmRszcCgPq78xy +bsW/d0grOOEEn9I/5N22gOoEumcFAsN6hn1thjsZyXLmaBfRj+8vri/zigAqrE7W +zk7mKKK3IUuEi1rDqoEwGQbzHFP9UxiIouiWbYGhbkER0E8zDwmPlWZDXoQEzqWT +KcgxAXldiZ6l0FACtxgU3n9oOq0hNQBqfpn22BM2FPjZDrM4rEfbeSt8ztORIviw +7G9oUtYsbTbDvvADCL0wW05GcNz6BvcmDm79d+fk+5gb+GIaHurWuyTtmw5HCeXW +QcKN1S96Wfm5Dz6UMOMeXujlvK1rxmsIIl3BABEBAAG5AQ0EX8B8vwEIAOkm8U7a +QLAJ0FtUuY6ru+JQM3yHhIBA7dADpoyq+f/WN86Es9vw7gavO6tnJPnYh1IozEmQ +4/OaXfKir2G8geLR6hvCsclgXT+RUS9Z60XBFWWhYwX8OrkdfHNnZPeSM8pwiQbh +L8QGfF5AiJzG34ecIPekBWL0l0nYtVblAHQ5oKCv0h2e/cPylyBgJUGCtF0pLKuY +l/jeH44UPz6ZUfTL662zbz7AGn8yX62h5PXyH2ZVuuwA2+vuAZCeTP+cQ7OGlIj/ +EDmggsSrcjVa/G/v+O9lPw9SGnnjoEzX+Ng+tEJNUEx22gvAISajFfM+XWVxVEqs +z0B4U6PLa2feuVsAEQEAAYkBNgQYAQgAIBYhBD8F3anzFzAeknE21BeifOemD/Xw +BQJfwHy/AhsMAAoJEBeifOemD/XwJ3cH/27Z8H7Bx53msUwaNO0RbWJNz65xrecM +w5dvRVjjERYm+5UA5oQdySozlgrpWCAx8q13OMVpGRhodebFEqDZDHsjvJgm10Q7 +Q9fHkP56lCgxt68WPwmof8bkTYC8l9PmPfqdJgQlyX0zqOzxjETCfe+f1gc/m1lx +tgnUeD3/ktyTkYu1hTt8rWM1ceCnZ08bIcjwjFZJDHZl+BmQ52zxUHJ5JAExZNn3 +vWkvn9JHGWPh6M7evaCcNAdv20A9AB45/aZlYRUN8hCI6xpHiMt4/tDbiImzko74 +zzMvjuz0NEEhREM8f0ld3G/7Meh/OudSEgtQAmwJ0UMZWJWaZ0FhnLI= +=5I6i +-----END PGP PUBLIC KEY BLOCK----- + pub 1A2A1C94BDE89688 uid Michael Osipov @@ -3740,6 +3818,21 @@ ZgMBzI+v/ingWOyKpKqhpZR/50PHA0o23zw8P1BGeQOlr4kFNA== =jR+6 -----END PGP PUBLIC KEY BLOCK----- +pub 340B090F727518D8 +uid Thomas Ball + +sub 6EAC8515E0EBB87E +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xjMEaJzwtxYJKwYBBAHaRw8BAQdAmw8gRfE8mqvum1kG2Zlm6t46bkXFvJIHRVBZ +OctVLVe0HlRob21hcyBCYWxsIDx0YmFsbEBnb29nbGUuY29tPs44BGic8LcSCisG +AQQBl1UBBQEBB0A+DJUNDeULyBrFpk3P07SXnEAch7KoDYah6j0PxgnNQgMBCAfC +fgQYFgoAJhYhBMMlnSDa7ErObVfMgzQLCQ9ydRjYBQJonPC3AhsMBQkFo5qAAAoJ +EDQLCQ9ydRjY3/MA/38kMom8Qy8gO3AH31GqVqguYruG848SaIJugavlTT4sAP9D +EfbsFU4kymcgABRT9CyDsNAmI/lxRNEB+pxiNp1/DA== +=FAP2 +-----END PGP PUBLIC KEY BLOCK----- + pub 34918B7D3969D2F5 uid Brad Corso diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 19bb28119a..6e53cb4112 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -53,6 +53,7 @@ + @@ -3860,6 +3861,14 @@ + + + + + + + + @@ -9628,6 +9637,11 @@ + + + + + @@ -10950,6 +10964,11 @@ + + + + + @@ -10958,6 +10977,11 @@ + + + + + @@ -11024,6 +11048,11 @@ + + + + + @@ -12679,6 +12708,11 @@ + + + + + diff --git a/library/build.gradle b/library/build.gradle index 59de3a7d89..1ea6958203 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -18,7 +18,7 @@ buildscript { junit_version = '4.13.2' } dependencies { - classpath 'com.android.tools.build:gradle:8.13.2' + classpath 'com.android.tools.build:gradle:9.0.0' classpath 'com.github.spotbugs.snom:spotbugs-gradle-plugin:6.4.8' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.23.8" @@ -125,21 +125,23 @@ android { buildTypes { debug { - testCoverageEnabled = true + enableUnitTestCoverage true + enableAndroidTestCoverage true } } + lint { abortOnError = true disable 'MissingTranslation', 'GradleDependency', 'VectorPath', 'IconMissingDensityFolder', 'IconDensities', 'GoogleAppIndexingWarning', 'MissingDefaultResource', 'StringFormatInvalid', 'MissingQuantity', 'InvalidPackage' htmlOutput = file("$project.buildDir/reports/lint/lint.html") htmlReport = true warningsAsErrors = true + targetSdk 36 } defaultConfig { minSdkVersion 21 - targetSdkVersion 36 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunnerArgument "TEST_SERVER_URL", "${NC_TEST_SERVER_BASEURL}" @@ -163,6 +165,7 @@ android { testOptions { unitTests.returnDefaultValues = true + targetSdk 36 } packagingOptions { diff --git a/sample_client/build.gradle b/sample_client/build.gradle index 5859050bbe..33013eebca 100644 --- a/sample_client/build.gradle +++ b/sample_client/build.gradle @@ -11,7 +11,7 @@ buildscript { dependencies { - classpath 'com.android.tools.build:gradle:8.13.2' + classpath 'com.android.tools.build:gradle:9.0.0' classpath 'com.github.spotbugs.snom:spotbugs-gradle-plugin:6.4.8' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.23.8" @@ -29,9 +29,6 @@ repositories { android { compileSdk = 36 - lintOptions { - abortOnError = false - } packagingOptions { resources { @@ -49,6 +46,9 @@ android { testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } namespace = 'com.owncloud.android.lib.sampleclient' + lint { + abortOnError false + } } dependencies {