diff options
| author | Danilo M. <danix@danix.xyz> | 2026-11-02 12:59:30 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-11-02 12:59:30 +0100 |
| commit | 5972d8bb6ab2369e298be0e6641d92ab8f1b2f7a (patch) | |
| tree | 5a3b5fe9dfaf9d88965dfb23b857d1f7fef087eb /gradle/libs.versions.toml | |
| parent | d5df91b3c63ca0445035c957c2bb07dc156ec2a8 (diff) | |
| download | HardenedPass-5972d8bb6ab2369e298be0e6641d92ab8f1b2f7a.tar.gz HardenedPass-5972d8bb6ab2369e298be0e6641d92ab8f1b2f7a.zip | |
build(deps): update JGit from 4.5.7 to 5.13.5
JGit 4.5.7 dates from 2019. 5.13 is the last line that needs only Java 8
APIs, so it works with Android's desugaring; it also fixes
GHSA-3p86-9955-h393 (arbitrary file overwrite on checkout).
GHSA-vrpq-qp53-qv56 (XXE in repo manifest parsing) has no 5.x fix but
the app never parses repo manifests.
API changes:
- SshSessionFactory now requires getType().
- CheckoutCommand.setForce is deprecated; setForceRefUpdate is its
documented replacement with the same meaning.
JGit 5 references java.lang.management and javax.management, which
Android lacks; R8 flagged them. Both paths are made unreachable rather
than only silenced:
- WindowCache registers JMX statistics by default; Application.onCreate
now installs a WindowCacheConfig with exposeStatsViaJmx = false.
- GC.gc() takes a PID lock that queries ManagementFactory and would
throw NoClassDefFoundError on a device. GcOperation now runs the GC
steps (packRefs, repack, prune) directly; the lock only guards against
concurrent gc processes, which cannot happen in the app. Aggressive
packing is dropped.
The R8 -dontwarn rules and the lint baseline entries are added only for
those two now-unreachable references.
JGitBehaviourTest covers the operations' command chains plus the GC
steps and passes on 5.13.5. It now ignores the developer's global git
config, which JGit 5 reads (commit.gpgsign made test commits try to
sign).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'gradle/libs.versions.toml')
| -rw-r--r-- | gradle/libs.versions.toml | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e7d761c8..ca3ecaa5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -79,7 +79,7 @@ thirdparty-fastscroll = "me.zhanghai.android.fastscroll:library:1.3.0" thirdparty-flowbinding-android = { module = "io.github.reactivecircus.flowbinding:flowbinding-android", version.ref = "flowbinding" } # JGit upgrades also raise its minimum Java runtime requirements that we cannot satisfy on Android # noinspection GradleDependency -thirdparty-jgit = "org.eclipse.jgit:org.eclipse.jgit:4.5.7.201904151645-r" +thirdparty-jgit = "org.eclipse.jgit:org.eclipse.jgit:5.13.5.202508271544-r" thirdparty-kotlinResult = { module = "com.michael-bull.kotlin-result:kotlin-result", version.ref = "kotlinResult" } thirdparty-kotlinResult-coroutines = { module = "com.michael-bull.kotlin-result:kotlin-result-coroutines", version.ref = "kotlinResult" } thirdparty-leakcanary-plumber = "com.squareup.leakcanary:plumber-android-startup:2.14" |
