and request them each session. Pass these tokens to the project import data.
This prevents the need to encrypt these tokens and clear them in case they
expire or get revoked.
For example, if you deleted and re-created OAuth2 keys for Bitbucket, you would get
an Error 500 with no way to recover:
```
Started GET "/import/bitbucket/status" for x.x.x.x at 2015-08-07 05:24:10 +0000
Processing by Import::BitbucketController#status as HTML
Completed 500 Internal Server Error in 607ms (ActiveRecord: 2.3ms)
NameError (uninitialized constant Import::BitbucketController::Unauthorized):
app/controllers/import/bitbucket_controller.rb:77:in `rescue in go_to_bitbucket_for_permissions'
app/controllers/import/bitbucket_controller.rb:74:in `go_to_bitbucket_for_permissions'
app/controllers/import/bitbucket_controller.rb:86:in `bitbucket_unauthorized'
```
Closes#1871
Fix bug preventing invite by e-mail
This was broken in 70f5291808 as a result of introducing the ability to filter by current user.
Closes#2320
See merge request !1181
Disable internal issue tracker if external tracker in use
### What does this MR do?
This MR disables routes to the internal issue tracker if an external issue tracker (e.g. Redmine) is in use. A 404 page is returned if a user attempts to access any of the issue routes.
### Why was this MR needed?
Enabling the external issue tracker would still keep the internal one active, which would lead to odd behavior where users could create issues but not close them.
### What are the relevant issue numbers?
Closes#2006
See merge request !993
Always add current user to autocomplete controller to support filter by "Me"
### What does this MR do?
This MR always adds the current user to the autocomplete list of users.
### Why was this MR needed?
Normally only the members from a team or the group are shown in the autocomplete list. However, this prevents a user from filtering issues belong to him/her if the user does not belong directly to either. To make this filtering more usable, we can be sure to add the current user to the list, which the JavaScript code will move to the top of the list.
### What are the relevant issue numbers?
Partial fix#2202
See merge request !1100
Only publish ssh key-type and key
Now when requesting my keys; my emailadres is exposed. [My keys](https://gitlab.com/zj.keys)
To prevent harvesting only key-type and the key itself are displayed instead of all data supplied when uploaded.
See merge request !850
MergeRequest#show performance improvements
This is a first pass on improving the performance of the `MergeRequests#show` page. Notable changes:
- The "Commits" tab is loaded lazily, so the initial page load should be much faster for MRs with many commits.
- Relative timestamps via `timeago` are only initialized once per load instead of `O(n^2)`. This greatly improves frontend rendering times for a large number of commits.
- Refactored `User.find_for_commit` to use a single ARel-generated SQL query instead of the old method which resulted in one query, and could result in up to three.
See merge request !838
This controller is now the target for `root_url`. It sub-classes
DashboardController so we can render the old default without a redirect
if the user hasn't customized their dashboard location.
Fix bug where avatar filenames were not actually deleted from the database during removal
This would result in a 404 error in certain views.
The `save` call was being rolled back due to an error in the validation step.
Relax the validation step so that this works.
Closes#1570
See merge request !620