1. 06 Sep, 2017 5 commits
  2. 05 Sep, 2017 1 commit
    • Rubén Dávila's avatar
      Optimize SQL queries used in Groups::GroupMembersController#create · 7b2ce0a538b8
      Rubén Dávila authored
      The following optimizations were performed:
      - Add new association to GroupMember and ProjectMember
        This new association will allow us to check if a user is a member of a
        Project or Group through a single query instead of two.
      - Optimize retrieving of Members when adding multiple Users
  3. 04 Sep, 2017 3 commits
  4. 31 Aug, 2017 4 commits
    • Zeger-Jan van de Weg's avatar
    • Zeger-Jan van de Weg's avatar
      Implement the implied CI/CD config for AutoDevOps · 6427b5d35d8d
      Zeger-Jan van de Weg authored
      Behind an application setting, which defaults to false, this commit
      implements the implied CI/CD config. Which means that in the case we
      can't find the `.gitlab-ci.yml` on the commit we want to start a
      pipeline for, we fall back to an implied configuration.
      For now the Bash template has been copied to
      `Auto-Devops.gitlab-ci.yml` so the tests actually work.
      Fixes #34777
    • Sean McGivern's avatar
      `current_application_settings` belongs on `Gitlab::CurrentSettings` · e1c28a485974
      Sean McGivern authored
      The initializers including this were doing so at the top level, so every object
      loaded after them had a `current_application_settings` method. However, if
      someone had rack-attack enabled (which was loaded before these initializers), it
      would try to load the API, and fail, because `Gitlab::CurrentSettings` didn't
      have that method.
      To fix this:
      1. Don't include `Gitlab::CurrentSettings` at the top level. We do not need
         `Object.new.current_application_settings` to work.
      2. Make `Gitlab::CurrentSettings` explicitly `extend self`, as we already use it
         like that in several places.
      3. Change the initializers to use that new form.
    • Zeger-Jan van de Weg's avatar
      Don't show references to Pages when not available · 75dac8f30d3a
      Zeger-Jan van de Weg authored
      In this instance its subgroups, and given we can't deploy it, we
      shouldn't allow it to be shown.
      Fixes gitlab-org/gitlab-ce#34864
  5. 30 Aug, 2017 1 commit
  6. 29 Aug, 2017 1 commit
  7. 25 Aug, 2017 2 commits
  8. 24 Aug, 2017 2 commits
  9. 23 Aug, 2017 2 commits
    • Lin Jen-Shin's avatar
      Remove unwanted refs after importing a project · 76dd688da757
      Lin Jen-Shin authored
      Because we don't need them, and they would slow down
      the repository, keeping unneeded objects as well.
      We could also consider doing this in regular housekeeping.
    • Yorick Peterse's avatar
      Cache the number of open issues and merge requests · c5d0237e8e0d
      Yorick Peterse authored
      Every project page displays a navigation menu that in turn displays the
      number of open issues and merge requests. This means that for every
      project page we run two COUNT(*) queries, each taking up roughly 30
      milliseconds on GitLab.com. By caching these numbers and refreshing them
      whenever necessary we can reduce loading times of all these pages by up
      to roughly 60 milliseconds.
      The number of open issues does not include confidential issues. This is
      a trade-off to keep the code simple and to ensure refreshing the data
      only needs 2 COUNT(*) queries instead of 3. A downside is that if a
      project only has 5 confidential issues the counter will be set to 0.
      Because we now have 3 similar counting service classes the code
      previously used in Projects::ForksCountService has mostly been moved to
      Projects::CountService, which in turn is reused by the various service
      Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/36622
  10. 22 Aug, 2017 11 commits
  11. 20 Aug, 2017 1 commit
  12. 18 Aug, 2017 1 commit
  13. 17 Aug, 2017 3 commits
  14. 15 Aug, 2017 1 commit
  15. 14 Aug, 2017 2 commits