1. 09 3月, 2016 5 次提交
  2. 08 3月, 2016 28 次提交
  3. 07 3月, 2016 7 次提交
    • J
      Use Rails etag/cache_control helpers · a284d307
      Jacob Vosmaer 提交于
      a284d307
    • C
      make cleanup optional · a19b4e75
      Christian Mehlmauer 提交于
      a19b4e75
    • J
      Refactor caching code · 41bc9c46
      Jacob Vosmaer 提交于
      41bc9c46
    • J
      Revert changes in the Project model · a215e2ee
      Jacob Vosmaer 提交于
      a215e2ee
    • D
      Merge branch 'feature/cross-project-labels' into 'master' · 99f08b3f
      Douwe Maan 提交于
      Add support for cross project references for labels
      
      ## Summary
      
      Support for cross project references for labels.
      
      ## Rationale
      
      1.   Cross project label references are currently not supported in GitLab
      1.   `to_reference` method signature in `Label` model breaks the abstraction introduced in `Referable`.
      
            `concerns/referable.rb:  def to_reference(_from_project = nil)`
      
            Signatures:
      
            ```
            label.rb:           def to_reference(format = :id)
      
            commit_range.rb:    def to_reference(from_project = nil)
            commit.rb:          def to_reference(from_project = nil)
            external_issue.rb:  def to_reference(_from_project = nil)
            group.rb:           def to_reference(_from_project = nil)
            issue.rb:           def to_reference(from_project = nil)
            merge_request.rb:   def to_reference(from_project = nil)
            milestone.rb:       def to_reference(from_project = nil)
            project.rb:         def to_reference(_from_project = nil)
            snippet.rb:         def to_reference(from_project = nil)
            user.rb:            def to_reference(_from_project = nil)
            ```
      
           This MR suggests using `def to_reference(from_project = nil, format: :id)` which makes use of keyword arguments and preserves abstract interface.
      
      1.   We need support for cross project label references when we want to move issue to another project
      
           It may happen that issue description, system notes or comments contain reference to label and this reference will be invalid after moving issue to another project and will not be displayed correctly unless we have support for cross project references.
      
           Merge request that needs this feature: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/2831
      
      
      I think that cross project label references may be useful, (example: `Hey, see our issues for CI in GitLab CE! - gitab-org/gitlab-ce~"CI"`).
      
      cc @JobV @DouweM @rspeicher 
      
      See merge request !2966
      99f08b3f
    • D
      Merge branch 'rs-factory-nitpicks' into 'master' · eab7892d
      Douwe Maan 提交于
      More Factory cleanup
      
      Addresses nitpicks from https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/2847
      
      See merge request !3108
      eab7892d
    • D
      Merge branch 'indicate-mr-diverged-from-target' into 'master' · d43c7784
      Douwe Maan 提交于
      Indicate when an MR diverged from the target branch
      
      This adds an indicator to the "Merge MR" box, to tell if and how much an MR diverged from its target branch.
      
      For instance, consider an MR to merge the branch `feature` into `master`. Some other commits were added to `master` since `feature` was created, and the two branches diverged.
      
      ```text
      o master
      |
      o    o feature
      |    |
      o    o
      |  /
      o
      ```
      
      In this case, there will be a label in the MR Merge box stating:
      
      > This MR is by 3 commits behind the target branch `master`.
      
      ## Screenshots
      
      ### The branch diverged from the target (UI Proposal)
      
      ![UI_suggestion_1](/uploads/cd5bee3959e68026ec7d5097259d53f4/UI_suggestion_1.png)
      
      ### The branch diverged from the target (alternative UI Proposal)
      
      ![UI_suggestion_2](/uploads/f36977101b59a610850e129837dfbc83/UI_suggestion_2.png)
      
      ## How is this useful?
      
      - In a _rebase-workflow_ (MR are preferably rebased before being merged), the reviewer wants to know if an MR is rebased on the target branch before merging it. 
          
          _With this indicator, the reviewer knows immediately if the branch is rebased, or if she needs to ask the committer to rebase its branch._
      
      <br>
      
      - To keep the git history readable, a team prefers to avoid merging branches that really lag a lot behind the target branch. Merging an MR that is 10 commits behind is fine, but 200 is too much.
      
          _With this indicator, the reviewer can see on the MR page if the branch is really far behind the target – or only a few commits behind._
      
      ## Open questions
      
      We've been using this at @captaintrain for a few months now, and found it quite useful.
      
      I guess the open-questions are mostly: what UI would be the more adequate? Any thoughts on this, on the general usefulness and/or on the code?
      
      See merge request !2217
      d43c7784