]> source.dussan.org Git - jgit.git/log
jgit.git
2 years agoFix bad indentation in pom.xml 69/186869/1
Thomas Wolf [Sun, 24 Oct 2021 19:32:33 +0000 (21:32 +0200)]
Fix bad indentation in pom.xml

Change-Id: I683f190d6914fb48f32cc3b3f0910b4264c7d725
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
2 years agoMinor code-clean-up in OpenSshConfigFile 57/186857/2
Thomas Wolf [Wed, 20 Oct 2021 19:17:55 +0000 (21:17 +0200)]
Minor code-clean-up in OpenSshConfigFile

Change-Id: I45d50198e43aeb2a56c74026de7ee8c1a30f9d10
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
2 years agoRemove use of deprecated getAllRefs() in UploadPack 78/182378/5
Matthias Sohn [Wed, 23 Jun 2021 08:38:50 +0000 (10:38 +0200)]
Remove use of deprecated getAllRefs() in UploadPack

Repository.getAllRefs() is deprecated and should not
be used anymore.

Bug: 534731
Change-Id: I037a9b901275bfa7952b4c79861d7639c9d42715

2 years agoDFS block cache: fix lock issue and support parallel index loading 55/186455/5
Alina Djamankulova [Wed, 13 Oct 2021 20:16:41 +0000 (13:16 -0700)]
DFS block cache: fix lock issue and support parallel index loading

This change is a fix to http://git.eclipse.org/r/c/jgit/jgit/+/183562
that was reverted in http://git.eclipse.org/r/c/jgit/jgit/+/184978
due to deadlocks. Separate locks in DfsBlockFile are removed to rely
on getting value from DfsBlockCache with region locking in place.

With this change bitmap index creation is not blocked on index and
reverse index full initialization in DfsPackFile. Now bitmap index
and index could be read from storage in parallel in separate threads.

A unit test is added for parallel index loading.

Signed-off-by: Alina Djamankulova <adjama@google.com>
Change-Id: Ic6d9c5a4a254628636aa98a5008447a27a003f69

2 years agoMerge changes I1f180d7f,I04415f07
Thomas Wolf [Tue, 19 Oct 2021 09:38:54 +0000 (05:38 -0400)]
Merge changes I1f180d7f,I04415f07

* changes:
  JSch: fix service publication for ServiceLoader
  Set JSch global config values only if not set already

2 years agoJSch: fix service publication for ServiceLoader 43/186643/1
Thomas Wolf [Tue, 19 Oct 2021 07:32:20 +0000 (09:32 +0200)]
JSch: fix service publication for ServiceLoader

The file name in META-INF/services must be the fully qualified
interface name; the content the fully qualified implementation class
name.

This was broken in commit 9683bc71.

Add a test for the default factory being found by the ServiceLoader.

Change-Id: I1f180d7f60e5c1e74a39bbd9a5f0099bd8343e21
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
2 years agoSet JSch global config values only if not set already 38/186638/1
Thomas Wolf [Tue, 19 Oct 2021 07:07:14 +0000 (09:07 +0200)]
Set JSch global config values only if not set already

Bug: 576604
Change-Id: I04415f07bf2023bc8435c097d1d3c65221d563f1
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.13' 60/186560/1
Matthias Sohn [Fri, 15 Oct 2021 21:10:12 +0000 (23:10 +0200)]
Merge branch 'stable-5.13'

* stable-5.13:
  Fix missing peel-part in lsRefsV2 for loose annotated tags
  Fix RevWalk.getMergedInto() ignores annotated tags
  Optimize RevWalk.getMergedInto()
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2
  Fix running benchmarks from bazel
  Update eclipse-jarsigner-plugin to 1.3.2
  Add org.bouncycastle.bcutil to p2 repository

Change-Id: I789e3c84045cc9dcd8a26de34d09fc1e3ccc41e7

3 years agoMerge branch 'stable-5.12' into stable-5.13 56/186556/1
Matthias Sohn [Fri, 15 Oct 2021 20:58:21 +0000 (22:58 +0200)]
Merge branch 'stable-5.12' into stable-5.13

* stable-5.12:
  Fix missing peel-part in lsRefsV2 for loose annotated tags
  Fix RevWalk.getMergedInto() ignores annotated tags
  Optimize RevWalk.getMergedInto()
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2
  Fix running benchmarks from bazel
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: Ie5da8d2d07f39ab5aaeca560040637635d4eb04c

3 years agoMerge branch 'stable-5.11' into stable-5.12 55/186555/1
Matthias Sohn [Fri, 15 Oct 2021 20:48:01 +0000 (22:48 +0200)]
Merge branch 'stable-5.11' into stable-5.12

* stable-5.11:
  Fix missing peel-part in lsRefsV2 for loose annotated tags
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2
  Fix running benchmarks from bazel
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I2122b3966bddb10d43d439eb8c5d6cc4583c6ba6

3 years agoMerge branch 'stable-5.10' into stable-5.11 53/186553/1
Matthias Sohn [Fri, 15 Oct 2021 20:45:18 +0000 (22:45 +0200)]
Merge branch 'stable-5.10' into stable-5.11

* stable-5.10:
  Fix missing peel-part in lsRefsV2 for loose annotated tags
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2
  Fix running benchmarks from bazel
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I23ccb89306263ce042ce782d881812d4b5187672

3 years agoMerge branch 'stable-5.9' into stable-5.10 52/186552/1
Matthias Sohn [Fri, 15 Oct 2021 20:32:00 +0000 (22:32 +0200)]
Merge branch 'stable-5.9' into stable-5.10

* stable-5.9:
  Fix missing peel-part in lsRefsV2 for loose annotated tags
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2
  Fix running benchmarks from bazel
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I4e7c7727ebfa9a7748477f2300bd66d775548ad6

3 years agoFix missing peel-part in lsRefsV2 for loose annotated tags 20/186520/4
Saša Živkov [Fri, 15 Oct 2021 08:13:53 +0000 (10:13 +0200)]
Fix missing peel-part in lsRefsV2 for loose annotated tags

We observed the following issue:

  $ git tag -a v1.0 -m v1.0
  $ git push origin tag v1.0
  $ git ls-remote origin v1.0^{}
  ... empty result ...

  On the server (Gerrit) side run git-gc to pack the refs:
  $ git gc

  Repeat the ls-remote from the client and the result is correct:
  $ git ls-remote origin v1.0^{}
  7ad85c810de3ae922903d4bdd17c53cd627260ba        refs/tags/v1.0^{}

