Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
1023598
Bump jgit.version from 7.0.0.202409031743-r to 7.2.0.202503040940-r
dependabot[bot] Mar 5, 2025
99a1467
Use official packRefs instead of internal packRefs
MarkEWaite Mar 6, 2025
529a9a7
Increase to minor version 6.2.0 - JGit upgrade
MarkEWaite Mar 6, 2025
7e2d2b9
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 6, 2025
3eb1e02
Test with an incremental build of Mina SSHD API 2.15.0
MarkEWaite Mar 6, 2025
eeddd7e
Adapt test to latest Mina SSHD 2.15.0
MarkEWaite Mar 6, 2025
1552fd2
Try skipping the push() test
MarkEWaite Mar 6, 2025
d39a075
Revert "Try skipping the push() test"
MarkEWaite Mar 6, 2025
4adf9ba
Check if Windows PushTest failures are jgit specific
MarkEWaite Mar 6, 2025
d6bed6e
Skip PushTest and PushSimpleTest on Windows
MarkEWaite Mar 6, 2025
8141ea1
Remove push tests temporarily
MarkEWaite Mar 6, 2025
23bf296
Revert "Remove push tests temporarily"
MarkEWaite Mar 6, 2025
7e06c52
Ignore PushTest cleanup IOException on Windows
MarkEWaite Mar 7, 2025
111f814
Retry directory removal, ignore failure
MarkEWaite Mar 7, 2025
ec5b51e
Use try with resources in JGit clone_ implementation
MarkEWaite Mar 14, 2025
d50eaa4
Revert "Use try with resources in JGit clone_ implementation"
MarkEWaite Mar 14, 2025
623f3d7
Simplify the Windows ignore in PushTest
MarkEWaite Mar 14, 2025
865694d
Note that PushTest cleanup works locally
MarkEWaite Mar 14, 2025
8d28992
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 15, 2025
2c40957
Better phrasing in pom comment
MarkEWaite Mar 15, 2025
5104ba9
Use try with resources in doCheckoutWithResetAndRetry
MarkEWaite Mar 15, 2025
8a7f10e
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 23, 2025
e8aff6f
Use try with resources in the JGit isBare method
MarkEWaite Mar 23, 2025
fad154b
Open JGit repositories using try with resources
MarkEWaite Mar 23, 2025
f920bd3
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 28, 2025
7164f9b
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 28, 2025
3ad8f82
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Mar 29, 2025
9547992
Use latest mina sshd incremental
MarkEWaite Mar 29, 2025
f18da84
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Apr 7, 2025
47a1b4d
Require the Mina SSHD released 2.15.0-161.vb_200831a_c15b_ version
MarkEWaite Apr 7, 2025
90d48c3
Drop test that varies based on Mina SSHD version
MarkEWaite Apr 9, 2025
e39ba80
Retain the test but remove one assertion
MarkEWaite Apr 9, 2025
2070eae
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Apr 9, 2025
11aa1fa
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Apr 13, 2025
2717849
Remove AcceptFirstConnectionVerifierTest TODO
MarkEWaite Apr 13, 2025
ef80148
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Apr 21, 2025
ec904ba
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite May 2, 2025
e4d1542
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite May 5, 2025
fd5918e
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite May 9, 2025
91789cc
Use JGit 7.2.1
MarkEWaite May 17, 2025
d545aef
Fail test if bare repo cannot be removed
MarkEWaite May 17, 2025
088f24a
Ignore file descriptor leak temporarily
MarkEWaite May 17, 2025
bba03b4
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
Jun 2, 2025
b81ef7c
Use JGit 7.3.0
MarkEWaite Jun 7, 2025
a79db44
Check PushTest file leak is fixed
MarkEWaite Jun 7, 2025
da6ab45
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
MarkEWaite Jun 7, 2025
bb086f4
Revert "Check PushTest file leak is fixed"
MarkEWaite Jun 7, 2025
0b02e7b
narrow test runs to explore failure
MarkEWaite Jun 7, 2025
4a5791f
Further narrow the failure
MarkEWaite Jun 7, 2025
7adb0f7
Revert "Further narrow the failure"
MarkEWaite Jun 7, 2025
0f2473b
Reduce pom diffs to master branch
MarkEWaite Jun 7, 2025
edae56b
Simplify PushTest
MarkEWaite Jun 7, 2025
596081b
Clear JGit WindowCache to avoid file leak
MarkEWaite Jun 9, 2025
7346ffa
Close JGit WindowCache to avoid file handle leak
Jun 12, 2025
a0d1315
Remove PushTest workaround, rely on JGit impl code
MarkEWaite Jun 13, 2025
d2aee9c
Merge branch 'dependabot/maven/jgit.version-7.2.0.202503040940-r' of …
Jun 13, 2025
e4b9828
Merge branch 'master' into dependabot/maven/jgit.version-7.2.0.202503…
Jun 13, 2025
9482db1
Repair import damage
Jun 13, 2025
4c84199
Remove empty line
Jun 13, 2025
2128f54
Add workaroundJGitFileLeak in more places
MarkEWaite Jun 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 2 additions & 7 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@
</scm>

