Commit Graph

9425 Commits

Author SHA1 Message Date
Matthias Sohn a9520419e2 Merge branch 'stable-6.6'
* stable-6.6:
  Update to Orbit S20230516204213
  Prepare 6.6.0-SNAPSHOT builds
  JGit v6.6.0.202305241045-m3
  Prepare 6.6.0-SNAPSHOT builds
  JGit v6.6.0.202305031100-m2

Change-Id: Ibceebbce6aebba7a8670de41eb39eb23b14b8c74
2023-05-25 23:09:17 +02:00
Matthias Sohn cae6d4e6b1 Update to Orbit S20230516204213
Change-Id: I4daae47b8d2e244b78dff5ca072e41153e7e6734
2023-05-24 18:24:21 +02:00
Matthias Sohn 264b91c3ee Prepare 6.6.0-SNAPSHOT builds
Change-Id: If0e4e8ce5f3e2f5170f313fb9b26b4ec0e34dab9
2023-05-24 18:23:45 +02:00
Matthias Sohn 9afff3e808 Prepare 6.7.0-SNAPSHOT builds
Change-Id: I50ff7ee31046cfc29a087c8963be3deae24b1c9c
2023-05-24 17:31:26 +02:00
Matthias Sohn 246f37d193 JGit v6.6.0.202305241045-m3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Change-Id: I204708812b9cb6f98f9c29e28548b91da0d88d91
2023-05-24 16:46:23 +02:00
Matthias Sohn f7ba6c2356 Merge branch 'master' into stable-6.6
* master:
  GraphObjectIndex: fix search in findGraphPosition
  Update to Tycho 4.0.0-SNAPSHOT
  PGP sign p2 artefacts
  Revert 'Use net.i2p.crypto:eddsa directly from Maven Central'
  Update dash license-tool-plugin to 1.0.2
  Also add suppressed exception if unchecked exception occurs in finally
  Candidate: use "Objects.equals" instead of "=="
  Use hamcrest 2.2 directly from Maven Central
  Use commons-logging directly from Maven Central
  Update jna to 5.13.0
  Use bytebuddy directly from Maven Central
  Use jna directly from Maven Central
  Use net.i2p.crypto:eddsa directly from Maven Central
  Use org.tukaani:xz directly from Maven Central
  Use args4j directly from Maven Central
  Use gson directly from Maven Central
  Remove unused $NON-NLS-1$
  Remove unused API filters
  Switch to Apache MINA sshd 2.10.0
  [releng] API filter for PackIndex.DEFAULT_WRITE_REVERSE_INDEX
  PackExt: add a #getTmpExtension method
  UploadPack: Record negotiation stats on fetchV2 call
  RewriteGeneratorTest: Introduce test cases for the RewriteGenerator
  PackWriter: write the PackReverseIndex file

Change-Id: I6c7760a32545320862abcdcc8761c9b728e78182
2023-05-24 15:50:27 +02:00
Matthias Sohn 590f03b7dc Merge changes Ib0f18147,I2a9308c0,Ica15a5dd
* changes:
  Update to Tycho 4.0.0-SNAPSHOT
  PGP sign p2 artefacts
  Revert 'Use net.i2p.crypto:eddsa directly from Maven Central'
2023-05-23 19:25:05 -04:00
Jonathan Tan 44461b215e Merge "GraphObjectIndex: fix search in findGraphPosition" 2023-05-23 18:26:47 -04:00
Jonathan Tan 6b3b2b33a5 GraphObjectIndex: fix search in findGraphPosition
In findGraphPosition, when there is no object whose OID starts with
the first byte of the sought OID, low equals high. This violates an
invariant of the loop, and when the sought OID is lexicographically
greater than every other OID in the repository, causes an
ArrayIndexOutOfBoundsException (because we're trying to read outside the
list of OIDs).

Therefore, check the "low < high" condition at the start of the loop,
not only after the first iteration.

Change-Id: Ic8ac198c151bd161c4996b9e7cb6e6660f151733
Helped-by: Ivan Frade <ifrade@google.com>
Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
2023-05-23 13:57:32 -07:00
Matthias Sohn d3d0ec4290 Update to Tycho 4.0.0-SNAPSHOT
We need to update to Tycho in order to force PGP signing of the
bouncycastle libraries which isn't supported by earlier Tycho versions.
For that we need to run Maven on Java 17 or higher.

In order to run tests on Java 11 add a `toolchain.xml` file into the
`~/.m2` directory providing the path to Java installations:

