]> source.dussan.org Git - jgit.git/log
jgit.git
8 weeks agoDfsInserter: Create PackConfig from repo instead of repo.conf 35/1201735/1
Ivan Frade [Tue, 24 Sep 2024 22:23:04 +0000 (15:23 -0700)]
DfsInserter: Create PackConfig from repo instead of repo.conf

PackConfig can be constructed from the repo or from a config. While
browing the code, it is easier to follow the provenance of the
configuration when using the repository constructor.

Use the PackConfig(Repository) constructor in the
DfsInserter. Internally it calls PackConfig(repo.getConfig()) so this
should be a noop.

Change-Id: Ifce5bc87404ca8ec9a821d28253d489056faad9a

2 months agoMerge "DfsReader: Fallback to regular size read if size index throws"
Ivan Frade [Fri, 20 Sep 2024 17:54:54 +0000 (17:54 +0000)]
Merge "DfsReader: Fallback to regular size read if size index throws"

2 months agoPackIndex: Add protected setters to populate the MutableEntry 30/1201530/6
jackdt@google.com [Thu, 19 Sep 2024 20:28:27 +0000 (13:28 -0700)]
PackIndex: Add protected setters to populate the MutableEntry

Implementations of the iterator out of package receive a MutableEntry but they don't have a way to set data into it.

Add setters to the MutableEntry via protected methods in the iterator. This way, only implementors of the Iterator can modify the entry (cannot be modified e.g. by callers).

Change-Id: Id50c69d8be230ebdb8108acc47df13abcad0af0a

2 months agoDfsReader: Fallback to regular size read if size index throws 00/1201400/6
Ivan Frade [Tue, 17 Sep 2024 20:50:59 +0000 (13:50 -0700)]
DfsReader: Fallback to regular size read if size index throws

The reader can get IOException when reading the object size index, but
that index is an optimization, the size should still be available in
the pack.

Use the regular #getObjectSize() as a fallback when we get an
IOException from the object size index.

Change-Id: Ic5ec2cfc7c698aa94c6cfd5960cbab6c129f595a

2 months agoPackWriter: Remove constructor with only Reader as param 56/1201356/1
Ivan Frade [Mon, 16 Sep 2024 19:44:00 +0000 (12:44 -0700)]
PackWriter: Remove constructor with only Reader as param

At construction time, PackWriter receives the PackConfig as a
parameter or reads it from the repository. The only exception is when
the constructor receives only a reader (no repo nor conf
provided?!).

Remove PackWriter(Reader) and let callers be explicit what conf to
use. This makes clearer the flow of conf in the PackWriter.

Change-Id: If12e122797ffc8c44fc3c435ca1b000ca016645b

2 months agoPackIndex: Simplify Iterator/MutableEntry interaction 03/1200703/29
jackdt@google.com [Wed, 4 Sep 2024 23:07:23 +0000 (16:07 -0700)]
PackIndex: Simplify Iterator/MutableEntry interaction

The iterator keeps the current position in the index and the MutableEntry reads data from there on-demand, but the iterator needs to know about the entry and this creates a complicated interaction.

Make MutableEntry a simple data object and let the iterator iterate and populate it before returning it. Code is clearer and implementors only needs to worry about the iterator.

This fixes also MutableEntry visibility, that was preventing subclassing from out of the package.

Change-Id: I35010d1f80237e421dd51b8d3d61a8ecb03e0d01

2 months agoUpdate org.mockito:mockito-core to 5.13.0 51/1200651/1
Matthias Sohn [Thu, 12 Sep 2024 08:10:17 +0000 (10:10 +0200)]
Update org.mockito:mockito-core to 5.13.0

Change-Id: I7aa2a3ee8e5ad107992309ea1fd82eaa73bf59d6

2 months agoUpdate to jetty 12.0.13 50/1200650/1
Matthias Sohn [Thu, 12 Sep 2024 07:49:15 +0000 (09:49 +0200)]
Update to jetty 12.0.13

Change-Id: I05772a87c351fed631d386c034e01fca9ec38fb1

2 months agoUpdate org.apache.commons:commons-lang3 to 3.17.0 49/1200649/1
Matthias Sohn [Thu, 12 Sep 2024 07:41:10 +0000 (09:41 +0200)]
Update org.apache.commons:commons-lang3 to 3.17.0

Change-Id: I27a657a424050f0d7cacaec0f504c00f2c77b62a

2 months agoUpdate bytebuddy to 1.15.1 48/1200648/1
Matthias Sohn [Thu, 12 Sep 2024 07:31:00 +0000 (09:31 +0200)]
Update bytebuddy to 1.15.1

Change-Id: I244dab5dec191497ad794cd16884f2392d0fa3b8

2 months agoAdd 4.34 target platform for Eclipse 2024-12 45/1200645/2
Matthias Sohn [Thu, 12 Sep 2024 07:01:57 +0000 (09:01 +0200)]
Add 4.34 target platform for Eclipse 2024-12

and update org.apache.ant to 1.10.15 since Orbit updated to Ant 1.10.15.
See https://download.eclipse.org/tools/orbit/simrel/orbit-aggregation/2024-12/

Change-Id: I865decbad55f0b7ca998b37cafa6c0a1eb183734

2 months agoUse 2024-09 release repository in 4.33 target platform 44/1200644/1
Matthias Sohn [Thu, 12 Sep 2024 06:52:09 +0000 (08:52 +0200)]
Use 2024-09 release repository in 4.33 target platform

Change-Id: I30e6d8cf0690184f081d7f39d5733d4e46b86e0c

2 months agoPackReverseIndex: Fix javadoc in position methods 10/1200910/4
jackdt@google.com [Mon, 9 Sep 2024 21:05:52 +0000 (14:05 -0700)]
PackReverseIndex: Fix javadoc in position methods

