Always on approvals
Description
- To increase approvals usage, let's just make approvals a first class feature that cannot be turned off. It's not an option. What is an option is to set the number of required approvals to be zero.
- We need to keep the required approvals to be zero, because we do not want to block the initial onboarding flow when you create a merge request. We want to let people immediately merge their own merge requests without blockers. Having just one approver will be a blocker because you can't approve your own merge request.
Results
The scope of this issue was trimmed down, #6346 (closed) has been created as a follow-up for polishing the approval settings.
Project settings
Always enabled approvals in the merge request settings | Approval settings with added / users groups | Approval settings behaviour |
---|---|---|
Merge request widget
The approval section in the merge request widget can now be rendered with zero required approvals:
unapproved with ability to approve | unapproved with no ability to approve | approved |
---|---|---|
Original Specification
Project settings
- In the project settings, we remove the activation checkbox. It is just there. But by default, the number of required approvals is zero, and it can be changed to zero. Also, the entire approvals section is now it's own collapsible section in the project settings.
- The design of the table of added approvers is simplified to just two textbooks where you set who can approve (users and groups) and how many.
Merge request widget and settings
- Remove the approvers UI from the new/edit merge request form.
- The approval section still remains in the MR widget even if a number of approvals is zero.
- It shows
No approval required; you can still approve [question mark]
message in the section. - It has the "Approve" button even if the required approvals is
0
. - The icon before the message:
check-circle
- It shows
- There is a "Settings" button in the approval section which allows users to configure the approvals directly.
- If the approvals are not required, the button will be a secondary button in blue.
- On the "Expand to set the approvals" screen, if users enable it and save changes, they will see the "01 - Default" screen (in 'Set approvals in merge request widget' section below).
Configure approvals in MR widget | Expand to set the approvals |
---|---|
- When doing changes in the approval settings, if users don't click "Save changes", changes will not be saved.
- The user/group labels in approvals fields should have the avatars before the names.
01 - Default | 02 - Expand to configure | 03 - Added approvers | 04 - Saved changes |
---|---|---|---|
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.