Improve Gitlab::Auth method names
Auth.find was a very generic name for a very specific method.
Auth.find_in_gitlab_or_ldap was inaccurate in GitLab EE where it also
looks in Kerberos.
See merge request !4589
Fixes bulk-assign label for multiple issues not having the same labels
## What does this MR do?
Fixes a bug when bulk-assigning a label to multiple issues while the label is present in on the issues on the selection.
## Screenshots (if relevant)
**Before Bugfix**
<img src="/uploads/ad1f290bcf3930177a3a71c69cbe5325/before-bugfix.gif" width="700"/>
**After Bugfix**
<img src="/uploads/1f04d6bf027806fb13ca3773febda744/bugfix.gif" width="700"/>
## Does this MR meet the acceptance criteria?
- [x] Tests
- [x] Added for this feature/bug
- [x] All builds are passing
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
See merge request !4602
Fix migration helper race conditions
## What does this MR do?
This MR fixes two problems with the migration helpers:
1. An error in `change_column_null` would not drop the previously created column
2. `update_column_in_batches` would rely on the number of rows in a table to determine how many to update. This meant that newly inserted rows (after the `COUNT`) would not be taken into account.
This MR also removes an outdated comment for `update_column_in_batches`.
## Are there points in the code the reviewer needs to double check?
No.
## Why was this MR needed?
See above.
## What are the relevant issue numbers?
Fixes#18483
## Does this MR meet the acceptance criteria?
- [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- [x] [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
- [ ] All builds are passing
- [ ] 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)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
See merge request !4618
Only show branches for revert / cherry-pick
## What does this MR do?
Stop showing tags in the revert and cherry-pick select options. You can't change a tag anyway.
## Are there points in the code the reviewer needs to double check?
Uncertain.
## Why was this MR needed?
Showing tags doesn't make any sense and will just throw an exception if the user tries to cherry-pick or revert onto a tag.
## What are the relevant issue numbers?
Fixes#18377.
## Screenshots (if relevant)
On the GitLab CE repo:

## 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
- [ ] 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 !4596
Resolve "Hide Left sidebar paradigm"
## What does this MR do?
Hides the nav bar by default & centers the tanuki logo in the top nav
## Why was this MR needed?
UX
## What are the relevant issue numbers?
Closes#18417
## Screenshots (if relevant)


<img src="/uploads/3001a9c723037012f1b86cfacfb1225e/Screen_Shot_2016-06-10_at_12.51.41_PM.png" width="500px">
See merge request !4579
Add Project.where_paths_in
In https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4410 I'm working on reducing the SQL queries needed to render Markdown. One reason for the large amount of queries is executing a large number of queries needed to find projects and related data. Basically `Project.find_with_namespace` is called in a loop and then any relations have to be retrieved separately.
By using `Project.where_paths_in` we can work around this by doing something like:
```ruby
project_paths = [...] # populated by some method
projects = Project.where_paths_in(project_paths).includes(:namespace, ...)
```
Ref: https://gitlab.com/gitlab-org/gitlab-ce/issues/18042
See merge request !4535
Add workhorse controller and API helpers
Adds `send_git_blob` and `send_git_archive` controller and API helpers to reduce duplication and make Workhorse easier for a developer to work with.
See merge request !4486
Revert change to search all users
## What does this MR do?
Reverts a change that allowed the user to search for all users in the author/assignee dropdown
## Are there points in the code the reviewer needs to double check?
Double check it isn't still searching all users
See merge request !4564
Fixed issue where label filtering didnt work
## What does this MR do?
The filterable option was missing which meant labels in the dropdown couldn't be filtered. This fixes that.
## What are the relevant issue numbers?
Closes#18375
See merge request !4556
This method can be used to find multiple projects for multiple paths.
For example, take this snippet:
Project.where_paths_in(%w{gitlab-org/gitlab-ce gitlab-org/gitlab-ee})
This will return an ActiveRecord::Relation containing the GitLab CE and
GitLab EE projects.
This method takes care of matching rows both case-sensitively and
case-insensitively where needed.
Project.find_with_namespace in turn has been modified to use
Project.where_paths_in without nuking any scoping (instead it uses
reorder(nil)). This means that any default scopes (e.g. those used for
"pending_delete" stay intact).
The method Project.where_paths_in was added so the various Markdown
filters can use a single query to grab all the projects referenced in a
set of documents, something Project.find_with_namespace didn't allow.
Improved the UX of issue & milestone date picker
## What does this MR do?
Improves the UX of the date picker on issue form & milestone form.
## What are the relevant issue numbers?
Closes#18198
## Screenshots (if relevant)
### Issues

### Project milestones

### Group milestones

See merge request !4485
Fix local timeago on user dashboard
## What does this MR do?
Fixes incorrect date times on tooltips on the dashboard page
## Are there points in the code the reviewer needs to double check?
Yes, The tooltip has to be recreated again because we needed a custom CSS classname in order to fix the date being splitted into two lines.
## Why was this MR needed?
Because the datetimes were incorrect we have to have the same format for .timeago() instances.
## What are the relevant issue numbers?
#17607
## Screenshots (if relevant)
**Before**
<img src="/uploads/f40cd58e8086d9675262e98a1fe57885/Screen_Shot_2016-05-24_at_7.23.25_PM.png" width="705">
**After**
<img src="/uploads/bd48046ef11659cc742f827b3404fbcd/Screen_Shot_2016-05-24_at_7.22.29_PM.png" width="704">
See merge request !4285