Position in the API refers to reverse-index position
(offset order), not primary index position (sha1 order)

Change-Id: I7dbe314dac1b3a128dd1c4ed93b9be28fd0802cc

2 months agoReplace custom encoder `Constants#encode` by JDK implementation 42/1200642/1
Matthias Sohn [Fri, 6 Sep 2024 10:26:44 +0000 (12:26 +0200)]
Replace custom encoder `Constants#encode` by JDK implementation

Using the implementation provided in the JDK since Java 1.6 by
`String#getBytes(Charset)` reduces JGit maintenance effort and improves
performance.

The method Constants#encode was implemented when JGit still used Java
1.5. See [1].

Kudos to Marcin for proposing to use this improvement in RefWriter [2].
I think it should be used generally.

[1] https://repo.or.cz/jgit.git?a=commit;h=bfa3da225f198b19061158499b1135aff07d85b3
[2] https://eclipse.gerrithub.io/c/eclipse-jgit/jgit/+/1195180

Also-By: Marcin Czech <maczech@gmail.com>
Change-Id: I361ed6286b98351a315b8a8ffc3cb845831d35b2

2 months ago[releng] Bump japicmp base version to 7.0.0.202409031743-r 98/1200698/1
Thomas Wolf [Wed, 4 Sep 2024 20:32:52 +0000 (22:32 +0200)]
[releng] Bump japicmp base version to 7.0.0.202409031743-r

Change-Id: I5245a8b095174946abcbbb899f9c0a7dfd504cb4
Signed-off-by: Thomas Wolf <twolf@apache.org>
2 months agoPrepare 7.1.0-SNAPSHOT builds 56/1200456/1
Matthias Sohn [Tue, 3 Sep 2024 21:47:11 +0000 (23:47 +0200)]
Prepare 7.1.0-SNAPSHOT builds

Change-Id: Iba206a2d4645fc275cd2cd1cb3ae965b8ceafb28

2 months agoMerge branch 'stable-7.0' 55/1200455/1
Matthias Sohn [Tue, 3 Sep 2024 21:45:43 +0000 (23:45 +0200)]
Merge branch 'stable-7.0'

* stable-7.0:
  Prepare 7.0.1-SNAPSHOT builds
  JGit v7.0.0.202409031743-r
  Revert "Remove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean)"
  Remove deprecated JschSession#getSftpChannel method
  Remove deprecated AutoLFInputStream constructors
  Remove deprecated RawParseUtils#UTF8_CHARSET
  Remove deprecated FS#setAsyncFileStoreAttributes method
  FS, FS_Posix: remove deprecated #createNewFile(File) method
  Remove deprecated lastModified methods using long
  UserAgent: remove deprecated #getAgent, #hasAgent methods
  Remove deprecated Transport#getFilterBlobLimit methods
  Remove deprecated RefAdvertiser#send(Map<String, Ref>) method
  Remove deprecated ReceivePack#setEchoCommandFailures method
  Remove deprecated class ReceivePack.FirstLine
  PacketLineIn: make deprecated #END and #DELIM private
  WindowCacheStats: remove deprecated #getOpenFiles, #getOpenBytes
  Remove deprecated PatchApplier#applyPatch(InputStream)
  Remove deprecated MergeMessageFormatter#formatWithConflicts
  Remove deprecated MergeFormatter#formatMerge using charset name
  Remove deprecated MergeFormatter#formatMerge using charset name
  Remove deprecated TagBuilder#toByteArray method
  Remove deprecated Repository#hasObject(AnyObjectId) method
  Make deprecated Repository#peel(Ref) private
  Remove deprecated RefDatabase#getRef(String) method
  CoreConfig: remove deprecated #isLogAllRefUpdates method
  Constants: remove deprecated #CHARSET and #CHARACTER_ENCODING
  Remove deprecated ConfigConstants#CONFIG_KEY_STREAM_FILE_TRESHOLD
  Remove deprecated CommitBuilder#setEncoding(String) method
  Remove deprecated static #equals(AnyObjectId, AnyObjectId) method
  Remove deprecated FileSnapshot.save(long) method
  Remove deprecated lastModified accessors returning long
  Remove deprecated PackInvalidException constructors
  DirCacheEntry: remove deprecated methods
  Remove deprecated DirCacheCheckout#checkoutEntry methods
  Remove deprecated StashApplyCommand#setApplyUntracked method
  Remove deprecated StashApplyCommand#setApplyIndex method
  Remove deprecated RemoteSetUrlCommand#setUri method
  Remove deprecated RemoteSetUrlCommand#setPush method
  Remove deprecated RemoteSetUrlCommand#setName method
  Remove deprecated RemoteRemoveCommand#setName method
  Remove deprecated CheckoutCommand#setForce method
  Remove deprecated CheckoutCommand#setForce method
  Remove deprecated static AnyLongObjectId#equals method
  Remove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean)
  Remove unused API warning filters
  ObjectDirectoryTest: ensure WindowCursor is closed
  PackExtBlockCacheTableTest: fix empty block warning
  PackExtBlockCacheTableTest: suppress unchecked conversion warnings
  PackObjectSizeIndexV1: fix boxing warnings
  PackExtBlockCacheTableTest: suppress boxing warning on test class
  DfsBlockCacheConfigTest: suppress boxing warning on test class
  Suppress non-externalized string warnings
  Update jakarta.servlet:jakarta.servlet-api to 6.1.0
  Update org.apache.commons:commons-compress to 1.27.1
  Update org.tukaani:xz to 1.10
  Update org.assertj:assertj-core to 3.26.3
  Update org.apache.commons:commons-lang3 to 3.16.0
  Update bytebuddy to 1.15.0
  Update commons-logging:commons-logging to 1.3.4
  Update commons-codec:commons-codec to 1.17.1
  Update jetty to 12.0.12
  Prepare 7.0.0-SNAPSHOT builds
  JGit v7.0.0.202408271414-rc1
  Prepare 7.0.0-SNAPSHOT builds
  JGit v7.0.0.202408202050-m3
  JGit v7.0.0.202408201547-m3
  JGit v7.0.0.202409201410-m3

