Accepting request 818095 from home:fstrba:maven:test

new version

OBS-URL: https://build.opensuse.org/request/show/818095
OBS-URL: https://build.opensuse.org/package/show/Java:packages/eclipse-jgit?expand=0&rev=9
This commit is contained in:
Fridrich Strba 2020-07-01 11:57:40 +00:00 committed by Git OBS Bridge
parent e55dd800fe
commit ea8d762b4a
10 changed files with 867 additions and 241 deletions

View File

@ -0,0 +1,26 @@
From 3efdb201d8b4da4bf0385c27a60011e2d8418ad8 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.booth@redhat.com>
Date: Fri, 7 Dec 2018 10:04:44 +0000
Subject: [PATCH 1/3] Ensure the correct classpath is set for the jgit command
line tool
---
org.eclipse.jgit.pgm/jgit.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/org.eclipse.jgit.pgm/jgit.sh b/org.eclipse.jgit.pgm/jgit.sh
index a369220..2dd26aa 100644
--- a/org.eclipse.jgit.pgm/jgit.sh
+++ b/org.eclipse.jgit.pgm/jgit.sh
@@ -60,7 +60,7 @@ esac
this_script=`which "$0" 2>/dev/null`
[ $? -gt 0 -a -f "$0" ] && this_script="$0"
cp=$this_script
-
+export JGIT_CLASSPATH="$(build-classpath jgit slf4j/api slf4j/simple args4j jzlib jsch commons-compress xz-java javaewah httpcomponents/httpcore httpcomponents/httpclient commons-logging commons-codec eddsa apache-sshd/sshd-osgi apache-sshd/sshd-sftp)"
platform="`uname`"
if [ -n "$JGIT_CLASSPATH" ]
then
--
2.26.2

View File

@ -0,0 +1,319 @@
From 585b45026bc8ac1ed83aee70c7c6ff11b4267fe6 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.booth@redhat.com>
Date: Fri, 7 Dec 2018 10:17:02 +0000
Subject: [PATCH 2/3] Don't embed versions of third-party libs, use feature
requirements instead
---
.../org.eclipse.jgit.feature/feature.xml | 27 +++++--------------
.../feature.xml | 24 +++--------------
.../feature.xml | 24 +++--------------
.../feature.xml | 24 +++--------------
.../org.eclipse.jgit.lfs.feature/feature.xml | 8 +-----
.../org.eclipse.jgit.pgm.feature/feature.xml | 24 +++--------------
.../feature.xml | 24 +++--------------
.../feature.xml | 16 ++---------
8 files changed, 24 insertions(+), 147 deletions(-)
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 57dd6ab..881012c 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
@@ -22,6 +22,12 @@
<discovery label="%updateSiteName" url="https://download.eclipse.org/egit/updates"/>
</url>
+ <requires>
+ <import plugin="com.googlecode.javaewah.JavaEWAH" />
+ <import plugin="org.apache.commons.compress" />
+ <import plugin="slf4j.api" />
+ </requires>
+
<plugin
id="org.eclipse.jgit"
download-size="0"
@@ -36,25 +42,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="javaewah"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.compress"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.slf4j.api"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
index 1a28bff..43d5e6a 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
@@ -24,6 +24,9 @@
<requires>
<import plugin="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="bcpg" />
+ <import plugin="bcpkix" />
+ <import plugin="bcprov" />
</requires>
<plugin
@@ -34,25 +37,4 @@
fragment="true"
unpack="false"/>
- <plugin
- id="org.bouncycastle.bcpg"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.bouncycastle.bcpkix"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.bouncycastle.bcprov"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
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 ef01ff7..871ca05 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
@@ -24,6 +24,9 @@
<requires>
<import plugin="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="org.apache.httpcomponents.httpcore"/>
+ <import plugin="org.apache.httpcomponents.httpclient"/>
+ <import plugin="org.apache.commons.codec"/>
</requires>
<plugin
@@ -33,25 +36,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.httpcomponents.httpcore"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.httpcomponents.httpclient"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.codec"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
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 f888808..25ca775 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
@@ -25,6 +25,9 @@
<requires>
<import plugin="com.jcraft.jsch"/>
<import plugin="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="org.apache.commons.logging"/>
+ <import plugin="org.apache.sshd.osgi"/>
+ <import plugin="org.apache.sshd.sftp"/>
</requires>
<plugin
@@ -55,25 +58,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.commons.logging"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.sshd.osgi"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.sshd.sftp"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
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 0c74527..d2a6dc5 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
@@ -24,6 +24,7 @@
<requires>
<import feature="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="com.google.gson"/>
</requires>
<plugin
@@ -40,11 +41,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="com.google.gson"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
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 83db1de..8da7368 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
@@ -38,6 +38,9 @@
<import feature="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
<import feature="org.eclipse.jgit.lfs" version="5.8.0" match="equivalent"/>
<import feature="org.eclipse.jgit.ssh.apache" version="5.8.0" match="equivalent"/>
+ <import plugin="com.googlecode.javaewah.JavaEWAH" />
+ <import plugin="org.apache.commons.compress" />
+ <import plugin="org.kohsuke.args4j"/>
</requires>
<plugin
@@ -54,25 +57,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.commons.compress"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.kohsuke.args4j"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javaewah"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
index 73facd9..a428902 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
@@ -24,6 +24,9 @@
<requires>
<import feature="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="org.apache.sshd.osgi"/>
+ <import plugin="org.apache.sshd.sftp"/>
+ <import plugin="net.i2p.crypto.eddsa"/>
</requires>
<plugin
@@ -33,25 +36,4 @@
version="0.0.0"
unpack="false"/>
- <plugin
- id="org.apache.sshd.osgi"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.sshd.sftp"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="net.i2p.crypto.eddsa"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
index 8caf411..a878949 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
@@ -24,6 +24,8 @@
<requires>
<import plugin="org.eclipse.jgit" version="5.8.0" match="equivalent"/>
+ <import plugin="com.jcraft.jsch" />
+ <import plugin="com.jcraft.jzlib"/>
</requires>
<plugin
@@ -34,18 +36,4 @@
fragment="true"
unpack="false"/>
- <plugin
- id="com.jcraft.jsch"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="com.jcraft.jzlib"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
</feature>
--
2.26.2