Unfortunately, the existing UploadPackTest didn't reveal this issue
although it provided the test case needed to do so: testV2LsRefsPeel.
This is because The UploadPackTest uses InMemoryRepository which
internally uses Dfs* implementations. The issue is only reproducible
when using the FileRepository.

It is a non-trivial task to refactor the UploadPackTest to work against
both InMemoryRepository and FileRepository and this change is not trying
to do that. This change creates a new test:
UploadPackLsRefsFileRepositoryTest and copies the necesssary code from
the UploadPackTest.

Change-Id: Icfc7d0ca63f1524bafe24c9626ce12ea72aa3718
Signed-off-by: Saša Živkov <sasa.zivkov@sap.com>
3 years agoDFS block cache: allow multiple passes for blocks before eviction 41/184341/6
Alina Djamankulova [Tue, 24 Aug 2021 01:22:41 +0000 (18:22 -0700)]
DFS block cache: allow multiple passes for blocks before eviction

Let certain pack extensions that are expensive to load from storage
(e.g. pack index, bitmap index) stay in DFS block cache longer than
others by overriding default cache count through DfsBlockCacheConfig

Don't change default behavior when cache override map is empty. Use int
cacheCount instead of boolean hot for Ref<T>

Signed-off-by: Alina Djamankulova <adjama@google.com>
Change-Id: I18062784ec9cc14dbba3e4bb8d9509440cf2d44f

3 years agoFix RevWalk.getMergedInto() ignores annotated tags 01/184901/5
kylezhao [Thu, 2 Sep 2021 03:53:48 +0000 (11:53 +0800)]
Fix RevWalk.getMergedInto() ignores annotated tags

If an annotated tag refers to a commit, we should not ignore it.

Change-Id: I77504f93636e9e984540e7d8535ef301adce6a80
Signed-off-by: kylezhao <kylezhao@tencent.com>
3 years agoOptimize RevWalk.getMergedInto() 06/184806/6
kylezhao [Tue, 31 Aug 2021 11:36:44 +0000 (19:36 +0800)]
Optimize RevWalk.getMergedInto()

Transitive Relation Definition:
On the DAG of commit history, if A can reach B, C can reach A, then C
can reach B.

Example:
As is shown in the graph below:

  1 - 2 - 3 - 4 (side)
            \
             5 -  6^ (master) - 7 (topic)

Find out which branches is 2 merged into:
After we calculated that master contains 2, we can mark 6 as TEMP_MARK
to avoid unwanted walks.
When we want to figure out if 2 is merge into the topic, the traversal
path would be [7, 6] instead of [7, 6, 5, 3, 2].

Test:
This change can significantly improve performance for tags.
On a copy of the Linux repository, the command 'git tag --contains
<commit>' had the following performance improvement:

commit      | Before   | After   | Rel %
47a44d27ca  | 29251ms  | 6687ms  | -77%
90327e7dff  | 21388ms  | 6256ms  | -70%
f85fac0efa  | 11150ms  | 7338ms  | -34%

The current version ignores tags, even though the tag is a type of
the ref.
Follow-up commits I'll fix it.

Change-Id: Ie6295ca4d16070499912af462239e679a97cce47
Signed-off-by: kylezhao <kylezhao@tencent.com>
Reviewed-by: Christian Halstrick <christian.halstrick@sap.com>
Reviewed-by: Martin Fick <mfick@codeaurora.org>
3 years agoGarbageCollectCommand: add numberOfBitmaps to statistics 80/185880/5
kylezhao [Tue, 28 Sep 2021 02:48:11 +0000 (10:48 +0800)]
GarbageCollectCommand: add numberOfBitmaps to statistics

Change-Id: I630afac9408c7313d1cecb1b24476f645c94fc27
Signed-off-by: kylezhao <kylezhao@tencent.com>
3 years agoMerge branch 'stable-5.8' into stable-5.9 99/186299/1
Matthias Sohn [Thu, 7 Oct 2021 22:36:14 +0000 (00:36 +0200)]
Merge branch 'stable-5.8' into stable-5.9

* stable-5.8:
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I9e66ef90dc9a65bac47b35705d679bf992bd72b9

3 years agoMerge branch 'stable-5.7' into stable-5.8 97/186297/1
Matthias Sohn [Thu, 7 Oct 2021 22:33:33 +0000 (00:33 +0200)]
Merge branch 'stable-5.7' into stable-5.8

* stable-5.7:
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I88c47ff57f4829baec5b19aad3d8d6bd21f31a86

3 years agoMerge branch 'stable-5.6' into stable-5.7 96/186296/1
Matthias Sohn [Thu, 7 Oct 2021 22:18:42 +0000 (00:18 +0200)]
Merge branch 'stable-5.6' into stable-5.7

* stable-5.6:
  reftable: drop code for truncated reads
  reftable: pass on invalid object ID in conversion
  Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: I1c18f5f435f4a4a86e0548a310dbfc74191e1ed5

3 years agoRename a local variable 94/185994/1
Thomas Wolf [Thu, 30 Sep 2021 15:16:30 +0000 (17:16 +0200)]
Rename a local variable

To avoid a warning about a name clash with the field.

Change-Id: Ib1950486a9c63647e4240a268a3c9a7d613f3303
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoRemove redundant type arguments 63/185963/1
Thomas Wolf [Thu, 30 Sep 2021 07:31:12 +0000 (09:31 +0200)]
Remove redundant type arguments

In Java 11 type arguments for anonymous subclasses can be inferred
and don't need to be specified. This resolves a number of compiler
warnings.

Change-Id: I55eff3babb7628aa0627085e65a1b45eb12c2cd3
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoDelete old target platforms and corresponding Orbit releases 25/185925/4
Matthias Sohn [Wed, 29 Sep 2021 00:10:34 +0000 (02:10 +0200)]
Delete old target platforms and corresponding Orbit releases

We updated the baseline target platform to jgit-4.17 corresponding to
Eclipse 4.17 (2020-09). Delete all target platforms older than this
version and the corresponding Orbit releases.

Change-Id: I93b2d8585bdc3c3312264d34657ceaf3f4a27bd5

3 years agoUpdate tycho to 2.5.0 and target platform to jgit-4.17 24/185924/4
Matthias Sohn [Wed, 29 Sep 2021 00:03:02 +0000 (02:03 +0200)]
Update tycho to 2.5.0 and target platform to jgit-4.17