Change-Id: Ia2913076aa8ecdfa0c51752a6076658505f6736e

2 months agoPrepare 7.0.1-SNAPSHOT builds 54/1200454/1
Matthias Sohn [Tue, 3 Sep 2024 19:41:34 +0000 (21:41 +0200)]
Prepare 7.0.1-SNAPSHOT builds

Change-Id: I5a6a9e398d8b81bf7bd0afbd6c82116d4472a349

2 months agoJGit v7.0.0.202409031743-r 51/1200451/1 v7.0.0.202409031743-r
Matthias Sohn [Tue, 3 Sep 2024 17:42:07 +0000 (19:42 +0200)]
JGit v7.0.0.202409031743-r

Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Change-Id: I86507936091e6f7af7588835722672ff2668a205

2 months agoRevert "Remove deprecated 50/1200450/1
Matthias Sohn [Tue, 3 Sep 2024 17:35:16 +0000 (19:35 +0200)]
Revert "Remove deprecated
LocalDiskRepositoryTestCase#create(boolean,boolean)"

This reverts commit 3682611cef41ade46cf5ac194f0674b46367a395.

Reason: removing this deprecated method caused a ton of warnings about
closing an already closed Repository when running tests.

Change-Id: I3e9f224c55c167f92dad39caabfab5e43cf54cfb

2 months agoRemove deprecated JschSession#getSftpChannel method 48/1200448/2
Matthias Sohn [Fri, 30 Aug 2024 20:21:03 +0000 (22:21 +0200)]
Remove deprecated JschSession#getSftpChannel method

Change-Id: I5b5d3cbc6b0e5f85df26fe6c288c973cf5609296

2 months agoRemove deprecated AutoLFInputStream constructors 47/1200447/2
Matthias Sohn [Fri, 30 Aug 2024 20:18:50 +0000 (22:18 +0200)]
Remove deprecated AutoLFInputStream constructors

Change-Id: I00241e45d947582886658fa528cc20a961fed9e6

2 months agoRemove deprecated RawParseUtils#UTF8_CHARSET 46/1200446/2
Matthias Sohn [Fri, 30 Aug 2024 20:17:23 +0000 (22:17 +0200)]
Remove deprecated RawParseUtils#UTF8_CHARSET

Change-Id: I4b3f1344f77a575b2d0e00462806eddb4e9a6b80

2 months agoRemove deprecated FS#setAsyncFileStoreAttributes method 45/1200445/2
Matthias Sohn [Fri, 30 Aug 2024 20:09:11 +0000 (22:09 +0200)]
Remove deprecated FS#setAsyncFileStoreAttributes method

Change-Id: Iea9f61fd65772ab247b382c93035e3c9974705aa

2 months agoFS, FS_Posix: remove deprecated #createNewFile(File) method 44/1200444/2
Matthias Sohn [Fri, 30 Aug 2024 20:07:17 +0000 (22:07 +0200)]
FS, FS_Posix: remove deprecated #createNewFile(File) method

Change-Id: Id34a0be998eee360e69f74b469c4990afa153c1b

2 months agoRemove deprecated lastModified methods using long 43/1200443/2
Matthias Sohn [Fri, 30 Aug 2024 19:59:53 +0000 (21:59 +0200)]
Remove deprecated lastModified methods using long

from
- FileUtils#lastModified
- FileUtils#setLastModified
- FS#getLastModifiedTime
- FS#lastModified
- FS#setLastModified
- FileTreeIterator.Entry#getEntryLastModified
- WorkingTreeIterator#getEntryLastModified
- WorkingTreeIterator.Entry#getEntryLastModified

Change-Id: I5073f05c32f8f626383a91048470c79332983121

2 months agoUserAgent: remove deprecated #getAgent, #hasAgent methods 42/1200442/2
Matthias Sohn [Fri, 30 Aug 2024 19:54:50 +0000 (21:54 +0200)]
UserAgent: remove deprecated #getAgent, #hasAgent methods

Change-Id: Ib53de6dabea7f73ecfde85cb30f49fa05ee48551

2 months agoRemove deprecated Transport#getFilterBlobLimit methods 41/1200441/2
Matthias Sohn [Fri, 30 Aug 2024 19:52:31 +0000 (21:52 +0200)]
Remove deprecated Transport#getFilterBlobLimit methods

Change-Id: Ia72cc228b0acaa8df8f405bd224916cc76eadd22

2 months agoRemove deprecated RefAdvertiser#send(Map<String, Ref>) method 40/1200440/2
Matthias Sohn [Fri, 30 Aug 2024 19:51:27 +0000 (21:51 +0200)]
Remove deprecated RefAdvertiser#send(Map<String, Ref>) method

Change-Id: Ifffcfa6bf9baf9f6879a5a7e0f05d317347983f6

2 months agoRemove deprecated ReceivePack#setEchoCommandFailures method 39/1200439/2
Matthias Sohn [Fri, 30 Aug 2024 19:49:54 +0000 (21:49 +0200)]
Remove deprecated ReceivePack#setEchoCommandFailures method

Change-Id: Ieeeb33b8b3dc8272023af5d47b3330f4a94c5b96

