summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit/META-INF
Commit message (Collapse)AuthorAgeFilesLines
* Prepare 5.9.0-SNAPSHOT buildsMatthias Sohn2020-06-092-54/+54
| | | | | Change-Id: Ia998e2772df1285a4c674b07201f15d53156eb78 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Decouple JSch from JGit CoreMatthias Sohn2020-06-011-28/+70
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* Decouple BouncyCastle from JGit CoreMatthias Sohn2020-06-011-65/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Include full IssuerFingerprint in GPG signatureThomas Wolf2020-05-181-11/+11
| | | | | | | | | | Update dependency to Bouncy Castle to 1.65. Add the IssuerFingerprint as a hashed sub-packet in the signature. If added unhashed, GPG ignores it. Bug: 553206 Change-Id: I6807e8e2385e6ec5790f388e4753a44aa9474ebb Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* Moving transport/internal -> internal/transportDemetr Starshov2020-05-081-0/+1
| | | | | | | | Moving transport related internal classes into dedicated subpackage in o/e/j/internal package. Signed-off-by: Demetr Starshov <dstarshov@google.com> Change-Id: I21ed029d359f5f7d8298f102efbb4b1dcdf404ad
* Prepare 5.8.0-SNAPSHOT buildsMatthias Sohn2020-03-092-53/+53
| | | | | Change-Id: I056b45806a82eae80177932e42e3dc806015351a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Remove use of org.bouncycastle.util.io.TeeOutputStreamMichael Dardis2020-02-211-1/+0
| | | | | | Bug: 559106 Change-Id: Ife06f21a00d258780a2030745738194098c631cf Signed-off-by: Michael Dardis <git@md-5.net> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge branch 'stable-5.6'Matthias Sohn2019-12-091-0/+1
|\ | | | | | | | | | | | | | | | | * stable-5.6: Add ability to redirect stderr from git hooks Add possibility to get pure stderr output from AbortedByHookException Change-Id: Ifc02675542dad6ced25fdd8b9fae80b5736db688 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Add ability to redirect stderr from git hooksTim Neumann2019-12-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This will change the behavior in the CLI to resemble that of C-Git more closely by printing the stderr of the hooks to the CLI stderr independently of the exit code of the hook. This is also useful for the corresponding EGIT-Change, which will add the ability to show the hook output in eclipse. With this also the stderr can be shown even if the exit code is 0. Bug: 553471 Change-Id: Ie7bc503fe39e270e9b93dd1108b5879f02a12b4c Signed-off-by: Tim Neumann <Tim.Neumann@advantest.com>
| * Prepare 5.6.0-SNAPSHOT buildsMatthias Sohn2019-12-042-3/+3
| | | | | | | | | | Change-Id: I5e737ff7f262fdd43fc975a0b3594c8b33919663 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * JGit v5.6.0.201912041214-rc1v5.6.0.201912041214-rc1Matthias Sohn2019-12-042-3/+3
| | | | | | | | | | Change-Id: I5ed21fbc5f83096bf0b79f2aa751db415cbcc7e8 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Prepare 5.6.0-SNAPSHOT buildsMatthias Sohn2019-11-272-3/+3
| | | | | | | | | | Change-Id: I1e52d2dfb202b87ecb9d0273deaa2c8d8ce1864e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * JGit v5.6.0.201911271000-m3v5.6.0.201911271000-m3Matthias Sohn2019-11-272-3/+3
| | | | | | | | | | Change-Id: I3810892c2bed947e4dfaa615a7b4d93eeb46abb9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Prepare 5.7.0-SNAPSHOT buildsMatthias Sohn2019-12-052-53/+53
|/ | | | | Change-Id: I7efa0cd08dee711d6fefc3e6bb478a3cb11fe85c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* GPG: implement more OpenPGP UserId matching formatsThomas Wolf2019-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | Instead of just looking for a substring match of user.signingKey in a key's user ID implement the GPG matching formats[1] for: '=' Full exact match '<' Full exact match of the e-mail address '@' Substring match within the e-mail address only '*' General case-insensitive substring match (default) When user.signingKey is not set, the committer's e-mail address is used by default. In that case, use '<', i.e., require an exact match on the OpenPGP e-mail address. Also handle the optional "0x" prefix for (partial) key fingerprints. [1] https://www.gnupg.org/documentation/manuals/gnupg/Specify-a-User-ID.html Bug: 550335 Change-Id: I6ce482a099ff1a0dc9de45435cd4d3ec5b504f12 Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* Prepare 5.6.0-SNAPSHOT buildsMatthias Sohn2019-08-292-53/+53
| | | | | Change-Id: I9eceb7b1272b27b979144041c75eb09ab4eeca6b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Fix bundle localization of Apache SSH bundleMichael Keppler2019-06-211-2/+2
| | | | | | | | | The placeholders in manifest and plugin.properties did not match. To avoid similar issues, all placeholders have been changed to Bundle-Vendor and Bundle-Name now. Bug:548503 Change-Id: Ibd4b9bc237b323e614506b97e5fbc99416365040 Signed-off-by: Michael Keppler <Michael.Keppler@gmx.de>
* Prepare 5.5.0-SNAPSHOT buildsMatthias Sohn2019-06-132-53/+53
| | | | | Change-Id: I177d637e552a79014816dc5d2ef5ccda506adb39 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 5.4.1-SNAPSHOT buildsMatthias Sohn2019-06-122-53/+53
| | | | | Change-Id: I8620d03c1cd5c1d0ad04e7607553e9aa18def9bb Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v5.4.0.201906121030-rv5.4.0.201906121030-rMatthias Sohn2019-06-122-3/+3
| | | | | Change-Id: Ie68828af68d07cf8e3fe778d39436f539f1c73d0 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v5.4.0.201906120450-rMatthias Sohn2019-06-122-3/+3
| | | | | Change-Id: Iea17cba848d4e53d69d34e952a2476c375721aa4 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Support reading and writing cookies.Konrad Windszus2019-06-061-0/+1
| | | | | | | | | The git config entries "http.cookieFile" and "http.saveCookies" are correctly evaluated. Bug: 488572 Change-Id: Icfeeea95e1a5bac3fa4438849d4ac2306d7d5562 Signed-off-by: Konrad Windszus <konrad_w@gmx.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Upgrade Bouncy Castle to 1.61Brandon Weeks2019-06-011-10/+11
| | | | | | | | | | | | Also now use JcaKeyBoxBuilder constructor in BouncyCastleGpgKeyLocator.readKeyBoxFile(Path). CQ: 19868 CQ: 19869 CQ: 19870 Change-Id: I45bd80e158aecd90448b0c7e59615db27aaef892 Signed-off-by: Brandon Weeks <bweeks@google.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 5.4.0-SNAPSHOT buildsMatthias Sohn2019-03-072-52/+52
| | | | | Change-Id: I90a4791f63d0eba23da744c720e869f1830b86e7 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Implement signing commits using BouncyCastleMedha Bhargav Prabhala2019-01-161-0/+10
| | | | | | | | | | | | | This also includes a change to generating the jgit CLI jar. Shading is no longer possible because it breaks the signature of BouncyCastle. Instead, the Spring Boot Loader Maven plug-in is now used to generate an executable jar. Bug: 382212 Change-Id: I35ee3d4b06d9d479475ab2e51b29bed49661bbdc Also-by: Gunnar Wagenknecht <gunnar@wagenknecht.org> Signed-off-by: Gunnar Wagenknecht <gunnar@wagenknecht.org> Signed-off-by: Medha Bhargav Prabhala <mprabhala@salesforce.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Replace deprecated FirstLine by FirstCommandMichael Keppler2018-12-311-1/+1
| | | | | | | | and allow package org.eclipse.jgit.http.server to use package org.eclipse.jgit.internal.transport.parser. Change-Id: Ief330c3e75a735853d0a5a265a9ff56fb5128b99 Signed-off-by: Michael Keppler <Michael.Keppler@gmx.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Move first line parsing for v0 push out of BaseReceivePackJonathan Nieder2018-12-271-0/+1
| | | | | | | | | | This simplifies the BaseReceivePack class and decreases its API surface, which should make merging with ReceivePack easier. Inspired by 6aca8899a5c02b3f6be7b9196cf5e935914476f0 (Move first line parsing for v0/v1 pack negotiation out of UploadPack, 2018-09-17). Change-Id: I1fc175d15aa7cb5968c26fc83a95480403af617c
* Prepare 5.3.0-SNAPSHOT buildsMatthias Sohn2018-12-032-52/+52
| | | | | Change-Id: I8951c2cf650cc3e41d2baa0b330b94468cfed5c2 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Apache MINA sshd clientThomas Wolf2018-11-131-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | Add a new ssh client implementation based on Apach MINA sshd 2.0.0. This implementation uses JGit's own config file parser and host entry resolver. Code inspection of the Apache MINA implementation revealed a few bugs or idiosyncrasies that immediately would re-introduce bugs already fixed in the past in JGit. Apache MINA sshd is not without quirks either, and I had to configure and override more than I had expected. But at least it was all doable in clean ways. Apache MINA boasts support for Bouncy Castle, so in theory this should open the way to using more ssh key algorithms, such as ed25519. The implementation is in a separate bundle and is still not used in the core org.eclipse.jgit bundle. The tests re-use the ssh tests from the core test bundle. Bug: 520927 Change-Id: Ib35e73c35799140fe050d1ff4fb18d0d3596580e Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* Factor out a JSch-independent ssh config parserThomas Wolf2018-11-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the bulk of the basic parsing and host entry handling into a new class OpenSshConfigFile that has no dependencies on any concrete ssh implementation. Make the existing OpenSshConfig use the new parser. Introduce a new class SshConstants collecting all the various ssh- related string literals. Also use TreeMaps with a case-insensitive key comparator instead of converting keys to uppercase. Add a test to verify that keys are matched case-insensitively. Most of the parsing code was simply moved, except that the new parser supports looking up entries given host name, port, and user name, and can thus handle more %-substitutions correctly. This feature is not yet used and cannot be used with JSch since JSch only has a ConfigRepository.getConfig(String) interface. The split is still worth the trouble as it opens the way to using another ssh client altogether. Apache MINA sshd, for instance, resolves host entries giving host name, port, and user name. (Apache MINA has a built-in ssh config handling, but that has problems, too: its pattern matching is case-insensitive, and its merging of host entries if several match is not the same as in OpenSsh. But with this refactoring, it will be possible to plug in OpenSshConfigFile into an Apache MINA sshd client without dragging along JSch.) One test case that doesn't make sense anymore has been removed. It tested that repeatedly querying for a host entry returned the same object. That is no longer true since the caching has been moved to a deeper level. Bug: 520927 Change-Id: I6381d52b29099595e6eaf8b05c786aeeaefbf9cc Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* Fix package exports in org.eclipse.jgit MANIFEST.MFThomas Wolf2018-11-051-1/+3
| | | | | | | | | | Do not export o.e.j.internal.transport.parser as public package; restrict visibility to org.eclipse.jgit.test only. Add two packages that were not listed at all (o.e.j.internal.revwalk and o.e.j.internal.submodule) marked as x-internal:=true. Change-Id: I9188356075515ad354b724102fbd6304b682de6a Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
* Move first line parsing for v0/v1 pack negotiation out of UploadPackIvan Frade2018-10-121-0/+1
| | | | | | | | | | | | | | | In protocol v0/v1 pack negotiation, the first want line contains the options the client wants in effect. This parsing is done in UploadPack but it doesn't have any interaction with that class. Move the code to its own class and package, mark the current one as deprecated (it is public API) and add unit tests. Take the chance to move the parsing code from the constructor to a factory method, making the class a simple container of results. Change-Id: I1757f535dda78a4111a1c12c3a3b455a4b6f0c51 Signed-off-by: Ivan Frade <ifrade@google.com>
* Prepare 5.2.0-SNAPSHOT buildsMatthias Sohn2018-09-062-48/+48
| | | | | Change-Id: If8e8ca20e745901a5e0239c16cb4acc7934b4ec8 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 5.1.0-SNAPSHOT buildsMatthias Sohn2018-05-232-48/+48
| | | | | Change-Id: I8523a993ae1f7b62573d7547273bc1356bf64fa7 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge branch 'stable-4.11'Matthias Sohn2018-03-261-1/+0
|\ | | | | | | | | | | | | | | | | * stable-4.11: Remove package import for javax.servlet.http from org.eclipse.jgit Add missing @since tag and silence API error Change-Id: I2783a15ead26ab19de31a8fb3bfb148ef19de91a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Remove package import for javax.servlet.http from org.eclipse.jgitMatthias Sohn2018-03-271-1/+0
| | | | | | | | | | | | This package import is unused. Change-Id: I9f202bb3162736a1ef8054516f1a3145d3a7bb9b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Prepare 5.0.0-SNAPSHOT buildsMatthias Sohn2018-03-082-48/+48
|/ | | | | Change-Id: I2d2f50ed8a12f310e7cac68eed5536bd460c403f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.11.1-SNAPSHOT buildsMatthias Sohn2018-03-082-48/+48
| | | | | Change-Id: Id9aa6b7e8f56de5183b6cd57ef0e790ec9debd4d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.11.0.201803080745-rv4.11.0.201803080745-rMatthias Sohn2018-03-082-3/+3
| | | | | Change-Id: Ie24a33bc8a24c30db06fe7b175f405efb95776ec Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* LFS: Add remote download to SmudgeFilterMarkus Duft2018-02-161-0/+1
| | | | | | | | | | | | | | | Transfer data in chunks of 8k Transferring data byte per byte is slow, running checkout with CleanFilter on a 2.9MB file takes 20 seconds. Using a buffer of 8k shrinks this time to 70ms. Also register the filter commands in a way that the native GIT LFS can be used alongside with JGit. Implements auto-discovery of LFS server URL when cloning from a Gerrit LFS server. Change-Id: I452a5aa177dcb346d92af08b27c2e35200f246fd Also-by: Christian Halstrick <christian.halstrick@sap.com> Signed-off-by: Markus Duft <markus.duft@ssi-schaefer.com>
* Prepare 4.11.0-SNAPSHOT buildsMatthias Sohn2017-12-312-48/+48
| | | | | Change-Id: I5d5e2befcf530d93457d44684bd9e4fc2392e5eb Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Add header Automatic-Module-Name for Java 9Karsten Thoms2017-12-231-0/+1
| | | | | | Bug: 529075 Change-Id: I4532ce2c80eb91531d46026676502d636ccda706 Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Fix discouraged access warnings in RefsUnreadableInMemoryRepositoryMatthias Sohn2017-11-241-1/+2
| | | | Change-Id: I16e291f533625c80b1d39f7cbaf40efbdfcc2c3c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.10.0-SNAPSHOT buildsMatthias Sohn2017-10-082-48/+48
| | | | | Change-Id: I5ca462d1db18a2c5c9382cfb9c83972510fa2b88 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* reftable: debug toolsShawn Pearce2017-08-171-0/+1
| | | | | | | | | | | Simple debug programs to experiment with the reftable file format: debug-read-reftable debug-write-reftable debug-verify-reftable debug-benchmark-reftable Change-Id: I79db351d86900f1e58b17e922e195dff06ee71f1
* reftable: create and write reftable filesShawn Pearce2017-08-171-0/+1
| | | | | | | | This is a simple writer to create reftable formatted files. Follow-up commits will add support for reading from reftable, debugging utilities, and tests. Change-Id: I3d520c3515c580144490b0b45433ea175a3e6e11
* Add dfs fsck implementationZhen Chen2017-07-261-0/+1
| | | | | | | | | | | | JGit already had some fsck-like classes like ObjectChecker which can check for an individual object. The read-only FsckPackParser which will parse all objects within a pack file and check it with ObjectChecker. It will also check the pack index file against the object information from the pack parser. Change-Id: Ifd8e0d28eb68ff0b8edd2b51b2fa3a50a544c855 Signed-off-by: Zhen Chen <czhen@google.com>
* Merge branch 'stable-4.8'David Pursehouse2017-06-111-0/+1
|\ | | | | | | | | | | | | | | | | | | | | * stable-4.8: Use a dedicated executor to run auto-gc in command line interface Allow to use an external ExecutorService for background auto-gc Fetch: Add --recurse-submodules and --no-recurse-submodules options Fix capitalization of command help summaries Change-Id: I7c85f11daa34c11c7f6389de885a2183a686197e Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| * Allow to use an external ExecutorService for background auto-gcMatthias Sohn2017-06-111-0/+1
| | | | | | | | | | | | | | | | If set use the external executor, otherwise use JGit's own simple WorkQueue. Move WorkQueue to an internal package so we can reuse it without exposing it in the public API. Change-Id: I060d62ffd6692362a88b4bf13ee07b0dc857abe9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Prepare 4.8.0-SNAPSHOT buildsMatthias Sohn2017-05-172-3/+3
| | | | | | | | | | Change-Id: I27fc4e4969fafde0fcba26aeebe30d732770b68f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>