View File

@ -0,0 +1,333 @@
--- a/org.eclipse.jgit.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
@@ -15,7 +15,6 @@ Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)",
org.apache.commons.compress.compressors.bzip2;version="[1.15.0,2.0)",
org.apache.commons.compress.compressors.gzip;version="[1.15.0,2.0)",
org.apache.commons.compress.compressors.xz;version="[1.15.0,2.0)",
- org.assertj.core.api;version="[3.14.0,4.0.0)",
org.eclipse.jgit.annotations;version="[5.8.0,5.9.0)",
org.eclipse.jgit.api;version="[5.8.0,5.9.0)",
org.eclipse.jgit.api.errors;version="[5.8.0,5.9.0)",
diff --git a/org.eclipse.jgit.test/pom.xml b/org.eclipse.jgit.test/pom.xml
index 3b100fa..a5b19ce 100644
--- a/org.eclipse.jgit.test/pom.xml
+++ b/org.eclipse.jgit.test/pom.xml
@@ -65,11 +65,6 @@
<version>[1.1.0,2.0.0)</version>
</dependency>
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- </dependency>
-
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
--- a/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF 2020-06-09 16:07:50.000000000 +0200
+++ b/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF 2020-06-29 15:28:22.108828742 +0200
@@ -8,8 +8,7 @@
Bundle-Localization: plugin
Bundle-Version: 5.8.0.202006091008-r
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Import-Package: org.assertj.core.annotations;version="3.14.0",
- org.bouncycastle.bcpg;version="[1.65.0,2.0.0)",
+Import-Package: org.bouncycastle.bcpg;version="[1.65.0,2.0.0)",
org.bouncycastle.gpg;version="[1.65.0,2.0.0)",
org.bouncycastle.gpg.keybox;version="[1.65.0,2.0.0)",
org.bouncycastle.gpg.keybox.jcajce;version="[1.65.0,2.0.0)",
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/RequestValidatorTestCase.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Copyright (C) 2019, Google LLC. and others
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Distribution License v. 1.0 which is available at
- * https://www.eclipse.org/org/documents/edl-v10.php.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-package org.eclipse.jgit.transport;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.core.api.Assertions.catchThrowableOfType;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.assertj.core.api.ThrowableAssert.ThrowingCallable;
-import org.eclipse.jgit.errors.TransportException;
-import org.eclipse.jgit.internal.storage.dfs.DfsGarbageCollector;
-import org.eclipse.jgit.internal.storage.dfs.DfsRepositoryDescription;
-import org.eclipse.jgit.internal.storage.dfs.InMemoryRepository;
-import org.eclipse.jgit.junit.TestRepository;
-import org.eclipse.jgit.lib.Ref;
-import org.eclipse.jgit.lib.Repository;
-import org.eclipse.jgit.revwalk.RevBlob;
-import org.eclipse.jgit.revwalk.RevCommit;
-import org.eclipse.jgit.transport.UploadPack.RequestValidator;
-import org.junit.Before;
-import org.junit.Test;
-
-public abstract class RequestValidatorTestCase {
-
- private RevCommit reachableCommit;
-
- private RevCommit tipAdvertisedCommit;
-
- private RevCommit tipUnadvertisedCommit;
-
- private RevCommit unreachableCommit;
-
- private RevBlob reachableBlob;
-
- private RevBlob unreachableBlob;
-
- private InMemoryRepository repo;
-
- protected abstract RequestValidator createValidator();
-
- @Before
- public void setUp() throws Exception {
- repo = new InMemoryRepository(new DfsRepositoryDescription());
- try (TestRepository<InMemoryRepository> git = new TestRepository<>(
- repo)) {
- reachableBlob = git.blob("foo");
- reachableCommit = git
- .commit(git.tree(git.file("foo", reachableBlob)));
- tipAdvertisedCommit = git.commit(reachableCommit);
- git.update("advertised", tipAdvertisedCommit);
-
- tipUnadvertisedCommit = git.commit(reachableCommit);
- git.update("unadvertised", tipUnadvertisedCommit);
-
- unreachableBlob = git.blob("unreachableFoo");
- unreachableCommit = git
- .commit(git.tree(git.file("foo", unreachableBlob)));
- }
- }
-
- /**
- * @return true if a commit reachable from a visible tip (but not directly
- * the tip) is valid
- */
- protected abstract boolean isReachableCommitValid();
-
- /** @return true if a commit not reachable from any tip is valid */
- protected abstract boolean isUnreachableCommitValid();
-
- /**
- * @return true if the commit directly pointed by an advertised ref is valid
- */
- protected abstract boolean isAdvertisedTipValid();
-
- /**
- * @return true if the object directly pointed by a non-advertised ref is
- * valid
- */
- protected abstract boolean isUnadvertisedTipCommitValid();
-
- // UploadPack doesn't allow to ask for blobs when there is no
- // bitmap. Test both cases separately.
- /**
- * @return true if a reachable blob is valid (and the repo has bitmaps)
- */
- protected abstract boolean isReachableBlobValid_withBitmaps();
-
- /**
- * @return true if a reachable blob is valid (and the repo does NOT have
- * bitmaps)
- */
- protected abstract boolean isReachableBlobValid_withoutBitmaps();
-
- /**
- * @return true if a blob unreachable from any tip is valid
- */
- protected abstract boolean isUnreachableBlobValid();
-
- @Test
- public void validateReachableCommitWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(reachableCommit));
- if (!isReachableCommitValid()) {
- assertTransportException(c,
- "want " + reachableCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateReachableCommitWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(reachableCommit));
- if (!isReachableCommitValid()) {
- assertTransportException(c,
- "want " + reachableCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateAdvertisedTipWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(tipAdvertisedCommit));
- if (!isAdvertisedTipValid()) {
- assertTransportException(c,
- "want " + tipAdvertisedCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateAdvertisedTipWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(tipAdvertisedCommit));
- if (!isAdvertisedTipValid()) {
- assertTransportException(c,
- "want " + tipAdvertisedCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnadvertisedTipWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(tipUnadvertisedCommit));
- if (!isUnadvertisedTipCommitValid()) {
- assertTransportException(c,
- "want " + tipUnadvertisedCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnadvertisedTipWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(tipUnadvertisedCommit));
- if (!isUnadvertisedTipCommitValid()) {
- assertTransportException(c,
- "want " + tipUnadvertisedCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnreachableCommitWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(unreachableCommit));
- if (!isUnreachableCommitValid()) {
- assertTransportException(c,
- "want " + unreachableCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnreachableCommitWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(unreachableCommit));
- if (!isUnreachableCommitValid()) {
- assertTransportException(c,
- "want " + unreachableCommit.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateReachableBlobWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(reachableBlob));
- if (!isReachableBlobValid_withBitmaps()) {
- assertTransportException(c,
- "want " + reachableBlob.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateReachableBlobWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(reachableBlob));
- if (!isReachableBlobValid_withoutBitmaps()) {
- assertTransportException(c,
- "want " + reachableBlob.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnreachableBlobWithBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithBitmaps()),
- Arrays.asList(unreachableBlob));
- if (!isUnreachableBlobValid()) {
- assertTransportException(c,
- "want " + unreachableBlob.name() + " not valid");
- return;
- }
- c.call();
- }
-
- @Test
- public void validateUnreachableBlobWithoutBitmaps() throws Throwable {
- ThrowingCallable c = () -> createValidator().checkWants(
- getUploadPack(getRepoWithoutBitmaps()),
- Arrays.asList(unreachableBlob));
- if (!isUnreachableBlobValid()) {
- assertTransportException(c,
- "want " + unreachableBlob.name() + " not valid");
- return;
- }
- c.call();
- }
-
- private void assertTransportException(ThrowingCallable c,
- String messageContent) throws AssertionError {
- assertThat(catchThrowableOfType(c, TransportException.class))
- .hasMessageContaining(messageContent);
- }
-
- private UploadPack getUploadPack(Repository repository) throws IOException {
- UploadPack uploadPack = new UploadPack(repository);
-
- Ref advertisedRef = repo.getRefDatabase().findRef("advertised");
- Map<String, Ref> advertisedRefs = new HashMap<>();
- advertisedRefs.put(advertisedRef.getName(), advertisedRef);
-
- uploadPack.setAdvertisedRefs(advertisedRefs);
- return uploadPack;
- }
-
- private Repository getRepoWithBitmaps() throws IOException {
- new DfsGarbageCollector(repo).pack(null);
- repo.scanForRepoChanges();
- return repo;
- }
-
- private Repository getRepoWithoutBitmaps() {
- return repo;
- }
-}

View File

@ -16,37 +16,58 @@
#
%global gittag 5.1.3.201810200350-r
%global gittag 5.8.0.202006091008-r
Name: eclipse-jgit
Version: 5.1.3
Version: 5.8.0
Release: 0
Summary: Eclipse JGit
License: BSD-3-Clause
Group: Development/Libraries/Java
URL: https://www.eclipse.org/egit/
# Use github mirror for now, see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=522144
Source0: https://github.com/eclipse/jgit/archive/v%{gittag}/jgit-v%{gittag}.tar.gz
Patch0: fix_jgit_sh.patch
# Change how feature deps are specified, to avoid embedding versions
Patch1: jgit-feature-deps.patch
Source0: https://github.com/eclipse/jgit/archive/v%{gittag}/jgit-%{gittag}.tar.gz
# Set the correct classpath for the command line tools
Patch0: 0001-Ensure-the-correct-classpath-is-set-for-the-jgit-com.patch
# Switch to feature requirements for third-party bundles, also makes the following changes:
# javaewah -> com.googlecode.javaewah.JavaEWAH
# org.slf4j.api -> slf4j.api
# org.slf4j.impl.log4j12 -> slf4j.simple
Patch1: 0002-Don-t-embed-versions-of-third-party-libs-use-feature.patch
# Remove req on assertj
Patch2: 0003-Remove-requirement-on-assertj-core.patch
Patch3: jgit-shade.patch
# For main build
BuildRequires: ant
BuildRequires: apache-commons-compress
BuildRequires: apache-sshd >= 2.4
BuildRequires: args4j
BuildRequires: bouncycastle
BuildRequires: bouncycastle-pg
BuildRequires: bouncycastle-pkix
BuildRequires: eclipse-platform-bootstrap
BuildRequires: ed25519-java
BuildRequires: fdupes
BuildRequires: git
BuildRequires: google-gson
BuildRequires: hamcrest-core
BuildRequires: javaewah
BuildRequires: jgit = %{version}
BuildRequires: junit
BuildRequires: jzlib
BuildRequires: maven-local
BuildRequires: slf4j
BuildRequires: tycho
BuildRequires: xml-commons-apis
#!BuildRequires: log4j eclipse-emf-core eclipse-ecf-core
#!BuildIgnore: eclipse-platform
#!BuildIgnore: tycho-bootstrap
#!BuildRequires: eclipse-emf-core eclipse-ecf-core
Requires: apache-commons-compress
Requires: apache-sshd >= 2.4
Requires: args4j
Requires: eclipse-platform
Requires: bouncycastle
Requires: bouncycastle-pg
Requires: bouncycastle-pkix
Requires: ed25519-java
Requires: google-gson
Requires: hamcrest-core
Requires: javaewah
@ -65,38 +86,52 @@ A pure Java implementation of the Git version control system.
%prep
%setup -q -n jgit-%{gittag}
%patch0
%patch1
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
# Disable multithreaded build
rm .mvn/maven.config
# Javaewah change
sed -i -e "s/javaewah/com.googlecode.javaewah.JavaEWAH/g" org.eclipse.jgit.packaging/org.eclipse.jgit{,.pgm}.feature/feature.xml
# Don't try to get deps from local *maven* repo, use tycho resolved ones
%pom_remove_dep com.googlecode.javaewah:JavaEWAH
for p in $(find org.eclipse.jgit.packaging -name pom.xml) ; do
grep -q dependencies $p && %pom_xpath_remove "pom:dependencies" $p
done
# Disable "errorprone" compiler
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:executions/pom:execution[pom:id='compile-with-errorprone']" pom.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:executions/pom:execution[pom:id='default-compile']/pom:configuration" pom.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:dependencies" pom.xml
# Don't need target platform or repository modules with xmvn
%pom_disable_module org.eclipse.jgit.target org.eclipse.jgit.packaging
%pom_disable_module org.eclipse.jgit.repository org.eclipse.jgit.packaging
%pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin/pom:configuration/pom:target" org.eclipse.jgit.packaging
%pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin/pom:configuration/pom:target" org.eclipse.jgit.packaging/pom.xml
# Don't build source features
%pom_disable_module org.eclipse.jgit.source.feature org.eclipse.jgit.packaging
%pom_disable_module org.eclipse.jgit.pgm.source.feature org.eclipse.jgit.packaging
# Don't build benchmark and coverage
%pom_disable_module org.eclipse.jgit.benchmarks
%pom_disable_module org.eclipse.jgit.coverage
# Use newer Felix dep
%pom_change_dep -r org.osgi:org.osgi.core org.osgi:osgi.core
# Remove unnecessary plugins for RPM builds
%pom_remove_plugin :jacoco-maven-plugin
%pom_remove_plugin :maven-javadoc-plugin
%pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :maven-enforcer-plugin org.eclipse.jgit.packaging
%pom_remove_plugin -r :japicmp-maven-plugin
# org.slf4j.api -> slf4j.api
# org.slf4j.impl.log4j12 -> slf4j.simple
sed -i 's/org\.slf4j\.api/slf4j\.api/
s/org\.slf4j\.impl\.log4j12/slf4j\.simple/' \
org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
# Don't attach shell script artifact
%pom_remove_plugin org.codehaus.mojo:build-helper-maven-plugin org.eclipse.jgit.pgm
# Remove org.apache.log4j
%pom_remove_dep log4j:log4j . org.eclipse.jgit.pgm
%pom_change_dep org.slf4j:slf4j-log4j12 org.slf4j:slf4j-simple . org.eclipse.jgit.pgm
pushd org.eclipse.jgit.packaging
%{mvn_package} "::pom::" __noinstall
@ -111,6 +146,7 @@ popd
pushd org.eclipse.jgit.packaging
%mvn_install
popd
%fdupes -s %{buildroot}%{_datadir}
%files -f org.eclipse.jgit.packaging/.mfiles
%license LICENSE

View File

@ -1,11 +0,0 @@
--- org.eclipse.jgit.pgm/jgit.sh.sav 2011-09-15 18:32:58.000000000 +0300
+++ org.eclipse.jgit.pgm/jgit.sh 2011-10-28 13:05:51.399038583 +0300
@@ -60,7 +60,7 @@ esac
this_script=`which "$0" 2>/dev/null`
[ $? -gt 0 -a -f "$0" ] && this_script="$0"
cp=$this_script
-
+export JGIT_CLASSPATH="$(build-classpath jgit slf4j/api slf4j/simple args4j jzlib jsch commons-compress xz-java javaewah httpcomponents/httpcore httpcomponents/httpclient commons-logging commons-codec)"
platform="`uname`"
if [ -n "$JGIT_CLASSPATH" ]
then

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f9677d747990b03cef28435bd02fd9d9af37e85ebc26177814b1486dd8b672f0
size 3484605

View File

@ -1,195 +0,0 @@
--- ./org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml 2018-10-20 09:50:16.000000000 +0200
+++ ./org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml 2019-11-13 12:31:31.332532817 +0100
@@ -22,6 +22,15 @@
<discovery label="%updateSiteName" url="http://download.eclipse.org/egit/updates"/>
</url>
+ <requires>
+ <import plugin="com.jcraft.jsch" />
+ <import plugin="com.jcraft.jzlib"/>
+ <import plugin="javaewah" />
+ <import plugin="org.apache.commons.compress" />
+ <import plugin="slf4j.api" />
+ <import plugin="slf4j.simple" />
+ </requires>
+
<plugin
id="org.eclipse.jgit"
download-size="0"
@@ -34,56 +43,6 @@
download-size="0"
install-size="0"
version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="com.jcraft.jsch"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javaewah"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.compress"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.slf4j.api"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.slf4j.impl.log4j12"
- download-size="0"
- install-size="0"
- version="0.0.0"
- fragment="true"
- unpack="false"/>
-
- <plugin
- id="org.apache.log4j"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="com.jcraft.jzlib"
- download-size="0"
- install-size="0"
- version="0.0.0"
unpack="false"/>
</feature>
--- ./org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml 2018-10-20 09:50:16.000000000 +0200
+++ ./org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml 2019-11-13 12:31:31.332532817 +0100
@@ -24,6 +24,8 @@
<requires>
<import plugin="org.eclipse.jgit"/>
+ <import plugin="org.apache.httpcomponents.httpclient" />
+ <import plugin="org.apache.httpcomponents.httpcore" />
</requires>
<plugin
@@ -31,20 +33,6 @@
download-size="0"
install-size="0"
version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.httpcomponents.httpcore"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.httpcomponents.httpclient"
- download-size="0"
- install-size="0"
- version="0.0.0"
unpack="false"/>
</feature>
--- ./org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml 2018-10-20 09:50:16.000000000 +0200
+++ ./org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml 2019-11-13 12:31:31.332532817 +0100
@@ -24,6 +24,7 @@
<requires>
<import plugin="com.jcraft.jsch"/>
+ <import plugin="org.apache.commons.logging" />
</requires>
<plugin
@@ -45,13 +46,6 @@
download-size="0"
install-size="0"
version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.logging"
- download-size="0"
- install-size="0"
- version="0.0.0"
unpack="false"/>
</feature>
--- ./org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml 2018-10-20 09:50:16.000000000 +0200
+++ ./org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml 2019-11-13 12:31:31.332532817 +0100
@@ -24,6 +24,7 @@
<requires>
<import plugin="org.eclipse.jgit"/>
+ <import plugin="com.google.gson" />
</requires>
<plugin
@@ -38,13 +39,6 @@
download-size="0"
install-size="0"
version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="com.google.gson"
- download-size="0"
- install-size="0"
- version="0.0.0"
unpack="false"/>
</feature>
--- ./org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml 2018-10-20 09:50:16.000000000 +0200
+++ ./org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml 2019-11-13 12:32:06.140728036 +0100
@@ -33,6 +33,9 @@
<requires>
<import feature="org.eclipse.jgit" version="5.1.3" match="equivalent"/>
<import feature="org.eclipse.jgit.lfs" version="5.1.3" match="equivalent"/>
+ <import plugin="org.apache.commons.compress" />
+ <import plugin="org.kohsuke.args4j" />
+ <import plugin="javaewah" />
</requires>
<plugin
@@ -47,27 +50,6 @@
download-size="0"
install-size="0"
version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.apache.commons.compress"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.kohsuke.args4j"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="javaewah"
- download-size="0"
- install-size="0"
- version="0.0.0"
unpack="false"/>
</feature>

85
jgit-shade.patch Normal file
View File

@ -0,0 +1,85 @@
diff -urEbwB jgit-5.7.0.202003110725-r.orig/org.eclipse.jgit.pgm/pom.xml jgit-5.7.0.202003110725-r/org.eclipse.jgit.pgm/pom.xml
--- jgit-5.7.0.202003110725-r.orig/org.eclipse.jgit.pgm/pom.xml 2020-04-07 12:24:45.966217181 +0200
+++ jgit-5.7.0.202003110725-r/org.eclipse.jgit.pgm/pom.xml 2020-04-07 12:48:09.474568774 +0200
@@ -145,19 +145,40 @@
</plugin>
<plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
+ <phase>package</phase>
<goals>
- <goal>repackage</goal>
+ <goal>shade</goal>
</goals>
<configuration>
<finalName>jgit-cli</finalName>
- <attach>false</attach>
- <mainClass>org.eclipse.jgit.pgm.Main</mainClass>
- <executable>true</executable>
- <embeddedLaunchScript>jgit.sh</embeddedLaunchScript>
+ <createDependencyReducedPom>false</createDependencyReducedPom>
+ <transformers>
+ <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
+ <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+ <manifestEntries>
+ <Main-Class>org.eclipse.jgit.pgm.Main</Main-Class>
+ <Implementation-Title>JGit Command Line Interface</Implementation-Title>
+ </manifestEntries>
+ </transformer>
+ </transformers>
+ <filters>
+ <!-- exclude the signing data for individual jars, ueberjar will be signed again -->
+ <filter>
+ <artifact>*:*</artifact>
+ <excludes>
+ <exclude>META-INF/*.SF</exclude>
+ <exclude>META-INF/*.DSA</exclude>
+ <exclude>META-INF/*.RSA</exclude>
+ <exclude>OSGI-OPT/**</exclude>
+ </excludes>
+ </filter>
+ </filters>
+ <shadedArtifactAttached>true</shadedArtifactAttached>
+ <shadedClassifierName>shaded</shadedClassifierName> <!-- Any name that makes sense -->
</configuration>
</execution>
</executions>
@@ -172,13 +193,11 @@
<phase>package</phase>
<configuration>
<target>
- <move
- file="${basedir}/target/jgit-cli.jar"
- force="yes"
- tofile="${basedir}/target/jgit" />
- <chmod
- file="${basedir}/target/jgit"
- perm="a+x" />
+ <concat destfile="${basedir}/target/jgit" force="yes" binary="true">
+ <fileset file="${basedir}/jgit.sh" />
+ <fileset file="${basedir}/target/jgit-cli.jar" />
+ </concat>
+ <chmod file="${basedir}/target/jgit" perm="a+x"/>
</target>
</configuration>
<goals>
diff -urEbwB jgit-5.7.0.202003110725-r.orig/pom.xml jgit-5.7.0.202003110725-r/pom.xml
--- jgit-5.7.0.202003110725-r.orig/pom.xml 2020-04-07 12:24:45.782216086 +0200
+++ jgit-5.7.0.202003110725-r/pom.xml 2020-04-07 12:27:10.879079553 +0200
@@ -385,11 +385,6 @@
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</plugin>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <version>2.1.5.RELEASE</version>
- </plugin>
</plugins>
</pluginManagement>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eaf3886471517efdf8443b48e4656ecdd8d97e0dfe0ec9538512087962719f09
size 3184737

View File

@ -16,24 +16,30 @@
#
%global gittag 5.1.3.201810200350-r
%global gittag 5.8.0.202006091008-r
Name: jgit
Version: 5.1.3
Version: 5.8.0
Release: 0
Summary: Java-based command line Git interface
Summary: Eclipse JGit
License: BSD-3-Clause
Group: Development/Libraries/Java
URL: https://www.eclipse.org/egit/
# Use github mirror for now, see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=522144
Source0: https://github.com/eclipse/jgit/archive/v%{gittag}/jgit-v%{gittag}.tar.gz
Patch0: fix_jgit_sh.patch
# Change how feature deps are specified, to avoid embedding versions
Patch1: jgit-feature-deps.patch
Source0: https://github.com/eclipse/jgit/archive/v%{gittag}/jgit-%{gittag}.tar.gz
# Set the correct classpath for the command line tools
Patch0: 0001-Ensure-the-correct-classpath-is-set-for-the-jgit-com.patch
# Switch to feature requirements for third-party bundles, also makes the following changes:
# javaewah -> com.googlecode.javaewah.JavaEWAH
# org.slf4j.api -> slf4j.api
# org.slf4j.impl.log4j12 -> slf4j.simple
Patch1: 0002-Don-t-embed-versions-of-third-party-libs-use-feature.patch
# Remove req on assertj
Patch2: 0003-Remove-requirement-on-assertj-core.patch
Patch3: jgit-shade.patch
# For main build
BuildRequires: ant
BuildRequires: fdupes
BuildRequires: git
BuildRequires: java-devel >= 1.8
BuildRequires: maven-local
BuildRequires: mvn(args4j:args4j)
BuildRequires: mvn(com.google.code.gson:gson)
@ -42,6 +48,7 @@ BuildRequires: mvn(com.jcraft:jsch)
BuildRequires: mvn(com.jcraft:jzlib)
BuildRequires: mvn(javax.servlet:javax.servlet-api)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(net.i2p.crypto:eddsa)
BuildRequires: mvn(org.apache.ant:ant)
BuildRequires: mvn(org.apache.commons:commons-compress)
BuildRequires: mvn(org.apache.httpcomponents:httpclient)
@ -49,8 +56,14 @@ BuildRequires: mvn(org.apache.httpcomponents:httpcore)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-shade-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-source-plugin)
BuildRequires: mvn(org.apache.sshd:sshd-osgi) >= 2.4
BuildRequires: mvn(org.apache.sshd:sshd-sftp) >= 2.4
BuildRequires: mvn(org.bouncycastle:bcpg-jdk15on)
BuildRequires: mvn(org.bouncycastle:bcpkix-jdk15on)
BuildRequires: mvn(org.bouncycastle:bcprov-jdk15on)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: mvn(org.eclipse.jetty:jetty-servlet)
BuildRequires: mvn(org.mockito:mockito-core)
BuildRequires: mvn(org.osgi:osgi.core)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.slf4j:slf4j-simple)
@ -69,19 +82,38 @@ Group: Documentation/HTML
%{summary}.
%prep
%setup -q -n %{name}-%{gittag}
%setup -q -n jgit-%{gittag}
%patch0
%patch1
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
# Disable multithreaded build
rm .mvn/maven.config
# Don't try to get deps from local *maven* repo, use tycho resolved ones
for p in $(find org.eclipse.jgit.packaging -name pom.xml) ; do
grep -q dependencies $p && %pom_xpath_remove "pom:dependencies" $p
done
# Disable "errorprone" compiler
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:executions/pom:execution[pom:id='compile-with-errorprone']" pom.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:executions/pom:execution[pom:id='default-compile']/pom:configuration" pom.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:dependencies" pom.xml
# Don't need target platform or repository modules with xmvn
%pom_disable_module org.eclipse.jgit.target org.eclipse.jgit.packaging
%pom_disable_module org.eclipse.jgit.repository org.eclipse.jgit.packaging
%pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin/pom:configuration/pom:target" org.eclipse.jgit.packaging/pom.xml
# Don't build source features
%pom_disable_module org.eclipse.jgit.source.feature org.eclipse.jgit.packaging
# Don't build benchmark and coverage
%pom_disable_module org.eclipse.jgit.benchmarks
%pom_disable_module org.eclipse.jgit.coverage
# Use newer Felix dep
%pom_change_dep -r org.osgi:org.osgi.core org.osgi:osgi.core
@ -89,6 +121,7 @@ rm .mvn/maven.config
%pom_remove_plugin :jacoco-maven-plugin
%pom_remove_plugin :maven-javadoc-plugin
%pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :maven-enforcer-plugin org.eclipse.jgit.packaging
%pom_remove_plugin -r :japicmp-maven-plugin
# Don't attach shell script artifact