2 months agoRemove deprecated class ReceivePack.FirstLine 08/1200408/2
Matthias Sohn [Fri, 30 Aug 2024 15:50:59 +0000 (17:50 +0200)]
Remove deprecated class ReceivePack.FirstLine

Change-Id: I1143612088dba4fdced8f14c97293d17ff9658bb

2 months agoPacketLineIn: make deprecated #END and #DELIM private 07/1200407/2
Matthias Sohn [Fri, 30 Aug 2024 15:49:12 +0000 (17:49 +0200)]
PacketLineIn: make deprecated #END and #DELIM private

Change-Id: I1b7ba9f7e3dffe54313fc5d27051ad56a02a05b9

2 months agoWindowCacheStats: remove deprecated #getOpenFiles, #getOpenBytes 06/1200406/2
Matthias Sohn [Fri, 30 Aug 2024 15:47:16 +0000 (17:47 +0200)]
WindowCacheStats: remove deprecated #getOpenFiles, #getOpenBytes

Change-Id: If254177fd7914cb1f909f6620032bb4016208855

2 months agoRemove deprecated PatchApplier#applyPatch(InputStream) 05/1200405/2
Matthias Sohn [Fri, 30 Aug 2024 15:45:41 +0000 (17:45 +0200)]
Remove deprecated PatchApplier#applyPatch(InputStream)

Change-Id: I79923b95861af983b676d436938aaeebe8c5b658

2 months agoRemove deprecated MergeMessageFormatter#formatWithConflicts 04/1200404/2
Matthias Sohn [Fri, 30 Aug 2024 15:44:24 +0000 (17:44 +0200)]
Remove deprecated MergeMessageFormatter#formatWithConflicts

Change-Id: I3040f655318c47f268433294720a99325ae78863

2 months agoRemove deprecated MergeFormatter#formatMerge using charset name 03/1200403/2
Matthias Sohn [Fri, 30 Aug 2024 15:43:10 +0000 (17:43 +0200)]
Remove deprecated MergeFormatter#formatMerge using charset name

Change-Id: I7d0bdb61a8698e94bb40c22fe1c40c70cec65dfc

2 months agoRemove deprecated MergeFormatter#formatMerge using charset name 02/1200402/2
Matthias Sohn [Fri, 30 Aug 2024 15:42:16 +0000 (17:42 +0200)]
Remove deprecated MergeFormatter#formatMerge using charset name

Change-Id: Id2bdcb865203ed192fea35cfcf82c34667710726

2 months agoRemove deprecated TagBuilder#toByteArray method 01/1200401/2
Matthias Sohn [Fri, 30 Aug 2024 15:37:48 +0000 (17:37 +0200)]
Remove deprecated TagBuilder#toByteArray method

Change-Id: I14e78bcd4bbdb491bcc44a53ff19609b79c0831b

2 months agoRemove deprecated Repository#hasObject(AnyObjectId) method 00/1200400/2
Matthias Sohn [Fri, 30 Aug 2024 15:36:58 +0000 (17:36 +0200)]
Remove deprecated Repository#hasObject(AnyObjectId) method

Change-Id: I473dff6bdc23cfb126d22e18c168390a0e21301d

2 months agoMake deprecated Repository#peel(Ref) private 99/1200399/2
Matthias Sohn [Fri, 30 Aug 2024 15:36:05 +0000 (17:36 +0200)]
Make deprecated Repository#peel(Ref) private

Change-Id: I1c16196bba00a5d0f54c10261cc08185305ba4a3

2 months agoRemove deprecated RefDatabase#getRef(String) method 98/1200398/2
Matthias Sohn [Fri, 30 Aug 2024 15:33:43 +0000 (17:33 +0200)]
Remove deprecated RefDatabase#getRef(String) method

Change-Id: I89f42db2b9dabee18d4220457436b9f9b6340f50

2 months agoCoreConfig: remove deprecated #isLogAllRefUpdates method 97/1200397/2
Matthias Sohn [Fri, 30 Aug 2024 15:32:04 +0000 (17:32 +0200)]
CoreConfig: remove deprecated #isLogAllRefUpdates method

Change-Id: I4e5f96696b57512488f48e66a82760b2e8671878

2 months agoConstants: remove deprecated #CHARSET and #CHARACTER_ENCODING 96/1200396/2
Matthias Sohn [Fri, 30 Aug 2024 15:28:57 +0000 (17:28 +0200)]
Constants: remove deprecated #CHARSET and #CHARACTER_ENCODING

Change-Id: If2d3c1a96560e0bc5e352bdbcab4c191cbed1a42

2 months agoRemove deprecated ConfigConstants#CONFIG_KEY_STREAM_FILE_TRESHOLD 95/1200395/2
Matthias Sohn [Fri, 30 Aug 2024 15:24:00 +0000 (17:24 +0200)]
Remove deprecated ConfigConstants#CONFIG_KEY_STREAM_FILE_TRESHOLD

Change-Id: I3521ba8f8456160bd18ccb22c7d4a131aaac4ff2

2 months agoRemove deprecated CommitBuilder#setEncoding(String) method 94/1200394/2
Matthias Sohn [Fri, 30 Aug 2024 15:23:02 +0000 (17:23 +0200)]
Remove deprecated CommitBuilder#setEncoding(String) method

Change-Id: I5bd8d0c292151bfa58325d51ef51928715871cf1

2 months agoRemove deprecated static #equals(AnyObjectId, AnyObjectId) method 53/1200253/2
Matthias Sohn [Fri, 30 Aug 2024 15:21:51 +0000 (17:21 +0200)]
Remove deprecated static #equals(AnyObjectId, AnyObjectId) method

Change-Id: I72544d2b3c85b8f96c2b8f94b86fb9b362f09475

