Skip to content
Snippets Groups Projects
Commit 28e77da9 authored by Regis's avatar Regis
Browse files

Merge branch 'master' into ui_pipelines_mini_graph

parents 4fb4f615 e2f0b830
No related branches found
No related tags found
No related merge requests found
Showing
with 65 additions and 41 deletions
Loading
@@ -26,8 +26,26 @@ module Users
Loading
@@ -26,8 +26,26 @@ module Users
user.reload user.reload
end end
   
# This method returns the updated User object.
def execute def execute
lease_key = "refresh_authorized_projects:#{user.id}"
lease = Gitlab::ExclusiveLease.new(lease_key, timeout: LEASE_TIMEOUT)
until uuid = lease.try_obtain
# Keep trying until we obtain the lease. If we don't do so we may end up
# not updating the list of authorized projects properly. To prevent
# hammering Redis too much we'll wait for a bit between retries.
sleep(1)
end
begin
execute_without_lease
ensure
Gitlab::ExclusiveLease.cancel(lease_key, uuid)
end
end
# This method returns the updated User object.
def execute_without_lease
current = current_authorizations_per_project current = current_authorizations_per_project
fresh = fresh_access_levels_per_project fresh = fresh_access_levels_per_project
   
Loading
@@ -47,26 +65,7 @@ module Users
Loading
@@ -47,26 +65,7 @@ module Users
end end
end end
   
update_with_lease(remove, add) update_authorizations(remove, add)
end
# Updates the list of authorizations using an exclusive lease.
def update_with_lease(remove = [], add = [])
lease_key = "refresh_authorized_projects:#{user.id}"
lease = Gitlab::ExclusiveLease.new(lease_key, timeout: LEASE_TIMEOUT)
until uuid = lease.try_obtain
# Keep trying until we obtain the lease. If we don't do so we may end up
# not updating the list of authorized projects properly. To prevent
# hammering Redis too much we'll wait for a bit between retries.
sleep(1)
end
begin
update_authorizations(remove, add)
ensure
Gitlab::ExclusiveLease.cancel(lease_key, uuid)
end
end end
   
# Updates the list of authorizations for the current user. # Updates the list of authorizations for the current user.
Loading
Loading
Loading
@@ -22,14 +22,14 @@
Loading
@@ -22,14 +22,14 @@
%p.build-detail-row %p.build-detail-row
The artifacts were removed The artifacts were removed
#{time_ago_with_tooltip(@build.artifacts_expire_at)} #{time_ago_with_tooltip(@build.artifacts_expire_at)}
- elsif @build.artifacts_expire_at - elsif @build.has_expiring_artifacts?
%p.build-detail-row %p.build-detail-row
The artifacts will be removed in The artifacts will be removed in
%span.js-artifacts-remove= @build.artifacts_expire_at %span.js-artifacts-remove= @build.artifacts_expire_at
   
- if @build.artifacts? - if @build.artifacts?
.btn-group.btn-group-justified{ role: :group } .btn-group.btn-group-justified{ role: :group }
- if @build.artifacts_expire_at - if @build.has_expiring_artifacts? && can?(current_user, :update_build, @build)
= link_to keep_namespace_project_build_artifacts_path(@project.namespace, @project, @build), class: 'btn btn-sm btn-default', method: :post do = link_to keep_namespace_project_build_artifacts_path(@project.namespace, @project, @build), class: 'btn btn-sm btn-default', method: :post do
Keep Keep
   
Loading
Loading
Loading
@@ -13,7 +13,7 @@
Loading
@@ -13,7 +13,7 @@
%a.close{ href: "#", "data-dismiss" => "modal" } × %a.close{ href: "#", "data-dismiss" => "modal" } ×
%h3.page-title== #{label} this #{commit.change_type_title(current_user)} %h3.page-title== #{label} this #{commit.change_type_title(current_user)}
.modal-body .modal-body
= form_tag send("#{type.underscore}_namespace_project_commit_path", @project.namespace, @project, commit.id), method: :post, remote: false, class: "form-horizontal js-#{type}-form js-requires-input" do = form_tag [type.underscore, @project.namespace, @project, commit], method: :post, remote: false, class: "form-horizontal js-#{type}-form js-requires-input" do
.form-group.branch .form-group.branch
= label_tag 'target_branch', target_label, class: 'control-label' = label_tag 'target_branch', target_label, class: 'control-label'
.col-sm-10 .col-sm-10
Loading
Loading
Loading
@@ -18,8 +18,8 @@
Loading
@@ -18,8 +18,8 @@
= parallel_diff_btn = parallel_diff_btn
= render 'projects/diffs/stats', diff_files: diff_files = render 'projects/diffs/stats', diff_files: diff_files
   
- if diff_files.overflow? - if render_overflow_warning?(diff_files)
= render 'projects/diffs/warning', diff_files: diff_files = render 'projects/diffs/warning', diff_files: diffs
   
