Users with group-specific permissions should only be shown once in Members

We recently had an issue where a user had elevated rights to a group, but only developer access to a project within the group.

When you viewed the Members list within the project, it showed the user as a Developer. However because that user had elevated rights to the parent group, the user actually had Owner rights. This is very misleading and confusing.

Overview

When a user has a group-specific role and also inherited membership from a parent group, the user will appear twice in Members (once under their inherited membership role, and once under their specific role). This happens in projects as well.

Proposal

Do not duplicate members. Only show distinct members. The presented row for the member should be the one for the user's highest role.

Edited May 15, 2019 by Jeremy Watson (ex-GitLab)
Assignee Loading
Time tracking Loading