summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md12
-rw-r--r--GITALY_SERVER_VERSION2
-rw-r--r--VERSION2
-rw-r--r--db/migrate/20200820105408_add_index_to_container_scanning_findings.rb2
-rw-r--r--lib/gitlab/git/pre_receive_error.rb10
-rw-r--r--lib/gitlab/gitaly_client/operation_service.rb2
-rw-r--r--spec/lib/gitlab/git/pre_receive_error_spec.rb16
-rw-r--r--spec/services/merge_requests/ff_merge_service_spec.rb2
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
diff --git a/VERSION b/VERSION
index 7dfdf979eab..24a9ec7aa95 100644
--- a/VERSION
+++ b/VERSION
@@ -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(