aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove unused import from ManifestParserMatthias Sohn2017-03-311-1/+0
| | | | Change-Id: Ie60ef9c7bc6ce0fdf017949ebfb9a21753e70506 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Downgrade jetty to 9.3.9.v20160517Matthias Sohn2017-03-3112-129/+129
| | | | | | | This works around the problems we faced with jetty 9.4.3.v20170317. Bug: 514336 Change-Id: I7e9dd539414624d71587c55cb436b843949aa296 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Require jetty 9.4.0 consistentlyMatthias Sohn2017-03-304-44/+45
| | | | Change-Id: If9de4c0e43850dec46858bd58e9692a7e099cbc3
* Document the intended use of RepoCommand#setURI()Han-Wen Nienhuys2017-03-291-3/+8
| | | | | Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> Change-Id: I4a59dd8278b7b0026094692127b7f55e89c10bae
* Noop changes to ManifestParserHan-Wen Nienhuys2017-03-291-14/+7
| | | | | | | | | | * Parse the base URL in ManifestParser construction. This will signal errors earlier. * Simplify stripping of trailing slashes. Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> Change-Id: I4a86f68c9d7737f71cf20352cfe26288fbd2b463
* Consistently use 'path' for the path to a subrepo in RepoCommandHan-Wen Nienhuys2017-03-271-18/+18
| | | | | Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> Change-Id: I79ea7eb7b4d319e0100e3121aca5ef82eb8ad92a
* Merge branch 'stable-4.6'Matthias Sohn2017-03-276-18/+268
|\ | | | | | | | | | | | | | | | | * stable-4.6: Only mark packfile invalid if exception signals permanent problem Don't flag a packfile invalid if opening existing file failed Prepare 4.5.2-SNAPSHOT builds Change-Id: Ife4efad1135d3870a5a0fb71e60b9524fb8777ab Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Merge branch 'stable-4.5' into stable-4.6David Pursehouse2017-03-276-18/+252
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.5: Only mark packfile invalid if exception signals permanent problem Don't flag a packfile invalid if opening existing file failed Prepare 4.5.2-SNAPSHOT builds Change-Id: I20b50981adc54c426666015ff04fe3bb1db9abd9 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| | * Only mark packfile invalid if exception signals permanent problemMatthias Sohn2017-03-266-18/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add NoPackSignatureException and UnsupportedPackVersionException to explicitly mark permanent unrecoverable problems with a pack Assume problem with a pack is permanent only if we are sure the exception signals a non-transient problem we can't recover from: - AccessDeniedException: we lack permissions - CorruptObjectException: we detected corruption - EOFException: file ended unexpectedly - NoPackSignatureException: pack has no pack signature - NoSuchFileException: file has gone missing - PackMismatchException: pack no longer matches its index - UnpackException: unpacking failed - UnsupportedPackIndexVersionException: unsupported pack index version - UnsupportedPackVersionException: unsupported pack version Do not attempt to handle Errors since they are thrown for serious problems applications should not try to recover from. Change-Id: I2c416ce2b0e23255c4fb03a3f9a0ee237f7a484a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * Don't flag a packfile invalid if opening existing file failedLuca Milanesio2017-03-251-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A packfile random file open operation may fail with a FileNotFoundException even if the file exists, possibly for the temporary lack of resources. Instead of managing the FileNotFoundException as any generic IOException it is best to rethrow the exception but prevent the packfile for being flagged as invalid until it is actually opened and read successfully or unsuccessfully. Bug: 514170 Change-Id: Ie37edba2df77052bceafc0b314fd1d487544bf35 Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * Prepare 4.5.2-SNAPSHOT buildsMatthias Sohn2017-03-2556-302/+302
| | | | | | | | | | | | | | | Change-Id: I8485de1f3f63dc9ec445b8fb08093ca144aedc59 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Raise minimum version of o.e.jetty.security to 9.4.0Matthias Sohn2017-03-254-8/+8
| | | | | | | | | | | | | | | | | | | | | This is required since we now use AbstractLoginService which was introduced in Jetty 9.4.0. Change-Id: Iee6e4ae456123099f7a99cc53c5ae02fd43bfa46 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Upgrade error_prone_core to 2.0.19David Pursehouse2017-03-241-1/+1
| | | | | | | | | | | | | | | Change-Id: I019f6e8ce4b074697c2dfc6020b10dc003d0804d Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* | | PullCommand: Add support for recursing into submodulesDavid Pursehouse2017-03-242-38/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new API method to set the recurse mode, and pass the mode into the fetch command. Extend the existing FetchCommandRecurseSubmodulesTest to also perform the same tests for fetch. Rename the test class accordingly. Change-Id: I12553af47774b4778f7011e1018bd575a7909bd0 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* | | bazel: Consume hamcrest through transitive dependencyDavid Ostrovsky2017-03-232-22/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | In I3ab958ce8 explicit dependency in lib/BUILD were defined and most of the bazel build implementation was switched to using it. Switch test.bzl test implementation to using explicit dependencies as well. Change-Id: I4413d1a45addeeb2a980d07669fa034c2eebb3a4 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* | | Explain in error message how to recover from lock failureMatthias Sohn2017-03-221-1/+1
| | | | | | | | | | | | | | | Bug: 483897 Change-Id: I70f8d9c82c1efe2928f072a2fb69461160f7c5f7 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Update orbit to S20170306214312 (Oxygen M6)Matthias Sohn2017-03-227-11/+11
| | | | | | | | | | | | | | | Change-Id: I44d2483c045c126e01751fed9365d4889a30ab2e Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Merge "Update Jetty to 9.4.3.v20170317"Matthias Sohn2017-03-2210-91/+91
|\ \ \
| * | | Update Jetty to 9.4.3.v20170317Matthias Sohn2017-03-2210-91/+91
| | | | | | | | | | | | | | | | Change-Id: I900c74bb76b6cfaee838e6f79d80c9b2840806df Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | Merge branch 'stable-4.6'David Pursehouse2017-03-220-0/+0
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | * stable-4.6: JGit v4.5.1.201703201650-r Change-Id: I16cac951cdafbe22afe597198fe3b86ecc2437e8 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| * | Merge branch 'stable-4.5' into stable-4.6David Pursehouse2017-03-220-0/+0
| |\| | | | | | | | | | | | | | | | | | | | | | * stable-4.5: JGit v4.5.1.201703201650-r Change-Id: Ic9dda2317456308c222928cb8453cb00a231eea1 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| | * JGit v4.5.1.201703201650-rv4.5.1.201703201650-rMatthias Sohn2017-03-2056-59/+59
| | | | | | | | | | | | | | | Change-Id: I88de7c9f52abbc4921a82208ed74d22aa19fb3cd Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Remove Buck buildDavid Pursehouse2017-03-2221-686/+0
| | | | | | | | | | | | | | | | | | Buck will be replaced with Bazel Change-Id: I3cf07d7aaaa2a58bac34e16c50af5416693254ac Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Add remaining parts of the bazel buildDavid Ostrovsky2017-03-2112-2/+504
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add bazel build for ui and junit.http, and the test packages. A number of different test labels are supported: api attributes dfs diff http lfs lfs-server nls notes pack patch pgm reftree revplot revwalk storage submodule symlinks transport treewalk util To run all tests: bazel test //... To run specific tests, using labels: bazel test --test_tag_filters=api,dfs,revplot,treewalk //... Change-Id: Ic41b05a79d855212e67b1b4707e9c6b4dc9ea70d Signed-off-by: David Ostrovsky <david@ostrovsky.org> Signed-off-by: Jonathan Nieder <jrn@google.com>
* | | Delegate crypto algorithm creation to InsecureCipherFactoryDavid Ostrovsky2017-03-211-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a preparation change to Bazel build implementation. Error Prone rejects the code with variable crypto algorithm as insecure see: [1]. [1] http://errorprone.info/bugpattern/InsecureCryptoUsage Change-Id: I92db70a7da454bc364597a995e8be5dccc2d6427 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* | | bazel: Mark junit targets testonlyJonathan Nieder2017-03-193-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only testonly targets (such as tests) need to use junit. In particular this involves making the toplevel :all rule testonly. It's not clear to me what that rule is for --- "bazel build //..." already works to build all targets. In any case it appears to be for testing, so marking it as testonly shouldn't be harmful. Change-Id: I28ff508ab8ce2ec0a0111109110aa9680d30600e
* | | bazel: Add explicit targets for library dependenciesJonathan Nieder2017-03-197-14/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a place to declare visibility restrictions and transitive dependencies for each library. Other targets should only declare dependencies on what they directly use, making dependencies easier to maintain. Trim the dependencies of org.eclipse.jgit:jgit to follow that rule. It declares dependencies on Apache httpcomponents and the servlet API but doesn't use them. Tested: * 'bazel build //...' succeeds * applying the change https://gerrit-review.googlesource.com/90843 to a copy of Gerrit, following the instructions there, and running 'bazel test //...' in that copy of Gerrit still succeeds Change-Id: I3ab958ce8b3227019cdbe4cc81e0f042e1541034
* | | Fix test configuration to run RacyGitTests, and fix testRacyGitDetectionDavid Pursehouse2017-03-192-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the filename suffix "Tests", the module was not included in tests when building with Maven, and without the @Test annotations the tests didn't get executed under Eclipse or buck test. testRacyGitDetection was failing because the index file did not exist. Add the missing configuration, the missing annotations, and add a call to reset() in testRacyGitDetection to force creation of the index file. Change-Id: I29dd8f89c36fef4ab40bedce7f4a26bd9b2390e4 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* | | LongObjectIdTest: Remove self comparison testDavid Ostrovsky2017-03-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes test flagged by error prone: LongObjectIdTest.java:294: error: [SelfComparison] An object is compared to itself assertEquals(0, id1.compareTo(id1)); Change-Id: Ife339c92b9570db2471a2fc029b3bfa114044790 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* | | RevFlagSetTest: Fix compilation error flagged by error proneDavid Ostrovsky2017-03-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes error flagged by error prone: Java compilation in rule '//org.eclipse.jgit.test:jgit' failed: Worker process sent response with exit code: 1. org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevFlagSetTest.java:149: error: [CollectionIncompatibleType] Argument '"bob"' should not be passed to this method; its type String is not compatible with its collection's type argument RevFlag assertFalse(set.contains("bob")); Change-Id: I4a971ce92fee55e28b2ab0c7b716ac20fa9c6709 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* | | Move SHA1 compress/recompress files to resource folderDavid Ostrovsky2017-03-182-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes Bazel build: in srcs attribute of java_library rule //org.eclipse.jgit:jgit: file '//org.eclipse.jgit:src/org/eclipse/jgit/util/sha1/SHA1.recompress' is misplaced here (expected .java, .srcjar or .properties). Another option that was considered is to exclude the non source files. Change-Id: I7083f27a4a49bf6681c85c7cf7b08a83c9a70c77 Signed-off-by: David Ostrovsky <david@ostrovsky.org>
* | | Merge "Merge branch 'stable-4.6'"Matthias Sohn2017-03-153-9/+40
|\ \ \
| * | | Merge branch 'stable-4.6'Matthias Sohn2017-03-163-9/+40
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.6: Don't remove pack when FileNotFoundException is transient Change-Id: I82941a98385cda27c89e1e6750b7b6db4e39f414 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | * | Merge branch 'stable-4.5' into stable-4.6Matthias Sohn2017-03-163-9/+40
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.5: Don't remove pack when FileNotFoundException is transient Change-Id: Ic17c542d78a4cad48ff1ed77dcdc853a4ef2dc06 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| | | * Don't remove pack when FileNotFoundException is transientLuca Milanesio2017-03-153-9/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The FileNotFoundException is typically raised in three conditions: 1. file doesn't exist 2. incompatible read vs. read/write open modes 3. filesystem locking 4. temporary lack of resources (e.g. too many open files) 1. is already managed, 2. would never happen as packs are not overwritten while with 3. and 4. it is worth logging the exception and retrying to read the pack again. Log transient errors using an exponential backoff strategy to avoid flooding the logs with the same error if consecutive retries to access the pack fail repeatedly. Bug: 513435 Change-Id: I03c6f6891de3c343d3d517092eaa75dba282c0cd Signed-off-by: Luca Milanesio <luca.milanesio@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | | Don't try to strip new line if the message buffer is emptyAndrey Loskutov2017-03-151-2/+6
|/ / / | | | | | | | | | | | | | | | Bug: 513726 Change-Id: I0e7c19f8883b93bad1b9de166f671d28f3e9c240 Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
* | | Upgrade error_prone_core to 2.0.18David Pursehouse2017-03-131-1/+1
| | | | | | | | | | | | | | | Change-Id: I155a7ff1e2488c2184506e77d1a01fda06fb4d57 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* | | FetchCommand: Fix detection of submodule recursion modeDavid Pursehouse2017-03-103-38/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The submodule.name.fetchRecurseSubmodules value was being read from the configuration of the submodule, but it should be read from the config of the parent repository. Also, the fetch.recurseSubmodules value from the parent repository's configuration was not being considered at all. Fix both of these and add tests. Now the precedence of the recurse mode is determined as follows: 1. Value passed to the API 2. Value configured in submodule.name.fetchRecurseSubmodules 3. Value configured in fetch.recurseSubmodules 4. Default to "on demand" Change-Id: Ic23b7c40b5f39135fb3fd754c597dd4bcc94240c
* | | Silence API error reported in LfsProtocolServletMatthias Sohn2017-03-091-0/+11
| | | | | | | | | | | | | | | | | | | | | Breaking API for API implementors (not clients) in a minor release is ok following OSGi semantic versioning rules. Change-Id: I14bb4a3084b237b4cd893a130e148148cd1e5df9 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Update JGit version used to detect API changes to 4.6.0Matthias Sohn2017-03-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We detect API changes during the Maven build using japicmp. Update the reference version to the latest minor version 4.6.0. Change-Id: I70f65f4a0680671612f21ee1afac7f7ef0152cbb Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Update jsch version used in pom.xml to 0.1.54Matthias Sohn2017-03-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We updated the version we use for packaging the p2 repository in efbecb97 but missed to update the version we compile against in the Maven build. Bug: 513354 Change-Id: I49afd89b43cfd8735568a86ef273723909d694a3 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | LfsProtocolServlet: Pass HTTP Authorization header to getLargeFileRepositoryDavid Pursehouse2017-03-082-3/+50
| | | | | | | | | | | | | | | | | | | | | | | | This allows implementations to reject operations that do not include proper authentication. Change-Id: If301476d8fb56a0899e424be3789c7576097d185 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
* | | Merge branch 'stable-4.6'David Pursehouse2017-03-080-0/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.6: Prepare 4.6.2-SNAPSHOT builds JGit v4.6.1.201703071140-r Change-Id: Idb3088ab6e64fb49f817b95bc0fef0a9efb77374 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| * | Prepare 4.6.2-SNAPSHOT buildsMatthias Sohn2017-03-0756-312/+312
| | | | | | | | | | | | | | | Change-Id: I8835f79145e6a989787d47322c3d8cb9baf0624a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * | JGit v4.6.1.201703071140-rv4.6.1.201703071140-rMatthias Sohn2017-03-0756-59/+59
| | | | | | | | | | | | | | | Change-Id: I842dc95313e5b47b0b7ec983c4a0a91915ed4183 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Merge branch 'stable-4.6'David Pursehouse2017-03-070-0/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * stable-4.6: Update Jetty to 9.4.1.v20170120 in buck build Update Jetty to 9.4.1.v20170120 Update build to use Tycho 1.0.0 Update minimum JDK version in README Change-Id: I735697c112094e883986ce13026d967291d88494 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
| * | Update Jetty to 9.4.1.v20170120 in buck buildJonathan Nieder2017-03-062-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5e8e2179b218ede7d14b69dc5149b0691b5859cf (Update Jetty to 9.4.1.v201470120, 2017-01-26) updated Jetty in the maven build. Update the buck build to match so buck builds work again. The buck build will go away soon, but in the meantime (until the bazel build gets the same level of support) it is convenient as a faster way of running tests than using maven. The bazel build doesn't need this change since it doesn't build or run http tests yet. Change-Id: Ibbdaf2880e76b32fc9f6b5605a2ff29e3deffda2 (cherry picked from commit 2470f01d0f8bca4c8c754475846c83b9f99c93b8)
| * | Update Jetty to 9.4.1.v20170120Matthias Sohn2017-03-0615-103/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MappedLoginService is no longer available in Jetty 9.4 therefore base TestLoginService on AbstractLoginService. Apparently Jetty now uses slf4j hence adapt RecordingLogger accordingly so we can log error messages containing slf4j style formatting anchors "{}". Change-Id: Ibb36aba8782882936849b6102001a88b699bb65c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> (cherry picked from commit 5e8e2179b218ede7d14b69dc5149b0691b5859cf)
| * | Update build to use Tycho 1.0.0Matthias Sohn2017-03-061-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I10f61962e1496f079a39e0f533506816be56e925 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> (cherry picked from commit 92d8c9bec2bd990cec937b3a6c5f4ab4011d3f73)
| * | Update minimum JDK version in READMEDavid Pursehouse2017-03-061-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I655d896b268e946e3492661b08add0ebac22c6f0 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com> (cherry picked from commit 67da5635a47ad7680b3c60358a1fec080eef7d1e)