1. 15 Aug, 2016 20 commits
  2. 14 Aug, 2016 1 commit
    • Ahmad Sherif's avatar
      Fix a memory leak caused by Banzai::Filter::SanitizationFilter · 504a3b5e
      Ahmad Sherif authored
      In Banzai::Filter::SanitizationFilter#customize_whitelist, we append
      three lambdas that has reference to the SanitizationFilter instance,
      which in turn (potentially) has a reference to the following chain:
      
      context hash -> Project instance -> Repository instance -> lookup hash
      -> various Rugged instances -> various mmap-ed git pack files.
      
      All of the above is not garbage collected because the array we append
      the lambdas to is the constant
      HTML::Pipeline::SanitizationFilter::WHITELIST.
      504a3b5e
  3. 13 Aug, 2016 13 commits
  4. 12 Aug, 2016 6 commits
    • Douwe Maan's avatar
      Merge branch 'push-mr-url-guards' into 'master' · 30f5b9a5
      Douwe Maan authored
      Don't show new MR URL after push when it doesn't make sense
      
      
      
      See merge request !5786
      30f5b9a5
    • Rémy Coutable's avatar
      Merge branch 'archived_project_badge' into 'master' · 0b6caf45
      Rémy Coutable authored
      Add archived badge to project listing
      
      ## What does this MR do?
      
      Add an `archived` badge to the user project list, if the project is archived. 
      
      ## Are there points in the code the reviewer needs to double check?
      
      No.
      
      ## Why was this MR needed?
      
      Customer noted in https://gitlab.zendesk.com/agent/tickets/33787 that there is no distinction for archived projects in the project dashboard/explore projects page. There is an archived badge on the admin projects page, though.
      
      ## What are the relevant issue numbers?
      
      ## Screenshots (if relevant)
      
      Existing admin projects page:
      
      ![Screen_Shot_2016-08-12_at_3.54.37_PM](/uploads/d6ba44c2d3be1f78372792b5ac406672/Screen_Shot_2016-08-12_at_3.54.37_PM.png)
      
      New project list with archived badge:
      
      ![Screen_Shot_2016-08-12_at_3.54.21_PM](/uploads/3fa8bb9fe7588575aace0761984929a7/Screen_Shot_2016-08-12_at_3.54.21_PM.png)
      
      
      
      See merge request !5798
      0b6caf45
    • Douwe Maan's avatar
      8779da45
    • Alejandro Rodríguez's avatar
    • Drew Blessing's avatar
      Add archived badge to project listing · 60858c3d
      Drew Blessing authored
      60858c3d
    • Robert Speicher's avatar
      Merge branch 'fix-namespace-deletion' into 'master' · 11eefba8
      Robert Speicher authored
      Fix bug where destroying a namespace would not always destroy projects
          
      There is a race condition in DestroyGroupService now that projects are deleted asynchronously:
          
      1. User attempts to delete group
      2. DestroyGroupService iterates through all projects and schedules a Sidekiq job to delete each Project
      3. DestroyGroupService destroys the Group, leaving all its projects without a namespace
      4. Projects::DestroyService runs later but the can?(current_user,
          :remove_project) is `false` because the user no longer has permission to
          destroy projects with no namespace.
      5. This leaves the project in pending_delete state with no namespace/group.
       
      Projects without a namespace or group also adds another problem: it's not possible to destroy the container registry tags, since `container_registry_path_with_namespace` is the wrong value.
      
      The fix is to destroy the group asynchronously and run `execute` directly on Projects::DestroyService.
       
      Closes #17893
      
      See merge request !4341
      11eefba8