<properties>
<revision>6.1.4</revision>
<revision>6.2.0</revision>
<changelist>-SNAPSHOT</changelist>
<!-- Character set tests fail unless file.encoding is set -->
<argLine>-Dfile.encoding=${project.build.sourceEncoding}</argLine>
<gitHubRepo>jenkinsci/${project.artifactId}-plugin</gitHubRepo>
<!-- https://www.jenkins.io/doc/developer/plugin-development/choosing-jenkins-baseline/ -->
<jenkins.baseline>2.479</jenkins.baseline>
<jenkins.version>${jenkins.baseline}.3</jenkins.version>
<jgit.version>7.0.0.202409031743-r</jgit.version>
<jgit.version>7.3.0.202506031305-r</jgit.version>
<spotbugs.effort>Max</spotbugs.effort>
<spotbugs.threshold>Low</spotbugs.threshold>
<spotless.check.skip>false</spotless.check.skip>
Expand Down Expand Up @@ -145,11 +145,6 @@
<artifactId>org.eclipse.jgit.ssh.apache</artifactId>
<version>${jgit.version}</version>
<exclusions>
<exclusion>
<!-- Prevent inclusion of transitive dependency -->
<groupId>net.i2p.crypto</groupId>
<artifactId>eddsa</artifactId>
</exclusion>
<exclusion>
<!-- Prevent inclusion of transitive dependency, OSGi not needed by git client plugin -->
<groupId>org.apache.sshd</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,12 @@
import java.io.Serializable;
import java.io.Writer;
import java.nio.charset.Charset;
import org.eclipse.jgit.internal.storage.file.WindowCache;
import org.eclipse.jgit.lib.ObjectId;
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.RepositoryCache;
import org.eclipse.jgit.storage.file.WindowCacheConfig;

/**
* Common parts between {@link JGitAPIImpl} and {@link CliGitAPIImpl}.
Expand All @@ -26,6 +29,10 @@
public <T> T withRepository(RepositoryCallback<T> callable) throws GitException, IOException, InterruptedException {
try (Repository repo = getRepository()) {
return callable.invoke(repo, FilePath.localChannel);
} finally {
// TODO Avoid JGit 7.2.0 and 7.3.0 file handle leak

Check warning on line 33 in src/main/java/org/jenkinsci/plugins/gitclient/AbstractGitAPIImpl.java

View check run for this annotation

ci.jenkins.io / Open Tasks Scanner

TODO

NORMAL: Avoid JGit 7.2.0 and 7.3.0 file handle leak
RepositoryCache.clear();
WindowCache.reconfigure(new WindowCacheConfig());
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,14 @@
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.eclipse.jgit.internal.storage.file.WindowCache;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.ObjectId;
import org.eclipse.jgit.lib.Ref;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.RepositoryBuilder;
import org.eclipse.jgit.lib.RepositoryCache;
import org.eclipse.jgit.storage.file.WindowCacheConfig;
import org.eclipse.jgit.transport.RefSpec;
import org.eclipse.jgit.transport.RemoteConfig;
import org.eclipse.jgit.transport.URIish;
Expand Down Expand Up @@ -3036,6 +3039,10 @@
}

return branches;
} finally {
// TODO Avoid JGit 7.2.0 and 7.3.0 file handle leak

Check warning on line 3043 in src/main/java/org/jenkinsci/plugins/gitclient/CliGitAPIImpl.java

View check run for this annotation

ci.jenkins.io / Open Tasks Scanner

TODO

NORMAL: Avoid JGit 7.2.0 and 7.3.0 file handle leak
RepositoryCache.clear();
WindowCache.reconfigure(new WindowCacheConfig());
}
}

Expand Down
Loading