]> source.dussan.org Git - jgit.git/commit
Decouple JSch from JGit Core 53/156153/29
authorMatthias Sohn <matthias.sohn@sap.com>
Fri, 24 Apr 2020 20:41:39 +0000 (22:41 +0200)
committerMatthias Sohn <matthias.sohn@sap.com>
Sun, 31 May 2020 23:46:59 +0000 (01:46 +0200)
commit8d2d683655e2de17cf465fa46af10e0e56b3aaed
tree52491eb0da64433efa2d41004dafd7933ddae8ee
parent77848d635b76d8294697ffaf11acf51256df2a5b
Decouple JSch from JGit Core

Motivation: JSch serves as 'default' implementations of the SSH
transport. If a client application does not use it then there is no need
to pull in this dependency.

Move the classes depending on JSch to an OSGi fragment extending the
org.eclipse.jgit bundle and keep them in the same package as before
since moving them to another package would break API. Defer moving them
to a separate package to the next major release.

Add a new feature org.eclipse.jgit.ssh.jsch feature to enable
installation. With that users can now decide which of the ssh client
integrations (JCraft JSch or Apache Mina SSHD) they want to install.
We will remove the JCraft JSch integration in a later step due to the
reasons discussed in bug 520927.

Bug: 553625
Change-Id: I5979c8a9dbbe878a2e8ac0fbfde7230059d74dc2
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>
187 files changed:
lib/BUILD
org.eclipse.jgit.junit.ssh/.classpath
org.eclipse.jgit.junit.ssh/BUILD
org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
org.eclipse.jgit.junit.ssh/build.properties
org.eclipse.jgit.junit.ssh/pom.xml
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_dsa [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_dsa.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_dsa_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_dsa_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_256 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_256.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_256_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_256_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_384 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_384.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_384_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_384_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_521 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_521.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_521_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ecdsa_521_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519_expensive_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519_expensive_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_ed25519_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_1024 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_1024.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_1024_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_1024_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_2048 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_2048.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_2048_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_2048_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_3072 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_3072.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_3072_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_3072_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_4096 [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_4096.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_4096_testpass [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/resources/org/eclipse/jgit/junit/ssh/id_rsa_4096_testpass.pub [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestBase.java [new file with mode: 0644]
org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestHarness.java [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
org.eclipse.jgit.packaging/org.eclipse.jgit.repository/category.xml
org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.gitignore [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.project [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.settings/org.eclipse.core.runtime.prefs [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.settings/org.eclipse.m2e.core.prefs [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.settings/org.eclipse.mylyn.tasks.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/.settings/org.eclipse.mylyn.team.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/build.properties [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/edl-v10.html [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.properties [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/license.html [new file with mode: 0644]
org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/pom.xml [new file with mode: 0644]
org.eclipse.jgit.packaging/pom.xml
org.eclipse.jgit.pgm.test/pom.xml
org.eclipse.jgit.pgm/BUILD
org.eclipse.jgit.pgm/pom.xml
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/TextBuiltin.java
org.eclipse.jgit.ssh.apache.test/BUILD
org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF
org.eclipse.jgit.ssh.apache.test/pom.xml
org.eclipse.jgit.ssh.apache.test/tst/org/eclipse/jgit/transport/sshd/ApacheSshTest.java
org.eclipse.jgit.ssh.apache.test/tst/org/eclipse/jgit/transport/sshd/NoFilesSshBuilderTest.java
org.eclipse.jgit.ssh.apache.test/tst/org/eclipse/jgit/transport/sshd/NoFilesSshTest.java
org.eclipse.jgit.ssh.apache/resources/META-INF/services/org.eclipse.jgit.transport.SshSessionFactory [new file with mode: 0644]
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/transport/sshd/SshdSessionFactory.java
org.eclipse.jgit.ssh.jsch.test/.classpath [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.gitignore [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.project [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.core.resources.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.core.runtime.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.jdt.apt.core.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.jdt.core.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.jdt.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.mylyn.tasks.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.mylyn.team.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.pde.api.tools.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.pde.core.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/.settings/org.eclipse.pde.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/BUILD [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/about.html [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/build.properties [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/plugin.properties [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/pom.xml [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/tst/org/eclipse/jgit/transport/JSchSshTest.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/tst/org/eclipse/jgit/transport/JschConfigSessionFactoryTest.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch.test/tst/org/eclipse/jgit/transport/OpenSshConfigTest.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.classpath [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.fbprefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.gitignore [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.project [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.core.resources.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.core.runtime.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.jdt.core.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.jdt.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.mylyn.tasks.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.mylyn.team.ui.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.pde.api.tools.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/.settings/org.eclipse.pde.core.prefs [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/BUILD [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/about.html [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/build.properties [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/plugin.properties [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/pom.xml [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/resources/META-INF/services/org.eclipse.jgit.transport.SshSessionFactory [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/resources/org/eclipse/jgit/internal/transport/jsch/JSchText.properties [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/src/org/eclipse/jgit/internal/transport/jsch/JSchText.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/src/org/eclipse/jgit/transport/CredentialsProviderUserInfo.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/src/org/eclipse/jgit/transport/JschSession.java [new file with mode: 0644]
org.eclipse.jgit.ssh.jsch/src/org/eclipse/jgit/transport/OpenSshConfig.java [new file with mode: 0644]
org.eclipse.jgit.test/.classpath
org.eclipse.jgit.test/BUILD
org.eclipse.jgit.test/META-INF/MANIFEST.MF
org.eclipse.jgit.test/build.properties
org.eclipse.jgit.test/pom.xml
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_dsa [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_dsa.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_dsa_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_dsa_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_256 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_256.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_256_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_256_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_384 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_384.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_384_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_384_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_521 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_521.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_521_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ecdsa_521_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519_expensive_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519_expensive_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_ed25519_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_1024 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_1024.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_1024_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_1024_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_2048 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_2048.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_2048_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_2048_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_3072 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_3072.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_3072_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_3072_testpass.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_4096 [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_4096.pub [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_4096_testpass [deleted file]
org.eclipse.jgit.test/resources/org/eclipse/jgit/transport/ssh/id_rsa_4096_testpass.pub [deleted file]
org.eclipse.jgit.test/src/org/eclipse/jgit/transport/ssh/SshTestBase.java [deleted file]
org.eclipse.jgit.test/src/org/eclipse/jgit/transport/ssh/SshTestHarness.java [deleted file]
org.eclipse.jgit.test/tests.bzl
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/JSchSshTest.java [deleted file]
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/JschConfigSessionFactoryTest.java [deleted file]
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/OpenSshConfigTest.java [deleted file]
org.eclipse.jgit/.settings/.api_filters
org.eclipse.jgit/BUILD
org.eclipse.jgit/META-INF/MANIFEST.MF
org.eclipse.jgit/pom.xml
org.eclipse.jgit/resources/META-INF/services/org.eclipse.jgit.transport.SshSessionFactory [deleted file]
org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/CredentialsProviderUserInfo.java [deleted file]
org.eclipse.jgit/src/org/eclipse/jgit/transport/DefaultSshSessionFactory.java [deleted file]
org.eclipse.jgit/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java [deleted file]
org.eclipse.jgit/src/org/eclipse/jgit/transport/JschSession.java [deleted file]
org.eclipse.jgit/src/org/eclipse/jgit/transport/OpenSshConfig.java [deleted file]
org.eclipse.jgit/src/org/eclipse/jgit/transport/SshSessionFactory.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportGitSsh.java
pom.xml