.files{ data: { can_create_note: can_create_note } } .files{ data: { can_create_note: can_create_note } }
- diff_files.each_with_index do |diff_file| - diff_files.each_with_index do |diff_file|
Loading
Loading
Loading
@@ -112,3 +112,6 @@
Loading
@@ -112,3 +112,6 @@
merge_request = new MergeRequest({ merge_request = new MergeRequest({
action: "#{controller.action_name}" action: "#{controller.action_name}"
}); });
var mrRefreshWidgetUrl = "#{mr_widget_refresh_url(@merge_request)}";
- if @merge_request_diff.collected? - if @merge_request_diff.collected? || @merge_request_diff.overflow?
= render 'projects/merge_requests/show/versions' = render 'projects/merge_requests/show/versions'
= render "projects/diffs/diffs", diffs: @diffs = render "projects/diffs/diffs", diffs: @diffs
- elsif @merge_request_diff.empty? - elsif @merge_request_diff.empty?
.nothing-here-block Nothing to merge from #{@merge_request.source_branch} into #{@merge_request.target_branch} .nothing-here-block Nothing to merge from #{@merge_request.source_branch} into #{@merge_request.target_branch}
- else
.alert.alert-warning
%h4
Changes view for this comparison is extremely large.
%p
You can
= link_to "download it", merge_request_path(@merge_request, format: :diff), class: "vlink"
instead.
Loading
@@ -3,6 +3,7 @@
Loading
@@ -3,6 +3,7 @@
= form_for [@project.namespace.becomes(Namespace), @project, @note], remote: true, html: { :'data-type' => 'json', multipart: true, id: nil, class: "new-note js-new-note-form js-quick-submit common-note-form", "data-noteable-iid" => @note.noteable.try(:iid), }, authenticity_token: true do |f| = form_for [@project.namespace.becomes(Namespace), @project, @note], remote: true, html: { :'data-type' => 'json', multipart: true, id: nil, class: "new-note js-new-note-form js-quick-submit common-note-form", "data-noteable-iid" => @note.noteable.try(:iid), }, authenticity_token: true do |f|
= hidden_field_tag :view, diff_view = hidden_field_tag :view, diff_view
= hidden_field_tag :line_type = hidden_field_tag :line_type
= hidden_field_tag :merge_request_diff_head_sha, @note.noteable.try(:diff_head_sha)
= note_target_fields(@note) = note_target_fields(@note)
= f.hidden_field :commit_id = f.hidden_field :commit_id
= f.hidden_field :line_code = f.hidden_field :line_code
Loading
Loading
Loading
@@ -9,7 +9,7 @@
Loading
@@ -9,7 +9,7 @@
.pull-right.light #{milestone.percent_complete(current_user)}% complete .pull-right.light #{milestone.percent_complete(current_user)}% complete
.row .row
.col-sm-6 .col-sm-6
= link_to pluralize(milestone.issues_visible_to_user(current_user).size, 'Issue'), issues_path = link_to pluralize(milestone.total_issues_count(current_user), 'Issue'), issues_path
· ·
= link_to pluralize(milestone.merge_requests.size, 'Merge Request'), merge_requests_path = link_to pluralize(milestone.merge_requests.size, 'Merge Request'), merge_requests_path
.col-sm-6= milestone_progress_bar(milestone) .col-sm-6= milestone_progress_bar(milestone)
Loading
Loading
---
title: Support slash comand `/merge` for merging merge requests.
merge_request: 7746
author: Jarka Kadlecova
---
title: Fix search group/project filtering to show results
merge_request:
author:
---
title: Hide build artifacts keep button if operation is not allowed
merge_request: 8501
author:
---
title: Show 'too many changes' message for created merge requests when they are too large
merge_request:
author:
---
title: Fixed merge request tabs dont move when opening collapsed sidebar
merge_request:
author:
---
title: Use cached values to compute total issues count in milestone index pages
merge_request: 8518
author:
---
title: Synchronize all project authorization refreshing work to prevent race conditions
merge_request:
author:
---
title: Switch to sassc-rails for faster stylesheet compilation
merge_request: 8556
author: Richard Macklin
Loading
@@ -94,6 +94,7 @@ constraints(ProjectUrlConstrainer.new) do
Loading
@@ -94,6 +94,7 @@ constraints(ProjectUrlConstrainer.new) do
get :pipelines get :pipelines
get :merge_check get :merge_check
post :merge post :merge
get :merge_widget_refresh
post :cancel_merge_when_build_succeeds post :cancel_merge_when_build_succeeds
get :ci_status get :ci_status
get :ci_environments_status get :ci_environments_status
Loading
Loading
Loading
@@ -14,6 +14,7 @@ do.
Loading
@@ -14,6 +14,7 @@ do.
|:---------------------------|:-------------| |:---------------------------|:-------------|
| `/close` | Close the issue or merge request | | `/close` | Close the issue or merge request |
| `/reopen` | Reopen the issue or merge request | | `/reopen` | Reopen the issue or merge request |
| `/merge` | Merge (when build succeeds) |
| `/title <New title>` | Change title | | `/title <New title>` | Change title |
| `/assign @username` | Assign | | `/assign @username` | Assign |
| `/unassign` | Remove assignee | | `/unassign` | Remove assignee |
Loading
Loading
require_relative 'encoding_helper'
module Gitlab module Gitlab
module Git module Git
class Blame class Blame
Loading
Loading
require_relative 'encoding_helper'
require_relative 'path_helper'
module Gitlab module Gitlab
module Git module Git
class Blob class Blob
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment