Eclipse JGit: Java implementation of Git 5.1.0

This release will be shipped with the simultaneous release 2018-09

Features

  • 434085 Use the same default diff.renameLimit = 400 like native git
  • Parse signature of GPG-signed commits
  • Replace fetch.useminimalnegotation flag with fetch.maxhaves flag
  • Protocol V2
    • FetchV2Request: Rename shallowSince to deepenSince
    • Add fetch support to ProtocolV2Hook
    • #534847 Introduce ProtocolV2Hook
    • Fetch protocol v2: Respond with shallow-info before wanted-refs
    • Support protocol v2 want-ref in UploadPack
  • Allow overriding DfsPackDescription comparator for scanning packs
  • Make DfsConfig public
  • Add ls-files CLI command
  • RepoCommand: Support remove-project node in the manifest parser
  • RepoCommand: record remote branch, group, shallow bit by default
  • SubmoduleAddCommand: Add API to specify the submodule name

Performance Improvements

  • Seek references by prefix in reftable
  • Fix a GC scalability issue when selecting commit bitmaps
  • 485743 Avoid expensive getAllRefsByPeeledObjectId() in PlotWalk constructor

Bug Fixes

  • 536318 Fix replacement quoting for replaceAll in filter command
  • 537969 Fix atomic lock file creation on NFS configured via option core.supportsAtomicCreateNewFile
  • GC: Avoid logging errors when deleting non-empty folders
  • 538286 Fix NoSuchFileException in GC.deleteTempPacksIdx()
  • 538285 Fix NoSuchFileException during directory cleanup in RefDirectory
  • 529400 Fix fetching with duplicate ref updates
  • 529314 Fetch(Process): should tolerate duplicate refspecs
  • 538068 SubmoduleDeinitTest fails on Windows
  • 538068 FilterCommandsTest fails on Windows
  • 538068 ReceivePackAdvertiseRefsHookTest.testSuccess() fails on Windows
  • 537969 Fix wrong warning message in case of lock failures
  • Fix GC run in foreground to not use executor
  • Fix unpredictable ordering of entries in .gitmodules.
  • 537410 Fix ResolveMerger: rebase with autocrlf=true, direct checkout
  • 537790 Ensure that JSch knows HostKeyAlgorithms ssh-rsa and ssh-dss
  • 536324 Abort rename detection in a timely manner if cancelled
  • RepoCommand: Use project names instead of paths for the submodule name
  • Send only 1 flush pkt at the end of v2 fetch
  • 499543 Fix NPE in BlameGenerator.getSourceStart()
  • 537166 HttpClientConnection.getHeaderFields should support multiple values for same header
  • Always send refs' objects despite "filter" in pack
  • 536880 ResolveMerger: don't try needlessly to delete directories
  • 526111 Ensure RacyGitTests don't raise false negatives
  • GC: Trim more EWAHCompressedBitmaps to free unused memory
  • Make Reftable seek* and has* method names more consistent
  • Add progress monitor step to first phase of GC commit selection
  • 536541 Add response message, if any, on HTTP status 404
  • Correctly handle initialization of shallow commits
  • CleanCommand: don't fire WorkingTreeModifiedEvent on dry run
  • DfsPackDescription: Disallow null PackSource

Build and Release Engineering

  • Update Orbit 2018-09 to R20180905201904
  • Update Photon orbit repository to R20180606145124
  • Bazel: Use hyphen instead of underscore in external repository names
  • Update bazel dependencies to match maven dependencies
  • Update Jetty to 9.4.11.v20180605
  • Update org.apache.commons.codec to 1.10.0.v20180409-1845
  • Update org.apache.commons.logging to 1.2.0.v20180409-1502
  • Update org.apache.httpcomponents.httpclient to 4.5.5.v20180409-1525
  • Update org.apache.httpcomponents.httpcore to 4.4.9.v20180409-1525
  • Update Maven plugins
    • build-helper-maven-plugin 3.0.0
    • eclipse-jarsigner-plugin 1.1.5
    • jacoco-maven-plugin 0.8.1
    • maven-clean-plugin 3.1.0
    • maven-compiler-plugin 3.8.0
    • maven-jar-plugin 3.1.2
    • maven-pmd-plugin 3.10.0
    • maven-resources-plugin 3.1.0
    • maven-shade-plugin 3.1.1
    • maven-site-plugin 3.7.1
    • maven-surefire-plugin 2.21.0
    • maven-surefire-report-plugin 2.21.0
    • plexus-compiler-javac 2.8.4
    • spotbugs-maven-plugin 3.1.6
    • wagon-ssh 3.1.0
  • Upgrade Tycho to 1.2.0
Release Date
Release Type
Minor release
This release is part of Eclipse IDE 2018-09