diff --git a/app/controllers/projects/merge_requests_controller.rb b/app/controllers/projects/merge_requests_controller.rb index 0c7a44274e39a51327f83a298b411a09824f7820..baaa3c7ba0b3a14a908c72d27404b07a33cb0048 100644 --- a/app/controllers/projects/merge_requests_controller.rb +++ b/app/controllers/projects/merge_requests_controller.rb @@ -76,7 +76,6 @@ class Projects::MergeRequestsController < Projects::ApplicationController @merge_request.author = current_user @target_branches ||= [] if @merge_request.save - @merge_request.reload_code redirect_to [@merge_request.target_project, @merge_request], notice: 'Merge request was successfully created.' else @source_project = @merge_request.source_project diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 076463f6c409c5581e074ad58d4bc51a88c7bfcc..c53b24b817d319c3bda9ec0b1ccf0990b21cd180 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -30,7 +30,9 @@ class MergeRequest < ActiveRecord::Base belongs_to :target_project, foreign_key: :target_project_id, class_name: "Project" belongs_to :source_project, foreign_key: :source_project_id, class_name: "Project" + has_one :merge_request_diff, dependent: :destroy + after_create :create_merge_request_diff delegate :commits, :diffs, :last_commit, :last_commit_short_sha, to: :merge_request_diff, prefix: nil diff --git a/app/observers/merge_request_observer.rb b/app/observers/merge_request_observer.rb index 9a3e90d83e871f708b0ce5e8e6667a5ada03803f..0ac555fce7c640b57da32f3dbd90608cbf060cdc 100644 --- a/app/observers/merge_request_observer.rb +++ b/app/observers/merge_request_observer.rb @@ -6,7 +6,6 @@ class MergeRequestObserver < ActivityObserver create_event(merge_request, Event.determine_action(merge_request)) end - merge_request.create_merge_request_diff notification.new_merge_request(merge_request, current_user) merge_request.create_cross_references!(merge_request.project, current_user) execute_hooks(merge_request) diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb index 3f4bec895bf981f94260e4285b797dce17f31f1a..4bd57f516dbab4b76ecd642525f26619346fcd32 100644 --- a/lib/api/merge_requests.rb +++ b/lib/api/merge_requests.rb @@ -88,7 +88,6 @@ module API end if merge_request.save - merge_request.reload_code present merge_request, with: Entities::MergeRequest else handle_merge_request_errors! merge_request.errors