<?xml version='1.0' encoding='UTF-8'?>
<toolchains>
  <toolchain>
    <type>jdk</type>
    <provides>
      <id>JavaSE-11</id>
      <version>11</version>
    </provides>
    <configuration>
      <jdkHome>/path/to/java-11</jdkHome>
    </configuration>
  </toolchain>
  <toolchain>
    <type>jdk</type>
    <provides>
      <id>JavaSE-17</id>
      <version>17</version>
    </provides>
    <configuration>
      <jdkHome>/path/to/java-17</jdkHome>
    </configuration>
  </toolchain>
</toolchains>

Change-Id: Ib0f18147826e5b4a7fa1f41590772516269de702
2023-05-23 19:47:08 +02:00
Matthias Sohn 0d92f543f5 PGP sign p2 artefacts
This ensures bundles directly pulled from Maven Central are PGP signed
by Tycho.

See https://docs.google.com/document/d/1MnDBvOUwKvKacB-QKnH_PzK88dUlHkjs-D-DWEKmvkY

Change-Id: I2a9308c091e602d40a1c143edb506a3e43dd0dc2
2023-05-23 19:47:08 +02:00
Thomas Wolf f8038b6b58 Revert 'Use net.i2p.crypto:eddsa directly from Maven Central'
This reverts commit 7e094c6cf3.

Reason: the maven artifact has a broken MANIFEST.MF with a mandatory
dependency to sun.security.x509, which is an internal package in the
JDK and moreover not needed by the bundle except for one test class
that isn't in the bundle at all.

This extra dependency makes the JGit tycho packaging build fail when
Tycho 4 is used.

We must keep using the Orbit re-packaging of this artifact, which does
not have this unnecessary mandatory dependency.

Change-Id: Ica15a5ddcada09686de3055b2b3daf081e3c5ffc
Signed-off-by: Thomas Wolf <twolf@apache.org>
2023-05-23 19:47:08 +02:00
Matthias Sohn 5a00dd873d Update dash license-tool-plugin to 1.0.2
Change-Id: I9708d918f4610503d7a16f55cea3aa3931dcd2cc
2023-05-20 10:58:02 +02:00
Matthias Sohn 0eedb1affb Merge "Also add suppressed exception if unchecked exception occurs in finally" 2023-05-19 13:49:42 -04:00
Matthias Sohn 2cbf0c1774 Also add suppressed exception if unchecked exception occurs in finally
If a method called in a finally block throws an exception we should add
exceptions caught earlier to the exception we throw in the finally block
not regarding if it's a checked or unchecked exception.

Change-Id: I4c6be9a3a08482b07659ca31d6987ce719d81ca5
2023-05-18 21:10:33 +02:00
Fabio Ponciroli 334852c52f Candidate: use "Objects.equals" instead of "=="
Errorprone raises the following warning:
"[ReferenceEquality] Comparison using reference equality
instead of value equality".

Change-Id: Iacb207ef0625bb987a08406d4e7461e48fade97f
2023-05-18 05:37:11 -04:00
Matthias Sohn 4562e79e23 Use hamcrest 2.2 directly from Maven Central
Change-Id: I4039b56b1cdc54ff1886c2a4973d857d785989c2
2023-05-17 22:24:02 +02:00
Matthias Sohn 04ca81308f Use commons-logging directly from Maven Central
Change-Id: I08e51450f70f941761539d3f08dd65c5d706dcdc
2023-05-17 22:23:39 +02:00
Matthias Sohn 72455b5fd3 Update jna to 5.13.0
Change-Id: I87d65e66e1cac64ccb744632ea45d06f8b8637fe
2023-05-17 22:23:10 +02:00
Matthias Sohn e532509219 Use bytebuddy directly from Maven Central
Change-Id: I5e24a31b78ef3758e1ce84e3b0eacaff1608fcd9
2023-05-17 22:22:32 +02:00
Matthias Sohn ca0696664f Use jna directly from Maven Central
Change-Id: I3c2576648748a6c6020c13a604cf5fcd4864aeb8
2023-05-17 22:20:45 +02:00
Matthias Sohn 7e094c6cf3 Use net.i2p.crypto:eddsa directly from Maven Central
Change-Id: I8e864380fa5eb3006943b78b19f6cbe7ae9f8111
2023-05-17 17:03:56 +02:00
Matthias Sohn b3dcf6344b Use org.tukaani:xz directly from Maven Central
Change-Id: I4ab835cee694778eedaa125cc372be8b6c876133
2023-05-17 17:03:34 +02:00
Matthias Sohn 4aa89daac2 Use args4j directly from Maven Central
Change-Id: I91c7c42c1fc779278fe30294638edef182e88347
2023-05-17 17:03:06 +02:00
Matthias Sohn 7e67fe1d40 Use gson directly from Maven Central
Change-Id: I4741f733aa7ca219296ed788d4dc93df77cc65ff
2023-05-17 17:02:27 +02:00
Matthias Sohn 6f2d93fb8d Remove unused $NON-NLS-1$
Change-Id: I3314e5106d873c03903562f9798de6af2ae588a7
2023-05-17 17:01:33 +02:00
Matthias Sohn 0f7d485bc9 Remove unused API filters
Change-Id: I1971b31753fd4c3568016e7db955cce8e391a1e0
2023-05-17 17:01:33 +02:00
Thomas Wolf 913e6cf3f6 Switch to Apache MINA sshd 2.10.0
Bump the version numbers in pom.xml and in MANIFESTs, and in the bazel
WORKSPACE file. Update the target platforms. Remove work-arounds in
org.eclipse.jgit.ssh.apache that are no longer necessary.