jgit-4.17 corresponds to Eclipse 2020-09, which is the first Eclipse
version that required Java 11, and which is JGit's new baseline as of
JGit 6.0.

Remove pack200 which is deprecated in Java 11 and isn't supported by
tycho 2.5.0 anymore. It was specified in JSR 200 (J2SE 1.5) [1],
deprecated in JEP 336 (Java SE 11) [2] and removed in JEP 367 (Java SE
14) [3].

[1] https://www.jcp.org/en/jsr/detail?id=200
[2] https://openjdk.java.net/jeps/336
[3] https://openjdk.java.net/jeps/367

Change-Id: I12c196586397779d2be81d2374207703e3fc5dbf

3 years agoUpdate ecj to 3.27.0 23/185923/3
Matthias Sohn [Tue, 28 Sep 2021 23:58:43 +0000 (01:58 +0200)]
Update ecj to 3.27.0

Change-Id: Ia3845a14d8169595425fd435ef3ef09c08e82f53

3 years agoReplace XMLReaderFactory deprecated since Java 9 47/185347/8
Matthias Sohn [Sun, 12 Sep 2021 23:47:08 +0000 (01:47 +0200)]
Replace XMLReaderFactory deprecated since Java 9

Change-Id: Ie8a9d411fc19e8b7bf86c0b4df0b02153a0e9444

3 years agoIndexDiffWithSymlinkTest: handle InaccessibleObjectException 46/185346/9
Matthias Sohn [Sun, 12 Sep 2021 23:02:26 +0000 (01:02 +0200)]
IndexDiffWithSymlinkTest: handle InaccessibleObjectException

On Java 16 this test throws InaccessibleObjectException, handle and
ignore it similar to IllegalAccessException.

Change-Id: I19b4f577579694a146516861a7ec567141f3464b

3 years agoFix split package in bundle org.eclipse.jgit.ssh.jsch 45/185345/9
Matthias Sohn [Sun, 12 Sep 2021 21:35:33 +0000 (23:35 +0200)]
Fix split package in bundle org.eclipse.jgit.ssh.jsch

The package org.eclipse.jgit.transport was split between
org.eclipse.jgit and org.eclipse.jgit.ssh.jsch.

Bug: 564544
Change-Id: I91d38e67c65ed97a880f8dc8f9559663b9eec33b

3 years agoKeyGrip: fix build error on java 15 44/185344/8
Matthias Sohn [Sun, 12 Sep 2021 19:40:04 +0000 (21:40 +0200)]
KeyGrip: fix build error on java 15

CryptlibObjectIdentifiers can't be used because bouncycastle doesn't
export the package org.bouncycastle.asn1.cryptlib.

Bug: 573638
Change-Id: I1f9e2af02d9fec69d2249a7d78301ba4b333a9ba

3 years agoEnable using JMH annotation processor on Java>=9 81/185681/4
Matthias Sohn [Tue, 21 Sep 2021 21:24:47 +0000 (23:24 +0200)]
Enable using JMH annotation processor on Java>=9

See
- https://issues.apache.org/jira/browse/MCOMPILER-369
- https://stackoverflow.com/questions/53927874/jmh-doesnt-run-inside-a-java-module-unable-to-find-the-resource-meta-inf-ben

Change-Id: Ie810092399d9fe540e5c2e243d3fdb19493c6bcb

3 years agoUpdate errorprone to 2.9.0 and enable using it on java 16 43/185343/7
Matthias Sohn [Sun, 12 Sep 2021 16:44:08 +0000 (18:44 +0200)]
Update errorprone to 2.9.0 and enable using it on java 16

Enabling <fork>true</fork> and setting the --add-exports= flags is
required on JDK 16 due to JEP 396: Strongly Encapsulate JDK Internals by
Default.

see https://errorprone.info/docs/installation
and https://openjdk.java.net/jeps/396

Change-Id: I03c257ffb48f429dd7d49a403d65c700abe133ca

3 years ago[errorprone] fix ReturnValueIgnored in PushCertificateStore#next 42/185342/7
Matthias Sohn [Sun, 12 Sep 2021 18:17:47 +0000 (20:17 +0200)]
[errorprone] fix ReturnValueIgnored in PushCertificateStore#next

Change-Id: I8deb7fa702bb973436b7ca21edf3634a087047b7

3 years ago[errorprone] NameRevCommand: remove ignored call of #toString 41/185341/7
Matthias Sohn [Sun, 12 Sep 2021 16:46:01 +0000 (18:46 +0200)]
[errorprone] NameRevCommand: remove ignored call of #toString

This fixes errorprone error: [ReturnValueIgnored] Return value of
'toString' must be used.

Change-Id: I90d2725ae16725a053179322cfaab18cab7b8e68

3 years agoEnable compiler option --release 32/174132/9
Matthias Sohn [Mon, 28 Dec 2020 17:51:57 +0000 (18:51 +0100)]
Enable compiler option --release

This ensures the compiler compiles against the public, supported and
documented API for a specific VM version (here 11) [1]. This also means
that
we don't need EE descriptors in Eclipse anymore in order to ensure that
only supported APIs of the selected Java version can be used.

According to [2] if option --release is used --source and --target
options can't be used.

While we are at it also add default value for all new jdt core options
added in Eclipse 4.21.

[1] https://docs.oracle.com/en/java/javase/11/tools/javac.html
[2] https://docs.oracle.com/en/java/javase/14/docs/specs/man/javac.html#option-release

Change-Id: I852a5d7b0a3210751c15d79ec91915b4c01c41e2
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 years agoBump minimum required Java version to 11 28/174128/8
Matthias Sohn [Sun, 27 Dec 2020 10:50:52 +0000 (11:50 +0100)]
Bump minimum required Java version to 11

Bug: 569917
Change-Id: Ifdcdb022a3f29321b4d10da1cc34acca68ed7b03
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 years agoreftable: drop code for truncated reads 02/185902/4
Han-Wen Nienhuys [Tue, 28 Sep 2021 18:05:03 +0000 (20:05 +0200)]
reftable: drop code for truncated reads

The reftable format is a block based format, but allows for variably
sized blocks. This obviously happens for reflog blocks (which are zlib
compressed), but is also accepted for index blocks: In the spec, this
is motivated as

     To achieve constant O(1) disk seeks for lookups the index must be
     a single level, which is permitted to exceed the file's
     configured block size, but not the format's max block size of
     15.99 MiB.

