Merge branch 'stable-3.0' into stable-3.1
* stable-3.0:
Bump plugin API to 3.0.16
Bump plugin API to 2.16.27
Convert UI filters to links and display always
Change-Id: I87a4aad0afd04f9c5d4074f3af6d3bb623e9a96a
diff --git a/.bazelversion b/.bazelversion
index 7c69a55..fcdb2e1 100644
--- a/.bazelversion
+++ b/.bazelversion
@@ -1 +1 @@
-3.7.0
+4.0.0
diff --git a/BUILD b/BUILD
index 20c042d..b2b57ae 100644
--- a/BUILD
+++ b/BUILD
@@ -13,7 +13,7 @@
srcs = glob(["src/main/java/**/*.java"]),
manifest_entries = [
"Gerrit-PluginName: " + plugin_name,
- "Gerrit-ApiVersion: 3.0.15",
+ "Gerrit-ApiVersion: 3.1.12",
"Implementation-Title: Task Plugin",
"Implementation-URL: https://gerrit-review.googlesource.com/#/admin/projects/plugins/" + plugin_name,
"Gerrit-Module: com.googlesource.gerrit.plugins.task.Modules$Module",
diff --git a/WORKSPACE b/WORKSPACE
index c047530..b43b624 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,7 +3,7 @@
load("//:bazlets.bzl", "load_bazlets")
load_bazlets(
- commit = "a88174652e6f853ead5bbc5dacc1030dbb2d50c3",
+ commit = "87fd5f0d0a89d01df13deaf2d21a4bdb3bc03cfd",
#local_path = "/home/<user>/projects/bazlets",
)
diff --git a/src/main/java/com/google/gerrit/server/git/meta/AbstractVersionedMetaData.java b/src/main/java/com/google/gerrit/server/git/meta/AbstractVersionedMetaData.java
index e5c1809..7997a05 100644
--- a/src/main/java/com/google/gerrit/server/git/meta/AbstractVersionedMetaData.java
+++ b/src/main/java/com/google/gerrit/server/git/meta/AbstractVersionedMetaData.java
@@ -14,7 +14,7 @@
package com.google.gerrit.server.git.meta;
-import com.google.gerrit.reviewdb.client.Branch;
+import com.google.gerrit.entities.BranchNameKey;
import java.io.IOException;
import org.eclipse.jgit.errors.ConfigInvalidException;
import org.eclipse.jgit.lib.CommitBuilder;
@@ -22,18 +22,18 @@
/** Versioned Configuration file living in git */
public class AbstractVersionedMetaData extends VersionedMetaData {
- protected final Branch.NameKey branch;
+ protected final BranchNameKey branch;
protected final String fileName;
protected Config cfg;
- public AbstractVersionedMetaData(Branch.NameKey branch, String fileName) {
+ public AbstractVersionedMetaData(BranchNameKey branch, String fileName) {
this.branch = branch;
this.fileName = fileName;
}
@Override
protected String getRefName() {
- return branch.get();
+ return branch.branch();
}
protected String getFileName() {
@@ -52,7 +52,7 @@
return cfg;
}
- public Branch.NameKey getBranch() {
+ public BranchNameKey getBranch() {
return branch;
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfig.java b/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfig.java
index ef23533..a60569c 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfig.java
@@ -15,7 +15,7 @@
package com.googlesource.gerrit.plugins.task;
import com.google.gerrit.common.Container;
-import com.google.gerrit.reviewdb.client.Branch;
+import com.google.gerrit.entities.BranchNameKey;
import com.google.gerrit.server.git.meta.AbstractVersionedMetaData;
import java.lang.reflect.Field;
import java.util.ArrayList;
@@ -169,7 +169,7 @@
return task;
}
- public TaskConfig(Branch.NameKey branch, String fileName, boolean isVisible, boolean isTrusted) {
+ public TaskConfig(BranchNameKey branch, String fileName, boolean isVisible, boolean isTrusted) {
super(branch, fileName);
this.isVisible = isVisible;
this.isTrusted = isTrusted;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfigFactory.java b/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfigFactory.java
index d5003b4..f790ccc 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfigFactory.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/task/TaskConfigFactory.java
@@ -15,9 +15,9 @@
package com.googlesource.gerrit.plugins.task;
import com.google.common.flogger.FluentLogger;
+import com.google.gerrit.entities.BranchNameKey;
+import com.google.gerrit.entities.Project;
import com.google.gerrit.extensions.restapi.AuthException;
-import com.google.gerrit.reviewdb.client.Branch;
-import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.config.AllProjectsName;
import com.google.gerrit.server.git.GitRepositoryManager;
@@ -44,7 +44,7 @@
protected final CurrentUser user;
protected final AllProjectsName allProjects;
- protected final Map<Branch.NameKey, PatchSetArgument> psaMasquerades = new HashMap<>();
+ protected final Map<BranchNameKey, PatchSetArgument> psaMasquerades = new HashMap<>();
@Inject
protected TaskConfigFactory(
@@ -66,11 +66,11 @@
psaMasquerades.put(psa.change.getDest(), psa);
}
- protected Branch.NameKey getRootBranch() {
- return new Branch.NameKey(allProjects, "refs/meta/config");
+ protected BranchNameKey getRootBranch() {
+ return BranchNameKey.create(allProjects, "refs/meta/config");
}
- public TaskConfig getTaskConfig(Branch.NameKey branch, String fileName, boolean isTrusted)
+ public TaskConfig getTaskConfig(BranchNameKey branch, String fileName, boolean isTrusted)
throws ConfigInvalidException, IOException {
PatchSetArgument psa = psaMasquerades.get(branch);
boolean visible = true; // invisible psas are filtered out by commandline
@@ -78,10 +78,10 @@
visible = canRead(branch);
} else {
isTrusted = false;
- branch = new Branch.NameKey(psa.change.getProject(), psa.patchSet.getId().toRefName());
+ branch = BranchNameKey.create(psa.change.getProject(), psa.patchSet.refName());
}
- Project.NameKey project = branch.getParentKey();
+ Project.NameKey project = branch.project();
TaskConfig cfg = new TaskConfig(branch, fileName, visible, isTrusted);
try (Repository git = gitMgr.openRepository(project)) {
cfg.load(project, git);
@@ -94,11 +94,11 @@
return cfg;
}
- public boolean canRead(Branch.NameKey branch) {
+ public boolean canRead(BranchNameKey branch) {
try {
PermissionBackend.ForProject permissions =
- permissionBackend.user(user).project(branch.getParentKey());
- permissions.ref(branch.get()).check(RefPermission.READ);
+ permissionBackend.user(user).project(branch.project());
+ permissions.ref(branch.branch()).check(RefPermission.READ);
return true;
} catch (AuthException | PermissionBackendException e) {
return false;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/task/TaskTree.java b/src/main/java/com/googlesource/gerrit/plugins/task/TaskTree.java
index 6b1becd..a15e8f5 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/task/TaskTree.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/task/TaskTree.java
@@ -14,10 +14,10 @@
package com.googlesource.gerrit.plugins.task;
+import com.google.gerrit.entities.Account;
+import com.google.gerrit.entities.BranchNameKey;
+import com.google.gerrit.entities.RefNames;
import com.google.gerrit.extensions.restapi.UnprocessableEntityException;
-import com.google.gerrit.reviewdb.client.Account;
-import com.google.gerrit.reviewdb.client.Branch;
-import com.google.gerrit.reviewdb.client.RefNames;
import com.google.gerrit.server.AnonymousUser;
import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.account.AccountResolver;
@@ -205,7 +205,7 @@
return getTaskDefinitions(resolveUserBranch(external.user), external.file);
}
- protected List<Task> getTaskDefinitions(Branch.NameKey branch, String file)
+ protected List<Task> getTaskDefinitions(BranchNameKey branch, String file)
throws ConfigInvalidException, IOException {
return taskFactory
.getTaskConfig(branch, resolveTaskFileName(file), definition.isTrusted)
@@ -223,18 +223,18 @@
return p.toString();
}
- protected Branch.NameKey resolveUserBranch(String user)
+ protected BranchNameKey resolveUserBranch(String user)
throws ConfigInvalidException, IOException {
if (user == null) {
throw new ConfigInvalidException("External user not defined");
}
Account.Id acct;
try {
- acct = accountResolver.resolve(user).asUnique().getAccount().getId();
+ acct = accountResolver.resolve(user).asUnique().account().id();
} catch (UnprocessableEntityException e) {
throw new ConfigInvalidException("Cannot resolve user: " + user);
}
- return new Branch.NameKey(allUsers.get(), RefNames.refsUsers(acct));
+ return BranchNameKey.create(allUsers.get(), RefNames.refsUsers(acct));
}
}
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/task/cli/PatchSetArgument.java b/src/main/java/com/googlesource/gerrit/plugins/task/cli/PatchSetArgument.java
index 9fbddeb..e0e2317 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/task/cli/PatchSetArgument.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/task/cli/PatchSetArgument.java
@@ -13,10 +13,10 @@
// limitations under the License.
package com.googlesource.gerrit.plugins.task.cli;
+import com.google.gerrit.entities.Change;
+import com.google.gerrit.entities.PatchSet;
import com.google.gerrit.exceptions.StorageException;
import com.google.gerrit.extensions.restapi.AuthException;
-import com.google.gerrit.reviewdb.client.Change;
-import com.google.gerrit.reviewdb.client.PatchSet;
import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.PatchSetUtil;
import com.google.gerrit.server.notedb.ChangeNotes;
@@ -48,7 +48,7 @@
public PatchSetArgument createForArgument(String token) {
try {
PatchSet.Id patchSetId = parsePatchSet(token);
- ChangeNotes changeNotes = notesFactory.createChecked(patchSetId.getParentKey());
+ ChangeNotes changeNotes = notesFactory.createChecked(patchSetId.changeId());
permissionBackend.user(user).change(changeNotes).check(ChangePermission.READ);
return new PatchSetArgument(changeNotes.getChange(), psUtil.get(changeNotes, patchSetId));
} catch (PermissionBackendException | AuthException e) {
@@ -90,7 +90,7 @@
}
public void ensureLatest() {
- if (!change.currentPatchSetId().equals(patchSet.getId())) {
+ if (!change.currentPatchSetId().equals(patchSet.id())) {
throw new IllegalArgumentException(patchSet + " is not the latest patch set");
}
}
diff --git a/test/docker/gerrit/Dockerfile b/test/docker/gerrit/Dockerfile
index b9d1715..041e1dd 100755
--- a/test/docker/gerrit/Dockerfile
+++ b/test/docker/gerrit/Dockerfile
@@ -1,4 +1,4 @@
-FROM gerritcodereview/gerrit:3.0.16-ubuntu18
+FROM gerritcodereview/gerrit:3.1.12-ubuntu18
USER root