summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.pgm
diff options
context:
space:
mode:
authorMatthias Sohn <matthias.sohn@sap.com>2020-04-27 00:58:28 +0200
committerMatthias Sohn <matthias.sohn@sap.com>2020-06-01 01:26:22 +0200
commit77848d635b76d8294697ffaf11acf51256df2a5b (patch)
tree9a91a25512d2dff89bb9cc0b336279eef2df18e5 /org.eclipse.jgit.pgm
parent0b2d41b8584e16d6f7abeca92eaae326033b4489 (diff)
downloadjgit-77848d635b76d8294697ffaf11acf51256df2a5b.tar.gz
jgit-77848d635b76d8294697ffaf11acf51256df2a5b.zip
Decouple BouncyCastle from JGit Core
Motivation: BouncyCastle serves as 'default' implementation of the GPG Signer. If a client application does not use it there is no need to pull in this dependency, especially since BouncyCastle is a large library. Move the classes depending on BouncyCastle to an OSGi fragment extending the org.eclipse.jgit bundle. They are moved to a distinct internal package in order to avoid split packages. This doesn't break public API since these classes were already in an internal package before this change. Add a new feature org.eclipse.jgit.gpg.bc to enable installation. With that users can now decide if they want to install it. Attempts to sign a commit if org.eclipse.jgit.gpg.bc isn't available will result in ServiceUnavailableException being thrown. Bug: 559106 Change-Id: I42fd6c00002e17aa9a7be96ae434b538ea86ccf8 Also-by: Michael Dardis <git@md-5.net> Signed-off-by: Michael Dardis <git@md-5.net> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> Signed-off-by: David Ostrovsky <david@ostrovsky.org>
Diffstat (limited to 'org.eclipse.jgit.pgm')
-rw-r--r--org.eclipse.jgit.pgm/BUILD5
-rw-r--r--org.eclipse.jgit.pgm/pom.xml6
2 files changed, 10 insertions, 1 deletions
diff --git a/org.eclipse.jgit.pgm/BUILD b/org.eclipse.jgit.pgm/BUILD
index 3ff55e43c7..490f1c2ea2 100644
--- a/org.eclipse.jgit.pgm/BUILD
+++ b/org.eclipse.jgit.pgm/BUILD
@@ -6,7 +6,10 @@ java_library(
resource_strip_prefix = "org.eclipse.jgit.pgm/resources",
resources = glob(["resources/**"]),
visibility = ["//visibility:public"],
- runtime_deps = [":services"],
+ runtime_deps = [
+ ":services",
+ "//org.eclipse.jgit.gpg.bc:gpg-bc",
+ ],
deps = [
"//lib:args4j",
"//lib:commons-logging",
diff --git a/org.eclipse.jgit.pgm/pom.xml b/org.eclipse.jgit.pgm/pom.xml
index 87baa396ca..fb2958478b 100644
--- a/org.eclipse.jgit.pgm/pom.xml
+++ b/org.eclipse.jgit.pgm/pom.xml
@@ -63,6 +63,12 @@
<dependency>
<groupId>org.eclipse.jgit</groupId>
+ <artifactId>org.eclipse.jgit.gpg.bc</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit.http.apache</artifactId>
<version>${project.version}</version>
</dependency>