Hence, when parsing a block, one cannot be sure of its exact size:
after reading a default-size block (eg. 4kb), the block header may
state that the block is in fact larger.

Before, the code would mark the block as `truncated`, noting

     // Its OK during sequential scan for an index block to have been
     // partially read and be truncated in-memory. This happens when
     // the index block is larger than the file's blockSize. Caller
     // will break out of its scan loop once it sees the blockType.

This looks like either

* a remnant of never-implemented functionality. There is no reason to
  ever sequentially scan an index block.

* alluding to sequential scan of the data blocks before the index
  blocks (eg. scanning refs, which ends when we find the first ref index
  block, and we can then ignore the index block).

This comment is followed by code that populates the
restartTbl/restartCnt fields relative to the (possibly truncated)
buffer. If the buffer is truncated, this essentially reads garbage,
leading to OOB array access when using the index block.

Fix this by dropping the truncated logic and issuing a second read if
the first read was short.

Add a test.

We have never observed this failure scenario at Google. We use 64kb
blocksize, which requires us to need fewer index entries. The reftable
spec mentions an Android repo of size 36M. With 64kb blocks, that's
just 562 index entries. Even with historical growth, we are long from
requiring an index whose size exceeds a single block.

When adding the analogous test for seeking refs, there was no failure.
This points to another possibility which is that the code tries to
avoid writing large index blocks for refs.

I did not investigate further which one it is.

Fixes https://bugs.eclipse.org/bugs/show_bug.cgi?id=576250

Bug: 576250
Change-Id: I41ec21fac9e526ef57b3d6fb57b988bd353ee338
Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
3 years agoreftable: pass on invalid object ID in conversion 56/185856/2
Han-Wen Nienhuys [Mon, 27 Sep 2021 14:07:27 +0000 (16:07 +0200)]
reftable: pass on invalid object ID in conversion

Before, while trying to determine if an object ID was a tag or not,
the reftable conversion would yield an exception.

Change-Id: I3688a0ffa9e774ba27f320e3840ff8cada21ecf0

3 years agoUpdate eclipse-jarsigner-plugin to 1.3.2 54/185754/1
Matthias Sohn [Mon, 20 Sep 2021 22:18:03 +0000 (00:18 +0200)]
Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: Id5d05d96c392913de7b4451421c2ffb7b63ab83f
(cherry picked from commit c70c0acb4752f00672e3b856539587e4977bfaea)

3 years agoFix running benchmarks from bazel 55/185855/2
Matthias Sohn [Mon, 27 Sep 2021 13:53:30 +0000 (15:53 +0200)]
Fix running benchmarks from bazel

add missing dependency to
- javaewah
- slf4j-api

Change-Id: I28dc982791b32f10d20b2fd0671aa8d2514a0fb3

3 years agoUpdate eclipse-jarsigner-plugin to 1.3.2 43/185643/2
Matthias Sohn [Mon, 20 Sep 2021 22:18:03 +0000 (00:18 +0200)]
Update eclipse-jarsigner-plugin to 1.3.2

Change-Id: Id5d05d96c392913de7b4451421c2ffb7b63ab83f

3 years agoAdd org.bouncycastle.bcutil to p2 repository 11/185611/1
Matthias Sohn [Mon, 20 Sep 2021 14:41:17 +0000 (16:41 +0200)]
Add org.bouncycastle.bcutil to p2 repository

Bug: 575621
Change-Id: I57de7af9f9b236cac570d9c10c3d1c3886720868

3 years agoUpdate maven plugins 34/185334/4
Matthias Sohn [Sat, 11 Sep 2021 14:15:29 +0000 (16:15 +0200)]
Update maven plugins

- maven-enforcer-plugin 3.0.0
- maven-javadoc-plugin 3.3.1
- maven-pmd-plugin 3.15.0
- org.eclipse.cbi.maven.plugins:eclipse-jarsigner-plugin 1.3.2
- org.springframework.boot:spring-boot-maven-plugin 2.5.4

Change-Id: I377732b651f3718060c58ca48993e0c3ac79fa8b

3 years agoRemoved unused API filters 19/185219/3
Matthias Sohn [Thu, 9 Sep 2021 13:58:11 +0000 (15:58 +0200)]
Removed unused API filters

Change-Id: I39f7173879f64b1cd508990927d4e732f345724e

3 years agoMerge "Merge branch 'next'"
Matthias Sohn [Tue, 14 Sep 2021 22:14:02 +0000 (18:14 -0400)]
Merge "Merge branch 'next'"

3 years agoMerge "RepoCommand: Move building the index for base repos to its own method"
Ivan Frade [Tue, 14 Sep 2021 19:58:08 +0000 (15:58 -0400)]
Merge "RepoCommand: Move building the index for base repos to its own method"

3 years agoMerge branch 'next' 89/185389/1
Matthias Sohn [Mon, 13 Sep 2021 22:15:31 +0000 (00:15 +0200)]
Merge branch 'next'

* next:
  Enable CommitCommand to use a fluent style
  Prepare 6.0.0-SNAPSHOT builds

Change-Id: Ibd247d5990983bedadd8b959a82215914d216ed1

3 years agoMerge branch 'master' into next 13/185213/2
Matthias Sohn [Thu, 9 Sep 2021 12:41:30 +0000 (14:41 +0200)]
Merge branch 'master' into next

* master: (38 commits)
  Revert "DFS block cache: Refactor to enable parallel index loading"
  GitServlet: allow to override default error handlers
  Silence API error for new interface method ProtocolV2Hook#onObjectInfo
  transport: add object-info capability
  Ignore IllegalStateException if JVM is already shutting down
  Update orbit to R20210825222808 for 2021-09
  Update spotbugs-maven-plugin to 4.3.0
  Update ant to 1.10.11 also in pom.xml
  DFS block cache: add additional stats to DfsReaderIoStats
  Update Orbit to S20210817231813
  [gpg] Better GPG home directory determination
  FS: cleanup use of final modifier
  Ensure FS#searchPath only selects executable files
  RevWalk: getMergedInto's result is wrong on the second call
  DFS block cache: Refactor to enable parallel index loading
  [test] Create keystore with the keytool of the running JDK
  [gpg] Update to Bouncy Castle 1.69
  [test] Create keystore with the keytool of the running JDK
  [sshd] Minor code clean-up
  Support commit.template config property
  ...

Change-Id: I9f99e9a513a23c0c0d252334e79c351512d7355e

