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
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-01-18 22:00:14 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-01-18 22:00:14 +0300
commit05f0ebba3a2c8ddf39e436f412dc2ab5bf1353b2 (patch)
tree11d0f2a6ec31c7793c184106cedc2ded3d9a2cc5 /app/services/notes
parentec73467c23693d0db63a797d10194da9e72a74af (diff)
Add latest changes from gitlab-org/gitlab@15-8-stable-eev15.8.0-rc42
Diffstat (limited to 'app/services/notes')
-rw-r--r--app/services/notes/build_service.rb2
-rw-r--r--app/services/notes/create_service.rb22
2 files changed, 18 insertions, 6 deletions
diff --git a/app/services/notes/build_service.rb b/app/services/notes/build_service.rb
index cc5c81cf280..e6766273441 100644
--- a/app/services/notes/build_service.rb
+++ b/app/services/notes/build_service.rb
@@ -35,7 +35,7 @@ module Notes
note.author = current_user
parent_confidential = discussion&.confidential?
- can_set_confidential = can?(current_user, :mark_note_as_confidential, note)
+ can_set_confidential = can?(current_user, :mark_note_as_internal, note)
return discussion_not_found if parent_confidential && !can_set_confidential
diff --git a/app/services/notes/create_service.rb b/app/services/notes/create_service.rb
index 555d60dc291..5f05b613288 100644
--- a/app/services/notes/create_service.rb
+++ b/app/services/notes/create_service.rb
@@ -4,7 +4,7 @@ module Notes
class CreateService < ::Notes::BaseService
include IncidentManagement::UsageData
- def execute(skip_capture_diff_note_position: false)
+ def execute(skip_capture_diff_note_position: false, skip_merge_status_trigger: false)
note = Notes::BuildService.new(project, current_user, params.except(:merge_request_diff_head_sha)).execute
# n+1: https://gitlab.com/gitlab-org/gitlab-foss/issues/37440
@@ -34,7 +34,13 @@ module Notes
end
end
- when_saved(note, skip_capture_diff_note_position: skip_capture_diff_note_position) if note_saved
+ if note_saved
+ when_saved(
+ note,
+ skip_capture_diff_note_position: skip_capture_diff_note_position,
+ skip_merge_status_trigger: skip_merge_status_trigger
+ )
+ end
end
note
@@ -72,15 +78,21 @@ module Notes
end
end
- def when_saved(note, skip_capture_diff_note_position: false)
+ def when_saved(note, skip_capture_diff_note_position: false, skip_merge_status_trigger: false)
todo_service.new_note(note, current_user)
clear_noteable_diffs_cache(note)
Suggestions::CreateService.new(note).execute
increment_usage_counter(note)
track_event(note, current_user)
- if !skip_capture_diff_note_position && note.for_merge_request? && note.diff_note? && note.start_of_discussion?
- Discussions::CaptureDiffNotePositionService.new(note.noteable, note.diff_file&.paths).execute(note.discussion)
+ if note.for_merge_request? && note.start_of_discussion?
+ if !skip_capture_diff_note_position && note.diff_note?
+ Discussions::CaptureDiffNotePositionService.new(note.noteable, note.diff_file&.paths).execute(note.discussion)
+ end
+
+ if !skip_merge_status_trigger && note.to_be_resolved?
+ GraphqlTriggers.merge_request_merge_status_updated(note.noteable)
+ end
end
end