summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Lopez <james@gitlab.com>2018-05-21 08:29:12 +0000
committerJames Lopez <james@gitlab.com>2018-05-21 08:29:12 +0000
commiteabd1ba52e9412652fe52a24e22594180d8f2e01 (patch)
tree3febd2056e5f164fd596dd3a3a62931889c9a9fe
parent2555d6c1a2e5470614a3ef872a13ca60ffeed081 (diff)
parent47c7771e38b5959c7fc4943f8a99aea344a2ef4d (diff)
downloadgitlab-ce-eabd1ba52e9412652fe52a24e22594180d8f2e01.tar.gz
Merge branch '10-7-stable-patch-4' into '10-7-stable'
Prepare 10.7.4 release See merge request gitlab-org/gitlab-ce!19026
-rw-r--r--Gemfile2
-rw-r--r--Gemfile.lock4
-rw-r--r--changelogs/unreleased/xeodon-gitlab-ce-fix-45743-master-fix-gitaly-delete-refs.yml5
-rw-r--r--lib/gitlab/git/repository.rb2
-rw-r--r--spec/lib/gitlab/git/repository_spec.rb4
5 files changed, 13 insertions, 4 deletions
diff --git a/Gemfile b/Gemfile
index e61dfd8e470..4d366bb8850 100644
--- a/Gemfile
+++ b/Gemfile
@@ -421,7 +421,7 @@ end
# Gitaly GRPC client
gem 'gitaly-proto', '~> 0.96.0', require: 'gitaly'
-gem 'grpc', '~> 1.10.0'
+gem 'grpc', '~> 1.11.0'
# Locked until https://github.com/google/protobuf/issues/4210 is closed
gem 'google-protobuf', '= 3.5.1'
diff --git a/Gemfile.lock b/Gemfile.lock
index 31b0dc9c0e6..3c4d30c3069 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -374,7 +374,7 @@ GEM
rake
grape_logging (1.7.0)
grape
- grpc (1.10.0)
+ grpc (1.11.0)
google-protobuf (~> 3.1)
googleapis-common-protos-types (~> 1.0.0)
googleauth (>= 0.5.1, < 0.7)
@@ -1074,7 +1074,7 @@ DEPENDENCIES
grape-entity (~> 0.6.0)
grape-route-helpers (~> 2.1.0)
grape_logging (~> 1.7)
- grpc (~> 1.10.0)
+ grpc (~> 1.11.0)
haml_lint (~> 0.26.0)
hamlit (~> 2.6.1)
hashie-forbidden_attributes
diff --git a/changelogs/unreleased/xeodon-gitlab-ce-fix-45743-master-fix-gitaly-delete-refs.yml b/changelogs/unreleased/xeodon-gitlab-ce-fix-45743-master-fix-gitaly-delete-refs.yml
new file mode 100644
index 00000000000..94da4d74300
--- /dev/null
+++ b/changelogs/unreleased/xeodon-gitlab-ce-fix-45743-master-fix-gitaly-delete-refs.yml
@@ -0,0 +1,5 @@
+---
+title: Fix error when deleting an empty list of refs
+merge_request:
+author:
+type: fixed
diff --git a/lib/gitlab/git/repository.rb b/lib/gitlab/git/repository.rb
index 5af26fb95ed..3ab6c05b382 100644
--- a/lib/gitlab/git/repository.rb
+++ b/lib/gitlab/git/repository.rb
@@ -2339,7 +2339,7 @@ module Gitlab
end
def gitaly_delete_refs(*ref_names)
- gitaly_ref_client.delete_refs(refs: ref_names)
+ gitaly_ref_client.delete_refs(refs: ref_names) if ref_names.any?
end
def rugged_remove_remote(remote_name)
diff --git a/spec/lib/gitlab/git/repository_spec.rb b/spec/lib/gitlab/git/repository_spec.rb
index 62fcbc041b3..9f9797cc728 100644
--- a/spec/lib/gitlab/git/repository_spec.rb
+++ b/spec/lib/gitlab/git/repository_spec.rb
@@ -600,6 +600,10 @@ describe Gitlab::Git::Repository, seed_helper: true do
end
end
+ it 'does not fail when deleting an empty list of refs' do
+ expect { repo.delete_refs(*[]) }.not_to raise_error
+ end
+
it 'raises an error if it failed' do
expect { repo.delete_refs('refs\heads\fix') }.to raise_error(Gitlab::Git::Repository::GitError)
end