diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-01-11 00:16:38 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-01-11 00:16:38 +0300 |
commit | fbb529e46cfd031fae6f6f650d81bef331ef8fcd (patch) | |
tree | 5948276887c29da4975caf80fb441a9dbba7c0f1 /lib/gitlab/merge_requests | |
parent | 20c68317f8d350b9e2f5004730dd27e6a7d406ce (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab/merge_requests')
-rw-r--r-- | lib/gitlab/merge_requests/commit_message_generator.rb | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/gitlab/merge_requests/commit_message_generator.rb b/lib/gitlab/merge_requests/commit_message_generator.rb index b388660ad3e..0515c17fe5d 100644 --- a/lib/gitlab/merge_requests/commit_message_generator.rb +++ b/lib/gitlab/merge_requests/commit_message_generator.rb @@ -65,9 +65,13 @@ module Gitlab end names_of_empty_variables = values.filter_map { |name, value| name if value.blank? } - # Remove placeholders that correspond to empty values and are the only word in a line - # along with all whitespace characters preceding them. - message = message.gsub(/[\n\r]+#{Regexp.union(names_of_empty_variables)}$/, '') if names_of_empty_variables.present? + # Remove lines that contain empty variable placeholder and nothing else. + if names_of_empty_variables.present? + # If there is blank line or EOF after it, remove blank line before it as well. + message = message.gsub(/\n\n#{Regexp.union(names_of_empty_variables)}(\n\n|\Z)/, '\1') + # Otherwise, remove only the line it is in. + message = message.gsub(/^#{Regexp.union(names_of_empty_variables)}\n/, '') + end # Substitute all variables with their values. message = message.gsub(Regexp.union(values.keys), values) if values.present? |