3 years agoMerge branch 'stable-5.13' 14/185214/1
Matthias Sohn [Thu, 9 Sep 2021 12:42:28 +0000 (14:42 +0200)]
Merge branch 'stable-5.13'

* stable-5.13:
  Prepare 5.13.1-SNAPSHOT builds
  JGit v5.13.0.202109080827-r
  Prepare 5.13.0-SNAPSHOT builds
  JGit v5.13.0.202109011149-rc1
  Prepare 5.13.0-SNAPSHOT builds
  JGit v5.13.0.202108250949-m3

Change-Id: I54ccb4bef74c929a440f77939aea0cc5b1da2181

3 years agoPrepare 5.13.1-SNAPSHOT builds 70/185170/1
Matthias Sohn [Wed, 8 Sep 2021 18:24:36 +0000 (20:24 +0200)]
Prepare 5.13.1-SNAPSHOT builds

Change-Id: Ib2f689d8d13eab022da5b5e83d6d6bebc1bb81d3

3 years agoJGit v5.13.0.202109080827-r 48/185148/1 v5.13.0.202109080827-r
Matthias Sohn [Wed, 8 Sep 2021 12:27:06 +0000 (14:27 +0200)]
JGit v5.13.0.202109080827-r

Change-Id: If3b2d4256712cc7e577c23e75c0d4ad940870e72
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 years agoMerge branch 'master' into stable-5.13 82/184982/1
Matthias Sohn [Sat, 4 Sep 2021 09:45:33 +0000 (11:45 +0200)]
Merge branch 'master' into stable-5.13

* master:
  Revert "DFS block cache: Refactor to enable parallel index loading"

Change-Id: Ifd7cf7a366bf682da6e92ac9dd416bd88e9f1654

3 years agoRevert "DFS block cache: Refactor to enable parallel index loading" 78/184978/2
Minh Thai [Fri, 3 Sep 2021 20:48:57 +0000 (13:48 -0700)]
Revert "DFS block cache: Refactor to enable parallel index loading"

This reverts commit 3cd7eb1b23dcf3d0477e8cd22a57f1b799a5ba5f.

Change-Id: I71ce68ce19503f0f9ad83069dc53eba6ab2c489b
Signed-off-by: Minh Thai <mthai@google.com>
3 years agoPrepare 5.13.0-SNAPSHOT builds 82/184882/1
Matthias Sohn [Wed, 1 Sep 2021 18:00:56 +0000 (20:00 +0200)]
Prepare 5.13.0-SNAPSHOT builds

Change-Id: I2a1d7ab24d5ca718348f4ce3cda351553e48cd1f

3 years agoJGit v5.13.0.202109011149-rc1 66/184866/1 v5.13.0.202109011149-rc1
Matthias Sohn [Wed, 1 Sep 2021 14:49:12 +0000 (16:49 +0200)]
JGit v5.13.0.202109011149-rc1

Change-Id: Id8d0970102f18e61a2fc7cf941267c9089d71c1a
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 years agoMerge branch 'master' into stable-5.13 62/184862/1
Matthias Sohn [Wed, 1 Sep 2021 14:31:13 +0000 (16:31 +0200)]
Merge branch 'master' into stable-5.13

* master:
  GitServlet: allow to override default error handlers
  Silence API error for new interface method ProtocolV2Hook#onObjectInfo
  transport: add object-info capability
  Ignore IllegalStateException if JVM is already shutting down
  Update orbit to R20210825222808 for 2021-09
  RevWalk: getMergedInto's result is wrong on the second call

Change-Id: I007882d0c663e406d8845cc807f3792ae7673230

3 years agoMerge branch 'stable-5.12' 61/184861/1
Matthias Sohn [Wed, 1 Sep 2021 14:23:47 +0000 (16:23 +0200)]
Merge branch 'stable-5.12'

* stable-5.12:
  GitServlet: allow to override default error handlers

Change-Id: I4710cec30c58d7a6525a42dc5f1fdffc912ed073

3 years agoMerge branch 'stable-5.11' into stable-5.12 60/184860/1
Matthias Sohn [Wed, 1 Sep 2021 14:22:21 +0000 (16:22 +0200)]
Merge branch 'stable-5.11' into stable-5.12

* stable-5.11:
  GitServlet: allow to override default error handlers

Change-Id: I65c01857ab42ec3023da16e6816d58e1a36e40e4

3 years agoMerge branch 'stable-5.10' into stable-5.11 58/184858/1
Matthias Sohn [Wed, 1 Sep 2021 14:08:03 +0000 (16:08 +0200)]
Merge branch 'stable-5.10' into stable-5.11

* stable-5.10:
  GitServlet: allow to override default error handlers

Change-Id: If10a99bcdc91105059b15a1d137dd38af228c58d

3 years agoMerge branch 'stable-5.9' into stable-5.10 57/184857/1
Matthias Sohn [Wed, 1 Sep 2021 13:55:58 +0000 (15:55 +0200)]
Merge branch 'stable-5.9' into stable-5.10

* stable-5.9:
  GitServlet: allow to override default error handlers

Change-Id: I55273087f8a67762130728eaaf635519c25255b3

3 years agoGitServlet: allow to override default error handlers 43/184843/3
Antonio Barone [Wed, 1 Sep 2021 10:04:07 +0000 (12:04 +0200)]
GitServlet: allow to override default error handlers

GitServlet delegates repository access over HTTP to the GitFilter
servlet.

GitServlet, in turn, can be extended by jgit consumers to provide custom
logic when handling such operations.

This is the case, for example, with Gerrit Code Review, which provides
custom behavior with a GitOverHttpServlet [1].

Among possible customizations, the ability of specifying a custom error
handler for UploadPack and ReceivePack was already introduced in
GitFilter by Idd3b87d6b and I9c708aa5a2, respectively.

However the `setUploadPackErrorHandler` and `setReceivePackErrorHandler`
methods were never added to the GitServlet.

Expose the `setUploadPackErrorHandler` and `setReceivePackErrorHandler`
methods to the GitServlet, so that consumers of the jgit library might
specify custom error handlers.

[1] https://gerrit.googlesource.com/gerrit/+/refs/heads/stable-3.2/java/com/google/gerrit/httpd/GitOverHttpServlet.java#95

Change-Id: I712d485ff68b662b48c71ef75650c5a155950d23