The release notes for Apache MINA sshd are at [1].

[1] https://github.com/apache/mina-sshd/blob/master/docs/changes/2.10.0.md

Bug: 581770
Change-Id: Id27e73e9712b7865353c9b32b5b768f6e998b05e
Signed-off-by: Thomas Wolf <twolf@apache.org>
2023-05-16 12:59:37 +02:00
Thomas Wolf 43954ea62a [releng] API filter for PackIndex.DEFAULT_WRITE_REVERSE_INDEX
New static final constant is a (very minor) API break that needs to be
suppressed explicitly despite @since 6.6.

Remove a number of no longer needed API filters, and fix a broken
$NON-NLS-1$.

Change-Id: Ie4b0c45e8bd1f3067b6ff81c07d4b21b50bb8685
Signed-off-by: Thomas Wolf <twolf@apache.org>
2023-05-15 20:45:22 +02:00
Ivan Frade c40683929c Merge "UploadPack: Record negotiation stats on fetchV2 call" 2023-05-11 16:53:12 -04:00
Anna Papitto 2c89a3ec74 PackExt: add a #getTmpExtension method
During garbage collection, extensions for temporary files for indices
are formatted manually.

Add a method to PackExt to generate the temporary file extensions for
each type of index file programmatically.

Change-Id: I210bc2702e750bf0aea643b1a9a8536adebef179
Signed-off-by: Anna Papitto <annapapitto@google.com>
2023-05-11 16:49:55 -04:00
Ronald Bhuleskar d0564cf8ae UploadPack: Record negotiation stats on fetchV2 call
ServiceV2 is not collecting wants/have in PackStatistics. This records
the stats for fetch and push-negotiation.

Change-Id: Iefd79f36b3d7837195e8bd9fc7007de352089e66
2023-05-11 11:55:38 -07:00
Simon Sohrt e6f216119f RewriteGeneratorTest: Introduce test cases for the RewriteGenerator
Bug: 577948
Signed-off-by: Simon Sohrt <sohrt@his.de>
Change-Id: I5af1a43d49379e2417611eaacdd5f06be8147bc4
2023-05-09 10:51:29 +02:00
Ivan Frade 73f9f55e3b Merge "PackWriter: write the PackReverseIndex file" 2023-05-08 15:00:46 -04:00
Anna Papitto ce88e62edc PackWriter: write the PackReverseIndex file
PackWriter offers the ability to write out the pack file and its various
index files, except for the newly introduced file-based reverse index.

Now that PackReverseIndexWriter can write reverse index files,
PackWriter#writeReverseIndex will write one for a pack if the
corresponding config flag PackConfig#writeReverseIndex is on.