2 months agoRemove deprecated FileSnapshot.save(long) method 52/1200252/3
Matthias Sohn [Fri, 30 Aug 2024 15:17:29 +0000 (17:17 +0200)]
Remove deprecated FileSnapshot.save(long) method

Change-Id: I9b77142127cc96ee6658e85a6cf0586d941c5c0c

2 months agoRemove deprecated lastModified accessors returning long 51/1200251/3
Matthias Sohn [Fri, 30 Aug 2024 15:16:24 +0000 (17:16 +0200)]
Remove deprecated lastModified accessors returning long

- FileSnapshot#lastModified
- LockFile#getCommmitLastModified

Change-Id: I6962166ca5decbb332dfb25851c93debfe2ca90c

2 months agoRemove deprecated PackInvalidException constructors 50/1200250/2
Matthias Sohn [Fri, 30 Aug 2024 15:11:34 +0000 (17:11 +0200)]
Remove deprecated PackInvalidException constructors

Change-Id: I8db6b1dd8e39811ebde676389833dbc906106452

2 months agoDirCacheEntry: remove deprecated methods 49/1200249/2
Matthias Sohn [Fri, 30 Aug 2024 15:10:33 +0000 (17:10 +0200)]
DirCacheEntry: remove deprecated methods

- boolean mightBeRacilyClean(int, int)
- long getLastModified()
- void setLastModified(long)

Change-Id: I428fbb2109e13e80b8655622531c10e55a922a6f

2 months agoRemove deprecated DirCacheCheckout#checkoutEntry methods 48/1200248/2
Matthias Sohn [Fri, 30 Aug 2024 15:07:01 +0000 (17:07 +0200)]
Remove deprecated DirCacheCheckout#checkoutEntry methods

Change-Id: I28d00d7a70af0fbb76e237dd77b929508720ecdb

2 months agoRemove deprecated StashApplyCommand#setApplyUntracked method 47/1200247/2
Matthias Sohn [Fri, 30 Aug 2024 14:46:26 +0000 (16:46 +0200)]
Remove deprecated StashApplyCommand#setApplyUntracked method

Change-Id: I23e3ed3259edad3a22b59cca938f041b39ebf0cb

2 months agoRemove deprecated StashApplyCommand#setApplyIndex method 46/1200246/2
Matthias Sohn [Fri, 30 Aug 2024 14:45:34 +0000 (16:45 +0200)]
Remove deprecated StashApplyCommand#setApplyIndex method

Change-Id: I2183285f6ccba1b62a318e711f2451df5d083ca1

2 months agoRemove deprecated RemoteSetUrlCommand#setUri method 45/1200245/2
Matthias Sohn [Fri, 30 Aug 2024 14:44:16 +0000 (16:44 +0200)]
Remove deprecated RemoteSetUrlCommand#setUri method

Change-Id: Ib9041be0d88dd837aa68eda2b00f3aa9ebc54c27

2 months agoRemove deprecated RemoteSetUrlCommand#setPush method 44/1200244/2
Matthias Sohn [Fri, 30 Aug 2024 14:42:59 +0000 (16:42 +0200)]
Remove deprecated RemoteSetUrlCommand#setPush method

Change-Id: I4026531148a7560179dae89c05424f256e6600d2

2 months agoRemove deprecated RemoteSetUrlCommand#setName method 43/1200243/2
Matthias Sohn [Fri, 30 Aug 2024 14:41:15 +0000 (16:41 +0200)]
Remove deprecated RemoteSetUrlCommand#setName method

Change-Id: I769e999b5990f83719e3c638da9dfd0be4c5b826

2 months agoRemove deprecated RemoteRemoveCommand#setName method 42/1200242/2
Matthias Sohn [Fri, 30 Aug 2024 14:40:21 +0000 (16:40 +0200)]
Remove deprecated RemoteRemoveCommand#setName method

Change-Id: I2bd2a213b4642283b11f787ffcbab29916e2c5e7

2 months agoMerge "Remove deprecated CheckoutCommand#setForce method" into stable-7.0
Luca Milanesio [Tue, 3 Sep 2024 13:47:49 +0000 (13:47 +0000)]
Merge "Remove deprecated CheckoutCommand#setForce method" into stable-7.0

2 months agoRemove deprecated CheckoutCommand#setForce method 49/1200449/1
Matthias Sohn [Fri, 30 Aug 2024 14:38:55 +0000 (16:38 +0200)]
Remove deprecated CheckoutCommand#setForce method

Change-Id: Ie0b59ec21fc8dbe18242bbb52cb794e5a02c1ed5

2 months agoRemove deprecated CheckoutCommand#setForce method 41/1200241/2
Matthias Sohn [Fri, 30 Aug 2024 14:38:55 +0000 (16:38 +0200)]
Remove deprecated CheckoutCommand#setForce method

Change-Id: I39cfbeba0171c66e0f03b7b3785313da55b1dcac

2 months agoRemove deprecated static AnyLongObjectId#equals method 40/1200240/2
Matthias Sohn [Fri, 30 Aug 2024 14:37:04 +0000 (16:37 +0200)]
Remove deprecated static AnyLongObjectId#equals method

Change-Id: Ie67b9a4a5e1972ec3aebf50e058a9aabf5a20099

2 months agoRemove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean) 39/1200239/2
Matthias Sohn [Fri, 30 Aug 2024 14:32:30 +0000 (16:32 +0200)]
Remove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean)

Change-Id: I9eff2d405b5302753ff2ec1d0eab431bdba69fe0

2 months agoMerge branch 'master' into stable-7.0 38/1200238/1
Matthias Sohn [Fri, 30 Aug 2024 12:45:16 +0000 (14:45 +0200)]
Merge branch 'master' into stable-7.0

* master:
  walks: Remove deprecated #createReachabilityChecker() method
  RepoCommand.RemoteReader: Remove @Deprecated method
  ReachabilityChecker: Remove @Deprecated method
  UploadPack: Remove @Deprecated classes and methods
  ObjectId: Add method to read an ObjectId from a ByteBuffer
  DfsPackFile: re-add metrics for bitmap index loads

Change-Id: I383c9784ced95dfd58f01454fd13b086b180d462

2 months agowalks: Remove deprecated #createReachabilityChecker() method 06/1200306/1
Ivan Frade [Thu, 29 Aug 2024 22:47:15 +0000 (15:47 -0700)]
walks: Remove deprecated #createReachabilityChecker() method

Change-Id: If9375ac49fa82e988e0708d89f0f929495e6e7cc

2 months agoRepoCommand.RemoteReader: Remove @Deprecated method 05/1200305/1
Ivan Frade [Thu, 29 Aug 2024 22:45:15 +0000 (15:45 -0700)]
RepoCommand.RemoteReader: Remove @Deprecated method

Cleaning up before 7.0 release.

Change-Id: I83db715a8170a54957dd5bcf38df5b0911a12107

2 months agoReachabilityChecker: Remove @Deprecated method 04/1200304/1
Ivan Frade [Thu, 29 Aug 2024 22:43:22 +0000 (15:43 -0700)]
ReachabilityChecker: Remove @Deprecated method

Cleaning up before 7.0 release.

Change-Id: I620c3a485785b3d1efc950317fe552b8465a479e

2 months agoUploadPack: Remove @Deprecated classes and methods 03/1200303/1
Ivan Frade [Thu, 29 Aug 2024 22:40:49 +0000 (15:40 -0700)]
UploadPack: Remove @Deprecated classes and methods

The coming 7.0 release is a chance to clean up these deprecated
classes and methods.

Change-Id: I23d263c9244c1e0096eb7c96c290213c9e668a03

2 months agoObjectId: Add method to read an ObjectId from a ByteBuffer 01/1200301/2
Ivan Frade [Thu, 29 Aug 2024 22:13:47 +0000 (15:13 -0700)]
ObjectId: Add method to read an ObjectId from a ByteBuffer

Some storages return data in a convenient ByteBuffer wrapper, but
there is no straigh-forward method to read ObjectIds from it.

Add ObjectId#fromRaw(ByteBuffer) to read object ids from byte buffers.

Change-Id: Ia3b244005e4d9a613294f5ad9dab3b8e7bc3d7df

2 months agoRemove unused API warning filters 48/1200148/1
Matthias Sohn [Wed, 28 Aug 2024 15:15:19 +0000 (17:15 +0200)]
Remove unused API warning filters

Change-Id: If5cfd8963db0699669be3594e844e14d38f97943

2 months agoObjectDirectoryTest: ensure WindowCursor is closed 47/1200147/1
Matthias Sohn [Wed, 28 Aug 2024 15:12:41 +0000 (17:12 +0200)]
ObjectDirectoryTest: ensure WindowCursor is closed

Change-Id: I75b7d36181a0d404d4e3dca17b9e436892d97b42

2 months agoPackExtBlockCacheTableTest: fix empty block warning 46/1200146/1
Matthias Sohn [Wed, 28 Aug 2024 15:10:04 +0000 (17:10 +0200)]
PackExtBlockCacheTableTest: fix empty block warning

Change-Id: I35e7527c6c555cd57fce14889412fa2fd6beab88

2 months agoPackExtBlockCacheTableTest: suppress unchecked conversion warnings 45/1200145/1
Matthias Sohn [Wed, 28 Aug 2024 15:09:16 +0000 (17:09 +0200)]
PackExtBlockCacheTableTest: suppress unchecked conversion warnings

Change-Id: I5fcad7a824c4a320683d11da52c4e2035231f85d

2 months agoPackObjectSizeIndexV1: fix boxing warnings 44/1200144/1
Matthias Sohn [Wed, 28 Aug 2024 14:13:42 +0000 (16:13 +0200)]
PackObjectSizeIndexV1: fix boxing warnings

Change-Id: I25e6194fb8bf09dcac1613cec8349c3893a4f81a

2 months agoPackExtBlockCacheTableTest: suppress boxing warning on test class 43/1200143/1
Matthias Sohn [Wed, 28 Aug 2024 14:10:39 +0000 (16:10 +0200)]
PackExtBlockCacheTableTest: suppress boxing warning on test class

Change-Id: Ie9d5da0c065ba0118927d530ed589952fb3b2c2b

2 months agoDfsBlockCacheConfigTest: suppress boxing warning on test class 42/1200142/1
Matthias Sohn [Wed, 28 Aug 2024 14:09:38 +0000 (16:09 +0200)]
DfsBlockCacheConfigTest: suppress boxing warning on test class

Change-Id: Ibe7edc5e53c3d467e0e6144a3f8a32989f1ac6af

2 months agoSuppress non-externalized string warnings 41/1200141/1
Matthias Sohn [Wed, 28 Aug 2024 14:08:04 +0000 (16:08 +0200)]
Suppress non-externalized string warnings

for texts which don't need to be translatable.

Change-Id: Iacac5df9525ddbc9942b7c440450b6aad4864135

2 months agoUpdate jakarta.servlet:jakarta.servlet-api to 6.1.0 38/1200138/2
Matthias Sohn [Wed, 28 Aug 2024 13:22:42 +0000 (15:22 +0200)]
Update jakarta.servlet:jakarta.servlet-api to 6.1.0

Change-Id: Ie95e0247e6a23a16343e0f644d613dfe95fd2d1e

2 months agoUpdate org.apache.commons:commons-compress to 1.27.1 37/1200137/2
Matthias Sohn [Wed, 28 Aug 2024 12:59:04 +0000 (14:59 +0200)]
Update org.apache.commons:commons-compress to 1.27.1

Change-Id: Ibd48bfe5ec3fdd3d52d755dc4881e013aae21d5d

2 months agoUpdate org.tukaani:xz to 1.10 36/1200136/1
Matthias Sohn [Wed, 28 Aug 2024 11:55:15 +0000 (13:55 +0200)]
Update org.tukaani:xz to 1.10

Change-Id: Ibd565d4d4e5ef0dd32514fdc6d73b44c25aaa27f

2 months agoUpdate org.assertj:assertj-core to 3.26.3 35/1200135/1
Matthias Sohn [Wed, 28 Aug 2024 11:43:12 +0000 (13:43 +0200)]
Update org.assertj:assertj-core to 3.26.3

Change-Id: I37816b1700bbcd102eb5b1b2591ba493edea4b36

2 months agoUpdate org.apache.commons:commons-lang3 to 3.16.0 34/1200134/1
Matthias Sohn [Wed, 28 Aug 2024 09:40:37 +0000 (11:40 +0200)]
Update org.apache.commons:commons-lang3 to 3.16.0

Change-Id: I7ec0cf1090aab26c1b1f70f816963fba63405034

2 months agoUpdate bytebuddy to 1.15.0 93/1199793/1
Matthias Sohn [Wed, 28 Aug 2024 00:05:00 +0000 (02:05 +0200)]
Update bytebuddy to 1.15.0

Change-Id: Idec6369bb5da997e532b912c2984b51e77a3ac0d

2 months agoUpdate commons-logging:commons-logging to 1.3.4 92/1199792/1
Matthias Sohn [Tue, 27 Aug 2024 23:53:53 +0000 (01:53 +0200)]
Update commons-logging:commons-logging to 1.3.4

Change-Id: I3dba27df9425484fdc630b067ddb19a2425aa891

2 months agoUpdate commons-codec:commons-codec to 1.17.1 91/1199791/1
Matthias Sohn [Tue, 27 Aug 2024 23:47:45 +0000 (01:47 +0200)]
Update commons-codec:commons-codec to 1.17.1

Change-Id: Ie78b1479ec95632981033342e65d546fc7bd905d

2 months agoUpdate jetty to 12.0.12 90/1199790/2
Matthias Sohn [Wed, 28 Aug 2024 06:49:51 +0000 (08:49 +0200)]
Update jetty to 12.0.12

Change-Id: I8b4381fcd067280050f31d6b8526c9f409244b55

2 months agoPrepare 7.0.0-SNAPSHOT builds 89/1199789/1
Matthias Sohn [Tue, 27 Aug 2024 23:50:51 +0000 (01:50 +0200)]
Prepare 7.0.0-SNAPSHOT builds

Change-Id: Ifa0a549e9551a2016241169e1c1e9052174c49d1

2 months agoDfsPackFile: re-add metrics for bitmap index loads 01/1200101/2
Sam Delmerico [Tue, 27 Aug 2024 20:27:35 +0000 (13:27 -0700)]
DfsPackFile: re-add metrics for bitmap index loads

The calculations for readBitmapIdxBytes and readBitmapIdxMicros
metrics were unintentionally removed in
https://gerrithub.io/c/eclipse-jgit/jgit/+/1177262, so this change
adds those metrics back.

Change-Id: I7ac7769acd092680933a27b2b3e70dd67690cfbf

2 months agoJGit v7.0.0.202408271414-rc1 87/1199787/1 v7.0.0.202408271414-rc1
Matthias Sohn [Tue, 27 Aug 2024 14:15:14 +0000 (16:15 +0200)]
JGit v7.0.0.202408271414-rc1

Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Change-Id: I969947a7c5fef72ed0c2f50e96a60787474f9906

2 months agoMerge branch 'master' into stable-7.0 84/1199784/1
Matthias Sohn [Tue, 27 Aug 2024 13:13:37 +0000 (15:13 +0200)]
Merge branch 'master' into stable-7.0

* master:
  DfsReaderIoStats: getters to object size index micros/bytes
  Do not set headers if response is already committed
  AmazonS3: Ensure SAXParserFactory sets valid/expected input params
  Signing: refactor interfaces
  Add a missing license header
  LockFile: Retry lock creation if parent dirs were removed
  GpgConfig: Add missing @since
  DfsReaderIoStats: Order fields and methods consistently

Change-Id: I81bf15379c25e3ba69dda222c6980648fff07ec5

2 months agoDfsReaderIoStats: getters to object size index micros/bytes 56/1199756/2
Ivan Frade [Tue, 20 Aug 2024 19:54:04 +0000 (12:54 -0700)]
DfsReaderIoStats: getters to object size index micros/bytes

These properties of the stats object don't have a getter and it is
required to export those values in logs.

Change-Id: I7f91a38ee4d02668aff1cbc8424ea669cdb1d2f7

2 months agoMerge branch 'stable-6.10' 82/1199782/1
Matthias Sohn [Tue, 27 Aug 2024 08:52:27 +0000 (10:52 +0200)]
Merge branch 'stable-6.10'

* stable-6.10:
  AmazonS3: Ensure SAXParserFactory sets valid/expected input params
  LockFile: Retry lock creation if parent dirs were removed

Change-Id: I599f698f812e11ae37843cac2333c9971ec30dd8

2 months agoDo not set headers if response is already committed 96/1199396/2
Max Haslbeck [Tue, 13 Aug 2024 11:16:53 +0000 (13:16 +0200)]
Do not set headers if response is already committed