3 years agoSilence API error for new interface method ProtocolV2Hook#onObjectInfo 54/184854/1
Matthias Sohn [Wed, 1 Sep 2021 12:50:48 +0000 (14:50 +0200)]
Silence API error for new interface method ProtocolV2Hook#onObjectInfo

Change-Id: Ie4d09db2b89f26bc6ceb4e84f10c7e66b0ff684f

3 years agotransport: add object-info capability 83/183183/23
Bruno Albuquerque [Fri, 16 Jul 2021 18:44:46 +0000 (11:44 -0700)]
transport: add object-info capability

Sometimes it is useful to obtain metadata associated with an object
without the need to first download it locally. This is specially useful
when using partial clones.

This change implements the object-info capability that allows clients to
query the remote server for object metadata (currently only size). This
is a backport of the same capability that was recently added to the Git
project a2ba162cda (object-info: support for retrieving object info,
2021-04-20).

Signed-off-by: Bruno Albuquerque <bga@google.com>
Change-Id: I4dc9828e1c247f08b0976b8810be92d124366165

3 years agoRepoCommand: Move building the index for base repos to its own method 01/184501/3
Ivan Frade [Thu, 26 Aug 2021 17:25:20 +0000 (10:25 -0700)]
RepoCommand: Move building the index for base repos to its own method

Minor refactor, clearing the way to adjust the exceptions.

Change-Id: I0a669d77a1cb1daf22bd258d8ff08a40783ff44f

3 years agoMerge branch 'stable-5.12' 81/184781/1
Matthias Sohn [Mon, 30 Aug 2021 20:25:02 +0000 (22:25 +0200)]
Merge branch 'stable-5.12'

* stable-5.12:
  RevWalk: getMergedInto's result is wrong on the second call

Change-Id: Iee51703b2b009df15c0d8ee19fd480058b665bce

3 years agoIgnore IllegalStateException if JVM is already shutting down 25/183925/4
Matthias Sohn [Thu, 12 Aug 2021 07:28:04 +0000 (09:28 +0200)]
Ignore IllegalStateException if JVM is already shutting down

Trying to register/unregister a shutdown hook when the JVM is already in
shutdown throws an IllegalStateException. Ignore this exception since we
can't do anything about it.

Bug: 575367
Change-Id: Ic967c16c7f566c84778795315ab369e76668b364

3 years agoUpdate orbit to R20210825222808 for 2021-09 94/184494/1
Matthias Sohn [Thu, 26 Aug 2021 18:42:26 +0000 (20:42 +0200)]
Update orbit to R20210825222808 for 2021-09

Change-Id: I5a98f2134d19c3495d7d39cccfd7cf6f07640bd5

3 years agoPrepare 5.13.0-SNAPSHOT builds 31/184431/1
Matthias Sohn [Wed, 25 Aug 2021 20:33:09 +0000 (22:33 +0200)]
Prepare 5.13.0-SNAPSHOT builds

Change-Id: I6db044fdd57b60adbc2dd078c4af8cb54bb331c3

3 years agoJGit v5.13.0.202108250949-m3 07/184407/1 v5.13.0.202108250949-m3
Matthias Sohn [Wed, 25 Aug 2021 13:49:20 +0000 (15:49 +0200)]
JGit v5.13.0.202108250949-m3

Change-Id: Icc079b28327f5a02256f9a06837c2be6352ea6e3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 years agoUpdate spotbugs-maven-plugin to 4.3.0 81/182981/4
Marco Miller [Mon, 12 Jul 2021 12:53:36 +0000 (08:53 -0400)]
Update spotbugs-maven-plugin to 4.3.0

Change-Id: Iafb680923cbc6c81067773159a9a0e2fcdc60169
Signed-off-by: Marco Miller <marco.miller@ericsson.com>
3 years agoUpdate ant to 1.10.11 also in pom.xml 47/184347/1
Matthias Sohn [Tue, 24 Aug 2021 08:25:29 +0000 (10:25 +0200)]
Update ant to 1.10.11 also in pom.xml

This was missed when the target platform was updated to use ant 1.10.11
in cf9baedb5d.

Change-Id: I0d503fa4b27df73a7dad68f1b729346596d78332

3 years agoDFS block cache: add additional stats to DfsReaderIoStats 63/184163/5
Alina Djamankulova [Tue, 17 Aug 2021 16:56:06 +0000 (09:56 -0700)]
DFS block cache: add additional stats to DfsReaderIoStats

New stats are populated in DfsPackFile to provide details about loading
pack, bitmap and reverse indexes.

Signed-off-by: Alina Djamankulova <adjama@google.com>
Change-Id: Ib6e8384ecc31821261e5099d0768c0b1227e8364

3 years agoUpdate Orbit to S20210817231813 00/184300/2
Matthias Sohn [Mon, 23 Aug 2021 08:01:14 +0000 (10:01 +0200)]
Update Orbit to S20210817231813

and org.apache.ant to 1.10.11.v20210720-1445

Change-Id: Ic9c2f42628e47fffc99a07d591bc465b4e24b86e

3 years ago[gpg] Better GPG home directory determination 89/184189/2
Thomas Wolf [Tue, 10 Aug 2021 21:26:42 +0000 (23:26 +0200)]
[gpg] Better GPG home directory determination

GPG can use customized directories instead of the standard ~/.gnupg or
%APPDATA%\gnupg directories:

* Environment variable GNUPGHOME can define the location.
* On Windows, a registry key may define the location (but this is
  deprecated).
* Portable installations may use a directory defined via a file
  "gpgconf.ctl".
* GPG programs may take a --homedir command-line argument, which
  overrides anything.

Implement handling of environment variable GNUPGHOME. The other ways of
GPG to get its home directory are outside the reach of JGit. Provide a
system property "jgit.gpg.home" that the user can set in such cases.

Do tilde replacement for the system property and for GNUPGHOME.

Note that on VMS, the default directory would be ~/gnupg (without dot).
This is not accounted for, but a user on VMS could now use either the
system property or GNUPGHOME to direct JGit to the right directory.

Bug: 575327
Change-Id: Id5ea04a85d58dba0c0df7a705777630d36042467
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoFS: cleanup use of final modifier 49/184049/3
Matthias Sohn [Fri, 13 Aug 2021 07:47:34 +0000 (09:47 +0200)]
FS: cleanup use of final modifier

See the contributor guide [1].

[1] https://wiki.eclipse.org/EGit/Contributor_Guide#Use_of_the_.22final.22_modifier

