Add information about `image` and `services` field at `job` level in the `.gitlab-ci.yml` documentation
Fixes#14366
/cc @tmaczukin @ayufan @axil
See merge request !3277
Trigger a todo for mentions on commits page
Closes#14006
* Screenshot:

See merge request !3262
Adds small AJAX optimistic functionality to todos.
Fixes#13656 <br/>
A good first step and boring solution. <br/>
Will make ajax call to remove each issue. <br/>
If issue is last in group of issues will refresh page. <br/>
If issues remain in group will remove row with JS. <br/>
Adds loading spinner to button and disables. <br/>
 <br/>
cc @dzaporozhets @JobV @dbalexandre
See merge request !2946
Fix an issue when the target branch of a MR had been deleted
Before displaying the "diverged commits" note, we're checking if the MR
is open, but we should check if it's mergeable instead because this
check ensure the source and target branches exist.
This was introduced by !2217 and fixes#14388.
See merge request !3294
Fix MergeRequest#source_sha when there is no diff
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/14170
### Overview
This MR fixes an unhandled Exception when visiting the page of an open Merge Request without diff.
### Description
`MergeRequest#source_sha` is expected to return the sha of the source branch last commit. But when an open Merge Request has no diff (e.g. all commits have already been merged to the target branch), `merge_request.source_sha` incorrectly returns `nil`.
This was without consequences before – but since !2217 was merged (a few days ago), it makes `Gitlab::Git::Commit.between` raise an "Unexpected nil argument" exception. This can be reproduced when visiting the http://localhost:3000/gitlab-org/gitlab-test/merge_requests/2 page on a fresh local Gitlab setup.
This MR fixes the crash, by making sure that `source_sha` returns a
correct result even when there is no diff available. I also added tests.
@DouweM I believe you wrote most of this code in the first place ; does this looks correct to you, or is there a better way to resolve this issue maybe?
See merge request !3135
Removed diverging commit count calculation from Repository#build_cache
Using a repository with 1000 branches the old `Repository#build_cache` method would take around 180 seconds to complete. Without calculating the diverging commit counts this method "only" takes around 60 seconds.
See commit 28cc2413eb5ddf920ce0b5eed803121f8b884754 for more details. This fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/14058
cc @rspeicher
See merge request !3274
Add avatar to issue and MR pages header
closes#14395
# For Issues
### Before

### After

# For Merge Request
### Before

### After

See merge request !3301
Changing filter dropdowns shows loading
Instead of doing a full refresh of the page - i've modified the filterResults method on the Issues object to work for this form as well

Closes#14359
See merge request !3237
Improved issue sidebar
Updated the spacing throughout the sidebar so that it fits better on smaller screens. Also adds a more participants button to show any other participants after the first row.
Closes#13353
See merge request !3097
Dashboard labels
Previously because there were no JSON endpoint for labels or milestones
it was fetching HTML and parsing that. This is wrong.
It now fetches from a JSON endpoint.
This also fixes the dashboard/issues page not loading labels or
milestones as the path used to be only for a single project. So instead
I have created a endpoint for labels & milestones JSON on dashboard.
See merge request !3253
Add note in upgrade guide to choose the correct version tag
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/3448
@rspeicher I'm assigning to you since as a release manager you should know better. Let's keep it in this guide for now and then start copying it in the future ones.
See merge request !2284
Show a notice for diffs that are empty/too large
This builds upon https://gitlab.com/gitlab-org/gitlab_git/merge_requests/72 but will fail until said MR has been merged.
Fixes gitlab-org/gitlab-ce#13912, gitlab-org/gitlab-ce#13644, gitlab-org/gitlab-ce#13557, gitlab-org/gitlab-ce#13267, gitlab-org/gitlab-ce#3906
See merge request !3185
Fix bug causing dropdown to get cut off in project page
closes#14336
### Before


### After

See merge request !3257
Fix inconsistency in the header of issue and merge request pages
closes#13550
# For Issue Page
### Before

### After

# For Merge request Page
### Before

### After

See merge request !3279
Fixed alignment of download dropdown
With the new dropdown CSS - some dropdowns might look a bit odd
## Previously

## Now

See merge request !3245
Revert color for links inside gray areas
**Before**

**After**

Reverts !3147
See merge request !3276
The avatar logic has been moved from Project to Repository as this makes
caching easier. The logic itself in turn has been changed so that the
logo file names are cached in Redis. This cache is flushed upon pushing
a commit but _only_ if:
1. The commit was pushed to the default branch
2. The commit actually changes any of the logo files
If no branch or commit is given the cache is flushed anyway, this
ensures that calling Repository#expire_cache without any arguments still
flushes the avatar cache (e.g. this is used when removing a project).
Fixesgitlab-org/gitlab-ce#14363
Adjusted behavior so canceled builds tagged as allowed to fail do not fail build
## What does this MR do?
This diff changes the 'Allowed to fail' flag to also ignore canceled builds, whereas before, canceled builds could fail the suite even if they were marked as 'Allowed to fail'
dupe of !3258 to force a build
## Are there points in the code the reviewer needs to double check?
no
## Why was this MR needed?
Unexpected behavior as a user
## What are the relevant issue numbers?
## Screenshots (if relevant)

See merge request !3271
External Users
The user has the rights of a public user execpt it can never create a project, group, or team. Also it cant view internal projects.
Partially fix for both #4009 and #13938 (except the LDAP sync or a pattern to detect external users)

See merge request !3171
New branch button on issues
Creates a button which creates a branch for you, referencing the original issue in the branch name. When creating the MR the text `Closes #iid` is appended to the description field.
The button; with styling

Links to the related branches on the issue

Styled like the MR links

Please provide input on the following; the CI repo on the GDK had the following happening with the current way I implemented the matching:

Closes#3886
cc @DouweM
See merge request !2808
Fix horizontal overflow that occurs in the code tag
closes#14167
### Before Fix

### After Fix

See merge request !3255
Follow the CSS Style Guide rules for including a space after the property colon.
Fixes violations of SpaceAfterPropertyColon.
Discussed in #14299.
[ci skip]
cc: @rspeicher @jschatz1
See merge request !3260