This fixes issues when the response headers were already set and sent
to the client. In all other cases this is a no-op.

Change-Id: Ifb429e78f721cc514bb6eb1a3ef3412425cd2f1c
Signed-off-by: Max Haslbeck <haslbeck@google.com>
2 months agoAmazonS3: Ensure SAXParserFactory sets valid/expected input params 81/1199781/2
Matthias Sohn [Mon, 26 Aug 2024 23:31:44 +0000 (01:31 +0200)]
AmazonS3: Ensure SAXParserFactory sets valid/expected input params

Change Ie8a9d411fc19e8b7bf86c0b4df0b02153a0e9444 broke setting
valid/expected input parameters for the XML parser. This can be fixed
by calling SaxParserFactory#setNamespaceAware, see [1]. Also see earlier
fix in [2].

[1] https://stackoverflow.com/questions/24891323/namespace-handling-with-sax-in-java
[2] I05e993032ab3a6afb78634290b578ebc73cf1cbd

Bug: jgit-87
Change-Id: Id4e9eebac8d9de81e5d48a608066db3cc862e15c

2 months agoSigning: refactor interfaces 21/1199821/3
Thomas Wolf [Tue, 20 Aug 2024 20:41:45 +0000 (22:41 +0200)]
Signing: refactor interfaces

This is a big API-breaking change cleaning up the signing interfaces.

Initially, these interfaces were GPG/OpenPGP-specific. When EGit added
new signers and signature verifiers that called an external GPG
executable, they were found inadequate and were extended to be able to
pass in the GpgConfig to get access to the "gpg.program" setting.

With the introduction of X.509 S/MIME signing, it was discovered that
the interfaces were still not quite adequate, and the "Gpg" prefix on
the class names were confusing.

Since 7.0 is a major version bump, I'm taking this chance to overhaul
these interfaces from ground up.

For signing, there is a new Signer interface. With it goes a
SignerFactory SPI interface, and a final Signers class managing the
currently set signers. By default, signers for the different signature
types are created from the signer factories, which are discovered via
the ServiceLoader. External code can install its own signers, overriding
the default factories.

For signature verification, exactly the same mechanism is used.

This simplifies the setup of signers and signature verifiers, and makes
it all more regular. Signer instances just get a byte[] to sign and
don't have to worry about ObjectBuilders at all. SignatureVerifier
instances also just get the data and signature as byte[] and don't have
to worry about extracting the signature from a commit or tag, or about
what kind of signature it is.

Both Signers and SignatureVerifiers always get passed the Repository
and the GpgConfig. The repository will be needed in an implementation
for SSH signatures because gpg.ssh.* configs may need to be loaded
explicitly, and some of those values need the current workspace
location.

For signature verification, there is exactly one place in core JGit in
SignatureVerifiers that extracts signatures, determines the signature
type, and then calls the right signature verifier.

Change RevTag to recognize all signature types known in git (GPG, X509,
and SSH).

Change-Id: I26d2731e7baebb38976c87b7f328b63a239760d5
Signed-off-by: Thomas Wolf <twolf@apache.org>
2 months agoAdd a missing license header 91/1199991/1
Thomas Wolf [Thu, 22 Aug 2024 21:11:39 +0000 (23:11 +0200)]
Add a missing license header

Change-Id: Iccb922ea73b0bfd6360ea2182b88c520a951a0a2
Signed-off-by: Thomas Wolf <twolf@apache.org>
3 months agoLockFile: Retry lock creation if parent dirs were removed 25/1199825/2
Kaushik Lingarkar [Tue, 20 Aug 2024 22:50:20 +0000 (15:50 -0700)]
LockFile: Retry lock creation if parent dirs were removed

In the small window between creation of the lock file's parent dirs and
the lock file itself, the parent dirs may be cleaned by an external
process packing refs in the repository. When this scenario occurs, retry
creating the lock file (along with its parent dirs).

Change-Id: Id7ec60c3f7f373b59f1dc8de6b8fa6df6bdf2570
Signed-off-by: Kaushik Lingarkar <quic_kaushikl@quicinc.com>
3 months agoGpgConfig: Add missing @since 20/1199820/2
Thomas Wolf [Tue, 20 Aug 2024 20:40:10 +0000 (22:40 +0200)]
GpgConfig: Add missing @since

Change-Id: Ie56e7d8f2defe10a87565056a1763288d5b1e1a6
Signed-off-by: Thomas Wolf <twolf@apache.org>
3 months agoPrepare 7.0.0-SNAPSHOT builds
Matthias Sohn [Wed, 21 Aug 2024 14:37:28 +0000 (16:37 +0200)]
Prepare 7.0.0-SNAPSHOT builds

Change-Id: I07b258a9f94823c9c390daf6e1d3034ca5ace81f

3 months agoJGit v7.0.0.202408202050-m3 76/1199776/1
Matthias Sohn [Tue, 20 Aug 2024 20:51:02 +0000 (22:51 +0200)]
JGit v7.0.0.202408202050-m3

Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Change-Id: I44280658582c23ca0d9b85c4c24a1c2e7b82c6d8

3 months agoDfsReaderIoStats: Order fields and methods consistently 55/1199755/1
Ivan Frade [Tue, 20 Aug 2024 18:56:41 +0000 (11:56 -0700)]
DfsReaderIoStats: Order fields and methods consistently

As fields and getters were added, we didn't respect the (hard to see)
existing order.

Reorder with the following criteria:

Methods:
 xCacheHits() (for all indexes in index order),
 xCount()     (same),
 xBytes()     (same),
 xMicros()    (same).

Index order: primary, reverse, bitmap, commit-graph, object-size

Change-Id: I28f1d8121070d4357d566e3683947a26ceb3ba04