Merge "PermissionAwareReadOnlyRefDatabase: Remove unneeded @SuppressWarnings"
diff --git a/java/com/google/gerrit/acceptance/BUILD b/java/com/google/gerrit/acceptance/BUILD
index e4a993c..135a80e 100644
--- a/java/com/google/gerrit/acceptance/BUILD
+++ b/java/com/google/gerrit/acceptance/BUILD
@@ -7,6 +7,75 @@
"testsuite/ThrowingFunction.java",
]
+DEPLOY_ENV = [
+ "//java/com/google/gerrit/exceptions",
+ "//java/com/google/gerrit/gpg",
+ "//java/com/google/gerrit/git",
+ "//java/com/google/gerrit/httpd/auth/openid",
+ "//java/com/google/gerrit/index:query_exception",
+ "//java/com/google/gerrit/launcher",
+ "//java/com/google/gerrit/lifecycle",
+ "//java/com/google/gerrit/pgm",
+ "//java/com/google/gerrit/pgm/http/jetty",
+ "//java/com/google/gerrit/pgm/util",
+ "//java/com/google/gerrit/common:annotations",
+ "//java/com/google/gerrit/common:server",
+ "//java/com/google/gerrit/entities",
+ "//java/com/google/gerrit/extensions:api",
+ "//java/com/google/gerrit/httpd",
+ "//java/com/google/gerrit/index",
+ "//java/com/google/gerrit/index/project",
+ "//java/com/google/gerrit/json",
+ "//java/com/google/gerrit/lucene",
+ "//java/com/google/gerrit/mail",
+ "//java/com/google/gerrit/metrics",
+ "//java/com/google/gerrit/server",
+ "//java/com/google/gerrit/server/audit",
+ "//java/com/google/gerrit/server/git/receive",
+ "//java/com/google/gerrit/server/logging",
+ "//java/com/google/gerrit/server/restapi",
+ "//java/com/google/gerrit/server/schema",
+ "//java/com/google/gerrit/server/util/git",
+ "//java/com/google/gerrit/server/util/time",
+ "//java/com/google/gerrit/sshd",
+ "//lib/auto:auto-value",
+ "//lib/auto:auto-value-annotations",
+ "//lib:args4j",
+ "//lib:gson",
+ "//lib:guava-retrying",
+ "//lib:jgit",
+ "//lib:jsch",
+ "//lib/commons:compress",
+ "//lib/commons:lang",
+ "//lib/flogger:api",
+ "//lib/guice",
+ "//lib/guice:guice-assistedinject",
+ "//lib/guice:guice-servlet",
+ "//lib/jetty:servlet",
+ "//lib/mail",
+ "//lib/mina:sshd",
+ "//lib/log:impl-log4j",
+ "//lib/log:log4j",
+ "//lib:guava",
+ "//lib/bouncycastle:bcpg",
+ "//lib/bouncycastle:bcprov",
+ "//prolog:gerrit-prolog-common",
+]
+
+TEST_DEPS = [
+ "//java/com/google/gerrit/truth",
+ "//java/com/google/gerrit/acceptance/config",
+ "//java/com/google/gerrit/acceptance/testsuite/project",
+ "//java/com/google/gerrit/server/fixes/testing",
+ "//java/com/google/gerrit/server/group/testing",
+ "//java/com/google/gerrit/server/project/testing:project-test-util",
+ "//java/com/google/gerrit/testing:gerrit-test-util",
+ "//java/com/google/gerrit/extensions/common/testing:common-test-util",
+ "//java/com/google/gerrit/extensions/restapi/testing:restapi-test-util",
+ "//java/com/google/gerrit/gpg/testing:gpg-test-util",
+ "//java/com/google/gerrit/git/testing",
+]
+
java_library(
name = "lib",
testonly = True,
@@ -15,61 +84,25 @@
visibility = ["//visibility:public"],
exports = [
":framework-lib",
- "//java/com/google/gerrit/common:annotations",
- "//java/com/google/gerrit/common:server",
- "//java/com/google/gerrit/entities",
- "//java/com/google/gerrit/extensions:api",
- "//java/com/google/gerrit/extensions/common/testing:common-test-util",
- "//java/com/google/gerrit/extensions/restapi/testing:restapi-test-util",
- "//java/com/google/gerrit/git",
- "//java/com/google/gerrit/git/testing",
- "//java/com/google/gerrit/gpg/testing:gpg-test-util",
- "//java/com/google/gerrit/httpd",
- "//java/com/google/gerrit/index",
- "//java/com/google/gerrit/json",
- "//java/com/google/gerrit/launcher",
- "//java/com/google/gerrit/lucene",
- "//java/com/google/gerrit/mail",
- "//java/com/google/gerrit/metrics",
- "//java/com/google/gerrit/pgm",
- "//java/com/google/gerrit/pgm/init",
- "//java/com/google/gerrit/pgm/util",
- "//java/com/google/gerrit/server",
- "//java/com/google/gerrit/server/audit",
- "//java/com/google/gerrit/server/git/receive",
- "//java/com/google/gerrit/server/project/testing:project-test-util",
- "//java/com/google/gerrit/server/restapi",
- "//java/com/google/gerrit/sshd",
- "//java/com/google/gerrit/testing:gerrit-test-util",
- "//java/com/google/gerrit/truth",
- "//lib:args4j",
- "//lib:gson",
- "//lib:guava-retrying",
- "//lib:h2",
- "//lib:jgit",
- "//lib:jimfs",
- "//lib:jsch",
- "//lib:servlet-api-without-neverlink",
- "//lib/bouncycastle:bcpg",
- "//lib/bouncycastle:bcprov",
- "//lib/commons:compress",
- "//lib/flogger:api",
- "//lib/guice",
- "//lib/guice:guice-assistedinject",
- "//lib/guice:guice-servlet",
- "//lib/mina:sshd",
- "//prolog:gerrit-prolog-common",
- ],
+ ] + DEPLOY_ENV + TEST_DEPS,
)
java_binary(
name = "framework",
testonly = True,
+ deploy_env = [":framework-deploy-env"],
main_class = "Dummy",
visibility = ["//visibility:public"],
runtime_deps = [":framework-lib"],
)
+java_binary(
+ name = "framework-deploy-env",
+ testonly = True,
+ main_class = "Dummy",
+ runtime_deps = DEPLOY_ENV,
+)
+
java_library2(
name = "framework-lib",
testonly = True,
@@ -79,73 +112,19 @@
),
exported_deps = [
":function",
- "//java/com/google/gerrit/acceptance/config",
- "//java/com/google/gerrit/acceptance/testsuite/project",
- "//java/com/google/gerrit/exceptions",
- "//java/com/google/gerrit/gpg",
- "//java/com/google/gerrit/httpd/auth/openid",
- "//java/com/google/gerrit/index:query_exception",
- "//java/com/google/gerrit/launcher",
- "//java/com/google/gerrit/lifecycle",
- "//java/com/google/gerrit/pgm:daemon",
- "//java/com/google/gerrit/pgm/http/jetty",
- "//java/com/google/gerrit/pgm/util",
- "//java/com/google/gerrit/server/fixes/testing",
- "//java/com/google/gerrit/server/group/testing",
- "//java/com/google/gerrit/server/project/testing:project-test-util",
- "//java/com/google/gerrit/testing:gerrit-test-util",
- "//lib:guava",
"//lib:jgit-junit",
"//lib:jimfs",
- "//lib/auto:auto-value",
- "//lib/auto:auto-value-annotations",
+ "//lib:servlet-api",
"//lib/httpcomponents:fluent-hc",
"//lib/httpcomponents:httpclient",
"//lib/httpcomponents:httpcore",
- "//lib/jetty:servlet",
- "//lib/log:impl-log4j",
- "//lib/log:log4j",
"//lib/mockito",
"//lib/truth",
"//lib/truth:truth-java8-extension",
- "//prolog:gerrit-prolog-common",
- ],
- visibility = ["//visibility:public"],
- deps = [
- "//java/com/google/gerrit/common:annotations",
- "//java/com/google/gerrit/common:server",
- "//java/com/google/gerrit/entities",
- "//java/com/google/gerrit/extensions:api",
- "//java/com/google/gerrit/httpd",
- "//java/com/google/gerrit/index",
- "//java/com/google/gerrit/index/project",
- "//java/com/google/gerrit/json",
- "//java/com/google/gerrit/lucene",
- "//java/com/google/gerrit/mail",
- "//java/com/google/gerrit/metrics",
- "//java/com/google/gerrit/server",
- "//java/com/google/gerrit/server/audit",
- "//java/com/google/gerrit/server/git/receive",
- "//java/com/google/gerrit/server/logging",
- "//java/com/google/gerrit/server/restapi",
- "//java/com/google/gerrit/server/schema",
- "//java/com/google/gerrit/server/util/git",
- "//java/com/google/gerrit/server/util/time",
- "//java/com/google/gerrit/sshd",
- "//lib:args4j",
- "//lib:gson",
- "//lib:guava-retrying",
- "//lib:jgit",
- "//lib:jsch",
- "//lib:servlet-api",
- "//lib/commons:lang",
"//lib/greenmail",
- "//lib/guice",
- "//lib/guice:guice-assistedinject",
- "//lib/guice:guice-servlet",
- "//lib/mail",
- "//lib/mina:sshd",
- ],
+ ] + TEST_DEPS,
+ visibility = ["//visibility:public"],
+ deps = DEPLOY_ENV,
)
java_library(
diff --git a/java/com/google/gerrit/extensions/BUILD b/java/com/google/gerrit/extensions/BUILD
index 3683449..da5dc8b 100644
--- a/java/com/google/gerrit/extensions/BUILD
+++ b/java/com/google/gerrit/extensions/BUILD
@@ -26,7 +26,6 @@
],
)
-#TODO(davido): There is no provided_deps argument to java_library rule
java_library(
name = "api",
srcs = glob(["**/*.java"]),
diff --git a/java/com/google/gerrit/httpd/restapi/RestApiServlet.java b/java/com/google/gerrit/httpd/restapi/RestApiServlet.java
index 4db9217..f30fefa 100644
--- a/java/com/google/gerrit/httpd/restapi/RestApiServlet.java
+++ b/java/com/google/gerrit/httpd/restapi/RestApiServlet.java
@@ -678,17 +678,24 @@
cause = Optional.of(e);
statusCode = SC_INTERNAL_SERVER_ERROR;
+ Optional<ExceptionHook.Status> status = getStatus(e);
+ statusCode = status.map(ExceptionHook.Status::statusCode).orElse(SC_INTERNAL_SERVER_ERROR);
+
if (res.isCommitted()) {
- logger.atSevere().withCause(e).log(
- "Error in %s %s, response already committed", req.getMethod(), uriForLogging(req));
responseBytes = 0;
+ if (statusCode == SC_INTERNAL_SERVER_ERROR) {
+ logger.atSevere().withCause(e).log(
+ "Error in %s %s, response already committed", req.getMethod(), uriForLogging(req));
+ } else {
+ logger.atWarning().log(
+ "Response for %s %s already committed, wanted to set status %d",
+ req.getMethod(), uriForLogging(req), statusCode);
+ }
} else {
res.reset();
traceContext.getTraceId().ifPresent(traceId -> res.addHeader(X_GERRIT_TRACE, traceId));
- Optional<ExceptionHook.Status> status = getStatus(e);
if (status.isPresent()) {
- statusCode = status.get().statusCode();
responseBytes = reply(req, res, e, status.get(), getUserMessages(traceContext, e));
}
responseBytes = replyInternalServerError(req, res, e, getUserMessages(traceContext, e));
diff --git a/java/com/google/gerrit/pgm/BUILD b/java/com/google/gerrit/pgm/BUILD
index 08916a3..03b7c3d 100644
--- a/java/com/google/gerrit/pgm/BUILD
+++ b/java/com/google/gerrit/pgm/BUILD
@@ -1,17 +1,7 @@
load("@rules_java//java:defs.bzl", "java_library")
-# TODO(davido): This indirection doesn't avoid unwanted depdencies
-# in acceptance-framework and should be removed. Instead, provided_deps
-# should be used, once https://github.com/bazelbuild/bazel/issues/1402
-# is fixed.
-alias(
- name = "pgm",
- actual = ":daemon",
- visibility = ["//visibility:public"],
-)
-
java_library(
- name = "daemon",
+ name = "pgm",
srcs = glob(["**/*.java"]),
resource_strip_prefix = "resources",
resources = ["//resources/com/google/gerrit/pgm"],
diff --git a/java/com/google/gerrit/server/restapi/change/PutDescription.java b/java/com/google/gerrit/server/restapi/change/PutDescription.java
index d84ab3e..f442a42 100644
--- a/java/com/google/gerrit/server/restapi/change/PutDescription.java
+++ b/java/com/google/gerrit/server/restapi/change/PutDescription.java
@@ -87,17 +87,21 @@
if (oldDescription.equals(newDescription)) {
return false;
}
- String summary;
- if (oldDescription.isEmpty()) {
- summary = "Description set to \"" + newDescription + "\"";
- } else if (newDescription.isEmpty()) {
- summary = "Description \"" + oldDescription + "\" removed";
- } else {
- summary = "Description changed to \"" + newDescription + "\"";
- }
-
update.setPsDescription(newDescription);
+ String summary;
+ if (oldDescription.isEmpty()) {
+ summary =
+ String.format("Description of patch set %d set to \"%s\"", psId.get(), newDescription);
+ } else if (newDescription.isEmpty()) {
+ summary =
+ String.format(
+ "Description \"%s\" removed from patch set %d", oldDescription, psId.get());
+ } else {
+ summary =
+ String.format(
+ "Description of patch set %d changed to \"%s\"", psId.get(), newDescription);
+ }
ChangeMessage cmsg =
ChangeMessagesUtil.newMessage(
psId, ctx.getUser(), ctx.getWhen(), summary, ChangeMessagesUtil.TAG_SET_DESCRIPTION);
diff --git a/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java b/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java
index c4dec31..e6b2190 100644
--- a/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java
+++ b/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java
@@ -1320,10 +1320,24 @@
public void description() throws Exception {
PushOneCommit.Result r = createChange();
assertDescription(r, "");
- gApi.changes().id(r.getChangeId()).revision(r.getCommit().name()).description("test");
- assertDescription(r, "test");
+
+ // set description
+ gApi.changes().id(r.getChangeId()).revision(r.getCommit().name()).description("foo");
+ assertDescription(r, "foo");
+ assertThat(Iterables.getLast(gApi.changes().id(r.getChangeId()).get().messages).message)
+ .isEqualTo("Description of patch set 1 set to \"foo\"");
+
+ // update description
+ gApi.changes().id(r.getChangeId()).revision(r.getCommit().name()).description("bar");
+ assertDescription(r, "bar");
+ assertThat(Iterables.getLast(gApi.changes().id(r.getChangeId()).get().messages).message)
+ .isEqualTo("Description of patch set 1 changed to \"bar\"");
+
+ // remove description
gApi.changes().id(r.getChangeId()).revision(r.getCommit().name()).description("");
assertDescription(r, "");
+ assertThat(Iterables.getLast(gApi.changes().id(r.getChangeId()).get().messages).message)
+ .isEqualTo("Description \"bar\" removed from patch set 1");
}
@Test
diff --git a/javatests/com/google/gerrit/pgm/BUILD b/javatests/com/google/gerrit/pgm/BUILD
index eb0bf25..0cae937 100644
--- a/javatests/com/google/gerrit/pgm/BUILD
+++ b/javatests/com/google/gerrit/pgm/BUILD
@@ -5,9 +5,7 @@
name = "pgm_tests",
srcs = glob(["**/*.java"]),
deps = [
- "//java/com/google/gerrit/pgm",
"//java/com/google/gerrit/pgm/http",
- "//java/com/google/gerrit/pgm/init",
"//java/com/google/gerrit/pgm/init/api",
"//java/com/google/gerrit/server",
"//java/com/google/gerrit/server/securestore/testing",
diff --git a/lib/nongoogle_test.sh b/lib/nongoogle_test.sh
index dcf40f0..336fcbf 100755
--- a/lib/nongoogle_test.sh
+++ b/lib/nongoogle_test.sh
@@ -20,19 +20,12 @@
httpcore-nio
j2objc
jackson-core
-javassist
jna
jruby
mina-core
nekohtml
objenesis
openid-consumer
-powermock-api-easymock
-powermock-api-support
-powermock-core
-powermock-module-junit4
-powermock-module-junit4-common
-powermock-reflect
sshd
sshd-common
sshd-mina
diff --git a/lib/truth/BUILD b/lib/truth/BUILD
index bb30945..dc1d802 100644
--- a/lib/truth/BUILD
+++ b/lib/truth/BUILD
@@ -2,6 +2,7 @@
java_library(
name = "truth",
+ testonly = True,
data = ["//lib:LICENSE-DO_NOT_DISTRIBUTE"],
visibility = ["//visibility:public"],
exports = ["@truth//jar"],
@@ -14,6 +15,7 @@
java_library(
name = "truth-java8-extension",
+ testonly = True,
data = ["//lib:LICENSE-DO_NOT_DISTRIBUTE"],
visibility = ["//visibility:public"],
exports = ["@truth-java8-extension//jar"],
@@ -25,6 +27,7 @@
java_library(
name = "truth-liteproto-extension",
+ testonly = True,
data = ["//lib:LICENSE-DO_NOT_DISTRIBUTE"],
visibility = ["//visibility:private"],
exports = ["@truth-liteproto-extension//jar"],
@@ -37,6 +40,7 @@
java_library(
name = "diffutils",
+ testonly = True,
data = ["//lib:LICENSE-DO_NOT_DISTRIBUTE"],
visibility = ["//visibility:private"],
exports = ["@diffutils//jar"],
@@ -44,6 +48,7 @@
java_library(
name = "truth-proto-extension",
+ testonly = True,
data = ["//lib:LICENSE-DO_NOT_DISTRIBUTE"],
visibility = ["//visibility:public"],
exports = [
diff --git a/tools/nongoogle.bzl b/tools/nongoogle.bzl
index 5cc1511..3af4a28 100644
--- a/tools/nongoogle.bzl
+++ b/tools/nongoogle.bzl
@@ -126,50 +126,6 @@
sha1 = "dc13ae4faca6df981fc7aeb5a522d9db446d5d50",
)
- POWERM_VERS = "1.6.1"
-
- maven_jar(
- name = "powermock-module-junit4",
- artifact = "org.powermock:powermock-module-junit4:" + POWERM_VERS,
- sha1 = "ea8530b2848542624f110a393513af397b37b9cf",
- )
-
- maven_jar(
- name = "powermock-module-junit4-common",
- artifact = "org.powermock:powermock-module-junit4-common:" + POWERM_VERS,
- sha1 = "7222ced54dabc310895d02e45c5428ca05193cda",
- )
-
- maven_jar(
- name = "powermock-reflect",
- artifact = "org.powermock:powermock-reflect:" + POWERM_VERS,
- sha1 = "97d25eda8275c11161bcddda6ef8beabd534c878",
- )
-
- maven_jar(
- name = "powermock-api-easymock",
- artifact = "org.powermock:powermock-api-easymock:" + POWERM_VERS,
- sha1 = "aa740ecf89a2f64d410b3d93ef8cd6833009ef00",
- )
-
- maven_jar(
- name = "powermock-api-support",
- artifact = "org.powermock:powermock-api-support:" + POWERM_VERS,
- sha1 = "592ee6d929c324109d3469501222e0c76ccf0869",
- )
-
- maven_jar(
- name = "powermock-core",
- artifact = "org.powermock:powermock-core:" + POWERM_VERS,
- sha1 = "5afc1efce8d44ed76b30af939657bd598e45d962",
- )
-
- maven_jar(
- name = "javassist",
- artifact = "org.javassist:javassist:3.22.0-GA",
- sha1 = "3e83394258ae2089be7219b971ec21a8288528ad",
- )
-
TESTCONTAINERS_VERSION = "1.12.4"
maven_jar(