Added " How to maintain tight control over the number of active users..."
Added " How to maintain tight control over the number of active users on your GitLab installation" to documentation.
Please check that documentation is OK before accepting Merge. I took if from https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/gitlab.yml.example#L149
cc/ @sytse
See merge request !1792
Fix Error 500 when searching Wiki pages
If a Wiki page turns up a hit in the search results, an error will occur:
```
Completed 500 Internal Server Error in 836ms
NoMethodError - undefined method `slug' for "test.markdown":String:
app/helpers/wiki_helper.rb:10:in `namespace_project_wiki_path'
app/views/search/results/_wiki_blob.html.haml:4:in `_app_views_search_results__wiki_blob_html_haml___2752621660395393333_70299911622700'
actionview (4.1.9) lib/action_view/template.rb:145:in `block in render'
activesupport (4.1.9) lib/active_support/notifications.rb:161:in `instrument'
actionview (4.1.9) lib/action_view/template.rb:339:in `instrument'
actionview (4.1.9) lib/action_view/template.rb:143:in `render'
```
An unhandled String containing the name of the Wiki page would be provided to the URL path generator. This MR handles that case.
Closes#1547
See merge request !592
Unescape branch names in compare commit
The upgrade in GitLab v7.9 to Rails v4.1.9 caused all branch names in the compare commit mode to be escaped (e.g. `/` to `%2F`). The compare mode would not always work when comparing against branch names with a forward slash.
Opted to unescape the branch name rather than use a wildcard segment to prevent escaping slashes because it seems like a more sensible URL. The slashes in this case aren't really represented by a tree structure (e.g. /compare/one/two/branch..another/branch/here).
* Closes#1399
* Closes https://github.com/gitlabhq/gitlabhq/issues/9105
See merge request !582
Fix config template from parse errors
62aa05dd0c added comments that were not commented out. CI test builds do a `cp gitlab.yml.example gitlab.yml` and thus were failing.
See merge request !602
Add snippet visibilty as parameter to API doc, closes#1562
## Description
Snippet visibility level was added to API but was not to its documentation.
Related to following commit: 928fc94c3d
@axil Can you review?
See merge request !601
Allow primary email to be set to an email that you've already added.
Fixes gitlab-com/support-forum#106.
When the user sets their primary email to an email that they've already added to their account, this patch makes sure that secondary email record is destroyed, and a new email record is created for the old primary email. This is based on the assumption that in this case no email was meant to be deleted, but the user simply wanted to change which of their emails is primary.
See merge request !591
Don't delete gitlab-test-fork folder after every test run
72a7febead added a forked repository cloned to `tmp/tests/gitlab-test-fork` but because it wasn't added to the list of folders not to delete every run, it was being cloned every run and adding extraneous console output.
See merge request !600
Make Reply-To config apply to change e-mail confirmation and other notifications sent through Devise
Notifications sent through Devise were using the default From: address, and due to a broken test line nothing was actually being run.
The only way to customize the Devise Reply-To field is to use a custom mailer. Moved the e-mail configuration out of the initializers to accommodate this.
Closes#1556
See merge request !596
Add a page title to every page.

The `page_title` helper pushes the provided string at the end of the title, but because of the order that layouts are rendered in by ActionView, the result is always this:
```
<title from view> |
<title from as specified in the controller or by its layout> |
<title from layouts/_head>
```
For example: `Merge Requests | GitLab.org / Gitlab Community Edition | GitLab`.
All a developer needs to know is to put a `page_title` call describing the page in question at the start of every template.
To get everything where I wanted it to go without too much duplication, I had to make some changes around layouts, sidebars and controllers.
See merge request !593
More HTML::Pipeline filters
The big part of this MR is a feature that is intended to test the entire Markdown-parsing process from beginning to end. See `spec/support/markdown_feature.rb` and `spec/features/markdown_spec.rb`.
One big thing this MR fixes is not being able to type a `<` or `>` anywhere. It now gets properly escaped.
This MR also adds three more custom HTML::Pipeline filters:
### AutolinkFilter
Similar to the built-in Autolink filter in that it still uses Rinku for standard http and ftp links, but then does some further processing to allow auto-linking of any URI scheme. See internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2239
### SanitizationFilter
Created a simple custom SanitizationFilter that sub-classes the default one and adds our custom whitelisting.
### TableOfContentsFilter
Adds the anchor links to each header. This removes some processing from our Redcarpet renderer.
Closes#800, #1015, #1528, #1549
Closes GitHub [8535](https://github.com/gitlabhq/gitlabhq/issues/8535)
See merge request !584