diff options
-rw-r--r-- | CHANGELOG.md | 12 | ||||
-rw-r--r-- | GITALY_SERVER_VERSION | 2 | ||||
-rw-r--r-- | VERSION | 2 | ||||
-rw-r--r-- | db/migrate/20200820105408_add_index_to_container_scanning_findings.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/git/pre_receive_error.rb | 10 | ||||
-rw-r--r-- | lib/gitlab/gitaly_client/operation_service.rb | 2 | ||||
-rw-r--r-- | spec/lib/gitlab/git/pre_receive_error_spec.rb | 16 | ||||
-rw-r--r-- | spec/services/merge_requests/ff_merge_service_spec.rb | 2 |
8 files changed, 35 insertions, 13 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index e81f19271ce..7d8186407f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,18 @@ documentation](doc/development/changelog.md) for instructions on adding your own entry. +## 13.4.4 (2020-10-15) + +### Fixed (2 changes) + +- Fix rollback portion of migration that adds temporary index for container scanning findings. !44593 +- Improve merge error when pre-receive hooks fail in fast-forward merge. !44843 + +### Other (1 change) + +- Revert 42465 and 42343: Expanded collapsed diff files. !43361 + + ## 13.4.3 (2020-10-06) ### Fixed (3 changes) diff --git a/GITALY_SERVER_VERSION b/GITALY_SERVER_VERSION index 7dfdf979eab..24a9ec7aa95 100644 --- a/GITALY_SERVER_VERSION +++ b/GITALY_SERVER_VERSION @@ -1 +1 @@ -13.4.3
\ No newline at end of file +13.4.4
\ No newline at end of file @@ -1 +1 @@ -13.4.3
\ No newline at end of file +13.4.4
\ No newline at end of file diff --git a/db/migrate/20200820105408_add_index_to_container_scanning_findings.rb b/db/migrate/20200820105408_add_index_to_container_scanning_findings.rb index 834e11e3d6e..dd474b57602 100644 --- a/db/migrate/20200820105408_add_index_to_container_scanning_findings.rb +++ b/db/migrate/20200820105408_add_index_to_container_scanning_findings.rb @@ -15,6 +15,6 @@ class AddIndexToContainerScanningFindings < ActiveRecord::Migration[6.0] end def down - remove_concurrent_index_by_name(:project_registry, INDEX_NAME) + remove_concurrent_index_by_name(:vulnerability_occurrences, INDEX_NAME) end end diff --git a/lib/gitlab/git/pre_receive_error.rb b/lib/gitlab/git/pre_receive_error.rb index 7a6f27179f0..b84ac656927 100644 --- a/lib/gitlab/git/pre_receive_error.rb +++ b/lib/gitlab/git/pre_receive_error.rb @@ -18,13 +18,15 @@ module Gitlab attr_reader :raw_message - def initialize(message = '', user_message = '') + def initialize(message = '', fallback_message: '') @raw_message = message - if user_message.present? - super(sanitize(user_message)) + sanitized_msg = sanitize(message) + + if sanitized_msg.present? + super(sanitized_msg) else - super(sanitize(message)) + super(fallback_message) end end diff --git a/lib/gitlab/gitaly_client/operation_service.rb b/lib/gitlab/gitaly_client/operation_service.rb index 513063c60d2..786eb3ca4ae 100644 --- a/lib/gitlab/gitaly_client/operation_service.rb +++ b/lib/gitlab/gitaly_client/operation_service.rb @@ -179,7 +179,7 @@ module Gitlab ) if response.pre_receive_error.present? - raise Gitlab::Git::PreReceiveError.new(response.pre_receive_error, "GL-HOOK-ERR: pre-receive hook failed.") + raise Gitlab::Git::PreReceiveError.new(response.pre_receive_error, fallback_message: "pre-receive hook failed.") end Gitlab::Git::OperationService::BranchUpdate.from_gitaly(response.branch_update) diff --git a/spec/lib/gitlab/git/pre_receive_error_spec.rb b/spec/lib/gitlab/git/pre_receive_error_spec.rb index 2ad27361c80..1a10ff56266 100644 --- a/spec/lib/gitlab/git/pre_receive_error_spec.rb +++ b/spec/lib/gitlab/git/pre_receive_error_spec.rb @@ -21,13 +21,21 @@ RSpec.describe Gitlab::Git::PreReceiveError do expect(ex.raw_message).to eq(raw_message) end - it 'sanitizes the user message' do - raw_message = 'Raw message' - ex = described_class.new(raw_message, "#{prefix} User message") + it 'prefers the original message over the fallback' do + raw_message = "#{prefix} Hello,\nworld!" + ex = described_class.new(raw_message, fallback_message: "User message") + expect(ex.message).to eq('Hello,') expect(ex.raw_message).to eq(raw_message) - expect(ex.message).to eq('User message') end end + + it 'uses the fallback message' do + raw_message = 'Hello\n' + ex = described_class.new(raw_message, fallback_message: "User message") + + expect(ex.raw_message).to eq(raw_message) + expect(ex.message).to eq('User message') + end end end diff --git a/spec/services/merge_requests/ff_merge_service_spec.rb b/spec/services/merge_requests/ff_merge_service_spec.rb index 55856deeaca..5c44af87470 100644 --- a/spec/services/merge_requests/ff_merge_service_spec.rb +++ b/spec/services/merge_requests/ff_merge_service_spec.rb @@ -116,7 +116,7 @@ RSpec.describe MergeRequests::FfMergeService do error_message = 'error message' raw_message = 'The truth is out there' - pre_receive_error = Gitlab::Git::PreReceiveError.new(raw_message, "GitLab: #{error_message}") + pre_receive_error = Gitlab::Git::PreReceiveError.new(raw_message, fallback_message: error_message) allow(service).to receive(:repository).and_raise(pre_receive_error) allow(service).to receive(:execute_hooks) expect(Gitlab::ErrorTracking).to receive(:track_exception).with( |