Change-Id: I4673442310a3a53d838407f7eb11964144bb04d0

3 years agoEnsure FS#searchPath only selects executable files 48/184048/2
Matthias Sohn [Fri, 13 Aug 2021 07:36:26 +0000 (09:36 +0200)]
Ensure FS#searchPath only selects executable files

On Posix non executable files on the path should be ignored, on Windows
File#canExecute always returns true.

While we are here also add missing braces.

Bug: 575385
Change-Id: I80cd5057bdf9632a17f103db6f1356e975b6e150

3 years agoRevWalk: getMergedInto's result is wrong on the second call 60/183960/2
kylezhao [Thu, 12 Aug 2021 11:37:58 +0000 (19:37 +0800)]
RevWalk: getMergedInto's result is wrong on the second call

Make sure the future user can reset all UNINTERESTING commmits after
this operation.

Signed-off-by: kylezhao <kylezhao@tencent.com>
Change-Id: I7549b9ff67bd31acd5dfc92331cb9a30b47b8278

3 years agoDFS block cache: Refactor to enable parallel index loading 62/183562/10
Alina Djamankulova [Fri, 30 Jul 2021 20:36:15 +0000 (13:36 -0700)]
DFS block cache: Refactor to enable parallel index loading

With this change bitmap index creation is not blocked on index and
reverse index full initialization in DfsPackFile. Now bitmap index and index could be
read from storage in parallel in separate threads.

Update PackBitmapIndexV1 constructor to get packIndex and reverseIndex
suppliers instead of actual objects. Inner class IdxPositionBitmap was added to initialize pack objects after bitmap
index is fully read from storage. Update DfsPackFile and PackBitmapIndex
accordingly.

Signed-off-by: Alina Djamankulova <adjama@google.com>
Change-Id: Iea59ab58501b2acbbf9263412982ec9c6898a7ee

3 years agoMerge branch 'stable-5.12' 27/183527/1
Thomas Wolf [Thu, 29 Jul 2021 11:12:40 +0000 (13:12 +0200)]
Merge branch 'stable-5.12'

* stable-5.12:
  [test] Create keystore with the keytool of the running JDK
  Fix garbage collection failing to delete pack file
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: I4b54f4850819736144edb784617ee902f491ffd6
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.11' into stable-5.12 84/183484/1
Thomas Wolf [Thu, 29 Jul 2021 11:11:54 +0000 (13:11 +0200)]
Merge branch 'stable-5.11' into stable-5.12

* stable-5.11:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: Ie8db450a1fad05bddb812a55b2ceb03b2805403a
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.10' into stable-5.11 83/183483/1
Thomas Wolf [Thu, 29 Jul 2021 11:11:08 +0000 (13:11 +0200)]
Merge branch 'stable-5.10' into stable-5.11

* stable-5.10:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: I55f4dd19e9fa3b789bd9a79d256fe9abb55ee7f4
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.9' into stable-5.10 82/183482/1
Thomas Wolf [Thu, 29 Jul 2021 11:10:33 +0000 (13:10 +0200)]
Merge branch 'stable-5.9' into stable-5.10

* stable-5.9:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: Ic37426211905d987ddd11480a54d95b86143c94c
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.8' into stable-5.9 81/183481/1
Thomas Wolf [Thu, 29 Jul 2021 11:09:52 +0000 (13:09 +0200)]
Merge branch 'stable-5.8' into stable-5.9

* stable-5.8:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: If09cbb877c674f15261715cecef7a2393bf66fa3
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.7' into stable-5.8 80/183480/1
Thomas Wolf [Thu, 29 Jul 2021 11:09:13 +0000 (13:09 +0200)]
Merge branch 'stable-5.7' into stable-5.8

* stable-5.7:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: I32010c6bf45d5138e17143d6c284ac56434eade1
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.6' into stable-5.7 79/183479/1
Thomas Wolf [Thu, 29 Jul 2021 11:08:01 +0000 (13:08 +0200)]
Merge branch 'stable-5.6' into stable-5.7

* stable-5.6:
  [test] Create keystore with the keytool of the running JDK
  ReachabilityCheckerTestCase: fix reachable from self test case

Change-Id: I1f6b4fc26f6ee6f22cc0aacd032c1e73ba246dbc
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.5' into stable-5.6 78/183478/1
Thomas Wolf [Thu, 29 Jul 2021 11:06:56 +0000 (13:06 +0200)]
Merge branch 'stable-5.5' into stable-5.6

* stable-5.5:
  [test] Create keystore with the keytool of the running JDK

Change-Id: Icb0bb6dc4ad05b1f3eb562547893f2e0aedf8775
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.4' into stable-5.5 77/183477/1
Thomas Wolf [Thu, 29 Jul 2021 11:05:59 +0000 (13:05 +0200)]
Merge branch 'stable-5.4' into stable-5.5

* stable-5.4:
  [test] Create keystore with the keytool of the running JDK

Change-Id: I5ff3dc1c771aeb33af39eb68f166c7282b478cf8
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.3' into stable-5.4 76/183476/1
Thomas Wolf [Thu, 29 Jul 2021 11:05:20 +0000 (13:05 +0200)]
Merge branch 'stable-5.3' into stable-5.4

* stable-5.3:
  [test] Create keystore with the keytool of the running JDK

Change-Id: If92372b7bfbfb9445fcb934c48dc1cd6610e061b
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.2' into stable-5.3 75/183475/1
Thomas Wolf [Thu, 29 Jul 2021 11:03:56 +0000 (13:03 +0200)]
Merge branch 'stable-5.2' into stable-5.3

* stable-5.2:
  [test] Create keystore with the keytool of the running JDK

Change-Id: I981de862c614986a7b443fed1cce7b895b758682
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years agoMerge branch 'stable-5.1' into stable-5.2 74/183474/1
Thomas Wolf [Thu, 29 Jul 2021 11:02:16 +0000 (13:02 +0200)]
Merge branch 'stable-5.1' into stable-5.2

* stable-5.1:
  [test] Create keystore with the keytool of the running JDK

Change-Id: Ic56f4f23c37432377be88e07d06c5ad75591d84f
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years ago[test] Create keystore with the keytool of the running JDK 71/183471/1
Thomas Wolf [Sun, 25 Jul 2021 13:44:35 +0000 (15:44 +0200)]
[test] Create keystore with the keytool of the running JDK

Call keytool with the absolute path of "java.home". Otherwise a keytool
for a different, maybe even newer Java version might be picked up, and
then the keystore may not be readable by the JVM used to run the tests.

