Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-08-11 12:10:03 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-08-11 12:10:03 +0300
commite184bc1abfe4fe4fef8c25c0d2ccb4c0063e7d5e (patch)
treea3cb32545238fd46625485a482ef403de2d558b5 /app
parent281f1b6ba36531122463afd6869ca5dcdd0b0e35 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/vue_shared/components/gl_mentions.vue7
-rw-r--r--app/models/resource_iteration_event.rb5
-rw-r--r--app/models/resource_milestone_event.rb19
-rw-r--r--app/models/resource_timebox_event.rb23
-rw-r--r--app/services/boards/issues/list_service.rb8
-rw-r--r--app/services/submit_usage_ping_service.rb14
-rw-r--r--app/views/projects/merge_requests/_how_to_merge.html.haml4
7 files changed, 57 insertions, 23 deletions
diff --git a/app/assets/javascripts/vue_shared/components/gl_mentions.vue b/app/assets/javascripts/vue_shared/components/gl_mentions.vue
index 1d8be1065e9..5d97d364e94 100644
--- a/app/assets/javascripts/vue_shared/components/gl_mentions.vue
+++ b/app/assets/javascripts/vue_shared/components/gl_mentions.vue
@@ -43,7 +43,12 @@ const autoCompleteMap = {
const fullText = this.$slots.default?.[0]?.elm?.value;
const selectionStart = this.$slots.default?.[0]?.elm?.selectionStart;
- if (!this.assignees) {
+ // Need to check whether sidebar store assignees has been updated
+ // in the case where the assignees AJAX response comes after the user does @ autocomplete
+ const isAssigneesLengthSame =
+ this.assignees?.length === SidebarMediator.singleton?.store?.assignees?.length;
+
+ if (!this.assignees || !isAssigneesLengthSame) {
this.assignees =
SidebarMediator.singleton?.store?.assignees?.map(assignee => assignee.username) || [];
}
diff --git a/app/models/resource_iteration_event.rb b/app/models/resource_iteration_event.rb
new file mode 100644
index 00000000000..78d85ea8b95
--- /dev/null
+++ b/app/models/resource_iteration_event.rb
@@ -0,0 +1,5 @@
+# frozen_string_literal: true
+
+class ResourceIterationEvent < ResourceTimeboxEvent
+ belongs_to :iteration
+end
diff --git a/app/models/resource_milestone_event.rb b/app/models/resource_milestone_event.rb
index 36068cf508b..5fd71612de0 100644
--- a/app/models/resource_milestone_event.rb
+++ b/app/models/resource_milestone_event.rb
@@ -1,30 +1,17 @@
# frozen_string_literal: true
-class ResourceMilestoneEvent < ResourceEvent
+class ResourceMilestoneEvent < ResourceTimeboxEvent
include IgnorableColumns
- include IssueResourceEvent
- include MergeRequestResourceEvent
belongs_to :milestone
- validate :exactly_one_issuable
-
scope :include_relations, -> { includes(:user, milestone: [:project, :group]) }
- enum action: {
- add: 1,
- remove: 2
- }
-
# state is used for issue and merge request states.
enum state: Issue.available_states.merge(MergeRequest.available_states)
ignore_columns %i[reference reference_html cached_markdown_version], remove_with: '13.1', remove_after: '2020-06-22'
- def self.issuable_attrs
- %i(issue merge_request).freeze
- end
-
def milestone_title
milestone&.title
end
@@ -32,8 +19,4 @@ class ResourceMilestoneEvent < ResourceEvent
def milestone_parent
milestone&.parent
end
-
- def issuable
- issue || merge_request
- end
end
diff --git a/app/models/resource_timebox_event.rb b/app/models/resource_timebox_event.rb
new file mode 100644
index 00000000000..44f48915425
--- /dev/null
+++ b/app/models/resource_timebox_event.rb
@@ -0,0 +1,23 @@
+# frozen_string_literal: true
+
+class ResourceTimeboxEvent < ResourceEvent
+ self.abstract_class = true
+
+ include IssueResourceEvent
+ include MergeRequestResourceEvent
+
+ validate :exactly_one_issuable
+
+ enum action: {
+ add: 1,
+ remove: 2
+ }
+
+ def self.issuable_attrs
+ %i(issue merge_request).freeze
+ end
+
+ def issuable
+ issue || merge_request
+ end
+end
diff --git a/app/services/boards/issues/list_service.rb b/app/services/boards/issues/list_service.rb
index fa86531018c..140420a32bd 100644
--- a/app/services/boards/issues/list_service.rb
+++ b/app/services/boards/issues/list_service.rb
@@ -45,6 +45,12 @@ module Boards
# rubocop: enable CodeReuse/ActiveRecord
def filter(issues)
+ # when grouping board issues by epics (used in board swimlanes)
+ # we need to get all issues in the board
+ # TODO: ignore hidden columns -
+ # https://gitlab.com/gitlab-org/gitlab/-/issues/233870
+ return issues if params[:all_lists]
+
issues = without_board_labels(issues) unless list&.movable? || list&.closed?
issues = with_list_label(issues) if list&.label?
issues
@@ -87,6 +93,8 @@ module Boards
end
def set_state
+ return if params[:all_lists]
+
params[:state] = list && list.closed? ? 'closed' : 'opened'
end
diff --git a/app/services/submit_usage_ping_service.rb b/app/services/submit_usage_ping_service.rb
index 2846dd3a6fe..357a3fd7b7a 100644
--- a/app/services/submit_usage_ping_service.rb
+++ b/app/services/submit_usage_ping_service.rb
@@ -1,7 +1,8 @@
# frozen_string_literal: true
class SubmitUsagePingService
- URL = 'https://version.gitlab.com/usage_data'
+ PRODUCTION_URL = 'https://version.gitlab.com/usage_data'
+ STAGING_URL = 'https://gitlab-services-version-gitlab-com-staging.gs-staging.gitlab.org/usage_data'
METRICS = %w[leader_issues instance_issues percentage_issues leader_notes instance_notes
percentage_notes leader_milestones instance_milestones percentage_milestones
@@ -23,7 +24,7 @@ class SubmitUsagePingService
raise SubmissionError.new('Usage data is blank') if payload.blank?
response = Gitlab::HTTP.post(
- URL,
+ url,
body: payload,
allow_local_requests: true,
headers: { 'Content-type' => 'application/json' }
@@ -45,4 +46,13 @@ class SubmitUsagePingService
metrics.slice(*METRICS)
)
end
+
+ # See https://gitlab.com/gitlab-org/gitlab/-/issues/233615 for details
+ def url
+ if Rails.env.production?
+ PRODUCTION_URL
+ else
+ STAGING_URL
+ end
+ end
end
diff --git a/app/views/projects/merge_requests/_how_to_merge.html.haml b/app/views/projects/merge_requests/_how_to_merge.html.haml
index a2da0e707d3..df81e608c3e 100644
--- a/app/views/projects/merge_requests/_how_to_merge.html.haml
+++ b/app/views/projects/merge_requests/_how_to_merge.html.haml
@@ -32,12 +32,12 @@
- if @merge_request.for_fork?
:preserve
git fetch origin
- git checkout "origin/#{h @merge_request.target_branch}"
+ git checkout "#{h @merge_request.target_branch}"
git merge --no-ff "#{h @merge_request.source_project_path}-#{h @merge_request.source_branch}"
- else
:preserve
git fetch origin
- git checkout "origin/#{h @merge_request.target_branch}"
+ git checkout "#{h @merge_request.target_branch}"
git merge --no-ff "#{h @merge_request.source_branch}"
%p
%strong Step 4.