New Features
- multi pack index support
- MultiPackIndexWriter: report also object count and ordered packs
- MultiPackIndex: add getObjectCount() method
- MultiPackIndex: add findPosition method
- object size index support
- pgm: new command for the object size index
- WindowCursor: honor pack.useObjectSizeIndex
- GC: Write object size index if config says so
- ObjectDirectoryPackParser: Write object-size index with the pack
- PackInserter: write object-size index with the pack
- Pack: getter for the indexed object size (when available)
- jgit-195 Make Git(Repository repo, boolean closeRepo) public
Performance Improvements
- Shortcut PackWriter reuse selection when possible
- Use representation from LocalObjectToPack if possible to speed up fetch
- Avoid conditional in LocalObjectRepresentation.wasDeltaAttempted to speed up fetch
- WindowCursor: Use the object size index when possible to avoid IO
- DfsReader: Reuse index position when looking up object size
Bug Fixes
- jgit-203 PendingGenerator: drop only buffers loaded in the generator to avoid that a fully loaded commit that was fed into a RevWalk marked as uninteresting would no longer have its buffer afterwards and one needed to parse the commit afresh
- jgit-183 Ensure pack files are closed after git.close()
- Prevent CommitGraphWriter.write() from closing its stream
- jgit-59 SmartHttpFetchConnection: suppress errors on close()
- Fix performance regression in Pack.idx()
- jgit-186 Use chunked encoding when uploading LFS objects
- jgit-48 AdvertisedRequestValidator: fix WantNotValidException caused by race
- jgit-130 Lock reftable auto-refresh to ensure consistency
- DfsReader: Handle correctly invalid object-size indexes
- Fix closing the "preserved" PackDirectory
Build and Release Engineering
Update
- apache sshd to 2.16.0
- bouncycastle to 1.81
- bytebuddy to 1.17.7
- commons-codec to 1.19.0
- commons-compress to 1.28.0
- commons-io to 2.20.0
- commons-lang3 to 3.18.0
- jetty to 12.1.0
- mockito to 5.19.0
- org.assertj:assertj-core to 3.27.4
- Do not include 3rd party dependencies in features
- Add 4.37 target platform for Eclipse IDE 2025-09
- jgit-187 Add Bundle-SCM header to OSGi manifests
- Add dash license check for 3rd party dependencies
- Fix maven builds on JVM 21 and with newer git on MacOS
- Update last jgit release to 7.3.0.202506031305-r