Allow user to be blocked and activated via the API
When authenticating against LDAP if a user has been disabled in LDAP they can no longer log on to the website or commit over http(s) but will be able to commit using any ssh keys. This functionality allows us to look for users in GitLab that no longer exist in LDAP and disable then in GitLab.
Closes Feedback item: [Add administrative API call to block users](http://feedback.gitlab.com/forums/176466-general/suggestions/4098632-add-administrative-api-call-to-block-users)
See merge request !587
Changed the reference from gitlab cloud to gitlab.com because it was outdated.
This one confused me a bit because i was searching for gitlab cloud and the first thing i saw: "It's gone and now it's gitlab.com"
So to prevent anyone other than me from being a bit puzzled this little change should help
See merge request !929
Fix redirection to home page URL for unauthorized users
Redirection to the home page URL was broken by changing the target for
`root_url` from `DashboardController` to `RootController` in
94d3c1433d. This regression was introduced
in the 7.12.0 release.
Fixes#1916.
See merge request !928
Redirection to the home page URL was broken by changing the target for
`root_url` from `DashboardController` to `RootController` in
94d3c1433d. This regression was introduced
in the 7.12.0 release.
Fixes#1916.
'created_at DESC' is performed twice
If you are already sorting in descending order in the created_at, it is run twice when you run the .recent.
It has passed in the string 'created_at DESC'.
Ruby on Rails is directly given to the SQL.
It is a slow query in MySQL.
See merge request !825
If you are already sorting in descending order in the created_at,
it is run twice when you run the .recent.
It has passed in the string 'created_at DESC'.
Ruby on Rails is directly given to the SQL.
It is a slow query in MySQL.
Remove link leading to a 404 error in Deploy Keys page
### What does this MR do?
This MR removes a link that would lead an admin to believe he/she could edit a deploy key, but clicking on this link would lead to a 404.
### Screenshot

### What are the relevant issue numbers?
Closes#1866
See merge request !923
Gem updates for security issues
- sprockets (rails dependency, but we need to specify a version to pull
in fixes)
- sass-rails (no security issues, but required an update to meet new
sprockets version requirement)
- rest-client (coveralls dependency)
See merge request !915
Fix changelog for !767 and !794
These changes did not make it into the 7.12.0 release. The entry for
!794 is already correctly listed for 7.12.1 so it has been removed.
See merge request !920
Add an expect call to prevent random Spinach failure
This should help prevent getting the error:
```
Unable to find field "merge_request_title
```
This was happening probably because it takes some time after the "Compare branches" button is hit before the "New merge request" page showed up.
See merge request !882
Refactor can_be_merged logic for merge request
Some refactoring after !918
cc @DouweM @rspeicher
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
See merge request !919
Merge branches inside one repository using rugged instead of satellites
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
cc @rspeicher @DouweM
See merge request !918
Extract the longest-matching ref from a commit path when multiple matches occur
### What does this MR do?
This MR extracts the longest-matching ref from a commit path. In cases when there are multiple refs that prefix the path, the ref name is ambiguous. Using the heuristic that the longest-matching ref seems like a sensible default.
### Why was this MR needed?
Suppose there is a branch named `release/app` and a tag named `release/app/v1.0.0`. Suppose `README.md` exists in the root directory.
Let's suppose the path passed in is `release/app/v1.0.0/README.md`. There are two possible ways to interpret the ref and path:
1. ref = `release/app`, path = `v1.0.0/README.md`
2. ref = `release/app/v1.0.0`, path = `README.md`
The crux of the issue is that there is ambiguity which one is correct; both could be real possibilities. In the current implementation of `extract_ref`, GitLab gets confused and tries neither: it uses ref = `release` and path = `app/v1.0.0/README.md`. Since the file does not exist, it returns 404.
### What are the relevant issue numbers?
Closes#1839
See merge request !859
UX improvements
* make atom feed on commits page smaller so it capture less attention
* open big image 400px instead of default 40px when click on user avatar
See merge request !910
Performance improvements after caching html fragments
* re-use event cache with other users
* cache commit fragment
* cache issue fragment in list
* cache comment parsed with markdown
See merge request !911