(cherry picked from commit 2d73c702d3e9128b7dc03a01fe2cf18f119d3ffe)

Change-Id: Iea77024947a34267f008847d81312fe0abadc615
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years ago[gpg] Update to Bouncy Castle 1.69 76/183376/1
Thomas Wolf [Mon, 26 Jul 2021 11:28:40 +0000 (13:28 +0200)]
[gpg] Update to Bouncy Castle 1.69

Bump lower bound in MANIFEST.MF and adapt code.

Change-Id: I3a3c7948e5fc29f5517fe84209fcea81834e8e5b

3 years ago[test] Create keystore with the keytool of the running JDK 51/183351/1
Thomas Wolf [Sun, 25 Jul 2021 13:44:35 +0000 (15:44 +0200)]
[test] Create keystore with the keytool of the running JDK

Call keytool with the absolute path of "java.home". Otherwise a keytool
for a different, maybe even newer Java version might be picked up, and
then the keystore may not be readable by the JVM used to run the tests.

Change-Id: Iea77024947a34267f008847d81312fe0abadc615
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years ago[sshd] Minor code clean-up 52/183252/3
Thomas Wolf [Wed, 21 Jul 2021 17:53:47 +0000 (19:53 +0200)]
[sshd] Minor code clean-up

Since upstream changed the method profile to throw Exception it's not
necessary anymore to re-throw as IOException.

Change-Id: I31afab4f6e1a2f0feef79e6abced20d0ca1c493b

3 years agoSupport commit.template config property 21/179821/5
Julian Ruppel [Mon, 26 Apr 2021 08:24:05 +0000 (10:24 +0200)]
Support commit.template config property

Adds functionality to read the git commit.template property. The
template content is read either via a default encoding or, if present,
via encoding specified by i18n.commitEncoding property.

Bug: 446355

Change-Id: I0c45db98e324ddff26a7e0262835f259d6528a86
Signed-off-by: Julian Ruppel <julian.ruppel@sap.com>
3 years agoRelax version range for hamcrest and assertj 65/183165/1
Matthias Sohn [Mon, 19 Jul 2021 10:32:26 +0000 (12:32 +0200)]
Relax version range for hamcrest and assertj

We currently cannot use hamcrest 2.2 and assertj 3.20.2 (which requires
hamcrest 2.2) in egit tests since other Eclipse dependencies (e.g.
swtbot) require hamcrest 1.1.

Hence relax version range for these components in jgit so that jgit
tests also work when using the egit target platform.

Change-Id: I521e2ec4491bd8d790609b8a66a8f14511a865a1

3 years agobazel: don't expose jsch and jzlib to org.eclipse.jgit 71/183071/2
Matthias Sohn [Wed, 14 Jul 2021 22:00:43 +0000 (00:00 +0200)]
bazel: don't expose jsch and jzlib to org.eclipse.jgit

These libraries are no longer used by org.eclipse.jgit since the code
depending on them was moved to org.eclipse.jgit.ssh.jsch.

Change-Id: Ic1c66e8ca06d904abf44d84154bbe9a770aa94d5

3 years agoUpdate orbit to I20210713220109 70/183070/2
Matthias Sohn [Wed, 14 Jul 2021 20:30:06 +0000 (22:30 +0200)]
Update orbit to I20210713220109

update
- org.apache.commons.compress to 1.20.0.v20210713-192
- org.bouncycastle.bcpg to 1.69.0.v20210713-1924
- org.bouncycastle.bcpkix to 1.69.0.v20210713-1924
- org.bouncycastle.bcprov to 1.69.0.v20210713-1924

- add org.bouncycastle.bcutil 1.69.0.v20210713-1924

In bazel build don't expose bouncycastle to org.eclipse.jgit since it's
not used there anymore since code depending on bouncycastle was moved to
org.eclipse.jgit.gpg.bc.

CQ: 21771
CQ: 23471
CQ: 23472
CQ: 23473
CQ: 23474
Change-Id: Id3d94c00c39bbc57e3f49a61150841249dc3985c

3 years agoUpdate orbit to I20210711110031 88/182788/8
Matthias Sohn [Sun, 11 Jul 2021 12:21:40 +0000 (14:21 +0200)]
Update orbit to I20210711110031

and update
- assertj to 3.20.2.v20210706-1104
- hamcrest to 2.2.0.v20210711-0821
  - classes which were in org.hamcrest.core 1.3 and org.hamcrest.library
    1.3 were all moved to org.hamcrest in 2.2
  - the annotation org.hamcrest.Factory was removed and is no longer
    needed
  - junit 4.13 requires hamcrest-core and hamcrest-library 1.3 therefore
    keep them in the target platform

CQ: 23501
Change-Id: Ife871c0343b611be9203aed7f86577e85bbf5c95

3 years ago[sshd] Ignore revoked keys in OpenSshServerKeyDatabase.lookup() 68/182868/2
Thomas Wolf [Tue, 18 May 2021 19:44:18 +0000 (21:44 +0200)]
[sshd] Ignore revoked keys in OpenSshServerKeyDatabase.lookup()

It makes no sense to return revoked keys.

Change-Id: I99eee1de3dba5c0c8d275b7c1a24053874b3cb03
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
3 years ago[sshd] Distinguish key type and signature algorithm for host key 67/182867/2
Thomas Wolf [Tue, 29 Jun 2021 21:08:02 +0000 (23:08 +0200)]
[sshd] Distinguish key type and signature algorithm for host key

Since the introduction of the rsa-sha2-512 and rsa-sha2-256 signature
types, the key type for RSA is no longer automatically the signature
algorithm. We re-order the list for the host key proposal such that
keys we already have are preferred; this minimizes warnings about new
host keys. When doing so, put all of rsa-sha2-512, rsa-sha2-256, and
ssh-rsa at the front, in that order, not just ssh-rsa.

This ensures that we do prefer RSA keys if we already have an RSA host
key, but at the same time we still prefer the stronger signature
algorithms over the weaker and deprecated SHA1-based ssh-rsa signature.
It also helps avoid a bug found in some Github versions where the Github
SSH server uses a rsa-sha2-512 signature even though ssh-rsa was
negotiated.[1]

[1] https://www.eclipse.org/forums/index.php/t/1108282/

Bug: 574635
Change-Id: I0a49dcfa0c2c93f23118c983cd0bc9e5a467d886
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>