1. 04 Mar, 2015 29 commits
  2. 03 Mar, 2015 11 commits
    • Stan Hu's avatar
      Fix URL builder to use GitlabRoutingHelper · 73fdbea29844
      Stan Hu authored
      73fdbea29844
    • Marin Jankovski's avatar
      Merge branch 'fix-edit-note-with-votes' into 'master' · d3834d99c152
      Marin Jankovski authored
      Fix server error when editing a note to "+1" or "-1"
      
      ### Summary
      
      If a user edits a comment with "+1" or "-1" in the beginning, the POST returns an Internal Server error. (issue #1151). This merge request resolves that error.
      
      ### Steps to reproduce
      
      1. Comment on an issue with "Test comment".
      2. Edit the issue.
      3. Write "+1" and click "Save Comment".
      
      ### Expected behavior
      
      The edited note should be saved and refreshed. Any previous upvotes/downvotes from the user should contain a strikethrough.
      
      ### Observed behavior
      
      Internal Error
      
      ### Relevant logs
      
      ```
      Started PUT "/avocode/avocode-manager/notes/4996" for 185.33.136.107 at 2015-02-28 17:11:53 +0100
      Processing by Projects::NotesController#update as JS
      Parameters: {"utf8"=>"✓", "authenticity_token"=>"*removed*", "note"=>{"note"=>"+1\r\n\r\nYes"}, "commit"=>"Save Comment", "project_id"=>"avocode/avocode-manager", "id"=>"4996"}
      Completed 500 Internal Server Error in 86ms
      ActionView::Template::Error (undefined method `each' for nil:NilClass):
      28: %span.note-last-update
      29: = note_timestamp(note)
      30:
      31: - if note.superceded?(@notes)
      32: - if note.upvote?
      33: %span.vote.upvote.label.label-gray.strikethrough
      34: %i.fa.fa-thumbs-up
      app/models/note.rb:495:in `superceded?'
      app/views/projects/notes/_note.html.haml:31:in `_app_views_projects_notes__note_html_haml___812277000516355462_69988235638820'
      app/controllers/projects/notes_controller.rb:71:in `note_to_html'
      app/controllers/projects/notes_controller.rb:103:in `render_note_json'
      app/controllers/projects/notes_controller.rb:39:in `block (2 levels) in update'
      app/controllers/projects/notes_controller.rb:38:in `update'
      ```
      
      ### Fix
      
      It turns out no tests were present for the "Edit Issue" functionality. I added spinach tests to exercise this and reproduced the error.
      
      Most of the routes in `notes_controller.rb` appear to render all notes for the given discussion. `_form.html.haml` needs the full list of notes commented by the user to add strikethroughs for older upvotes/downvotes. However, only the `index` route appeared to obtain this information. The fix is to add a `before_filter` to obtain all the user's notes beforehand, except in the delete case where this information is not needed.
      
      Things to watch: `NotesFinder` needs `target_type` and `target_id` to determine what to do. I'm not sure if there is a conscious effort to phase these keywords out in favor of `noteable_type` and `noteable_id`.
      
      See merge request !360
      d3834d99c152
    • Dmitriy Zaporozhets's avatar
      Merge branch 'project-existence-leak' into 'master' · d2a57b669686
      Dmitriy Zaporozhets authored
      Don't leak information about private project existence via Git-over-SSH/HTTP.
      
      Fixes #2040 and https://gitlab.com/gitlab-org/gitlab-ce/issues/343.
      
      Both `Grack::Auth` (used by Git-over-HTTP) and `Api::Internal /allowed` (used by gitlab-shell/Git-over-SSH) now return a generic "Not Found" error when the project exists but the user doesn't have access to it.
      
      See merge request !1578
      d2a57b669686
    • Marin Jankovski's avatar
      Merge branch 'go-import' into 'master' · 1a3def7ab5fd
      Marin Jankovski authored
      Render go-import meta tag for private repos.
      
      The previously solution (c3ee9b26cfe4) required a change to nginx config and broke visits from Googlebot and other clients including "go" in their user agent.
      
      See merge request !1587
      1a3def7ab5fd
    • Marin Jankovski's avatar
      5d446eac7e58
    • Marin Jankovski's avatar
      83e7303562fb
    • Dmitriy Zaporozhets's avatar
      Merge branch 'installtion-from-source' into 'master' · ae6a72242a0b
      Dmitriy Zaporozhets authored
      Clearly mark it as installation from source.
      
      See merge request !1622
      ae6a72242a0b
    • Dmitriy Zaporozhets's avatar
      Merge branch 'user-select-unassigned' into 'master' · 975e4ad70e46
      Dmitriy Zaporozhets authored
      Don't show Unassigned in user select when searching.
      
      Fixes #2056.
      
      When a search term is present, the Unassigned item isn't rendered, so the highlighted item is the first search result and hitting Enter works as expected.
      
      See merge request !1620
      975e4ad70e46
    • Dmitriy Zaporozhets's avatar
      Merge branch 'case-sensetivity-import' into 'master' · ac103631133d
      Dmitriy Zaporozhets authored
      Fix import check for case sensetive namespaces
      
      If you already have namespace `ABc` and you try to import project with namespace `abC` - import will fail with 422 error.
      
      cc @valery
      
      See merge request !1618
      ac103631133d
    • Sytse Sijbrandij's avatar
      Clearly mark it as installation from source. · abde25f08947
      Sytse Sijbrandij authored
      abde25f08947
    • Jeroen van Baarsen's avatar
      Merge branch 'commit_calendar_branches' into 'master' · 0128c25ed833
      Jeroen van Baarsen authored
      Count commits in branches as well in the commit calendar
      
      This MR fixes a small bug in the commit calendar.
      Currently only commits that are in the master branch are counted.
      With this change, commits in other branches are included as well.
      
      fixes one of the issues found in #1162
      
      See merge request !362
      0128c25ed833