Change-Id: Ib75dd2bbfb9ee9366d5aacb46700d8cf8af4823a
Signed-off-by: Anna Papitto <annapapitto@google.com>
2023-05-08 11:23:30 -07:00
Matthias Sohn 05e7e9d5a2 Prepare 6.6.0-SNAPSHOT builds
Change-Id: Id2414c9f30d159c4f65a3c267373f7417c8ca65a
2023-05-04 10:53:01 +02:00
Matthias Sohn f6f56fc9b6 JGit v6.6.0.202305031100-m2
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Change-Id: I30077529655918f44479f4abca36aab4d677ea33
2023-05-03 17:59:22 +02:00
Matthias Sohn 74fa245b3c Merge "Fix inProcessPackedRefsLock not shared with copies of the instance" 2023-05-03 11:10:14 -04:00
Matthias Sohn 99535cd877 Update Maven plugins
- com.github.siom79.japicmp:japicmp-maven-plugin to 0.17.2
- com.github.spotbugs:spotbugs-maven-plugin to 4.7.3.4
- maven-clean-plugin to 3.2.0
- maven-compiler-plugin to 3.11.0
- maven-deploy-plugin to 3.1.1
- maven-enforcer-plugin to 3.3.0
- maven-javadoc-plugin to 3.5.0
- maven-project-info-reports-plugin to 3.4.3
- maven-resources-plugin to 3.3.1
- maven-surefire-plugin to 3.0.0
- maven-surefire-report-plugin to 3.0.0
- org.codehaus.mojo:build-helper-maven-plugin to 3.3.0
- org.jacoco:jacoco-maven-plugin to 0.8.10
- org.springframework.boot:spring-boot-maven-plugin to 2.7.11

Change-Id: I42f3a09362a3b1afef65981cd3a862780f592af2
2023-05-03 13:53:14 +02:00
Matthias Sohn 3d90c4a433 Add TransportHttp#getAdditionalHeaders
to enable inspecting which additional HTTP headers have been set on the
transport.

Change-Id: I0771be9cb7c837de7c203b7f044109b9b2a7d7ad
2023-05-03 02:40:41 +02:00
Matthias Sohn 731dfd4c5e Add 4.27 (2023-03) and 4.28 (2023-06) target platforms
Change-Id: I81cfba607e000a107348006785ff374db960ea6d
2023-05-03 01:30:05 +02:00
Nasser Grainawi 06cfebd066 Fix inProcessPackedRefsLock not shared with copies of the instance
The in process lock is intended to manage contention on locking the
packed-refs file within a single process without acquiring the file
system lock. Not sharing it across RefDirectory instances of the same
repository undermines that intent and results in more contention at the
file system level.

Change-Id: I68f11856aa0b4b1524f43554d7391a322a0a6897
Signed-off-by: Nasser Grainawi <quic_nasserg@quicinc.com>
2023-05-02 17:14:52 -06:00
Matthias Sohn 84461e8086 Update slf4j to 1.7.36 and consume it directly from Maven Central
BundleSymbolicNames changed to the names used upstream:
- slf4j.api
- slf4j.simple

Change-Id: Ibcaafae282d3a6fa013bc39d879def1b66073bca
2023-05-02 17:05:18 +02:00
Matthias Sohn 18cb13c4ef Update assertj-core to 3.24.2
and consume it directly from Maven Central.

Add the bundle to the jgit p2 repository.

Change-Id: I95f07a6d3ea645c4f56350d4b0facbaa84988440
2023-05-01 18:13:49 +02:00
Matthias Sohn 140a8b365a Update plexus-compiler to 2.13.0
Change-Id: I2e0665a5b5b41f501ab617220678d3a93fa43718
2023-05-01 17:08:41 +02:00
Matthias Sohn f3cb30f835 Update Apache commons-codec to 1.15
and consume it directly from Maven Central.

Its BundleSymbolicName changes to "org.apache.commons.commons-codec"
which is defined upstream.

Change-Id: Id9c366b3be0b97f4b191ba78f02001306f0e5035
2023-05-01 17:08:41 +02:00
Matthias Sohn 6890b8ffa8 Update org.apache.commons:commons-compress to 1.23.0
and consume it directly from Maven Central.

Its BundleSymbolicName changes to "org.apache.commons.commons-compress"
which is defined upstream.

Change-Id: I691f5f49491dd2c9ba577ebe0c6f7cdd462c047a
2023-05-01 17:08:41 +02:00
Matthias Sohn ee2143f744 Update javaEWAH to 1.2.3 and use it directly from Maven central
This changes its BundleSymbolicName from "javaewah" (name in Orbit) to
com.googlecode.javaewah.JavaEWAH (name in upstream artefact from Maven
Central).

Change-Id: I8dee6909d496e3d05b2de938515dde831518be24
2023-05-01 17:08:41 +02:00
Matthias Sohn 4244aec376 Update org.eclipse.jdt:ecj to 3.33.0
Change-Id: I0f310762313d6ccafe3ea410bf9d4c03731f0866
2023-05-01 17:07:33 +02:00
Matthias Sohn 076b8e7636 Add missing @since tag to IntComparator
Change-Id: Ic190ab404ccb3af675cdd90cac231ce6e856ea68
2023-05-01 15:34:47 +02:00