aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit/META-INF
Commit message (Collapse)AuthorAgeFilesLines
...
* Prepare 5.2.0-SNAPSHOT buildsMatthias Sohn2018-09-062-48/+48
| | | | | Change-Id: If8e8ca20e745901a5e0239c16cb4acc7934b4ec8 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 5.1.0-SNAPSHOT buildsMatthias Sohn2018-05-232-48/+48
| | | | | Change-Id: I8523a993ae1f7b62573d7547273bc1356bf64fa7 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge branch 'stable-4.11'Matthias Sohn2018-03-261-1/+0
|\ | | | | | | | | | | | | | | | | * stable-4.11: Remove package import for javax.servlet.http from org.eclipse.jgit Add missing @since tag and silence API error Change-Id: I2783a15ead26ab19de31a8fb3bfb148ef19de91a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Remove package import for javax.servlet.http from org.eclipse.jgitMatthias Sohn2018-03-271-1/+0
| | | | | | | | | | | | This package import is unused. Change-Id: I9f202bb3162736a1ef8054516f1a3145d3a7bb9b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Prepare 5.0.0-SNAPSHOT buildsMatthias Sohn2018-03-082-48/+48
|/ | | | | Change-Id: I2d2f50ed8a12f310e7cac68eed5536bd460c403f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.11.1-SNAPSHOT buildsMatthias Sohn2018-03-082-48/+48
| | | | | Change-Id: Id9aa6b7e8f56de5183b6cd57ef0e790ec9debd4d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.11.0.201803080745-rv4.11.0.201803080745-rMatthias Sohn2018-03-082-3/+3
| | | | | Change-Id: Ie24a33bc8a24c30db06fe7b175f405efb95776ec Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* LFS: Add remote download to SmudgeFilterMarkus Duft2018-02-161-0/+1
| | | | | | | | | | | | | | | Transfer data in chunks of 8k Transferring data byte per byte is slow, running checkout with CleanFilter on a 2.9MB file takes 20 seconds. Using a buffer of 8k shrinks this time to 70ms. Also register the filter commands in a way that the native GIT LFS can be used alongside with JGit. Implements auto-discovery of LFS server URL when cloning from a Gerrit LFS server. Change-Id: I452a5aa177dcb346d92af08b27c2e35200f246fd Also-by: Christian Halstrick <christian.halstrick@sap.com> Signed-off-by: Markus Duft <markus.duft@ssi-schaefer.com>
* Prepare 4.11.0-SNAPSHOT buildsMatthias Sohn2017-12-312-48/+48
| | | | | Change-Id: I5d5e2befcf530d93457d44684bd9e4fc2392e5eb Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Add header Automatic-Module-Name for Java 9Karsten Thoms2017-12-231-0/+1
| | | | | | Bug: 529075 Change-Id: I4532ce2c80eb91531d46026676502d636ccda706 Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Fix discouraged access warnings in RefsUnreadableInMemoryRepositoryMatthias Sohn2017-11-241-1/+2
| | | | Change-Id: I16e291f533625c80b1d39f7cbaf40efbdfcc2c3c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.10.0-SNAPSHOT buildsMatthias Sohn2017-10-082-48/+48
| | | | | Change-Id: I5ca462d1db18a2c5c9382cfb9c83972510fa2b88 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* reftable: debug toolsShawn Pearce2017-08-171-0/+1
| | | | | | | | | | | Simple debug programs to experiment with the reftable file format: debug-read-reftable debug-write-reftable debug-verify-reftable debug-benchmark-reftable Change-Id: I79db351d86900f1e58b17e922e195dff06ee71f1
* reftable: create and write reftable filesShawn Pearce2017-08-171-0/+1
| | | | | | | | This is a simple writer to create reftable formatted files. Follow-up commits will add support for reading from reftable, debugging utilities, and tests. Change-Id: I3d520c3515c580144490b0b45433ea175a3e6e11
* Add dfs fsck implementationZhen Chen2017-07-261-0/+1
| | | | | | | | | | | | JGit already had some fsck-like classes like ObjectChecker which can check for an individual object. The read-only FsckPackParser which will parse all objects within a pack file and check it with ObjectChecker. It will also check the pack index file against the object information from the pack parser. Change-Id: Ifd8e0d28eb68ff0b8edd2b51b2fa3a50a544c855 Signed-off-by: Zhen Chen <czhen@google.com>
* Merge branch 'stable-4.8'David Pursehouse2017-06-111-0/+1
|\ | | | | | | | | | | | | | | | | | | | | * stable-4.8: Use a dedicated executor to run auto-gc in command line interface Allow to use an external ExecutorService for background auto-gc Fetch: Add --recurse-submodules and --no-recurse-submodules options Fix capitalization of command help summaries Change-Id: I7c85f11daa34c11c7f6389de885a2183a686197e Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| * Allow to use an external ExecutorService for background auto-gcMatthias Sohn2017-06-111-0/+1
| | | | | | | | | | | | | | | | If set use the external executor, otherwise use JGit's own simple WorkQueue. Move WorkQueue to an internal package so we can reuse it without exposing it in the public API. Change-Id: I060d62ffd6692362a88b4bf13ee07b0dc857abe9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Prepare 4.8.0-SNAPSHOT buildsMatthias Sohn2017-05-172-3/+3
| | | | | | | | | | Change-Id: I27fc4e4969fafde0fcba26aeebe30d732770b68f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * JGit v4.8.0.201705170830-rc1v4.8.0.201705170830-rc1Matthias Sohn2017-05-172-3/+3
| | | | | | | | | | Change-Id: I60c0a40f2e38748641b25a25bcf10346e2950886 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Prepare 4.9.0-SNAPSHOT buildsMatthias Sohn2017-05-302-44/+44
|/ | | | | Change-Id: I52a4153d573799e861ab104939f51fac1aceb9ee Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.8.0-SNAPSHOT buildsMatthias Sohn2017-04-052-44/+44
| | | | | Change-Id: Ifea6750e79d417a8a2a891b3b5f96d68c7200011 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Pure Java SHA-1Shawn Pearce2017-02-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This implementation is derived straight from the description written in RFC 3174. On Mac OS X with Java 1.8.0_91 it offers similar throughput as MessageDigest SHA-1: system 239.75 MiB/s system 244.71 MiB/s system 245.00 MiB/s system 244.92 MiB/s sha1 234.08 MiB/s sha1 244.50 MiB/s sha1 242.99 MiB/s sha1 241.73 MiB/s This is the fastest implementation I could come up with. Common SHA-1 implementation tricks such as unrolling loops creates a method too large for the JIT to effectively optimize, resulting in lower overall hashing throughput. Using a preprocessor to perform the register renaming of A-E also didn't help, as again the method was too large for the JIT to effectively optimize. Fortunately the fastest version is a naive, straight-forward implementation very close to the description in RFC 3174. Change-Id: I228b05c4a294ca2ad51386cf0e47978c68e1aa42
* Add LfsPointerFilter TreeFilterDariusz Luksza2017-01-101-1/+5
| | | | | | | | | | | | | | | Add new variation of TreeFilter in order to detect LFS pointer files in the repository. Additionally, update LfsPointer to support the legacy version URL [1] as described in [2], and to allow arbitrary fields in the pointer file. [1] https://hawser.github.com/spec/v1 [2] https://github.com/git-lfs/git-lfs/blob/master/docs/spec.md Change-Id: I621eb058619fb1b78888a54c4b60bb110a722fc3 Signed-off-by: Dariusz Luksza <dariusz@luksza.org> Signed-off-by: David Pursehouse <david.pursehouse@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Get rid of javax.servlet API dependency for core org.eclipse.jgitMarc Strapetz2017-01-031-1/+0
| | | | | Change-Id: I57d5d4fab7e0b1bd4cf5f1850e8569c8ac5def88 Signed-off-by: Marc Strapetz <marc.strapetz@syntevo.com> Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
* Prepare 4.7.0-SNAPSHOT buildsMatthias Sohn2016-12-272-43/+43
| | | | | Change-Id: I20754d13007e6591d36aae5766f3a9a82b24e120 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.6.1-SNAPSHOT buildsMatthias Sohn2016-12-242-43/+43
| | | | | Change-Id: I6b05a6f6c3f92365c272e1bdaf76093ca01f2d58 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.6.0.201612231935-rv4.6.0.201612231935-rMatthias Sohn2016-12-242-3/+3
| | | | | Change-Id: Iaa88fe1b195dfe6be99a7b4cb064684e75563715 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Define MonotonicClock interface for advanced timestampsShawn Pearce2016-11-211-5/+3
| | | | | | | | | | | | | MonotonicClock can be implemented to provide more certainity about time than the standard System.currentTimeMillis() can provide. This can be used by classes such as PersonIdent and Ketch to rely on more certainity about time moving in a strictly ascending order. Gerrit Code Review can also leverage this interface through its embedding of JGit and use MonotonicClock and ProposedTimestamp to provide stronger assurance that NoteDb time is moving forward. Change-Id: I1a3cbd49a39b150a0d49b36d572da113ca83a786
* Update JavaEWAH to 1.1.6Dave Borowitz2016-11-171-1/+1
| | | | | | | | Use Oxygen M3 Orbit repository which provides the bundles built using the new orbit-recipe based build. CQ: 11658 Change-Id: I7f3dcc966732b32830c75d5daa55383bd028d182 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Change JGit minimum execution environment to JavaSE-1.8Matthias Sohn2016-09-201-1/+1
| | | | | Bug: 500059 Change-Id: I47f3f6749a67da52029f84e002d9b155ed56d2b7 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Move AtomicObjectOutputStream to lfs/internalChristian Halstrick2016-09-201-1/+1
| | | | | | | | | The class AtomicObjectOutputStream should be available to all lfs related classes, not only to the server side. Move the class from org.eclipse.jgit.lfs.server.fs to org.eclipse.jgit.lfs.internal to achieve that. Change-Id: I028e1c9ec7c21f316340b21d558b9a6b77e2060d
* Prepare 4.6.0-SNAPSHOT buildsMatthias Sohn2016-09-192-42/+42
| | | | | Change-Id: Id2eafc331ee32c332c2a9b867b05c260beb0d10f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Add HTTP status code to ServiceMayNotContinueExceptionMasaya Suzuki2016-08-231-0/+1
| | | | | | | | The exception can be thrown in a various reason, and sometimes 403 Forbidden is not appropriate. Make the HTTP status code customizable. Change-Id: If2ef6f454f7479158a4e28a12909837db483521c Signed-off-by: Masaya Suzuki <masayasuzuki@google.com>
* Require-Bundle com.jcraft.jsch replaced by Import-Package statementJens Offenbach2016-08-091-1/+1
| | | | | | Bug: 359288 Change-Id: Ifbbf953f5389c6bd3ba960b598c0e92656b522e3 Signed-off-by: Jens Offenbach <wolle5050@gmx.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.5.0-SNAPSHOT buildsMatthias Sohn2016-06-012-42/+42
| | | | | Change-Id: I572fe9fea0e5ca0bec4648c916ae95a5b1ccf125 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Make UploadPack observe exceptions reading refsMike Edgar2016-04-141-1/+4
| | | | | | | | | | | | | Now if refs are unreadable when serving an upload pack the handler will fail due to the actual underlying failure. Previously all wants would be rejected as invalid because Repository.getAllRefs() returned an empty map. Testing this required a new subclass of InMemoryRepository so that an IOException could be injected at the correct time. Signed-off-by: Michael Edgar <adgar@google.com> Change-Id: Iac708b1db9d0ccce08c4ef5ace599ea0b57afdc0
* Prepare 4.4.0-SNAPSHOT buildsMatthias Sohn2016-04-082-42/+42
| | | | | Change-Id: If3162f4cc4ae6319b9f1e3293549485b039cfe7f Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.3.1-SNAPSHOT versionsMatthias Sohn2016-04-082-42/+42
| | | | | Change-Id: I52c98ba8fb3a303269a1f9380af114b6dd8c5009 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.3.0.201604071810-rv4.3.0.201604071810-rMatthias Sohn2016-04-082-3/+3
| | | | | Change-Id: I902cdf1ff92ce8c6e9d80c4965d8d5bd8b9ac6c1 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.3.0.201604071045-rMatthias Sohn2016-04-072-3/+3
| | | | | Change-Id: Iafab78d6be34d31a13f979b7be67611135c0f8bd Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Prepare 4.3-SNAPSHOT buildsMatthias Sohn2016-04-052-3/+3
| | | | | Change-Id: Ib831f8870938113bd5338763f90a07d5c108b1de Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v4.3.0.201603230630-rc1v4.3.0.201603230630-rc1Matthias Sohn2016-03-232-3/+3
| | | | | Change-Id: I10835e5aa3618e5033424595942cc1649152cb24 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Support LFS protocol and a file system based LFS storageMatthias Sohn2016-02-041-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement LfsProtocolServlet handling the "Git LFS v1 Batch API" protocol [1]. Add a simple file system based LFS content store and the debug-lfs-store command to simplify testing. Introduce a LargeFileRepository interface to enable additional storage implementation while reusing the same protocol implementation. At the client side we have to configure the lfs.url, specify that we use the batch API and we don't use authentication: [lfs] url = http://host:port/lfs batch = true [lfs "http://host:port/lfs"] access = none the git-lfs client appends the "objects/batch" to the lfs.url. Hard code an Authorization header in the FileLfsRepository.getAction because then git-lfs client will skip asking for credentials. It will just forward the Authorization header from the response to the download/upload request. The FileLfsServlet supports file content storage for "Large File Storage" (LFS) server as defined by the Github LFS API [2]. - upload and download of large files is probably network bound hence use an asynchronous servlet for good scalability - simple object storage in file system with 2 level fan-out - use LockFile to protect writing large objects against multiple concurrent uploads of the same object - to prevent corrupt uploads the uploaded file is rejected if its hash doesn't match id given in URL The debug-lfs-store command is used to run the LfsProtocolServlet and, optionally, the FileLfsServlet which makes it easier to setup a local test server. [1] https://github.com/github/git-lfs/blob/master/docs/api/http-v1-batch.md [2] https://github.com/github/git-lfs/tree/master/docs/api Bug: 472961 Change-Id: I7378da5575159d2195138d799704880c5c82d5f3 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> Signed-off-by: Sasa Zivkov <sasa.zivkov@sap.com>
* Prepare 4.3.0-SNAPSHOT buildsMatthias Sohn2016-01-212-42/+42
| | | | | Change-Id: Idcf0479529693b023042becd96698f9afd344bd4 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Ketch: Basic replication systemShawn Pearce2016-01-191-0/+1
| | | | | | | | | | | | | | | | | | Git Ketch is a multi-master Git repository management system. Writes are successful only if a majority of participant servers agree. Acked writes are durable against server failures as a majority of the participants store all required objects. Git Ketch is modeled on the Raft Consensus Algorithm[1]. A ketch sailing vessel is faster and more nimble than a raft. It can also carry more source codes. Git Ketch front-loads replication costs, which vaguely resembles a ketch sailing vessel's distinguishing feature of the main mast on the front of the ship. [1] https://raft.github.io/ Change-Id: Ib378dab068961fc7de624cd96030266660b64fb4
* RefTree: Store references in a Git treeShawn Pearce2016-01-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A group of updates can be applied by updating the tree in one step, writing out a new root tree, and storing its SHA-1. If references are stored in RefTrees, comparing two repositories is a matter of checking if two SHA-1s are identical. Without RefTrees comparing two repositories requires listing all references and comparing the sets. Track the "refs/" directory as a root tree by storing references that point directly at an object as a GITLINK entry in the tree. For example "refs/heads/master" is written as "heads/master". Annotated tags also store their peeled value with ^{} suffix, using "tags/v1.0" and "tags/v1.0^{}" GITLINK entries. Symbolic references are written as SYMLINK entries with the blob of the symlink carrying the name of the symbolic reference target. HEAD is outside of "refs/" namespace so it is stored as a special "..HEAD" entry. This name is chosen because ".." is not valid in a reference name and it almost looks like "../HEAD" which names HEAD if the reader was inside of the "refs/" directory. A new Command type is required to handle symbolic references and peeled references. Change-Id: Id47e5d4d32149a9e500854147edd7d93c1041a39
* Simplify development of commands: added main() to CLIGitCommandAndrey Loskutov2015-12-281-1/+1
| | | | | | | | | | | | This will execute git commands (with arguments) specified on the command line, handy for developing/debugging a sequence of arbitrary git commands working on same repository. The git working dir path can be specified via Java system property "git_work_tree". If not specified, current directory will be used. Change-Id: I621a9ec198c31e28a383818efeb4b3f835ba1d6f Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
* Make jgit annotations accessible to other pluginsAndrey Loskutov2015-11-171-37/+15
| | | | | | | | | | | | | | | Other plugins which want to use JGit nullness annotations in their code cannot do this if the annotations aren't part of the published API. Unfortunately it looks like although Eclipse JDT allows to use custom nullness annotation types per project, it does not understand if those annotations are used mixed with other nullness annotations in other projects. E.g. EGit can either configure JGit annotations for NPE analysis and so "understand" nullness from JGit API but so it loses the ability to use any other nullness annotations to annotate its own code. Change-Id: Ieeeb578c2fe35223a7561d668dce8e767dc89ef0 Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
* Update dependencies to use the JGit-internal @NullableTerry Parker2015-11-091-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the project-specific Eclipse settings to replace the use of the org.eclipse.jdt.annotation.Nullable class the new JGit-specific @Nullable annotation. I verified that Eclipse reports errors when the return value of a method annotated with @org.eclipse.jgit.annotations.Nullable is dereferenced without a null check. Also remove the Maven and MANIFEST.MF dependencies on org.eclipse.jdt.annotation. Eclipse null analysis uses three annotations: @Nullable, @NonNull and @NonNullByDefault. All three are updated in this patch because it is invalid to set the Eclipse preferences to empty values. So far only @Nullable has been introduced in org.eclipse.jgit.annotations. My personal preference is to follow the advice in Effective Java and avoid the null-return idiom, and to avoid passing null values in general. This sets the expectation is that arguments and return types are assumed non-null unless otherwise documented. If that is the expectation, then consistent application of @NonNull is redundant and hurts readability by cluttering the code, obscuring the occasional @Nullable annotation that really requires attention. If the JGit community decides there is value in using the @NonNull and @NonNullByDefault annotations we can add them--this change configures Eclipse to use them. Change-Id: I9af1b786d1b44b9b0d9c609480dc842df79bf698 Signed-off-by: Terry Parker <tparker@google.com>
* Prepare 4.2.0-SNAPSHOT buildsMatthias Sohn2015-09-282-39/+39
| | | | | Change-Id: If559d3565b1f84c93a533e1ce18d5293605d1950 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>