To render emoji in the emoji bar of an issue or MR we actually need the emoji unicode and unicode info is stored in the emoji menu widget. That widget could only be visible if user clicks the "Add" button and there may not be a widget when posting emoji only comments. So this change will check existence of the widget and create it before posting the emoji if it's not exist to render it correctly.
Add container registry support
Tasks:
- [x] Merge docker/distribution authentication service: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3787
- [x] Implement Docker Registry API
- [x] Show a list of docker images in GitLab
- [x] Remove registry repository on project deletion
- [x] Support project rename, move and namespace rename
- [x] Use token when connecting the registry
- [x] Allow to delete images from GitLab
- [x] Support pushing from GitLab CI (gitlab-ci-token / $CI_BUILD_TOKEN)
- [x] Support GitLab Runner pulling for public repositories
- [ ] Support GitLab Runner pulling for private repositories
- [x] Add tests for Docker Registry API
- [x] Add tests for a views
- [x] Make texts nicer
- [x] Implement a backup support
- [ ] Create administration documentation https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4141
- [ ] Create user documentation
See merge request !4040
Fix atom feeds and links
1. The atom feed for a group's issues didn't work, because it had parts copied from the dashboard issues builder template.
2. The feed link from a group's activity page went to the dashboard feed, rather than the group's feed.
Closes#15640
See merge request !4191
Improve issue formatting in Slack service
This will improve the looks of the message that gets send to Slack.
**Before**

**After**

There is one thing I'm not certain about, thats sending the logo with the payload. Because this means we need to host the GitLab logo somewhere public, and every time a payload from any GitLab instance is send, we use that logo url. This might overload the server, or drive the bandwidth bill through the roof.
This is something @sytses or @dzaporozhets have to decide about.
@stanhu, you told me you were the author of the original code, maybe you can review?
See merge request !1308
Remove bottom margin for flash message on home page
### Flash Messages
Remove `margin-bottom: 16px` from `.no-ssh-key-message` and `.project-limit-message`.
This added an unnecessary margin between the notification and the content which was brought up in this issue #14797.
### Affected files:
./app/assets/javascripts/project.js.coffee: $(@).parents('.no-ssh-key-message').remove()
./app/assets/stylesheets/pages/projects.scss:.no-ssh-key-message, .project-limit-message {
./app/views/shared/_no_ssh.html.haml: .no-ssh-key-message.alert.alert-warning.hidden-xs
./app/assets/javascripts/user.js.coffee: $('.hide-project-limit-message').on 'click', (e) ->
./app/assets/javascripts/user.js.coffee: $(@).parents('.project-limit-message').remove()
./app/assets/stylesheets/pages/projects.scss:.no-ssh-key-message, .project-limit-message {
./app/views/shared/_project_limit.html.haml: .project-limit-message.alert.alert-warning.hidden-xs
./app/views/shared/_project_limit.html.haml: = link_to 'Remind later', '#', class: 'hide-project-limit-message alert-link'
### Screenshots:
#### Before:

#### After:

See merge request !4173