1. 20 Jul, 2016 3 commits
  2. 19 Jul, 2016 3 commits
  3. 18 Jul, 2016 3 commits
  4. 15 Jul, 2016 1 commit
  5. 13 Jul, 2016 5 commits
  6. 12 Jul, 2016 1 commit
  7. 07 Jul, 2016 2 commits
  8. 05 Jul, 2016 2 commits
    • Robert Speicher's avatar
      Dumb-down avatar presence check in `avatar_url` methods · 59fcef9168d7
      Robert Speicher authored
      `avatar.present?` goes through CarrierWave, and checks that the file
      exists on disk and checks its filesize. Because we're hitting the disk,
      this adds extra overhead to something where the worst-case scenario is
      rendering a broken image.
      Instead, we now just check that the _database attribute_ is present,
      which is good enough for our purposes.
      See https://gitlab.com/gitlab-org/gitlab-ce/issues/19273
    • Timothy Andrew's avatar
      Support wildcard matches for protected branches at the model level. · 4fea0f8e3d8b
      Timothy Andrew authored
      1. The main implementation is in the `ProtectedBranch` model. The
         wildcard is converted to a Regex and compared. This has been tested
          - While `Project#protected_branch?` is the main entry point,
            `project#open_branches` and
            have also been modified to work with wildcard protected branches.
          - The regex is memoized (within the `ProtectedBranch` instance)
      2. Improve the performance of `Project#protected_branch?`
          -  This method is called from `Project#open_branches` once _per branch_
             in the project, to check if that branch is protected or not.
          -  Before, `#protected_branch?` was making a database call every
             time it was invoked (in the above case, that amounts to once
             per branch), which is expensive.
          -  This commit caches the list of protected branches in memory, which
             reduces the number of database calls down to 1.
          -  A downside to this approach is that `#protected_branch?` _could_
             return a stale value (due to the caching), but this is
             an acceptable tradeoff.
      3. Remove the (now) unused `Project#protected_branch_names` method.
          - This was previously used to check for protected branch status.
  9. 01 Jul, 2016 1 commit
  10. 30 Jun, 2016 3 commits
  11. 29 Jun, 2016 1 commit
  12. 27 Jun, 2016 1 commit
  13. 22 Jun, 2016 1 commit
  14. 17 Jun, 2016 1 commit
  15. 16 Jun, 2016 3 commits
    • Yorick Peterse's avatar
      Fixed ordering in Project.find_with_namespace · 5fa0a6c1a212
      Yorick Peterse authored
      This ensures that Project.find_with_namespace returns a row matching
      literally as the first value, instead of returning a random value.
      The ordering here is _only_ applied to Project.find_with_namespace and
      _not_ Project.where_paths_in as currently there's no code that requires
      Project.where_paths_in to return rows in a certain order. Since this
      method also returns all rows that match there's no real harm in not
      setting a specific order either. Another reason is that generating all
      the "WHEN" arms for multiple values in Project.where_paths_in becomes
      really messy.
      On MySQL we have to use the "BINARY" operator to turn a "WHERE" into a
      case-sensitive WHERE as otherwise MySQL may still end up returning rows
      in an unpredictable order.
      Fixes gitlab-org/gitlab-ce#18603
    • James Lopez's avatar
      Revert "squashed merge and fixed conflicts" · 91545d127ac6
      James Lopez authored
      This reverts commit 429cd5e57fb1.
    • James Lopez's avatar
      squashed merge and fixed conflicts · 429cd5e57fb1
      James Lopez authored
  16. 15 Jun, 2016 3 commits
  17. 14 Jun, 2016 6 commits