Merge branch 'stable-4.3' into stable-4.4
* stable-4.3:
Fix computation of id in WorkingTreeIterator with autocrlf and
smudging
Prepare 4.3.2-SNAPSHOT builds
JGit v4.3.1.201605051710-r
Scan loose ref before packed in case gc about to remove the loose
Fix possible NPEs when reporting transport errors
Fix calling of clean/smudge filters from Checkout,MergeCommands
Fix ApplyCommand when result of patch is an empty file
Change-Id: I829f06699f6670e519d04c927bdba4b82df29199
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>diff --git a/.buckversion b/.buckversion
index 561a769..f5fe016 100644
--- a/.buckversion
+++ b/.buckversion
@@ -1 +1 @@
-ca8d6cbac373a690f543c5159eec0116e76187a9
+e64a2e2ada022f81e42be750b774024469551398
diff --git a/.gitignore b/.gitignore
index 6c62199..95ad174 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
-/target
+/.buckd
/.project
/buck-cache
/buck-out
+/target
diff --git a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
index afa0f5c..08ae94a 100644
--- a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
@@ -3,14 +3,14 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.ant.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.apache.tools.ant,
- org.eclipse.jgit.ant.tasks;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.ant.tasks;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
org.hamcrest;version="[1.1.0,2.0.0)",
org.junit;version="[4.0.0,5.0.0)"
diff --git a/org.eclipse.jgit.ant.test/pom.xml b/org.eclipse.jgit.ant.test/pom.xml
index fc1257d..4d7466e 100644
--- a/org.eclipse.jgit.ant.test/pom.xml
+++ b/org.eclipse.jgit.ant.test/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.ant.test</artifactId>
diff --git a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
index 98da2c0..98d618b 100644
--- a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
@@ -2,11 +2,11 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.jgit.ant
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.apache.tools.ant,
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)"
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)"
Bundle-Localization: plugin
Bundle-Vendor: %Provider-Name
-Export-Package: org.eclipse.jgit.ant.tasks;version="4.3.2";
+Export-Package: org.eclipse.jgit.ant.tasks;version="4.4.0";
uses:="org.apache.tools.ant.types,org.apache.tools.ant"
diff --git a/org.eclipse.jgit.ant/pom.xml b/org.eclipse.jgit.ant/pom.xml
index 6fc806f..6a603d0 100644
--- a/org.eclipse.jgit.ant/pom.xml
+++ b/org.eclipse.jgit.ant/pom.xml
@@ -48,7 +48,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.ant</artifactId>
@@ -72,7 +72,7 @@
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
- <version>1.9.2</version>
+ <version>1.9.6</version>
</dependency>
</dependencies>
diff --git a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
index a185d1f..99482ff 100644
--- a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.archive
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
@@ -12,14 +12,14 @@
org.apache.commons.compress.compressors.bzip2;version="[1.4,2.0)",
org.apache.commons.compress.compressors.gzip;version="[1.4,2.0)",
org.apache.commons.compress.compressors.xz;version="[1.4,2.0)",
- org.eclipse.jgit.api;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.api;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
org.osgi.framework;version="[1.3.0,2.0.0)"
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.eclipse.jgit.archive.FormatActivator
-Export-Package: org.eclipse.jgit.archive;version="4.3.2";
+Export-Package: org.eclipse.jgit.archive;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.api,
org.apache.commons.compress.archivers,
diff --git a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
index cf164a9..d4dc56c 100644
--- a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
Bundle-Name: org.eclipse.jgit.archive - Sources
Bundle-SymbolicName: org.eclipse.jgit.archive.source
Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 4.3.2.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.archive;version="4.3.2.qualifier";roots="."
+Bundle-Version: 4.4.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.archive;version="4.4.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.archive/pom.xml b/org.eclipse.jgit.archive/pom.xml
index 7b9c6ac..b371c5b 100644
--- a/org.eclipse.jgit.archive/pom.xml
+++ b/org.eclipse.jgit.archive/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.archive</artifactId>
diff --git a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
index 0872d49..8ce678d 100644
--- a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.jgit.http.apache
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-Localization: plugin
Bundle-Vendor: %Provider-Name
@@ -19,10 +19,10 @@
org.apache.http.impl.client;version="[4.1.0,5.0.0)",
org.apache.http.impl.client.cache;version="[4.1.0,5.0.0)",
org.apache.http.params;version="[4.1.0,5.0.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)"
-Export-Package: org.eclipse.jgit.transport.http.apache;version="4.3.2";
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)"
+Export-Package: org.eclipse.jgit.transport.http.apache;version="4.4.0";
uses:="org.eclipse.jgit.transport.http,
javax.net.ssl,
org.apache.http.client,
diff --git a/org.eclipse.jgit.http.apache/pom.xml b/org.eclipse.jgit.http.apache/pom.xml
index 2b0b58d..4b5c19a 100644
--- a/org.eclipse.jgit.http.apache/pom.xml
+++ b/org.eclipse.jgit.http.apache/pom.xml
@@ -48,7 +48,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.http.apache</artifactId>
diff --git a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
index 848b55e..658b627 100644
--- a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
@@ -2,13 +2,13 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.http.server
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
-Export-Package: org.eclipse.jgit.http.server;version="4.3.2",
- org.eclipse.jgit.http.server.glue;version="4.3.2";
+Export-Package: org.eclipse.jgit.http.server;version="4.4.0",
+ org.eclipse.jgit.http.server.glue;version="4.4.0";
uses:="javax.servlet,javax.servlet.http",
- org.eclipse.jgit.http.server.resolver;version="4.3.2";
+ org.eclipse.jgit.http.server.resolver;version="4.4.0";
uses:="org.eclipse.jgit.transport.resolver,
org.eclipse.jgit.lib,
org.eclipse.jgit.transport,
@@ -17,12 +17,12 @@
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.servlet;version="[2.5.0,3.2.0)",
javax.servlet.http;version="[2.5.0,3.2.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.resolver;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)"
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.resolver;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)"
diff --git a/org.eclipse.jgit.http.server/pom.xml b/org.eclipse.jgit.http.server/pom.xml
index c6de937..513d590 100644
--- a/org.eclipse.jgit.http.server/pom.xml
+++ b/org.eclipse.jgit.http.server/pom.xml
@@ -52,7 +52,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.http.server</artifactId>
diff --git a/org.eclipse.jgit.http.test/.classpath b/org.eclipse.jgit.http.test/.classpath
index 2fdcc94..e1a1a64 100644
--- a/org.eclipse.jgit.http.test/.classpath
+++ b/org.eclipse.jgit.http.test/.classpath
@@ -3,5 +3,6 @@
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="tst"/>
+ <classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
index fefdb66..253679b 100644
--- a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.http.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
@@ -22,23 +22,24 @@
org.eclipse.jetty.util.log;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.security;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.thread;version="[9.0.0,10.0.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.http.server;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.http.server.glue;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.http.server.resolver;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.junit.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http.apache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.resolver;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.http.server;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.http.server.glue;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.http.server.resolver;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.junit.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http.apache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.resolver;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
org.hamcrest.core;version="[1.1.0,2.0.0)",
org.junit;version="[4.0.0,5.0.0)",
org.junit.runner;version="[4.0.0,5.0.0)",
diff --git a/org.eclipse.jgit.http.test/pom.xml b/org.eclipse.jgit.http.test/pom.xml
index 8fc34f7..69ffe49 100644
--- a/org.eclipse.jgit.http.test/pom.xml
+++ b/org.eclipse.jgit.http.test/pom.xml
@@ -51,7 +51,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.http.test</artifactId>
@@ -72,7 +72,6 @@
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>${project.version}</version>
- <scope>test</scope>
</dependency>
<dependency>
@@ -111,6 +110,7 @@
</dependencies>
<build>
+ <sourceDirectory>src/</sourceDirectory>
<testSourceDirectory>tst/</testSourceDirectory>
<testResources>
diff --git a/org.eclipse.jgit.http.test/src/org/eclipse/jgit/http/test/RefsUnreadableInMemoryRepository.java b/org.eclipse.jgit.http.test/src/org/eclipse/jgit/http/test/RefsUnreadableInMemoryRepository.java
new file mode 100644
index 0000000..a1e41d1
--- /dev/null
+++ b/org.eclipse.jgit.http.test/src/org/eclipse/jgit/http/test/RefsUnreadableInMemoryRepository.java
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 2016, Google Inc.
+ * and other copyright owners as documented in the project's IP log.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Eclipse Distribution License v1.0 which
+ * accompanies this distribution, is reproduced below, and is
+ * available at http://www.eclipse.org/org/documents/edl-v10.php
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or
+ * without modification, are permitted provided that the following
+ * conditions are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * - Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials provided
+ * with the distribution.
+ *
+ * - Neither the name of the Eclipse Foundation, Inc. nor the
+ * names of its contributors may be used to endorse or promote
+ * products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+ * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.eclipse.jgit.http.test;
+
+import java.io.IOException;
+
+import org.eclipse.jgit.internal.storage.dfs.DfsRepositoryDescription;
+import org.eclipse.jgit.internal.storage.dfs.InMemoryRepository;
+import org.eclipse.jgit.lib.RefDatabase;
+
+/**
+ * An {@link InMemoryRepository} whose refs can be made unreadable for testing
+ * purposes.
+ */
+class RefsUnreadableInMemoryRepository extends InMemoryRepository {
+
+ private final RefsUnreadableRefDatabase refs;
+
+ private volatile boolean failing;
+
+ RefsUnreadableInMemoryRepository(DfsRepositoryDescription repoDesc) {
+ super(repoDesc);
+ refs = new RefsUnreadableRefDatabase();
+ failing = false;
+ }
+
+ @Override
+ public RefDatabase getRefDatabase() {
+ return refs;
+ }
+
+ /**
+ * Make the ref database unable to scan its refs.
+ * <p>
+ * It may be useful to follow a call to startFailing with a call to
+ * {@link RefDatabase#refresh()}, ensuring the next ref read fails.
+ */
+ void startFailing() {
+ failing = true;
+ }
+
+ private class RefsUnreadableRefDatabase extends MemRefDatabase {
+
+ @Override
+ protected RefCache scanAllRefs() throws IOException {
+ if (failing) {
+ throw new IOException("disk failed, no refs found");
+ } else {
+ return super.scanAllRefs();
+ }
+ }
+ }
+}
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java
index 0f3d3c6..073c751 100644
--- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java
+++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java
@@ -82,9 +82,11 @@
import org.eclipse.jgit.errors.TransportException;
import org.eclipse.jgit.http.server.GitServlet;
import org.eclipse.jgit.internal.JGitText;
+import org.eclipse.jgit.internal.storage.dfs.DfsRepositoryDescription;
import org.eclipse.jgit.junit.TestRepository;
import org.eclipse.jgit.junit.TestRng;
import org.eclipse.jgit.junit.http.AccessEvent;
+import org.eclipse.jgit.junit.http.AppServer;
import org.eclipse.jgit.junit.http.HttpTestCase;
import org.eclipse.jgit.lib.ConfigConstants;
import org.eclipse.jgit.lib.Constants;
@@ -155,18 +157,7 @@ public void setUp() throws Exception {
ServletContextHandler app = server.addContext("/git");
GitServlet gs = new GitServlet();
- gs.setRepositoryResolver(new RepositoryResolver<HttpServletRequest>() {
- public Repository open(HttpServletRequest req, String name)
- throws RepositoryNotFoundException,
- ServiceNotEnabledException {
- if (!name.equals(srcName))
- throw new RepositoryNotFoundException(name);
-
- final Repository db = src.getRepository();
- db.incrementOpen();
- return db;
- }
- });
+ gs.setRepositoryResolver(new TestRepoResolver(src, srcName));
app.addServlet(new ServletHolder(gs), "/*");
ServletContextHandler broken = server.addContext("/bad");
@@ -509,6 +500,51 @@ public void testInvalidWant() throws Exception {
}
@Test
+ public void testFetch_RefsUnreadableOnUpload() throws Exception {
+ AppServer noRefServer = new AppServer();
+ try {
+ final String repoName = "refs-unreadable";
+ RefsUnreadableInMemoryRepository badRefsRepo = new RefsUnreadableInMemoryRepository(
+ new DfsRepositoryDescription(repoName));
+ final TestRepository<Repository> repo = new TestRepository<Repository>(
+ badRefsRepo);
+
+ ServletContextHandler app = noRefServer.addContext("/git");
+ GitServlet gs = new GitServlet();
+ gs.setRepositoryResolver(new TestRepoResolver(repo, repoName));
+ app.addServlet(new ServletHolder(gs), "/*");
+ noRefServer.setUp();
+
+ RevBlob A2_txt = repo.blob("A2");
+ RevCommit A2 = repo.commit().add("A2_txt", A2_txt).create();
+ RevCommit B2 = repo.commit().parent(A2).add("A2_txt", "C2")
+ .add("B2", "B2").create();
+ repo.update(master, B2);
+
+ URIish badRefsURI = new URIish(noRefServer.getURI()
+ .resolve(app.getContextPath() + "/" + repoName).toString());
+
+ Repository dst = createBareRepository();
+ try (Transport t = Transport.open(dst, badRefsURI);
+ FetchConnection c = t.openFetch()) {
+ // We start failing here to exercise the post-advertisement
+ // upload pack handler.
+ badRefsRepo.startFailing();
+ // Need to flush caches because ref advertisement populated them.
+ badRefsRepo.getRefDatabase().refresh();
+ c.fetch(NullProgressMonitor.INSTANCE,
+ Collections.singleton(c.getRef(master)),
+ Collections.<ObjectId> emptySet());
+ fail("Successfully served ref with value " + c.getRef(master));
+ } catch (TransportException err) {
+ assertEquals("internal server error", err.getMessage());
+ }
+ } finally {
+ noRefServer.tearDown();
+ }
+ }
+
+ @Test
public void testPush_NotAuthorized() throws Exception {
final TestRepository src = createTestRepository();
final RevBlob Q_txt = src.blob("new text");
@@ -677,4 +713,28 @@ private void enableReceivePack() throws IOException {
cfg.setBoolean("http", null, "receivepack", true);
cfg.save();
}
+
+ private final class TestRepoResolver
+ implements RepositoryResolver<HttpServletRequest> {
+
+ private final TestRepository<Repository> repo;
+
+ private final String repoName;
+
+ private TestRepoResolver(TestRepository<Repository> repo,
+ String repoName) {
+ this.repo = repo;
+ this.repoName = repoName;
+ }
+
+ public Repository open(HttpServletRequest req, String name)
+ throws RepositoryNotFoundException, ServiceNotEnabledException {
+ if (!name.equals(repoName))
+ throw new RepositoryNotFoundException(name);
+
+ Repository db = repo.getRepository();
+ db.incrementOpen();
+ return db;
+ }
+ }
}
diff --git a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
index bd26ac0..63a8b56 100644
--- a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.junit.http
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
@@ -20,16 +20,16 @@
org.eclipse.jetty.util.component;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.log;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.security;version="[9.0.0,10.0.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.http.server;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.resolver;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.http.server;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.resolver;version="[4.4.0,4.5.0)",
org.junit;version="[4.0.0,5.0.0)"
-Export-Package: org.eclipse.jgit.junit.http;version="4.3.2";
+Export-Package: org.eclipse.jgit.junit.http;version="4.4.0";
uses:="org.eclipse.jgit.transport,
org.eclipse.jgit.junit,
javax.servlet.http,
diff --git a/org.eclipse.jgit.junit.http/pom.xml b/org.eclipse.jgit.junit.http/pom.xml
index 43fdb8a..0c2a947 100644
--- a/org.eclipse.jgit.junit.http/pom.xml
+++ b/org.eclipse.jgit.junit.http/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.junit.http</artifactId>
diff --git a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
index 89171bc..874f2c6 100644
--- a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
@@ -2,27 +2,27 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.junit
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: org.eclipse.jgit.api;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.api.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.dircache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.pack;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.merge;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk.filter;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util.io;version="[4.3.2,4.4.0)",
+Import-Package: org.eclipse.jgit.api;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.api.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.dircache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.merge;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk.filter;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util.io;version="[4.4.0,4.5.0)",
org.junit;version="[4.0.0,5.0.0)"
-Export-Package: org.eclipse.jgit.junit;version="4.3.2";
+Export-Package: org.eclipse.jgit.junit;version="4.4.0";
uses:="org.eclipse.jgit.dircache,
org.eclipse.jgit.lib,
org.eclipse.jgit.revwalk,
diff --git a/org.eclipse.jgit.junit/pom.xml b/org.eclipse.jgit.junit/pom.xml
index bb2b677..35bae0f 100644
--- a/org.eclipse.jgit.junit/pom.xml
+++ b/org.eclipse.jgit.junit/pom.xml
@@ -52,7 +52,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.junit</artifactId>
diff --git a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
index 53d74cf..2a61378 100644
--- a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.lfs.server.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
@@ -27,11 +27,11 @@
org.eclipse.jetty.util.log;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.security;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.thread;version="[9.0.0,10.0.0)",
- org.eclipse.jgit.junit.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.server.fs;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.test;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.junit.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.server.fs;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.test;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
org.hamcrest.core;version="[1.1.0,2.0.0)",
org.junit;version="[4.0.0,5.0.0)",
org.junit.runner;version="[4.0.0,5.0.0)",
diff --git a/org.eclipse.jgit.lfs.server.test/pom.xml b/org.eclipse.jgit.lfs.server.test/pom.xml
index 05ee6f2..5d55701 100644
--- a/org.eclipse.jgit.lfs.server.test/pom.xml
+++ b/org.eclipse.jgit.lfs.server.test/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.lfs.server.test</artifactId>
diff --git a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
index d156900..0ccdc28 100644
--- a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
@@ -2,19 +2,19 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.lfs.server
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
-Export-Package: org.eclipse.jgit.lfs.server;version="4.3.2";
+Export-Package: org.eclipse.jgit.lfs.server;version="4.4.0";
uses:="javax.servlet.http,
org.eclipse.jgit.lfs.lib",
- org.eclipse.jgit.lfs.server.fs;version="4.3.2";
+ org.eclipse.jgit.lfs.server.fs;version="4.4.0";
uses:="javax.servlet,
javax.servlet.http,
org.eclipse.jgit.lfs.server,
org.eclipse.jgit.lfs.lib",
- org.eclipse.jgit.lfs.server.internal;version="4.3.2";x-internal:=true,
- org.eclipse.jgit.lfs.server.s3;version="4.3.2";
+ org.eclipse.jgit.lfs.server.internal;version="4.4.0";x-internal:=true,
+ org.eclipse.jgit.lfs.server.s3;version="4.4.0";
uses:="org.eclipse.jgit.lfs.server,
org.eclipse.jgit.lfs.lib"
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
@@ -24,12 +24,12 @@
javax.servlet.http;version="[3.1.0,4.0.0)",
org.apache.http;version="[4.3.0,5.0.0)",
org.apache.http.client;version="[4.3.0,5.0.0)",
- org.eclipse.jgit.annotations;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http.apache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)"
+ org.eclipse.jgit.annotations;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http.apache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)"
diff --git a/org.eclipse.jgit.lfs.server/pom.xml b/org.eclipse.jgit.lfs.server/pom.xml
index 0a81e33..b56eb59 100644
--- a/org.eclipse.jgit.lfs.server/pom.xml
+++ b/org.eclipse.jgit.lfs.server/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.lfs.server</artifactId>
diff --git a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
index 173b0eb..5fa9248 100644
--- a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
@@ -2,18 +2,18 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.lfs.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
+Import-Package: org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
org.hamcrest.core;version="[1.1.0,2.0.0)",
org.junit;version="[4.0.0,5.0.0)",
org.junit.runner;version="[4.0.0,5.0.0)",
org.junit.runners;version="[4.0.0,5.0.0)"
-Export-Package: org.eclipse.jgit.lfs.test;version="4.3.2";x-friends:="org.eclipse.jgit.lfs.server.test"
+Export-Package: org.eclipse.jgit.lfs.test;version="4.4.0";x-friends:="org.eclipse.jgit.lfs.server.test"
diff --git a/org.eclipse.jgit.lfs.test/pom.xml b/org.eclipse.jgit.lfs.test/pom.xml
index 8e5d28b..7d7cc95 100644
--- a/org.eclipse.jgit.lfs.test/pom.xml
+++ b/org.eclipse.jgit.lfs.test/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.lfs.test</artifactId>
diff --git a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
index 30baf05..ab36c91 100644
--- a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
@@ -2,14 +2,14 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.lfs
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
-Export-Package: org.eclipse.jgit.lfs.errors;version="4.3.2",
- org.eclipse.jgit.lfs.internal;version="4.3.2";x-friends:="org.eclipse.jgit.lfs.test",
- org.eclipse.jgit.lfs.lib;version="4.3.2"
+Export-Package: org.eclipse.jgit.lfs.errors;version="4.4.0",
+ org.eclipse.jgit.lfs.internal;version="4.4.0";x-friends:="org.eclipse.jgit.lfs.test",
+ org.eclipse.jgit.lfs.lib;version="4.4.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)"
+Import-Package: org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)"
diff --git a/org.eclipse.jgit.lfs/pom.xml b/org.eclipse.jgit.lfs/pom.xml
index b0f543d..f264ca2 100644
--- a/org.eclipse.jgit.lfs/pom.xml
+++ b/org.eclipse.jgit.lfs/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.lfs</artifactId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
index 3d13c71..8bc8e12 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
index 81a8c3b..fbfba38 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
index f2597a4..278098c 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.http.apache"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
index ca0fdca..d138eb4 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
index 829ef0a..14eb8fd 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.junit"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
index 6b900d4..ae04e00 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
index 829c056..86166d4 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.lfs"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
index bf96616..33760e1 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
index 73a9a13..3d0e9f2 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.pgm"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
@@ -31,8 +31,8 @@
version="0.0.0"/>
<requires>
- <import feature="org.eclipse.jgit" version="4.3.0" match="equivalent"/>
- <import feature="org.eclipse.jgit.lfs" version="4.3.0" match="equivalent"/>
+ <import feature="org.eclipse.jgit" version="4.4.0" match="equivalent"/>
+ <import feature="org.eclipse.jgit.lfs" version="4.4.0" match="equivalent"/>
</requires>
<plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
index 2628721..ca24de0 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/feature.xml
index 4cb5cb7..4173a1c 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.pgm.source"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/pom.xml
index c5015c6..4006866 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.source.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
index 1410d68..cc41128 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.repository</artifactId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
index 4d49aae..f63414b 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.jgit.source"
label="%featureName"
- version="4.3.2.qualifier"
+ version="4.4.0.qualifier"
provider-name="%providerName">
<description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
index 204026b..e2dbeb0 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
index 4e1f66f..46acbcb 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
@@ -2,4 +2,4 @@
Bundle-ManifestVersion: 2
Bundle-Name: JGit Target Platform Bundle
Bundle-SymbolicName: org.eclipse.jgit.target
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target
index e506aec..d8cacb4 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/mbarbero/fr.obeo.releng.targetplatform -->
-<target name="jgit-4.5" sequenceNumber="1455835295">
+<target name="jgit-4.6" sequenceNumber="1462141948">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.2.13.v20150730"/>
@@ -23,8 +23,8 @@
<repository id="jetty-9.2.13" location="http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.2.13.v20150730/"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
- <unit id="org.apache.ant" version="1.9.4.v201504302020"/>
- <unit id="org.apache.ant.source" version="1.9.4.v201504302020"/>
+ <unit id="org.apache.ant" version="1.9.6.v201510161327"/>
+ <unit id="org.apache.ant.source" version="1.9.6.v201510161327"/>
<unit id="org.apache.commons.compress" version="1.6.0.v201310281400"/>
<unit id="org.apache.commons.compress.source" version="1.6.0.v201310281400"/>
<unit id="org.apache.commons.logging" version="1.1.1.v201101211721"/>
@@ -48,8 +48,8 @@
<unit id="com.google.gson" version="2.2.4.v201311231704"/>
<unit id="com.jcraft.jsch" version="0.1.53.v201508180515"/>
<unit id="com.jcraft.jsch.source" version="0.1.53.v201508180515"/>
- <unit id="org.junit" version="4.11.0.v201303080030"/>
- <unit id="org.junit.source" version="4.11.0.v201303080030"/>
+ <unit id="org.junit" version="4.12.0.v201504281640"/>
+ <unit id="org.junit.source" version="4.12.0.v201504281640"/>
<unit id="javax.servlet" version="3.1.0.v201410161800"/>
<unit id="javax.servlet.source" version="3.1.0.v201410161800"/>
<unit id="org.tukaani.xz" version="1.3.0.v201308270617"/>
@@ -58,11 +58,11 @@
<unit id="org.slf4j.api.source" version="1.7.2.v20121108-1250"/>
<unit id="org.slf4j.impl.log4j12" version="1.7.2.v20131105-2200"/>
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
- <repository location="http://download.eclipse.org/tools/orbit/downloads/drops/S20151204220443/repository/"/>
+ <repository location="http://download.eclipse.org/tools/orbit/downloads/drops/S20160501200945/repository/"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>
- <repository location="http://download.eclipse.org/releases/mars/"/>
+ <repository location="http://download.eclipse.org/releases/neon/"/>
</location>
</locations>
</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.tpd
index 3963361..83a68dd 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.tpd
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.tpd
@@ -1,8 +1,8 @@
-target "jgit-4.5" with source configurePhase
+target "jgit-4.6" with source configurePhase
include "projects/jetty-9.2.13.tpd"
-include "orbit/S20151204220443-Neon.tpd"
+include "orbit/S20160501200945-Neon.tpd"
-location "http://download.eclipse.org/releases/mars/" {
+location "http://download.eclipse.org/releases/neon/" {
org.eclipse.osgi lazy
}
\ No newline at end of file
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20151204220443-Neon.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20160501200945-Neon.tpd
similarity index 86%
rename from org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20151204220443-Neon.tpd
rename to org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20160501200945-Neon.tpd
index 3afdbaa..a5d87e9 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20151204220443-Neon.tpd
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/S20160501200945-Neon.tpd
@@ -1,9 +1,9 @@
-target "S20151204220443-Neon" with source configurePhase
+target "S20160501200945-Neon" with source configurePhase
// see http://download.eclipse.org/tools/orbit/downloads/
-location "http://download.eclipse.org/tools/orbit/downloads/drops/S20151204220443/repository/" {
- org.apache.ant [1.9.4.v201504302020,1.9.4.v201504302020]
- org.apache.ant.source [1.9.4.v201504302020,1.9.4.v201504302020]
+location "http://download.eclipse.org/tools/orbit/downloads/drops/S20160501200945/repository/" {
+ org.apache.ant [1.9.6.v201510161327,1.9.6.v201510161327]
+ org.apache.ant.source [1.9.6.v201510161327,1.9.6.v201510161327]
org.apache.commons.compress [1.6.0.v201310281400,1.6.0.v201310281400]
org.apache.commons.compress.source [1.6.0.v201310281400,1.6.0.v201310281400]
org.apache.commons.logging [1.1.1.v201101211721,1.1.1.v201101211721]
@@ -27,8 +27,8 @@
com.google.gson [2.2.4.v201311231704,2.2.4.v201311231704]
com.jcraft.jsch [0.1.53.v201508180515,0.1.53.v201508180515]
com.jcraft.jsch.source [0.1.53.v201508180515,0.1.53.v201508180515]
- org.junit [4.11.0.v201303080030,4.11.0.v201303080030]
- org.junit.source [4.11.0.v201303080030,4.11.0.v201303080030]
+ org.junit [4.12.0.v201504281640,4.12.0.v201504281640]
+ org.junit.source [4.12.0.v201504281640,4.12.0.v201504281640]
javax.servlet [3.1.0.v201410161800,3.1.0.v201410161800]
javax.servlet.source [3.1.0.v201410161800,3.1.0.v201410161800]
org.tukaani.xz [1.3.0.v201308270617,1.3.0.v201308270617]
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
index 4696b82..c93065c 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
@@ -49,7 +49,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.target</artifactId>
diff --git a/org.eclipse.jgit.packaging/pom.xml b/org.eclipse.jgit.packaging/pom.xml
index 39b4be9..21d79dd 100644
--- a/org.eclipse.jgit.packaging/pom.xml
+++ b/org.eclipse.jgit.packaging/pom.xml
@@ -53,7 +53,7 @@
<groupId>org.eclipse.jgit</groupId>
<artifactId>jgit.tycho.parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>JGit Tycho Parent</name>
@@ -61,7 +61,7 @@
<properties>
<tycho-version>0.23.0</tycho-version>
<tycho-extras-version>${tycho-version}</tycho-extras-version>
- <target-platform>jgit-4.5</target-platform>
+ <target-platform>jgit-4.6</target-platform>
</properties>
<pluginRepositories>
diff --git a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
index 097319d..1f70e98 100644
--- a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
@@ -2,28 +2,28 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.pgm.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-Localization: plugin
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: org.eclipse.jgit.api;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.api.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.diff;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.dircache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="4.3.2",
- org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.merge;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.pgm;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.pgm.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.pgm.opt;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util.io;version="[4.3.2,4.4.0)",
+Import-Package: org.eclipse.jgit.api;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.api.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.diff;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.dircache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="4.4.0",
+ org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.merge;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.pgm;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.pgm.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.pgm.opt;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util.io;version="[4.4.0,4.5.0)",
org.hamcrest.core;bundle-version="[1.1.0,2.0.0)",
org.junit;version="[4.4.0,5.0.0)",
org.kohsuke.args4j;version="[2.0.12,2.1.0)"
diff --git a/org.eclipse.jgit.pgm.test/pom.xml b/org.eclipse.jgit.pgm.test/pom.xml
index 4225323..ad4a3d4 100644
--- a/org.eclipse.jgit.pgm.test/pom.xml
+++ b/org.eclipse.jgit.pgm.test/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.pgm.test</artifactId>
diff --git a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
index ab0c11b..17dd980 100644
--- a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.pgm
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
@@ -26,45 +26,45 @@
org.eclipse.jetty.util.log;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.security;version="[9.0.0,10.0.0)",
org.eclipse.jetty.util.thread;version="[9.0.0,10.0.0)",
- org.eclipse.jgit.api;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.api.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.archive;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.awtui;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.blame;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.diff;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.dircache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.gitrepo;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.ketch;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.pack;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.reftree;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.server;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.server.fs;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lfs.server.s3;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.merge;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.notes;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revplot;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk.filter;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.pack;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http.apache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.resolver;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk.filter;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util.io;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.api;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.api.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.archive;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.awtui;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.blame;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.diff;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.dircache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.gitrepo;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.ketch;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.reftree;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.server;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.server.fs;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lfs.server.s3;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.merge;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.notes;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revplot;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk.filter;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.pack;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http.apache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.resolver;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk.filter;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util.io;version="[4.4.0,4.5.0)",
org.kohsuke.args4j;version="[2.0.12,2.1.0)",
org.kohsuke.args4j.spi;version="[2.0.15,2.1.0)"
-Export-Package: org.eclipse.jgit.console;version="4.3.2";
+Export-Package: org.eclipse.jgit.console;version="4.4.0";
uses:="org.eclipse.jgit.transport,
org.eclipse.jgit.util",
- org.eclipse.jgit.pgm;version="4.3.2";
+ org.eclipse.jgit.pgm;version="4.4.0";
uses:="org.eclipse.jgit.revwalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.pgm.opt,
@@ -75,11 +75,11 @@
org.eclipse.jgit.treewalk,
javax.swing,
org.eclipse.jgit.transport",
- org.eclipse.jgit.pgm.debug;version="4.3.2";
+ org.eclipse.jgit.pgm.debug;version="4.4.0";
uses:="org.eclipse.jgit.util.io,
org.eclipse.jgit.pgm",
- org.eclipse.jgit.pgm.internal;version="4.3.2";x-friends:="org.eclipse.jgit.pgm.test,org.eclipse.jgit.test",
- org.eclipse.jgit.pgm.opt;version="4.3.2";
+ org.eclipse.jgit.pgm.internal;version="4.4.0";x-friends:="org.eclipse.jgit.pgm.test,org.eclipse.jgit.test",
+ org.eclipse.jgit.pgm.opt;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.revwalk,
org.kohsuke.args4j.spi,
diff --git a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
index 3bbff12..b4a85e5 100644
--- a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
Bundle-Name: org.eclipse.jgit.pgm - Sources
Bundle-SymbolicName: org.eclipse.jgit.pgm.source
Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 4.3.2.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="4.3.2.qualifier";roots="."
+Bundle-Version: 4.4.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="4.4.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.pgm/pom.xml b/org.eclipse.jgit.pgm/pom.xml
index 8edb94a..5157344 100644
--- a/org.eclipse.jgit.pgm/pom.xml
+++ b/org.eclipse.jgit.pgm/pom.xml
@@ -50,7 +50,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.pgm</artifactId>
diff --git a/org.eclipse.jgit.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
index 4c47ce5..af35774 100644
--- a/org.eclipse.jgit.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
@@ -2,52 +2,52 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.test
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: com.googlecode.javaewah;version="[0.7.9,0.8.0)",
- org.eclipse.jgit.api;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.api.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.attributes;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.awtui;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.blame;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.diff;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.dircache;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.events;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.fnmatch;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.gitrepo;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.hooks;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.ignore;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.ignore.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.pack;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.internal.storage.reftree;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.junit;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.merge;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.notes;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.patch;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.pgm;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.pgm.internal;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revplot;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk.filter;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.file;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.storage.pack;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.submodule;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.http;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport.resolver;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.treewalk.filter;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util.io;version="[4.3.2,4.4.0)",
+ org.eclipse.jgit.api;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.api.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.attributes;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.awtui;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.blame;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.diff;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.dircache;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.events;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.fnmatch;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.gitrepo;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.hooks;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.ignore;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.ignore.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.internal.storage.reftree;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.junit;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.merge;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.notes;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.patch;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.pgm;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.pgm.internal;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revplot;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk.filter;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.file;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.storage.pack;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.submodule;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.http;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport.resolver;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.treewalk.filter;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util.io;version="[4.4.0,4.5.0)",
org.hamcrest;version="[1.1.0,2.0.0)",
org.junit;version="[4.4.0,5.0.0)",
org.junit.experimental.theories;version="[4.4.0,5.0.0)",
diff --git a/org.eclipse.jgit.test/pom.xml b/org.eclipse.jgit.test/pom.xml
index a52ac4c..bf92211 100644
--- a/org.eclipse.jgit.test/pom.xml
+++ b/org.eclipse.jgit.test/pom.xml
@@ -52,7 +52,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.test</artifactId>
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitCommandTest.java
index 9d87f0c..8a07118 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitCommandTest.java
@@ -68,6 +68,7 @@
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.RefUpdate;
import org.eclipse.jgit.lib.RefUpdate.Result;
+import org.eclipse.jgit.lib.ReflogEntry;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.revwalk.RevCommit;
@@ -436,6 +437,36 @@ public void commitAfterSquashMerge() throws Exception {
}
}
+ @Test
+ public void testReflogs() throws Exception {
+ try (Git git = new Git(db)) {
+ writeTrashFile("f", "1");
+ git.add().addFilepattern("f").call();
+ git.commit().setMessage("c1").call();
+ writeTrashFile("f", "2");
+ git.commit().setMessage("c2").setAll(true).setReflogComment(null)
+ .call();
+ writeTrashFile("f", "3");
+ git.commit().setMessage("c3").setAll(true)
+ .setReflogComment("testRl").call();
+
+ db.getReflogReader(Constants.HEAD).getReverseEntries();
+
+ assertEquals("testRl;commit (initial): c1;", reflogComments(
+ db.getReflogReader(Constants.HEAD).getReverseEntries()));
+ assertEquals("testRl;commit (initial): c1;", reflogComments(
+ db.getReflogReader(db.getBranch()).getReverseEntries()));
+ }
+ }
+
+ private static String reflogComments(List<ReflogEntry> entries) {
+ StringBuffer b = new StringBuffer();
+ for (ReflogEntry e : entries) {
+ b.append(e.getComment()).append(";");
+ }
+ return b.toString();
+ }
+
@Test(expected = WrongRepositoryStateException.class)
public void commitAmendOnInitialShouldFail() throws Exception {
try (Git git = new Git(db)) {
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsInserterTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsInserterTest.java
index 11a0924..74790f7 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsInserterTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsInserterTest.java
@@ -45,6 +45,7 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import java.io.IOException;
@@ -97,6 +98,7 @@ public void testReadFromInserterSmallObjects() throws IOException {
assertEquals(0, db.getObjectDatabase().listPacks().size());
ObjectReader reader = ins.newReader();
+ assertSame(ins, reader.getCreatedFromInserter());
assertEquals("foo", readString(reader.open(id1)));
assertEquals("bar", readString(reader.open(id2)));
assertEquals(0, db.getObjectDatabase().listPacks().size());
@@ -118,6 +120,7 @@ public void testReadFromInserterLargerObjects() throws IOException {
assertEquals(0, db.getObjectDatabase().listPacks().size());
ObjectReader reader = ins.newReader();
+ assertSame(ins, reader.getCreatedFromInserter());
assertTrue(Arrays.equals(data, readStream(reader.open(id1))));
assertEquals(0, db.getObjectDatabase().listPacks().size());
ins.flush();
@@ -136,6 +139,7 @@ public void testReadFromFallback() throws IOException {
assertEquals(1, db.getObjectDatabase().listPacks().size());
ObjectReader reader = ins.newReader();
+ assertSame(ins, reader.getCreatedFromInserter());
assertEquals("foo", readString(reader.open(id1)));
assertEquals("bar", readString(reader.open(id2)));
assertEquals(1, db.getObjectDatabase().listPacks().size());
@@ -154,6 +158,7 @@ public void testReaderResolve() throws IOException {
assertFalse(abbr1.equals(abbr2));
ObjectReader reader = ins.newReader();
+ assertSame(ins, reader.getCreatedFromInserter());
Collection<ObjectId> objs;
objs = reader.resolve(AbbreviatedObjectId.fromString(abbr1));
assertEquals(1, objs.size());
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java
index 5578c03..fbe7dd0 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java
@@ -798,6 +798,7 @@ public void testUntrackedConflicts() throws IOException {
fail("didn't get the expected exception");
} catch (CheckoutConflictException e) {
assertConflict("foo");
+ assertEquals("foo", e.getConflictingFiles()[0]);
assertWorkDir(mkmap("foo", "bar", "other", "other"));
assertIndex(mk("other"));
}
@@ -885,6 +886,7 @@ public void testCheckoutHierarchy() throws IOException {
assertWorkDir(mkmap("a", "a", "b/c", "b/c", "d", "d", "e/f",
"e/f", "e/g", "e/g3"));
assertConflict("e/g");
+ assertEquals("e/g", e.getConflictingFiles()[0]);
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/T0001_PersonIdentTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/T0001_PersonIdentTest.java
index 1515a07..19181f5 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/T0001_PersonIdentTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/T0001_PersonIdentTest.java
@@ -89,12 +89,54 @@ public void nullForEmailShouldThrowIllegalArgumentException() {
@Test
public void testToExternalStringTrimsNameAndEmail() throws Exception {
- PersonIdent personIdent = new PersonIdent(" A U Thor ",
- " author@example.com ");
+ PersonIdent personIdent = new PersonIdent(" \u0010A U Thor ",
+ " author@example.com \u0009");
+
+ assertEquals(" \u0010A U Thor ", personIdent.getName());
+ assertEquals(" author@example.com \u0009", personIdent.getEmailAddress());
String externalString = personIdent.toExternalString();
-
assertTrue(externalString.startsWith("A U Thor <author@example.com>"));
}
+ @Test
+ public void testToExternalStringTrimsAllWhitespace() {
+ String ws = " \u0001 \n ";
+ PersonIdent personIdent = new PersonIdent(ws, ws);
+ assertEquals(ws, personIdent.getName());
+ assertEquals(ws, personIdent.getEmailAddress());
+
+ String externalString = personIdent.toExternalString();
+ assertTrue(externalString.startsWith(" <>"));
+ }
+
+ @Test
+ public void testToExternalStringTrimsOtherBadCharacters() {
+ String name = " Foo\r\n<Bar> ";
+ String email = " Baz>\n\u1234<Quux ";
+ PersonIdent personIdent = new PersonIdent(name, email);
+ assertEquals(name, personIdent.getName());
+ assertEquals(email, personIdent.getEmailAddress());
+
+ String externalString = personIdent.toExternalString();
+ assertTrue(externalString.startsWith("Foo\rBar <Baz\u1234Quux>"));
+ }
+
+ @Test
+ public void testEmptyNameAndEmail() {
+ PersonIdent personIdent = new PersonIdent("", "");
+ assertEquals("", personIdent.getName());
+ assertEquals("", personIdent.getEmailAddress());
+
+ String externalString = personIdent.toExternalString();
+ assertTrue(externalString.startsWith(" <>"));
+ }
+
+ @Test
+ public void testAppendSanitized() {
+ StringBuilder r = new StringBuilder();
+ PersonIdent.appendSanitized(r, " Baz>\n\u1234<Quux ");
+ assertEquals("Baz\u1234Quux", r.toString());
+ }
}
+
diff --git a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
index db339e0..b1c6503 100644
--- a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
@@ -3,14 +3,14 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit.ui
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Vendor: %provider_name
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Export-Package: org.eclipse.jgit.awtui;version="4.3.2"
-Import-Package: org.eclipse.jgit.errors;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.lib;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.nls;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revplot;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.revwalk;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.transport;version="[4.3.2,4.4.0)",
- org.eclipse.jgit.util;version="[4.3.2,4.4.0)"
+Export-Package: org.eclipse.jgit.awtui;version="4.4.0"
+Import-Package: org.eclipse.jgit.errors;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.lib;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.nls;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revplot;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.revwalk;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.transport;version="[4.4.0,4.5.0)",
+ org.eclipse.jgit.util;version="[4.4.0,4.5.0)"
diff --git a/org.eclipse.jgit.ui/pom.xml b/org.eclipse.jgit.ui/pom.xml
index fdd6dad..2784a94 100644
--- a/org.eclipse.jgit.ui/pom.xml
+++ b/org.eclipse.jgit.ui/pom.xml
@@ -52,7 +52,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit.ui</artifactId>
diff --git a/org.eclipse.jgit/META-INF/MANIFEST.MF b/org.eclipse.jgit/META-INF/MANIFEST.MF
index f94c22c..a3d1a92 100644
--- a/org.eclipse.jgit/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit/META-INF/MANIFEST.MF
@@ -2,12 +2,12 @@
Bundle-ManifestVersion: 2
Bundle-Name: %plugin_name
Bundle-SymbolicName: org.eclipse.jgit
-Bundle-Version: 4.3.2.qualifier
+Bundle-Version: 4.4.0.qualifier
Bundle-Localization: plugin
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
-Export-Package: org.eclipse.jgit.annotations;version="4.3.2",
- org.eclipse.jgit.api;version="4.3.2";
+Export-Package: org.eclipse.jgit.annotations;version="4.4.0",
+ org.eclipse.jgit.api;version="4.4.0";
uses:="org.eclipse.jgit.revwalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.diff,
@@ -21,47 +21,50 @@
org.eclipse.jgit.submodule,
org.eclipse.jgit.transport,
org.eclipse.jgit.merge",
- org.eclipse.jgit.api.errors;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.errors",
- org.eclipse.jgit.attributes;version="4.3.2",
- org.eclipse.jgit.blame;version="4.3.2";
+ org.eclipse.jgit.api.errors;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.errors",
+ org.eclipse.jgit.attributes;version="4.4.0",
+ org.eclipse.jgit.blame;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.diff",
- org.eclipse.jgit.diff;version="4.3.2";
+ org.eclipse.jgit.diff;version="4.4.0";
uses:="org.eclipse.jgit.patch,
org.eclipse.jgit.lib,
org.eclipse.jgit.treewalk,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.util",
- org.eclipse.jgit.dircache;version="4.3.2";
+ org.eclipse.jgit.dircache;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.treewalk,
org.eclipse.jgit.util,
org.eclipse.jgit.events,
org.eclipse.jgit.attributes",
- org.eclipse.jgit.errors;version="4.3.2";
+ org.eclipse.jgit.errors;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.internal.storage.pack,
org.eclipse.jgit.transport,
org.eclipse.jgit.dircache",
- org.eclipse.jgit.events;version="4.3.2";uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.fnmatch;version="4.3.2",
- org.eclipse.jgit.gitrepo;version="4.3.2";
+ org.eclipse.jgit.events;version="4.4.0";uses:="org.eclipse.jgit.lib",
+ org.eclipse.jgit.fnmatch;version="4.4.0",
+ org.eclipse.jgit.gitrepo;version="4.4.0";
uses:="org.eclipse.jgit.api,
org.eclipse.jgit.lib,
org.eclipse.jgit.revwalk,
org.xml.sax.helpers,
org.xml.sax",
- org.eclipse.jgit.gitrepo.internal;version="4.3.2";x-internal:=true,
- org.eclipse.jgit.hooks;version="4.3.2";uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.ignore;version="4.3.2",
- org.eclipse.jgit.ignore.internal;version="4.3.2";x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal;version="4.3.2";x-friends:="org.eclipse.jgit.test,org.eclipse.jgit.http.test",
- org.eclipse.jgit.internal.ketch;version="4.3.2";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
- org.eclipse.jgit.internal.storage.dfs;version="4.3.2";x-friends:="org.eclipse.jgit.test,org.eclipse.jgit.http.server",
- org.eclipse.jgit.internal.storage.file;version="4.3.2";
+ org.eclipse.jgit.gitrepo.internal;version="4.4.0";x-internal:=true,
+ org.eclipse.jgit.hooks;version="4.4.0";uses:="org.eclipse.jgit.lib",
+ org.eclipse.jgit.ignore;version="4.4.0",
+ org.eclipse.jgit.ignore.internal;version="4.4.0";x-friends:="org.eclipse.jgit.test",
+ org.eclipse.jgit.internal;version="4.4.0";x-friends:="org.eclipse.jgit.test,org.eclipse.jgit.http.test",
+ org.eclipse.jgit.internal.ketch;version="4.4.0";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
+ org.eclipse.jgit.internal.storage.dfs;version="4.4.0";
+ x-friends:="org.eclipse.jgit.test,
+ org.eclipse.jgit.http.server,
+ org.eclipse.jgit.http.test",
+ org.eclipse.jgit.internal.storage.file;version="4.4.0";
x-friends:="org.eclipse.jgit.test,
org.eclipse.jgit.junit,
org.eclipse.jgit.junit.http,
@@ -69,9 +72,9 @@
org.eclipse.jgit.lfs.server,
org.eclipse.jgit.pgm,
org.eclipse.jgit.pgm.test",
- org.eclipse.jgit.internal.storage.pack;version="4.3.2";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
- org.eclipse.jgit.internal.storage.reftree;version="4.3.2";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
- org.eclipse.jgit.lib;version="4.3.2";
+ org.eclipse.jgit.internal.storage.pack;version="4.4.0";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
+ org.eclipse.jgit.internal.storage.reftree;version="4.4.0";x-friends:="org.eclipse.jgit.junit,org.eclipse.jgit.test,org.eclipse.jgit.pgm",
+ org.eclipse.jgit.lib;version="4.4.0";
uses:="org.eclipse.jgit.revwalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.util,
@@ -81,32 +84,32 @@
org.eclipse.jgit.treewalk,
org.eclipse.jgit.transport,
org.eclipse.jgit.submodule",
- org.eclipse.jgit.merge;version="4.3.2";
+ org.eclipse.jgit.merge;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.treewalk,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.diff,
org.eclipse.jgit.dircache,
org.eclipse.jgit.api",
- org.eclipse.jgit.nls;version="4.3.2",
- org.eclipse.jgit.notes;version="4.3.2";
+ org.eclipse.jgit.nls;version="4.4.0",
+ org.eclipse.jgit.notes;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.treewalk,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.merge",
- org.eclipse.jgit.patch;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.diff",
- org.eclipse.jgit.revplot;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.revwalk",
- org.eclipse.jgit.revwalk;version="4.3.2";
+ org.eclipse.jgit.patch;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.diff",
+ org.eclipse.jgit.revplot;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.revwalk",
+ org.eclipse.jgit.revwalk;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.treewalk,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.diff,
org.eclipse.jgit.revwalk.filter",
- org.eclipse.jgit.revwalk.filter;version="4.3.2";uses:="org.eclipse.jgit.revwalk,org.eclipse.jgit.lib,org.eclipse.jgit.util",
- org.eclipse.jgit.storage.file;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.util",
- org.eclipse.jgit.storage.pack;version="4.3.2";uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.submodule;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.treewalk.filter,org.eclipse.jgit.treewalk",
- org.eclipse.jgit.transport;version="4.3.2";
+ org.eclipse.jgit.revwalk.filter;version="4.4.0";uses:="org.eclipse.jgit.revwalk,org.eclipse.jgit.lib,org.eclipse.jgit.util",
+ org.eclipse.jgit.storage.file;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.util",
+ org.eclipse.jgit.storage.pack;version="4.4.0";uses:="org.eclipse.jgit.lib",
+ org.eclipse.jgit.submodule;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.treewalk.filter,org.eclipse.jgit.treewalk",
+ org.eclipse.jgit.transport;version="4.4.0";
uses:="org.eclipse.jgit.transport.resolver,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.internal.storage.pack,
@@ -118,22 +121,22 @@
org.eclipse.jgit.transport.http,
org.eclipse.jgit.errors,
org.eclipse.jgit.storage.pack",
- org.eclipse.jgit.transport.http;version="4.3.2";uses:="javax.net.ssl",
- org.eclipse.jgit.transport.resolver;version="4.3.2";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.transport",
- org.eclipse.jgit.treewalk;version="4.3.2";
+ org.eclipse.jgit.transport.http;version="4.4.0";uses:="javax.net.ssl",
+ org.eclipse.jgit.transport.resolver;version="4.4.0";uses:="org.eclipse.jgit.lib,org.eclipse.jgit.transport",
+ org.eclipse.jgit.treewalk;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.revwalk,
org.eclipse.jgit.attributes,
org.eclipse.jgit.treewalk.filter,
org.eclipse.jgit.util,
org.eclipse.jgit.dircache",
- org.eclipse.jgit.treewalk.filter;version="4.3.2";uses:="org.eclipse.jgit.treewalk",
- org.eclipse.jgit.util;version="4.3.2";
+ org.eclipse.jgit.treewalk.filter;version="4.4.0";uses:="org.eclipse.jgit.treewalk",
+ org.eclipse.jgit.util;version="4.4.0";
uses:="org.eclipse.jgit.lib,
org.eclipse.jgit.transport.http,
org.eclipse.jgit.storage.file,
org.ietf.jgss",
- org.eclipse.jgit.util.io;version="4.3.2"
+ org.eclipse.jgit.util.io;version="4.4.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
Import-Package: com.googlecode.javaewah;version="[0.7.9,0.8.0)",
diff --git a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
index 3bf02b7..0e3dff8 100644
--- a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
Bundle-Name: org.eclipse.jgit - Sources
Bundle-SymbolicName: org.eclipse.jgit.source
Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 4.3.2.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit;version="4.3.2.qualifier";roots="."
+Bundle-Version: 4.4.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit;version="4.4.0.qualifier";roots="."
diff --git a/org.eclipse.jgit/pom.xml b/org.eclipse.jgit/pom.xml
index 40d15c8..0ae6b5d 100644
--- a/org.eclipse.jgit/pom.xml
+++ b/org.eclipse.jgit/pom.xml
@@ -53,7 +53,7 @@
<parent>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.jgit</artifactId>
diff --git a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
index 992e10b..a99bd7e 100644
--- a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
+++ b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
@@ -21,6 +21,7 @@
atLeastOnePatternIsRequired=At least one pattern is required.
atLeastTwoFiltersNeeded=At least two filters needed.
atomicPushNotSupported=Atomic push not supported.
+atomicRefUpdatesNotSupported=Atomic ref updates not supported
authenticationNotSupported=authentication not supported
badBase64InputCharacterAt=Bad Base64 input character at {0} : {1} (decimal)
badEntryDelimiter=Bad entry delimiter
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java
index 0abb8ba..e54169a 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java
@@ -124,6 +124,8 @@ public class CommitCommand extends GitCommand<RevCommit> {
private String reflogComment;
+ private boolean useDefaultReflogMessage = true;
+
/**
* Setting this option bypasses the pre-commit and commit-msg hooks.
*/
@@ -258,7 +260,7 @@ public RevCommit call() throws GitAPIException, NoHeadException,
RevCommit revCommit = rw.parseCommit(commitId);
RefUpdate ru = repo.updateRef(Constants.HEAD);
ru.setNewObjectId(commitId);
- if (reflogComment != null) {
+ if (!useDefaultReflogMessage) {
ru.setRefLogMessage(reflogComment, false);
} else {
String prefix = amend ? "commit (amend): " //$NON-NLS-1$
@@ -790,10 +792,13 @@ public CommitCommand setInsertChangeId(boolean insertChangeId) {
* Override the message written to the reflog
*
* @param reflogComment
+ * the comment to be written into the reflog or <code>null</code>
+ * to specify that no reflog should be written
* @return {@code this}
*/
public CommitCommand setReflogComment(String reflogComment) {
this.reflogComment = reflogComment;
+ useDefaultReflogMessage = false;
return this;
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/errors/CheckoutConflictException.java b/org.eclipse.jgit/src/org/eclipse/jgit/errors/CheckoutConflictException.java
index db29f3f..b6010b6 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/errors/CheckoutConflictException.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/errors/CheckoutConflictException.java
@@ -56,6 +56,8 @@
public class CheckoutConflictException extends IOException {
private static final long serialVersionUID = 1L;
+ private final String[] conflicting;
+
/**
* Construct a CheckoutConflictException for the specified file
*
@@ -63,6 +65,7 @@ public class CheckoutConflictException extends IOException {
*/
public CheckoutConflictException(String file) {
super(MessageFormat.format(JGitText.get().checkoutConflictWithFile, file));
+ conflicting = new String[] { file };
}
/**
@@ -72,6 +75,16 @@ public CheckoutConflictException(String file) {
*/
public CheckoutConflictException(String[] files) {
super(MessageFormat.format(JGitText.get().checkoutConflictWithFiles, buildList(files)));
+ conflicting = files;
+ }
+
+ /**
+ * @return the relative paths of the conflicting files (relative to the
+ * working directory root).
+ * @since 4.4
+ */
+ public String[] getConflictingFiles() {
+ return conflicting;
}
private static String buildList(String[] files) {
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
index 7740a2b..dc640fe 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
@@ -80,6 +80,7 @@ public static JGitText get() {
/***/ public String atLeastOnePatternIsRequired;
/***/ public String atLeastTwoFiltersNeeded;
/***/ public String atomicPushNotSupported;
+ /***/ public String atomicRefUpdatesNotSupported;
/***/ public String authenticationNotSupported;
/***/ public String badBase64InputCharacterAt;
/***/ public String badEntryDelimiter;
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsInserter.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsInserter.java
index e5ae980..f5673e8 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsInserter.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsInserter.java
@@ -601,6 +601,11 @@ public Set<ObjectId> getShallowCommits() throws IOException {
}
@Override
+ public ObjectInserter getCreatedFromInserter() {
+ return DfsInserter.this;
+ }
+
+ @Override
public void close() {
ctx.close();
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java
index 96f1d54..4eabb03 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java
@@ -1189,7 +1189,7 @@ void representation(DfsObjectRepresentation r, final long pos,
}
}
- private boolean isCorrupt(long offset) {
+ boolean isCorrupt(long offset) {
LongList list = corruptObjects;
if (list == null)
return false;
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsReader.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsReader.java
index 1665c2c..66421e2 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsReader.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsReader.java
@@ -476,7 +476,7 @@ private List<DfsObjectToPack> findAllFromPack(DfsPackFile pack,
PackIndex idx = pack.getPackIndex(this);
for (ObjectToPack otp : objects) {
long p = idx.findOffset(otp);
- if (0 < p) {
+ if (0 < p && !pack.isCorrupt(p)) {
otp.setOffset(p);
tmp.add((DfsObjectToPack) otp);
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/InMemoryRepository.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/InMemoryRepository.java
index b312835..de18ead 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/InMemoryRepository.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/InMemoryRepository.java
@@ -252,11 +252,20 @@ public void setReadAheadBytes(int b) {
}
}
- private class MemRefDatabase extends DfsRefDatabase {
+ /**
+ * A ref database storing all refs in-memory.
+ * <p>
+ * This class is protected (and not private) to facilitate testing using
+ * subclasses of InMemoryRepository.
+ */
+ protected class MemRefDatabase extends DfsRefDatabase {
private final ConcurrentMap<String, Ref> refs = new ConcurrentHashMap<String, Ref>();
private final ReadWriteLock lock = new ReentrantReadWriteLock(true /* fair */);
- MemRefDatabase() {
+ /**
+ * Initialize a new in-memory ref database.
+ */
+ protected MemRefDatabase() {
super(InMemoryRepository.this);
}
@@ -271,7 +280,7 @@ public BatchRefUpdate newBatchUpdate() {
@Override
public void execute(RevWalk walk, ProgressMonitor monitor)
throws IOException {
- if (performsAtomicTransactions()) {
+ if (performsAtomicTransactions() && isAtomic()) {
try {
lock.writeLock().lock();
batch(getCommands());
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java
index fb41172..9820e0e 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java
@@ -136,7 +136,7 @@ public PackParser newPackParser(InputStream in) throws IOException {
@Override
public ObjectReader newReader() {
- return new WindowCursor(db);
+ return new WindowCursor(db, this);
}
@Override
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/WindowCursor.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/WindowCursor.java
index a555e10..a2c0561 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/WindowCursor.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/WindowCursor.java
@@ -53,6 +53,7 @@
import java.util.zip.DataFormatException;
import java.util.zip.Inflater;
+import org.eclipse.jgit.annotations.Nullable;
import org.eclipse.jgit.errors.IncorrectObjectTypeException;
import org.eclipse.jgit.errors.MissingObjectException;
import org.eclipse.jgit.errors.StoredObjectRepresentationNotAvailableException;
@@ -69,6 +70,7 @@
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.InflaterCache;
import org.eclipse.jgit.lib.ObjectId;
+import org.eclipse.jgit.lib.ObjectInserter;
import org.eclipse.jgit.lib.ObjectLoader;
import org.eclipse.jgit.lib.ObjectReader;
import org.eclipse.jgit.lib.ProgressMonitor;
@@ -84,10 +86,20 @@ final class WindowCursor extends ObjectReader implements ObjectReuseAsIs {
private DeltaBaseCache baseCache;
+ @Nullable
+ private final ObjectInserter createdFromInserter;
+
final FileObjectDatabase db;
WindowCursor(FileObjectDatabase db) {
this.db = db;
+ this.createdFromInserter = null;
+ }
+
+ WindowCursor(FileObjectDatabase db,
+ @Nullable ObjectDirectoryInserter createdFromInserter) {
+ this.db = db;
+ this.createdFromInserter = createdFromInserter;
}
DeltaBaseCache getDeltaBaseCache() {
@@ -329,6 +341,12 @@ int getStreamFileThreshold() {
return WindowCache.getStreamFileThreshold();
}
+ @Override
+ @Nullable
+ public ObjectInserter getCreatedFromInserter() {
+ return createdFromInserter;
+ }
+
/** Release the current window cursor. */
@Override
public void close() {
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java
index a55a9f5..1cccd79 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java
@@ -98,8 +98,12 @@ public void execute(RevWalk rw, ProgressMonitor monitor)
}
if (c.getType() == UPDATE_NONFASTFORWARD) {
c.setResult(REJECTED_NONFASTFORWARD);
- ReceiveCommand.abort(getCommands());
- return;
+ if (isAtomic()) {
+ ReceiveCommand.abort(getCommands());
+ return;
+ } else {
+ continue;
+ }
}
}
todo.add(new Command(rw, c));
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/BatchRefUpdate.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/BatchRefUpdate.java
index d7e9308..35cadd3 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/BatchRefUpdate.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/BatchRefUpdate.java
@@ -89,6 +89,9 @@ public class BatchRefUpdate {
/** Push certificate associated with this update. */
private PushCertificate pushCert;
+ /** Whether updates should be atomic. */
+ private boolean atomic;
+
/**
* Initialize a new batch update.
*
@@ -98,6 +101,7 @@ public class BatchRefUpdate {
protected BatchRefUpdate(RefDatabase refdb) {
this.refdb = refdb;
this.commands = new ArrayList<ReceiveCommand>();
+ this.atomic = refdb.performsAtomicTransactions();
}
/**
@@ -200,6 +204,36 @@ public boolean isRefLogDisabled() {
}
/**
+ * Request that all updates in this batch be performed atomically.
+ * <p>
+ * When atomic updates are used, either all commands apply successfully, or
+ * none do. Commands that might have otherwise succeeded are rejected with
+ * {@code REJECTED_OTHER_REASON}.
+ * <p>
+ * This method only works if the underlying ref database supports atomic
+ * transactions, i.e. {@link RefDatabase#performsAtomicTransactions()} returns
+ * true. Calling this method with true if the underlying ref database does not
+ * support atomic transactions will cause all commands to fail with {@code
+ * REJECTED_OTHER_REASON}.
+ *
+ * @param atomic whether updates should be atomic.
+ * @return {@code this}
+ * @since 4.4
+ */
+ public BatchRefUpdate setAtomic(boolean atomic) {
+ this.atomic = atomic;
+ return this;
+ }
+
+ /**
+ * @return atomic whether updates should be atomic.
+ * @since 4.4
+ */
+ public boolean isAtomic() {
+ return atomic;
+ }
+
+ /**
* Set a push certificate associated with this update.
* <p>
* This usually includes commands to update the refs in this batch, but is not
@@ -271,6 +305,10 @@ public BatchRefUpdate addCommand(Collection<ReceiveCommand> cmd) {
* <p>
* The default implementation of this method performs a sequential reference
* update over each reference.
+ * <p>
+ * Implementations must respect the atomicity requirements of the underlying
+ * database as described in {@link #setAtomic(boolean)} and {@link
+ * RefDatabase#performsAtomicTransactions()}.
*
* @param walk
* a RevWalk to parse tags in case the storage system wants to
@@ -284,6 +322,17 @@ public BatchRefUpdate addCommand(Collection<ReceiveCommand> cmd) {
*/
public void execute(RevWalk walk, ProgressMonitor monitor)
throws IOException {
+
+ if (atomic && !refdb.performsAtomicTransactions()) {
+ for (ReceiveCommand c : commands) {
+ if (c.getResult() == NOT_ATTEMPTED) {
+ c.setResult(REJECTED_OTHER_REASON,
+ JGitText.get().atomicRefUpdatesNotSupported);
+ }
+ }
+ return;
+ }
+
monitor.beginTask(JGitText.get().updatingReferences, commands.size());
List<ReceiveCommand> commands2 = new ArrayList<ReceiveCommand>(
commands.size());
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java
index e48386d..088dcdf 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java
@@ -855,7 +855,8 @@ private ConfigSnapshot unsetSection(final ConfigSnapshot srcState,
*
* <pre>
* [section "subsection"]
- * name = value
+ * name = value1
+ * name = value2
* </pre>
*
* @param section
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java
index d9da65f..4c51279 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java
@@ -143,7 +143,18 @@ public PackParser newPackParser(InputStream in) throws IOException {
}
public ObjectReader newReader() {
- return delegate().newReader();
+ final ObjectReader dr = delegate().newReader();
+ return new ObjectReader.Filter() {
+ @Override
+ protected ObjectReader delegate() {
+ return dr;
+ }
+
+ @Override
+ public ObjectInserter getCreatedFromInserter() {
+ return ObjectInserter.Filter.this;
+ }
+ };
}
public void flush() throws IOException {
@@ -398,6 +409,9 @@ public abstract ObjectId insert(int objectType, long length, InputStream in)
* visible to the repository. The returned reader should only be used from
* the same thread as the inserter. Objects written by this inserter may not
* be visible to {@code this.newReader().newReader()}.
+ * <p>
+ * The returned reader should return this inserter instance from {@link
+ * ObjectReader#getCreatedFromInserter()}.
*
* @since 3.5
* @return reader for any object, including an object recently inserted by
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java
index 77cfb03..b23145d 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java
@@ -50,6 +50,7 @@
import java.util.List;
import java.util.Set;
+import org.eclipse.jgit.annotations.Nullable;
import org.eclipse.jgit.errors.IncorrectObjectTypeException;
import org.eclipse.jgit.errors.MissingObjectException;
import org.eclipse.jgit.internal.storage.pack.ObjectReuseAsIs;
@@ -422,6 +423,17 @@ public BitmapIndex getBitmapIndex() throws IOException {
}
/**
+ * @return the {@link ObjectInserter} from which this reader was created
+ * using {@code inserter.newReader()}, or null if this reader was not
+ * created from an inserter.
+ * @since 4.4
+ */
+ @Nullable
+ public ObjectInserter getCreatedFromInserter() {
+ return null;
+ }
+
+ /**
* Release any resources used by this reader.
* <p>
* A reader that has been released can be used again, but may need to be
@@ -431,4 +443,108 @@ public BitmapIndex getBitmapIndex() throws IOException {
*/
@Override
public abstract void close();
+
+ /**
+ * Wraps a delegate ObjectReader.
+ *
+ * @since 4.4
+ */
+ public static abstract class Filter extends ObjectReader {
+ /**
+ * @return delegate ObjectReader to handle all processing.
+ * @since 4.4
+ */
+ protected abstract ObjectReader delegate();
+
+ @Override
+ public ObjectReader newReader() {
+ return delegate().newReader();
+ }
+
+ @Override
+ public AbbreviatedObjectId abbreviate(AnyObjectId objectId)
+ throws IOException {
+ return delegate().abbreviate(objectId);
+ }
+
+ @Override
+ public AbbreviatedObjectId abbreviate(AnyObjectId objectId, int len)
+ throws IOException {
+ return delegate().abbreviate(objectId, len);
+ }
+
+ @Override
+ public Collection<ObjectId> resolve(AbbreviatedObjectId id)
+ throws IOException {
+ return delegate().resolve(id);
+ }
+
+ @Override
+ public boolean has(AnyObjectId objectId) throws IOException {
+ return delegate().has(objectId);
+ }
+
+ @Override
+ public boolean has(AnyObjectId objectId, int typeHint) throws IOException {
+ return delegate().has(objectId, typeHint);
+ }
+
+ @Override
+ public ObjectLoader open(AnyObjectId objectId)
+ throws MissingObjectException, IOException {
+ return delegate().open(objectId);
+ }
+
+ @Override
+ public ObjectLoader open(AnyObjectId objectId, int typeHint)
+ throws MissingObjectException, IncorrectObjectTypeException,
+ IOException {
+ return delegate().open(objectId, typeHint);
+ }
+
+ @Override
+ public Set<ObjectId> getShallowCommits() throws IOException {
+ return delegate().getShallowCommits();
+ }
+
+ @Override
+ public <T extends ObjectId> AsyncObjectLoaderQueue<T> open(
+ Iterable<T> objectIds, boolean reportMissing) {
+ return delegate().open(objectIds, reportMissing);
+ }
+
+ @Override
+ public long getObjectSize(AnyObjectId objectId, int typeHint)
+ throws MissingObjectException, IncorrectObjectTypeException,
+ IOException {
+ return delegate().getObjectSize(objectId, typeHint);
+ }
+
+ @Override
+ public <T extends ObjectId> AsyncObjectSizeQueue<T> getObjectSize(
+ Iterable<T> objectIds, boolean reportMissing) {
+ return delegate().getObjectSize(objectIds, reportMissing);
+ }
+
+ @Override
+ public void setAvoidUnreachableObjects(boolean avoid) {
+ delegate().setAvoidUnreachableObjects(avoid);
+ }
+
+ @Override
+ public BitmapIndex getBitmapIndex() throws IOException {
+ return delegate().getBitmapIndex();
+ }
+
+ @Override
+ @Nullable
+ public ObjectInserter getCreatedFromInserter() {
+ return delegate().getCreatedFromInserter();
+ }
+
+ @Override
+ public void close() {
+ delegate().close();
+ }
+ }
}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/PersonIdent.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/PersonIdent.java
index 2ecc60c..e08a985 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/PersonIdent.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/PersonIdent.java
@@ -111,6 +111,44 @@ public static void appendTimezone(StringBuilder r, int offset) {
r.append(offsetMins);
}
+ /**
+ * Sanitize the given string for use in an identity and append to output.
+ * <p>
+ * Trims whitespace from both ends and special characters {@code \n < >} that
+ * interfere with parsing; appends all other characters to the output.
+ * Analogous to the C git function {@code strbuf_addstr_without_crud}.
+ *
+ * @param r
+ * string builder to append to.
+ * @param str
+ * input string.
+ * @since 4.4
+ */
+ public static void appendSanitized(StringBuilder r, String str) {
+ // Trim any whitespace less than \u0020 as in String#trim().
+ int i = 0;
+ while (i < str.length() && str.charAt(i) <= ' ') {
+ i++;
+ }
+ int end = str.length();
+ while (end > i && str.charAt(end - 1) <= ' ') {
+ end--;
+ }
+
+ for (; i < end; i++) {
+ char c = str.charAt(i);
+ switch (c) {
+ case '\n':
+ case '<':
+ case '>':
+ continue;
+ default:
+ r.append(c);
+ break;
+ }
+ }
+ }
+
private final String name;
private final String emailAddress;
@@ -217,7 +255,12 @@ private PersonIdent(final UserConfig config) {
}
/**
- * Construct a {@link PersonIdent}
+ * Construct a {@link PersonIdent}.
+ * <p>
+ * Whitespace in the name and email is preserved for the lifetime of this
+ * object, but are trimmed by {@link #toExternalString()}. This means that
+ * parsing the result of {@link #toExternalString()} may not return an
+ * equivalent instance.
*
* @param aName
* @param aEmailAddress
@@ -276,6 +319,9 @@ public int getTimeZoneOffset() {
return tzOffset;
}
+ /**
+ * Hashcode is based only on the email address and timestamp.
+ */
public int hashCode() {
int hc = getEmailAddress().hashCode();
hc *= 31;
@@ -300,9 +346,9 @@ && getEmailAddress().equals(p.getEmailAddress())
*/
public String toExternalString() {
final StringBuilder r = new StringBuilder();
- r.append(getName().trim());
+ appendSanitized(r, getName());
r.append(" <"); //$NON-NLS-1$
- r.append(getEmailAddress().trim());
+ appendSanitized(r, getEmailAddress());
r.append("> "); //$NON-NLS-1$
r.append(when / 1000);
r.append(' ');
@@ -328,3 +374,4 @@ public String toString() {
return r.toString();
}
}
+
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefDatabase.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefDatabase.java
index c0c3862..517c8aa 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefDatabase.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RefDatabase.java
@@ -207,8 +207,25 @@ public BatchRefUpdate newBatchUpdate() {
}
/**
- * @return if the database performs {@code newBatchUpdate()} as an atomic
- * transaction.
+ * Whether the database is capable of performing batch updates as atomic
+ * transactions.
+ * <p>
+ * If true, by default {@link BatchRefUpdate} instances will perform updates
+ * atomically, meaning either all updates will succeed, or all updates will
+ * fail. It is still possible to turn off this behavior on a per-batch basis
+ * by calling {@code update.setAtomic(false)}.
+ * <p>
+ * If false, {@link BatchRefUpdate} instances will never perform updates
+ * atomically, and calling {@code update.setAtomic(true)} will cause the
+ * entire batch to fail with {@code REJECTED_OTHER_REASON}.
+ * <p>
+ * This definition of atomicity is stronger than what is provided by
+ * {@link org.eclipse.jgit.transport.ReceivePack}. {@code ReceivePack} will
+ * attempt to reject all commands if it knows in advance some commands may
+ * fail, even if the storage layer does not support atomic transactions. Here,
+ * atomicity applies even in the case of unforeseeable errors.
+ *
+ * @return whether transactions are atomic by default.
* @since 3.6
*/
public boolean performsAtomicTransactions() {
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
index 8b642bb..e49ee87 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
@@ -82,6 +82,7 @@
import org.eclipse.jgit.lib.ObjectId;
import org.eclipse.jgit.lib.ProgressMonitor;
import org.eclipse.jgit.lib.Ref;
+import org.eclipse.jgit.lib.RefDatabase;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.revwalk.AsyncRevObjectQueue;
import org.eclipse.jgit.revwalk.DepthWalk;
@@ -704,22 +705,22 @@ public PackStatistics getStatistics() {
return statistics;
}
- private Map<String, Ref> getAdvertisedOrDefaultRefs() {
+ private Map<String, Ref> getAdvertisedOrDefaultRefs() throws IOException {
if (refs == null)
- setAdvertisedRefs(null);
+ setAdvertisedRefs(db.getRefDatabase().getRefs(RefDatabase.ALL));
return refs;
}
private void service() throws IOException {
- if (biDirectionalPipe)
- sendAdvertisedRefs(new PacketLineOutRefAdvertiser(pckOut));
- else if (requestValidator instanceof AnyRequestValidator)
- advertised = Collections.emptySet();
- else
- advertised = refIdSet(getAdvertisedOrDefaultRefs().values());
-
boolean sendPack;
try {
+ if (biDirectionalPipe)
+ sendAdvertisedRefs(new PacketLineOutRefAdvertiser(pckOut));
+ else if (requestValidator instanceof AnyRequestValidator)
+ advertised = Collections.emptySet();
+ else
+ advertised = refIdSet(getAdvertisedOrDefaultRefs().values());
+
recvWants();
if (wantIds.isEmpty()) {
preUploadHook.onBeginNegotiateRound(this, wantIds, 0);
diff --git a/pom.xml b/pom.xml
index 1ff91cd..0b9f4f1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -51,7 +51,7 @@
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit-parent</artifactId>
<packaging>pom</packaging>
- <version>4.3.2-SNAPSHOT</version>
+ <version>4.4.0-SNAPSHOT</version>
<name>JGit - Parent</name>
<url>${jgit-url}</url>
@@ -195,7 +195,7 @@
<jgit-last-release-version>4.2.0.201601211800-r</jgit-last-release-version>
<jsch-version>0.1.53</jsch-version>
<javaewah-version>0.7.9</javaewah-version>
- <junit-version>4.11</junit-version>
+ <junit-version>4.12</junit-version>
<test-fork-count>1C</test-fork-count>
<args4j-version>2.0.15</args4j-version>
<commons-compress-version>1.6</commons-compress-version>
@@ -453,6 +453,7 @@
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<quiet>true</quiet>
+ <excludePackageNames>org.eclipse.jgit.http.test</excludePackageNames>
<links>
<link>http://docs.oracle.com/javase/7/docs/api</link>
</links>
diff --git a/tools/release.sh b/tools/release.sh
index 7adb375..d180bdf 100755
--- a/tools/release.sh
+++ b/tools/release.sh
@@ -47,6 +47,5 @@
git tag -sf -m "$MSG" $1
# run the build
-mvn clean install
+mvn clean install -T 1C
mvn clean install -f org.eclipse.jgit.packaging/pom.xml
-