diff options
author | David Ostrovsky <david@ostrovsky.org> | 2022-02-14 19:11:27 +0100 |
---|---|---|
committer | David Ostrovsky <david@ostrovsky.org> | 2022-02-15 06:57:10 +0100 |
commit | d9aa1bc8b5f943e3749c297f50998062f85c5380 (patch) | |
tree | 8f04cafc97936681aad66692e1470ccc33cd6bcc | |
parent | 874181661e50c150077cf1c47a09ec19e1f7ccb7 (diff) | |
parent | 9f50c7e84a6f774db779552c922c4e5824b0a408 (diff) |
Merge branch 'stable-3.3' into stable-3.4
* stable-3.3:
Fix gerrit ls-members --recursive
Fix gerrit ls-groups flag in documentation
Bazel: Use Java 8 per default to guarantee source level compatibility
Release-Notes: skip
Change-Id: I6501e5fbeb13c35c4e40efdf2d1420c9d4425a62
-rw-r--r-- | .bazelrc | 4 | ||||
-rw-r--r-- | Documentation/cmd-ls-groups.txt | 6 | ||||
-rw-r--r-- | Documentation/dev-bazel.txt | 7 | ||||
-rw-r--r-- | java/com/google/gerrit/server/restapi/group/ListMembers.java | 19 | ||||
-rw-r--r-- | java/com/google/gerrit/sshd/commands/ListMembersCommand.java | 2 |
5 files changed, 25 insertions, 13 deletions
@@ -2,7 +2,7 @@ build --workspace_status_command="python3 ./tools/workspace_status.py" build --repository_cache=~/.gerritcodereview/bazel-cache/repository build --action_env=PATH build --disk_cache=~/.gerritcodereview/bazel-cache/cas -build --java_toolchain=//tools:error_prone_warnings_toolchain_java11 +build --java_toolchain=//tools:error_prone_warnings_toolchain # Enable strict_action_env flag to. For more information on this feature see # https://groups.google.com/forum/#!topic/bazel-discuss/_VmRfMyyHBk. @@ -15,6 +15,6 @@ build --announce_rc test --build_tests_only test --test_output=errors -test --java_toolchain=//tools:error_prone_warnings_toolchain_java11 +test --java_toolchain=//tools:error_prone_warnings_toolchain import %workspace%/tools/remote-bazelrc diff --git a/Documentation/cmd-ls-groups.txt b/Documentation/cmd-ls-groups.txt index 8a4845c263..0a06c28abe 100644 --- a/Documentation/cmd-ls-groups.txt +++ b/Documentation/cmd-ls-groups.txt @@ -11,7 +11,7 @@ _ssh_ -p <port> <host> _gerrit ls-groups_ [--user <NAME> | -u <NAME>] [--owned] [--visible-to-all] - [-q <GROUP>] + [-g <GROUP>] [--verbose | -v] -- @@ -67,8 +67,8 @@ This option can't be used together with the '--project' option. (groups that are explicitly marked as visible to all registered users). --q:: - Group that should be inspected. The `-q` option can be specified +-g:: + Group that should be inspected. The `-g` option can be specified multiple times to define several groups to be inspected. If specified the listed groups will only contain groups that were specified to be inspected. This is e.g. useful in combination with diff --git a/Documentation/dev-bazel.txt b/Documentation/dev-bazel.txt index 98ca9a4f04..c05d3f4abb 100644 --- a/Documentation/dev-bazel.txt +++ b/Documentation/dev-bazel.txt @@ -55,17 +55,16 @@ Java 8 is a legacy Java release and support for Java 8 will be discontinued in future gerrit releases. To build Gerrit with Java 8 language level, run: ``` - $ bazel build --java_toolchain //tools:error_prone_warnings_toolchain :release + $ bazel build :release ``` [[java-11]] ==== Java 11 support -Java language level 11 is the default. To build Gerrit with Java 11 language -level, run: +To build Gerrit with Java 11 language level, run: ``` - $ bazel build :release + $ bazel build --java_toolchain=//tools:error_prone_warnings_toolchain_java11 :release ``` [[java-13]] diff --git a/java/com/google/gerrit/server/restapi/group/ListMembers.java b/java/com/google/gerrit/server/restapi/group/ListMembers.java index 218eb98056..22870c13d8 100644 --- a/java/com/google/gerrit/server/restapi/group/ListMembers.java +++ b/java/com/google/gerrit/server/restapi/group/ListMembers.java @@ -80,13 +80,18 @@ public class ListMembers implements RestReadView<GroupResource> { throws PermissionBackendException { Optional<InternalGroup> group = groupCache.get(groupUuid); if (group.isPresent()) { - InternalGroupDescription internalGroup = new InternalGroupDescription(group.get()); - GroupControl groupControl = groupControlFactory.controlFor(internalGroup); - return getTransitiveMembers(internalGroup, groupControl); + return getTransitiveMembers(group.get()); } return ImmutableList.of(); } + public List<AccountInfo> getTransitiveMembers(InternalGroup group) + throws PermissionBackendException { + InternalGroupDescription internalGroup = new InternalGroupDescription(group); + GroupControl groupControl = groupControlFactory.controlFor(internalGroup); + return getTransitiveMembers(internalGroup, groupControl); + } + private List<AccountInfo> getTransitiveMembers( GroupDescription.Internal group, GroupControl groupControl) throws PermissionBackendException { @@ -110,6 +115,14 @@ public class ListMembers implements RestReadView<GroupResource> { return toAccountInfos(directMembers); } + protected List<AccountInfo> getMembers(InternalGroup group) throws PermissionBackendException { + if (recursive) { + return getTransitiveMembers(group); + } else { + return getDirectMembers(group); + } + } + private List<AccountInfo> toAccountInfos(Set<Account.Id> members) throws PermissionBackendException { AccountLoader accountLoader = accountLoaderFactory.create(true); diff --git a/java/com/google/gerrit/sshd/commands/ListMembersCommand.java b/java/com/google/gerrit/sshd/commands/ListMembersCommand.java index 45c6a35078..fd186563e1 100644 --- a/java/com/google/gerrit/sshd/commands/ListMembersCommand.java +++ b/java/com/google/gerrit/sshd/commands/ListMembersCommand.java @@ -80,7 +80,7 @@ public class ListMembersCommand extends SshCommand { return; } - List<AccountInfo> members = getDirectMembers(group.get()); + List<AccountInfo> members = getMembers(group.get()); ColumnFormatter formatter = new ColumnFormatter(writer, '\t'); formatter.addColumn("id"); formatter.addColumn("username"); |