Upgrade JGit to 5.3.4.201908231101-r

Improvements in 5.3.4:
- measure FileStoreAttributes per filesystem
  - improve measuring file timestamp resolution
  - measure minimal racy interval
  - use Instant to increase resolution to 1us (limited by FileTime)
  - persist FileStoreAttributes
  - optional asynchronous measurement of FileStoreAttributes
  - directory - FileStore cache
- cache user and system level gitconfig
- fix supportsAtomicCreateNewFile default to true
- fix non-deterministic hash of archives created by ArchiveCommand

Release notes:
https://projects.eclipse.org/projects/technology.jgit/releases/5.3.4

Change-Id: I6771cdccd1d27dd5886d2f75e6c906448e1bed59
This commit is contained in:
Matthias Sohn
2019-08-24 23:33:39 +02:00
committed by David Pursehouse
parent 0d8c6d427e
commit 068dc28e19
3 changed files with 31 additions and 5 deletions

View File

@@ -34,9 +34,12 @@ import com.google.gerrit.testing.ConfigSuite;
import com.google.inject.Injector;
import com.google.inject.Module;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import org.eclipse.jgit.errors.ConfigInvalidException;
import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.SystemReader;
@@ -169,6 +172,16 @@ public abstract class StandaloneSiteTest {
public int getTimezone(long when) {
return oldSystemReader.getTimezone(when);
}
@Override
public StoredConfig getUserConfig() throws IOException, ConfigInvalidException {
return oldSystemReader.getUserConfig();
}
@Override
public StoredConfig getSystemConfig() throws IOException, ConfigInvalidException {
return oldSystemReader.getSystemConfig();
}
});
return oldSystemReader;
}

View File

@@ -15,10 +15,13 @@
package com.google.gerrit.server.util.time;
import com.google.common.annotations.VisibleForTesting;
import java.io.IOException;
import java.sql.Timestamp;
import java.time.Instant;
import java.util.function.LongSupplier;
import org.eclipse.jgit.errors.ConfigInvalidException;
import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.SystemReader;
@@ -104,6 +107,16 @@ public class TimeUtil {
public int getTimezone(long when) {
return delegate.getTimezone(when);
}
@Override
public StoredConfig getUserConfig() throws IOException, ConfigInvalidException {
return delegate.getUserConfig();
}
@Override
public StoredConfig getSystemConfig() throws IOException, ConfigInvalidException {
return delegate.getSystemConfig();
}
}
private TimeUtil() {}

View File

@@ -1,6 +1,6 @@
load("//tools/bzl:maven_jar.bzl", "MAVEN_CENTRAL", "maven_jar")
_JGIT_VERS = "5.3.1.201904271842-r"
_JGIT_VERS = "5.3.4.201908231101-r"
_DOC_VERS = _JGIT_VERS # Set to _JGIT_VERS unless using a snapshot
@@ -40,25 +40,25 @@ def jgit_maven_repos():
name = "jgit-lib",
artifact = "org.eclipse.jgit:org.eclipse.jgit:" + _JGIT_VERS,
repository = _JGIT_REPO,
sha1 = "dba85014483315fa426259bc1b8ccda9373a624b",
sha1 = "9946eb0d678c964e3625f0e1a7e1b6570f8cd3b2",
)
maven_jar(
name = "jgit-servlet",
artifact = "org.eclipse.jgit:org.eclipse.jgit.http.server:" + _JGIT_VERS,
repository = _JGIT_REPO,
sha1 = "3287341fca859340a00b51cb5dd3b78b8e532b39",
sha1 = "72a27084a3d94259a4db9cdd5d5216f336cd5ada",
)
maven_jar(
name = "jgit-archive",
artifact = "org.eclipse.jgit:org.eclipse.jgit.archive:" + _JGIT_VERS,
repository = _JGIT_REPO,
sha1 = "3585027e83fb44a5de2c10ae9ddbf976593bf080",
sha1 = "6c172f339a0e3b8ec41f1110c633e0f95fb50366",
)
maven_jar(
name = "jgit-junit",
artifact = "org.eclipse.jgit:org.eclipse.jgit.junit:" + _JGIT_VERS,
repository = _JGIT_REPO,
sha1 = "3d9ba7e610d6ab5d08dcb1e4ba448b592a34de77",
sha1 = "0a0cecab312275f1a9a5d6a051db71158b4b22c7",
)
def jgit_dep(name):