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 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
Fix adding new group members from admin area
Fix for #2222
Tests for this case already exists but it was green.
It related to current way dealing with ajax selectbox.
Improving tests might be a reason for another merge requests - everyone is welcome to participate.
See merge request !1796
Fix tab behavior on MergeRequests#new
Missed this one in 269aee790c
Prior to this fix, clicking the Commits or Changes tab when creating a new MR would reload the page instead of display the tab contents.
See merge request !556
Remove access control for uploaded images to fix broken images in emails
Replaces !530.
> This MR removes the access control for uploaded images. This is needed to display the images in emails again.
>
> The previous solution to base64 encode the images had to be reverted, because not all email clients supported it.
>
> If possible this should go into the 7.10 release.
See merge request !533
Fix label color input.
Because `value` was set, every label color would render as purple in the form.
Introduced by 83b5a9ae2b between 7.9 and 7.10, so no changelog item.
See merge request !538
Having a merge request with a comments on a line which is then changed
in a later commit prevented new comments from properly showing up in the
merge request show page.
* `Note#set_diff` do not use stored the diff when creating a new note
in merge requests (we can not be sure the diff did not changed since
the last comment on that line)
* Do not rely just on `outdated?` of the first note when displaying
comments of a MR in the discussion tab, but partition the
active/outdated notes and display them all
* In the inline changes tab just select the active notes, so an
outdated note does not prevent an active one from being rendered
* Just show active comments in the side-by-side changes tab
Don't use HTML ellipsis in EmailsOnPush subject truncated commit message.
Addresses private issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2229.
Since the page is encoded as UTF-8, we don't need HTML entities anymore and can just use the character.
See merge request !521
fix stuck mr
If `locked?` & `locked_at.nil?` is nil return that the merge has been locked long enough and those are old merges stuck in locked state.
Fixes#348. Related to 6487419364. Replaces !517.
/cc @DouweM
See merge request !526
Fix error message
This merge request fixes issue when somebody try to import repository (to which that user can't add deploy keys) and has no feedback.
See merge request !518
Fix directory traversal vulnerabilities
Fixes gitlab/gitlab-ee#272.
As @joern mentions:
> This is not exploitable via the front-end nginx. But nevertheless this issue should be addressed.
See merge request !1760