- updated verbiage where appropriate
- changed "git config" commands to include quotes for variables to be more in line with standard practive and to avoid issues with spaces
- updated CHANGELOG as part of commit
Fix ci pipeline processing with async jobs
## What does this MR do?
This MR fixes CI pipeline processing with asynchronous jobs called from `around_transition` provided by state machine.
For details see https://github.com/pluginaweek/state_machine/issues/191 and commit f68acba.
## Why was this MR needed?
Recently merged https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6650 introduced problem with asynchronous job being deployed when `around_transition` still held transaction, which caused race condition that prevented pipeline status to change in a proper way.
## What are the relevant issue numbers?
Closes#23111
See merge request !6736
Correct namespace validation to forbid bad names #21077
## What does this MR do?
Updates master namespace regex to forbid any namespace ending in `.git` or `.atom` and corrects and adds relevant tests
## Are there points in the code the reviewer needs to double check?
I think it's all good. I could use help with the creation of tests for usernames with trailing `.atom` or `.git` as the testing framework is a bit over my head.
## Why was this MR needed?
A group that ends in `.atom` will cause the relevent dashboard to crash if the user (ANY user, not just the creator) has visibility of the group until it is deleted through the admin panel (it cannot be renamed, the edit page will crash. It may be fixable through the API, that wasn't checked.)
This allows a malicious user with group creation privileges to bulk add users to a group, rename the group to a bad name, and crash the groups dashboard for all members of the group. The same applies if the group is internal or public and users navigate to the explore tab of the groups dashboard.
The same applies to usernames ending in `.atom`.
In many places of the code, it implies that `.git` in not allowed at the end of namespaces, but many allowed it anyway. This MR forbids it everywhere to prevent potential issues (like the one with `.atom` going forward).
## What are the relevant issue numbers?
Group path validation incomplete, crashes groups dashboard #21077
## Does this MR meet the acceptance criteria?
- [X] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [X] Added for this feature/bug
- [X] All builds are passing
- [X] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [X] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [X] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
See merge request !5994
Fix wrong icon in CI build detail sidebar: right-arrow => arrow-right
## What does this MR do?
It fixes a wrong icon name in the build detail page's sidebar: `right-arrow` should be `arrow-right`!
## Are there points in the code the reviewer needs to double check?
No.
Closes#23123
See merge request !6768
Prevent conflict b/w search field and its dropdown
What does this MR do?
Stops the global search form's default "action" from fighting with
dropdown items when using the keyboard to navigate the dropdown.
`e.preventDefault()` is now called on the enter key when a dropdown item
is already selected.
Closes#22872
See merge request !6643
Stop the global search form's default "action" from fighting with
dropdown items when using the keyboard to navigate the dropdown.
`e.preventDefault()` is now called on the enter key when a dropdown item
is already selected.
Signed-off-by: Rémy Coutable <remy@rymai.me>
Truncate long labels with ellipsis in labels page
## What does this MR do?
Fixes#22953, where long labels overlaps into the description field in the labels page. Truncates long labels with ellipsis. Labels that fit are unaffected.
## Are there points in the code the reviewer needs to double check?
No
## Why was this MR needed?
Fixes#22953.
## Screenshots (if relevant)
Existing behavior:

With the change:


## Does this MR meet the acceptance criteria?
- [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes#22953
See merge request !6725
Improve the contribution and MR review guide
## What does this MR do?
This merge request improves the contributing and MR review guides following @stanhu's reply on https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6096#note_16537211.
## Why was this MR needed?
To clearly state that MR reviews can take multiple iterations but that as reviewers we should do our best to minimize the number of iterations and take over any MR that is set as "Merge when build succeeds" at some point.
See merge request !6739