tree 7de9531e3dc530731adcc74ef715992db299b099
parent 2a5b48f7f915b6dde4a8c2a6e235eb8ea452ff38
author Matthias Sohn <matthias.sohn@sap.com> 1703604131 +0100
committer Matthias Sohn <matthias.sohn@sap.com> 1703604223 +0100

Update JGit to b1cc74b75

git log --oneline --no-merges dc27dbd2f..b1cc74b75
b1cc74b75 Update maven plugins
2199b74ce Update org.eclipse.dash:license-tool-plugin to 1.1.0
ff20da9b8 Enable using slf4j 2.x
80a2b067f Update Tycho to 4.0.4
b450ff180 Update mockito to 5.8.0
3cefca094 Add 4.31 target platform and update orbit to 4.31
a00afad54 Update ecj to 3.36.0
d1189a1cd Renormalize line endings based on .gitattributes
eb0dd3a4e Configure .gitattributes to manage line endings
40e97af2d Normalize line endings to LF for all text files
788487316 BasePackFetchConnection: Skip object/ref lookups if local repo is empty
faa50c683 LooseObjects: Use File#exists when possible
1ab2c73b4 Remove invalid spotbugs configuration
5553f3b30 Fix PMD plugin configuration
b2abab271 DfsReader: give subclasses visiblity over the pack bitmap index
e25bf9573 PackBitmapIndex/StoredBitmap: Expose size and counts
52c18ae15 PackWriter/Statistics: Remove the bitmapt hit stats
a2fed4293 Configure Github issue reporting
ab132937f FooterLine: Protect from ill-formed message
4592603b9 API filter for PackStatistics.objectsWithBitmapsFound
db5ce6b5c StartGenerator: Fix parent rewrite with non-default RevFilter
6a5bde568 Update MANIFEST.MF
b05894436 Document option gc.writeCommitGraph
6cdd04aa4 Bump last release version to 6.8.0.202311291450-r
b54592c8e Prepare 6.9.0-SNAPSHOT builds
8ea5409ec BitmapWalkerTest: New test for the walker
5e563e1ba PackWriter: store the objects with bitmaps in the statistics
555224258 FooterLine: First line cannot be a footer
acf97be2d Reapply "Improve footer parsing to allow multiline footers."
e99fb6edc Revert "Improve footer parsing to allow multiline footers."
796fb2e5c Prepare 6.8.1-SNAPSHOT builds
c43560487 JGit v6.8.0.202311291450-r
6514a46a3 Rename method parameter to fix warning about hidden field
29ad7d56e Fix warnings about empty control flow statements
e4abd0123 BitmapIndexImpl: externalize error message
232813bfc Suppress not-externalized string warnings
ff0ec5c61 Silence API error for new method BitmapIndex#addBitmapLookupListener
5a717a705 Update Orbit to orbit-aggregation/2023-12
ef901e9ae Adapt to type parameter added in commons-compress 1.25.0
340cc787a Improve footer parsing to allow multiline footers.
2a739ad2c Make the tests buildable by bazel test
9a05ca42b Prepare 6.8.0-SNAPSHOT builds
7bc697dfd JGit v6.8.0.202311212206-rc1
aab75dba7 BitmapIndex: Add interface to track bitmaps found (or not)
c0d15c2ab BitmapWalker: Remove BitmapWalkListener
cd8322091 Update repository URLs in CONTRIBUTING.md
823b6a45f Fix typo in FileUtils.isStaleFileHandle() javadoc
e4a341db4 Fix branch ref exist check
52af8dbaf gpg.bc: Supress errorprone InsecureCryptoUsage
5c173c632 Adjust javadoc to pass errorprone checks
705e3d686 Update org.apache.commons:commons-compress to 1.25.0
2986d39ae Fix annotation of deprecated constant CONFIG_KEY_STREAM_FILE_TRESHOLD
e612c2522 BitmapWalkListener: Use plain interface with noop instance
4d82d0aa1 BitmapWalkListener: Add method and rename for commits
8af2f785e Update bouncycastle to 1.77
754a1b492 PatchApplier: wrap output's TemporaryBuffer with a CountingOutputStream
d3f711ca1 BitmapWalker: announce walked objects via listener interface
d9568eda9 Prepare 6.8.0-SNAPSHOT builds
8db605620 Update jetty to 10.0.18
ac0a99597 SSH: bump org.apache.sshd to 2.11.0
375710194 JGit v6.8.0.202311151710-m2
91c914622 Fix typo in constant name CONFIG_KEY_STREAM_FILE_TRESHOLD
4aaf8cad9 Simplify StringUtils#commonPrefix
4f18c5095 Optimize RefDirectory.getRefsByPrefix(String...)
fcea1fe49 CommitGraphWriter: Remove unnecesary progress update call
b761a0fc3 Use try-with-resource to ensure UploadPack is closed
32f7db784 Fix hiding field warning
15c6947fd Fix warning for empty code blocks
3652dd437 Fix boxing warnings
3ca786d76 errorprone: remove unnecessary parentheses
50d670133 Update mockito to 5.7.0 and bytebuddy to 1.14.9
6007371e3 Enable Maven reproducible builds
97afcb050 Upgrade bazlets to the latest revision
7ac2d2573 Revert "Optimise Git protocol v2 `ref-prefix` scanning"
38344badf Document GIT_TRACE_PERFORMANCE to show timings
8e9eab799 config-options.md: fix sort order
ac70632f5 ComboBitset: Add Javadoc
593fbf7c3 CommitGraphWriter: Add progress monitor to bloom filter computation
5207bf070 CommitGraphWriter: Use ProgressMonitor from the OutputStream
c46b54eea CommitGraphWriter: Unnest generation-number progress
3937300f3 Optimise Git protocol v2 `ref-prefix` scanning
1c320d0d4 UploadPackTest: Cover using wanted-refs as advertised set
5f563e386 UploadPack: use want-refs as advertised set in fetch v2
093bde518 BasePackFetchConnection: Avoid full clone with useNegotiationTip
7b2005d52 .gitignore: ignore all Maven output directories `target/`
26d6c325d benchmarks: use org.eclipse.jgit-parent as parent pom
8ca649c16 Generate SBOMs using cyclonedx maven plugin
f91afe5f5 DfsPackFile: Do not attempt to read stream if pack doesn't have it
9323b430b PackObjectSizeIndexLoader: Log wrong bytes on exception
c89f7b874 Silence API warnings for API added in 5.13.3
0f078da4e FileBasedConfig: in-process synchronization for load() and save()
f6774fa8e FileUtils.rename(): better retry handling
cb46ee354 FileBasedConfig: ensure correct snapshot if no file
621685d3c DeleteBranchCommand: update config only at the end
ecf94d159 Config.removeSection() telling whether it changed the config
f93ccb7fd RebaseCommand: return correct status on stash apply conflicts
0b5d4c3aa Use net.i2p.crypto.eddsa 0.3.0 from new Orbit build
4d6671b4c PackConfig: fix @since tags
244165fc5 Remove unused API problem filters
f103a1d5c Add support for git config repack.packKeptObjects
f5f4bf0ad Do not exclude objects in locked packs from bitmap processing

Change-Id: I238c263b459b4920beefd7a66f1108c05f1d076a
