Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "JGit/New and Noteworthy/4.0"

(Created page with "=JGit= ==Features== ==JGit Command Line== ==Build and Release Engineering== = Bug Fixes = [https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&list_id=10006...")
 
Line 1: Line 1:
 
=JGit=
 
=JGit=
==Features==
 
  
==JGit Command Line==
+
==Update to Java 7==
  
==Build and Release Engineering==
+
* Update minimum required Java version from Java 5 to Java 7
 +
* Remove bundles org.eclipse.jgit.console and org.eclipse.jgit.java7 which are no longer needed due to update to Java 7
 +
* Implement AutoClosable and use it to ensure resource held by JGit get released when they are no longer needed
 +
* API cleanup
 +
** Replace release() methods by close() to support AutoClosable
 +
** Delete some deprecated classes and methods, details are available in Clirr API change report
 +
** ObjectReader: remove the walkAdvice API
 +
 
 +
==Configuration==
 +
 
 +
*Remove the gitprefix logic and rework detecting Git system config file
 +
*Allow to manually set the path to the Git system config file
 +
*Add fsck.allowInvalidPersonIdent to accept invalid author/committers
 +
 
 +
==Protocol==
 +
 
 +
*Add support for quiet capability to ReceivePack
 +
*Support agent= capability in wire protocol
 +
*Hooks
 +
**Support for the commit-msg hook
 +
 
 +
==Misc. Enhancements==
 +
 
 +
*Allow ObjectWalk to be filtered by an arbitrary predicate
 +
*Use ANY_DIFF filter in ResolveMerger for bare repositories
 +
*ObjectWalk: make setRetainBody(false) the default
 +
*Make MyersDiff interruptible
 +
*Support --untracked-files in command line status command
 +
*Support "--long" option in DescribeCommand and command line describe command
 +
*Make s3 domain dynamic to support different s3 regions in AmazonS3 transport
 +
*Allow public access to PackIndex
 +
*Enhance ArchiveCommand to allow passing options to underlying stream
 +
 
 +
==Introduce logging==
 +
 
 +
*Use slf4j API to enable logging in JGit
 +
*Use log4j-slf4j to log from org.eclipse.jgit.pgm
 +
 
 +
==Performance Improvements==
 +
 
 +
* Optimize EolAwareOutputStream for bulk output
 +
* Buffer TemporaryBuffer's overflow output stream used by ResolveMerger to improve performance
 +
* RevWalk: Discard uninteresting commits unless RevSort.BOUNDARY
 +
 
 +
==Build and release engineering==
 +
 
 +
* Update build to use eclipse-jarsigner-plugin 1.1.2
 +
* Update build to use Tycho 0.23.0
 +
* Update all standard maven plugins to latest versions
 +
* Update to Jetty 9.2.10
 +
* Update to javax.servlet 3.1
  
 
= Bug Fixes =
 
= Bug Fixes =

Revision as of 15:46, 8 June 2015

JGit

Update to Java 7

  • Update minimum required Java version from Java 5 to Java 7
  • Remove bundles org.eclipse.jgit.console and org.eclipse.jgit.java7 which are no longer needed due to update to Java 7
  • Implement AutoClosable and use it to ensure resource held by JGit get released when they are no longer needed
  • API cleanup
    • Replace release() methods by close() to support AutoClosable
    • Delete some deprecated classes and methods, details are available in Clirr API change report
    • ObjectReader: remove the walkAdvice API

Configuration

  • Remove the gitprefix logic and rework detecting Git system config file
  • Allow to manually set the path to the Git system config file
  • Add fsck.allowInvalidPersonIdent to accept invalid author/committers

Protocol

  • Add support for quiet capability to ReceivePack
  • Support agent= capability in wire protocol
  • Hooks
    • Support for the commit-msg hook

Misc. Enhancements

  • Allow ObjectWalk to be filtered by an arbitrary predicate
  • Use ANY_DIFF filter in ResolveMerger for bare repositories
  • ObjectWalk: make setRetainBody(false) the default
  • Make MyersDiff interruptible
  • Support --untracked-files in command line status command
  • Support "--long" option in DescribeCommand and command line describe command
  • Make s3 domain dynamic to support different s3 regions in AmazonS3 transport
  • Allow public access to PackIndex
  • Enhance ArchiveCommand to allow passing options to underlying stream

Introduce logging

  • Use slf4j API to enable logging in JGit
  • Use log4j-slf4j to log from org.eclipse.jgit.pgm

Performance Improvements

  • Optimize EolAwareOutputStream for bulk output
  • Buffer TemporaryBuffer's overflow output stream used by ResolveMerger to improve performance
  • RevWalk: Discard uninteresting commits unless RevSort.BOUNDARY

Build and release engineering

  • Update build to use eclipse-jarsigner-plugin 1.1.2
  • Update build to use Tycho 0.23.0
  • Update all standard maven plugins to latest versions
  • Update to Jetty 9.2.10
  • Update to javax.servlet 3.1

Bug Fixes

? Bugs and ? enhancement requests were closed

Contributors

The following ?? developers worked on this release of JGit:

Back to the top