Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2018-03-02 11:04:12 +0300
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2018-03-02 11:04:12 +0300
commitdf1ac44e7d7554e80861a314018c47c0a97ba8da (patch)
tree4b82151b478d69838021405fc1f3f87dc913a72d
parentec28f8b8452b1c773814774d6ac49c4347342f91 (diff)
parent816adc4d3f992df8fd156ef14d37da8f718170d3 (diff)
Merge branch 'feature/add-support-for-all-field-to-find-count-commits' into 'master'
Add support for all field to {Find,Count}Commits RPCs See merge request gitlab-org/gitaly!611
-rw-r--r--CHANGELOG.md7
-rw-r--r--internal/service/commit/count_commits.go12
-rw-r--r--internal/service/commit/count_commits_test.go51
-rw-r--r--internal/service/commit/find_commits.go2
-rw-r--r--internal/service/commit/find_commits_test.go9
-rw-r--r--internal/testhelper/testhelper.go9
-rw-r--r--ruby/Gemfile2
-rw-r--r--ruby/Gemfile.lock4
-rw-r--r--ruby/lib/gitaly_server/commit_service.rb3
-rw-r--r--ruby/vendor/gitlab_git/REVISION2
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/encoding_helper.rb6
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/blob.rb6
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/commit.rb22
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/hook.rb22
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/repository.rb127
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/tree.rb23
-rw-r--r--ruby/vendor/gitlab_git/lib/gitlab/git/wiki.rb11
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION2
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/commit.pb.go227
-rw-r--r--vendor/vendor.json10
20 files changed, 345 insertions, 212 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ea40aa197..e1958c992 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,12 @@
# Gitaly changelog
+UNRELEASED
+
+- Add support for all field to {Find,Count}Commits RPCs
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/611
+- Vendor gitlab_git at de454de9b10f
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/611
+
[v0.87.0](https://gitlab.com/gitlab-org/gitaly/tags/v0.87.0)
- Implement GetCommitSignatures RPC
diff --git a/internal/service/commit/count_commits.go b/internal/service/commit/count_commits.go
index f2aff4663..0abf85522 100644
--- a/internal/service/commit/count_commits.go
+++ b/internal/service/commit/count_commits.go
@@ -22,7 +22,13 @@ func (s *server) CountCommits(ctx context.Context, in *pb.CountCommitsRequest) (
return nil, status.Errorf(codes.InvalidArgument, "CountCommits: %v", err)
}
- cmdArgs := []string{"rev-list", "--count", string(in.GetRevision())}
+ cmdArgs := []string{"rev-list", "--count"}
+
+ if in.GetAll() {
+ cmdArgs = append(cmdArgs, "--all")
+ } else {
+ cmdArgs = append(cmdArgs, string(in.GetRevision()))
+ }
if before := in.GetBefore(); before != nil {
cmdArgs = append(cmdArgs, "--before="+timestampToRFC3339(before.Seconds))
@@ -68,8 +74,8 @@ func (s *server) CountCommits(ctx context.Context, in *pb.CountCommitsRequest) (
}
func validateCountCommitsRequest(in *pb.CountCommitsRequest) error {
- if len(in.GetRevision()) == 0 {
- return fmt.Errorf("empty Revision")
+ if len(in.GetRevision()) == 0 && !in.GetAll() {
+ return fmt.Errorf("empty Revision and false All")
}
return nil
diff --git a/internal/service/commit/count_commits_test.go b/internal/service/commit/count_commits_test.go
index 82bcf8483..64a4b40c1 100644
--- a/internal/service/commit/count_commits_test.go
+++ b/internal/service/commit/count_commits_test.go
@@ -22,49 +22,80 @@ func TestSuccessfulCountCommitsRequest(t *testing.T) {
client, conn := newCommitServiceClient(t, serverSocketPath)
defer conn.Close()
- testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ testRepo1, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ testRepo2, testRepo2Path, cleanupFn := testhelper.InitRepoWithWorktree(t)
defer cleanupFn()
+ committerName := "Scrooge McDuck"
+ committerEmail := "scrooge@mcduck.com"
+
+ for i := 0; i < 5; i++ {
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepo2Path,
+ "-c", fmt.Sprintf("user.name=%s", committerName),
+ "-c", fmt.Sprintf("user.email=%s", committerEmail),
+ "commit", "--allow-empty", "-m", "Empty commit")
+ }
+
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepo2Path, "checkout", "-b", "another-branch")
+
+ for i := 0; i < 3; i++ {
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepo2Path,
+ "-c", fmt.Sprintf("user.name=%s", committerName),
+ "-c", fmt.Sprintf("user.email=%s", committerEmail),
+ "commit", "--allow-empty", "-m", "Empty commit")
+ }
+
testCases := []struct {
+ repo *pb.Repository
revision, path []byte
+ all bool
before, after, desc string
maxCount int32
count int32
}{
{
desc: "revision only #1",
+ repo: testRepo1,
revision: []byte("1a0b36b3cdad1d2ee32457c102a8c0b7056fa863"),
count: 1,
},
{
desc: "revision only #2",
+ repo: testRepo1,
revision: []byte("6d394385cf567f80a8fd85055db1ab4c5295806f"),
count: 2,
},
{
desc: "revision only #3",
+ repo: testRepo1,
revision: []byte("e63f41fe459e62e1228fcef60d7189127aeba95a"),
count: 39,
},
{
desc: "revision + max-count",
+ repo: testRepo1,
revision: []byte("e63f41fe459e62e1228fcef60d7189127aeba95a"),
maxCount: 15,
count: 15,
},
{
desc: "non-existing revision",
+ repo: testRepo1,
revision: []byte("deadfacedeadfacedeadfacedeadfacedeadface"),
count: 0,
},
{
desc: "revision + before",
+ repo: testRepo1,
revision: []byte("e63f41fe459e62e1228fcef60d7189127aeba95a"),
before: "2015-12-07T11:54:28+01:00",
count: 26,
},
{
desc: "revision + before + after",
+ repo: testRepo1,
revision: []byte("e63f41fe459e62e1228fcef60d7189127aeba95a"),
before: "2015-12-07T11:54:28+01:00",
after: "2014-02-27T10:14:56+02:00",
@@ -72,20 +103,30 @@ func TestSuccessfulCountCommitsRequest(t *testing.T) {
},
{
desc: "revision + before + after + path",
+ repo: testRepo1,
revision: []byte("e63f41fe459e62e1228fcef60d7189127aeba95a"),
before: "2015-12-07T11:54:28+01:00",
after: "2014-02-27T10:14:56+02:00",
path: []byte("files"),
count: 12,
},
+ {
+ desc: "all refs #1",
+ repo: testRepo2,
+ all: true,
+ count: 8,
+ },
}
for _, testCase := range testCases {
t.Run(testCase.desc, func(t *testing.T) {
- request := &pb.CountCommitsRequest{
- Repository: testRepo,
- Revision: testCase.revision,
+ request := &pb.CountCommitsRequest{Repository: testCase.repo}
+
+ if testCase.all {
+ request.All = true
+ } else {
+ request.Revision = testCase.revision
}
if testCase.before != "" {
@@ -139,7 +180,7 @@ func TestFailedCountCommitsRequestDueToValidationError(t *testing.T) {
rpcRequests := []pb.CountCommitsRequest{
{Repository: &pb.Repository{StorageName: "fake", RelativePath: "path"}, Revision: revision}, // Repository doesn't exist
{Repository: nil, Revision: revision}, // Repository is nil
- {Repository: testRepo, Revision: nil}, // Revision is empty
+ {Repository: testRepo, Revision: nil, All: false}, // Revision is empty and All is false
}
for _, rpcRequest := range rpcRequests {
diff --git a/internal/service/commit/find_commits.go b/internal/service/commit/find_commits.go
index 3060aaf52..0e9429a65 100644
--- a/internal/service/commit/find_commits.go
+++ b/internal/service/commit/find_commits.go
@@ -14,7 +14,7 @@ func (s *server) FindCommits(req *pb.FindCommitsRequest, stream pb.CommitService
// Use Gitaly's default branch lookup function because that is already
// migrated.
- if revision := req.Revision; len(revision) == 0 {
+ if revision := req.Revision; len(revision) == 0 && !req.GetAll() {
var err error
req.Revision, err = defaultBranchName(ctx, req.Repository)
if err != nil {
diff --git a/internal/service/commit/find_commits_test.go b/internal/service/commit/find_commits_test.go
index 740935502..e520fcfd6 100644
--- a/internal/service/commit/find_commits_test.go
+++ b/internal/service/commit/find_commits_test.go
@@ -235,6 +235,15 @@ func TestSuccessfulFindCommitsRequest(t *testing.T) {
"913c66a37b4a45b9769037c55c2d238bd0942d2e",
},
},
+ {
+ desc: "all refs",
+ request: &pb.FindCommitsRequest{
+ Repository: testRepo,
+ All: true,
+ Limit: 90,
+ },
+ minCommits: 90,
+ },
}
for _, tc := range testCases {
diff --git a/internal/testhelper/testhelper.go b/internal/testhelper/testhelper.go
index 980d1040f..0b1388566 100644
--- a/internal/testhelper/testhelper.go
+++ b/internal/testhelper/testhelper.go
@@ -347,6 +347,11 @@ func InitBareRepo(t *testing.T) (*pb.Repository, string, func()) {
return initRepo(t, true)
}
+// InitRepoWithWorktree creates a new repository with a worktree
+func InitRepoWithWorktree(t *testing.T) (*pb.Repository, string, func()) {
+ return initRepo(t, false)
+}
+
func initRepo(t *testing.T, bare bool) (*pb.Repository, string, func()) {
ConfigureTestStorage()
@@ -358,6 +363,10 @@ func initRepo(t *testing.T, bare bool) (*pb.Repository, string, func()) {
MustRunCommand(t, nil, "git", append(args, repoPath)...)
+ if !bare {
+ repo.RelativePath = path.Join(repo.RelativePath, ".git")
+ }
+
return repo, repoPath, func() { os.RemoveAll(repoPath) }
}
diff --git a/ruby/Gemfile b/ruby/Gemfile
index 51ab3096f..c431c7149 100644
--- a/ruby/Gemfile
+++ b/ruby/Gemfile
@@ -2,7 +2,7 @@ source 'https://rubygems.org'
gem 'github-linguist', '~> 4.7.0', require: 'linguist'
gem 'gitlab-markup', '~> 1.6.2'
-gem 'gitaly-proto', '~> 0.87.0', require: 'gitaly'
+gem 'gitaly-proto', '~> 0.88.0', require: 'gitaly'
gem 'activesupport', '~> 5.0.2'
gem 'rdoc', '~> 4.2'
gem 'gollum-lib', '~> 4.2', require: false
diff --git a/ruby/Gemfile.lock b/ruby/Gemfile.lock
index 8a0f17680..d31e96676 100644
--- a/ruby/Gemfile.lock
+++ b/ruby/Gemfile.lock
@@ -17,7 +17,7 @@ GEM
multipart-post (>= 1.2, < 3)
gemojione (3.3.0)
json
- gitaly-proto (0.87.0)
+ gitaly-proto (0.88.0)
google-protobuf (~> 3.1)
grpc (~> 1.0)
github-linguist (4.7.6)
@@ -141,7 +141,7 @@ PLATFORMS
DEPENDENCIES
activesupport (~> 5.0.2)
- gitaly-proto (~> 0.87.0)
+ gitaly-proto (~> 0.88.0)
github-linguist (~> 4.7.0)
gitlab-markup (~> 1.6.2)
gitlab-styles (~> 2.0.0)
diff --git a/ruby/lib/gitaly_server/commit_service.rb b/ruby/lib/gitaly_server/commit_service.rb
index 41fbfed80..b67dd6686 100644
--- a/ruby/lib/gitaly_server/commit_service.rb
+++ b/ruby/lib/gitaly_server/commit_service.rb
@@ -53,7 +53,8 @@ module GitalyServer
follow: request.follow,
skip_merges: request.skip_merges,
disable_walk: request.disable_walk,
- offset: request.offset
+ offset: request.offset,
+ all: request.all
}
options[:path] = request.paths unless request.paths.empty?
diff --git a/ruby/vendor/gitlab_git/REVISION b/ruby/vendor/gitlab_git/REVISION
index 74655df1d..cc07c4f2a 100644
--- a/ruby/vendor/gitlab_git/REVISION
+++ b/ruby/vendor/gitlab_git/REVISION
@@ -1 +1 @@
-7095c2bf4064911568ae1574752adbc066c5347d
+de454de9b10f0dd534884c8ffeabe3e534993349
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/encoding_helper.rb b/ruby/vendor/gitlab_git/lib/gitlab/encoding_helper.rb
index c0edcabc6..6659efa09 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/encoding_helper.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/encoding_helper.rb
@@ -28,9 +28,9 @@ module Gitlab
# encode and clean the bad chars
message.replace clean(message)
- rescue ArgumentError
- return nil
- rescue
+ rescue ArgumentError => e
+ return unless e.message.include?('unknown encoding name')
+
encoding = detect ? detect[:encoding] : "unknown"
"--broken encoding: #{encoding}"
end
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/blob.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/blob.rb
index 4828301db..b2fca2c16 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/blob.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/blob.rb
@@ -53,11 +53,7 @@ module Gitlab
def batch(repository, blob_references, blob_size_limit: MAX_DATA_DISPLAY_SIZE)
Gitlab::GitalyClient.migrate(:list_blobs_by_sha_path) do |is_enabled|
if is_enabled
- Gitlab::GitalyClient.allow_n_plus_1_calls do
- blob_references.map do |sha, path|
- find_by_gitaly(repository, sha, path, limit: blob_size_limit)
- end
- end
+ repository.gitaly_blob_client.get_blobs(blob_references, blob_size_limit).to_a
else
blob_references.map do |sha, path|
find_by_rugged(repository, sha, path, limit: blob_size_limit)
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/commit.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/commit.rb
index 768617e2c..ae27a138b 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/commit.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/commit.rb
@@ -402,15 +402,6 @@ module Gitlab
end
end
- # Get a collection of Rugged::Reference objects for this commit.
- #
- # Ex.
- # commit.ref(repo)
- #
- def refs(repo)
- repo.refs_hash[id]
- end
-
# Get ref names collection
#
# Ex.
@@ -418,7 +409,7 @@ module Gitlab
#
def ref_names(repo)
refs(repo).map do |ref|
- ref.name.sub(%r{^refs/(heads|remotes|tags)/}, "")
+ ref.sub(%r{^refs/(heads|remotes|tags)/}, "")
end
end
@@ -517,7 +508,7 @@ module Gitlab
@committed_date = Time.at(commit.committer.date.seconds).utc
@committer_name = commit.committer.name.dup
@committer_email = commit.committer.email.dup
- @parent_ids = commit.parent_ids
+ @parent_ids = Array(commit.parent_ids)
end
def serialize_keys
@@ -553,6 +544,15 @@ module Gitlab
date: Google::Protobuf::Timestamp.new(seconds: author_or_committer[:time].to_i)
)
end
+
+ # Get a collection of Gitlab::Git::Ref objects for this commit.
+ #
+ # Ex.
+ # commit.ref(repo)
+ #
+ def refs(repo)
+ repo.refs_hash[id]
+ end
end
end
end
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/hook.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/hook.rb
index e29a1f7af..24f027d8d 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/hook.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/hook.rb
@@ -82,14 +82,20 @@ module Gitlab
end
def call_update_hook(gl_id, gl_username, oldrev, newrev, ref)
- Dir.chdir(repo_path) do
- env = {
- 'GL_ID' => gl_id,
- 'GL_USERNAME' => gl_username
- }
- stdout, stderr, status = Open3.capture3(env, path, ref, oldrev, newrev)
- [status.success?, (stderr.presence || stdout).gsub(/\R/, "<br>").html_safe]
- end
+ env = {
+ 'GL_ID' => gl_id,
+ 'GL_USERNAME' => gl_username,
+ 'PWD' => repo_path
+ }
+
+ options = {
+ chdir: repo_path
+ }
+
+ args = [ref, oldrev, newrev]
+
+ stdout, stderr, status = Open3.capture3(env, path, *args, options)
+ [status.success?, (stderr.presence || stdout).gsub(/\R/, "<br>").html_safe]
end
def retrieve_error_message(stderr, stdout)
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/repository.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/repository.rb
index d7510061d..1c9649609 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/repository.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/repository.rb
@@ -467,7 +467,8 @@ module Gitlab
follow: false,
skip_merges: false,
after: nil,
- before: nil
+ before: nil,
+ all: false
}
options = default_options.merge(options)
@@ -478,8 +479,9 @@ module Gitlab
raise ArgumentError.new("invalid Repository#log limit: #{limit.inspect}")
end
+ # TODO support options[:all] in Gitaly https://gitlab.com/gitlab-org/gitaly/issues/1049
gitaly_migrate(:find_commits) do |is_enabled|
- if is_enabled
+ if is_enabled && !options[:all]
gitaly_commit_client.find_commits(options)
else
raw_log(options).map { |c| Commit.decorate(self, c) }
@@ -489,13 +491,16 @@ module Gitlab
# Used in gitaly-ruby
def raw_log(options)
- actual_ref = options[:ref] || root_ref
- begin
- sha = sha_from_ref(actual_ref)
- rescue Rugged::OdbError, Rugged::InvalidError, Rugged::ReferenceError
- # Return an empty array if the ref wasn't found
- return []
- end
+ sha =
+ unless options[:all]
+ actual_ref = options[:ref] || root_ref
+ begin
+ sha_from_ref(actual_ref)
+ rescue Rugged::OdbError, Rugged::InvalidError, Rugged::ReferenceError
+ # Return an empty array if the ref wasn't found
+ return []
+ end
+ end
log_by_shell(sha, options)
end
@@ -503,8 +508,9 @@ module Gitlab
def count_commits(options)
count_commits_options = process_count_commits_options(options)
+ # TODO add support for options[:all] in Gitaly https://gitlab.com/gitlab-org/gitaly/issues/1050
gitaly_migrate(:count_commits) do |is_enabled|
- if is_enabled
+ if is_enabled && !options[:all]
count_commits_by_gitaly(count_commits_options)
else
count_commits_by_shelling_out(count_commits_options)
@@ -631,21 +637,18 @@ module Gitlab
end
end
- # Get refs hash which key is SHA1
- # and value is a Rugged::Reference
+ # Get refs hash which key is is the commit id
+ # and value is a Gitlab::Git::Tag or Gitlab::Git::Branch
+ # Note that both inherit from Gitlab::Git::Ref
def refs_hash
- # Initialize only when first call
- if @refs_hash.nil?
- @refs_hash = Hash.new { |h, k| h[k] = [] }
-
- rugged.references.each do |r|
- # Symbolic/remote references may not have an OID; skip over them
- target_oid = r.target.try(:oid)
- if target_oid
- sha = rev_parse_target(target_oid).oid
- @refs_hash[sha] << r
- end
- end
+ return @refs_hash if @refs_hash
+
+ @refs_hash = Hash.new { |h, k| h[k] = [] }
+
+ (tags + branches).each do |ref|
+ next unless ref.target && ref.name
+
+ @refs_hash[ref.dereferenced_target.id] << ref.name
end
@refs_hash
@@ -1237,7 +1240,13 @@ module Gitlab
end
def squash_in_progress?(squash_id)
- fresh_worktree?(worktree_path(SQUASH_WORKTREE_PREFIX, squash_id))
+ gitaly_migrate(:squash_in_progress) do |is_enabled|
+ if is_enabled
+ gitaly_repository_client.squash_in_progress?(squash_id)
+ else
+ fresh_worktree?(worktree_path(SQUASH_WORKTREE_PREFIX, squash_id))
+ end
+ end
end
def push_remote_branches(remote_name, branch_names, forced: true)
@@ -1352,7 +1361,7 @@ module Gitlab
if is_enabled
gitaly_ref_client.branch_names_contains_sha(sha)
else
- refs_contains_sha(:branch, sha)
+ refs_contains_sha('refs/heads/', sha)
end
end
end
@@ -1362,7 +1371,7 @@ module Gitlab
if is_enabled
gitaly_ref_client.tag_names_contains_sha(sha)
else
- refs_contains_sha(:tag, sha)
+ refs_contains_sha('refs/tags/', sha)
end
end
end
@@ -1461,19 +1470,25 @@ module Gitlab
end
end
- def refs_contains_sha(ref_type, sha)
- args = %W(#{ref_type} --contains #{sha})
- names = run_git(args).first
+ def refs_contains_sha(refs_prefix, sha)
+ refs_prefix << "/" unless refs_prefix.ends_with?('/')
- return [] unless names.respond_to?(:split)
+ # By forcing the output to %(refname) each line wiht a ref will start with
+ # the ref prefix. All other lines can be discarded.
+ args = %W(for-each-ref --contains=#{sha} --format=%(refname) #{refs_prefix})
+ names, code = run_git(args)
- names = names.split("\n").map(&:strip)
+ return [] unless code.zero?
- names.each do |name|
- name.slice! '* '
+ refs = []
+ left_slice_count = refs_prefix.length
+ names.lines.each do |line|
+ next unless line.start_with?(refs_prefix)
+
+ refs << line.rstrip[left_slice_count..-1]
end
- names
+ refs
end
def rugged_write_config(full_path:)
@@ -1617,17 +1632,14 @@ module Gitlab
# Gitaly note: JV: Trying to get rid of the 'filter' option so we can implement this with 'git'.
def branches_filter(filter: nil, sort_by: nil)
- # n+1: https://gitlab.com/gitlab-org/gitlab-ce/issues/37464
- branches = Gitlab::GitalyClient.allow_n_plus_1_calls do
- rugged.branches.each(filter).map do |rugged_ref|
- begin
- target_commit = Gitlab::Git::Commit.find(self, rugged_ref.target)
- Gitlab::Git::Branch.new(self, rugged_ref.name, rugged_ref.target, target_commit)
- rescue Rugged::ReferenceError
- # Omit invalid branch
- end
- end.compact
- end
+ branches = rugged.branches.each(filter).map do |rugged_ref|
+ begin
+ target_commit = Gitlab::Git::Commit.find(self, rugged_ref.target)
+ Gitlab::Git::Branch.new(self, rugged_ref.name, rugged_ref.target, target_commit)
+ rescue Rugged::ReferenceError
+ # Omit invalid branch
+ end
+ end.compact
sort_branches(branches, sort_by)
end
@@ -1695,7 +1707,12 @@ module Gitlab
cmd << '--no-merges' if options[:skip_merges]
cmd << "--after=#{options[:after].iso8601}" if options[:after]
cmd << "--before=#{options[:before].iso8601}" if options[:before]
- cmd << sha
+
+ if options[:all]
+ cmd += %w[--all --reverse]
+ else
+ cmd << sha
+ end
# :path can be a string or an array of strings
if options[:path].present?
@@ -1912,7 +1929,16 @@ module Gitlab
cmd << "--before=#{options[:before].iso8601}" if options[:before]
cmd << "--max-count=#{options[:max_count]}" if options[:max_count]
cmd << "--left-right" if options[:left_right]
- cmd += %W[--count #{options[:ref]}]
+ cmd << '--count'
+
+ cmd << if options[:all]
+ '--all'
+ elsif options[:ref]
+ options[:ref]
+ else
+ raise ArgumentError, "Please specify a valid ref or set the 'all' attribute to true"
+ end
+
cmd += %W[-- #{options[:path]}] if options[:path].present?
cmd
end
@@ -2194,13 +2220,14 @@ module Gitlab
)
diff_range = "#{start_sha}...#{end_sha}"
diff_files = run_git!(
- %W(diff --name-only --diff-filter=a --binary #{diff_range})
+ %W(diff --name-only --diff-filter=ar --binary #{diff_range})
).chomp
with_worktree(squash_path, branch, sparse_checkout_files: diff_files, env: env) do
# Apply diff of the `diff_range` to the worktree
diff = run_git!(%W(diff --binary #{diff_range}))
- run_git!(%w(apply --index), chdir: squash_path, env: env) do |stdin|
+ run_git!(%w(apply --index --whitespace=nowarn), chdir: squash_path, env: env) do |stdin|
+ stdin.binmode
stdin.write(diff)
end
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/tree.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/tree.rb
index ba6058fd3..b6ceb542d 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/tree.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/tree.rb
@@ -14,14 +14,14 @@ module Gitlab
# Uses rugged for raw objects
#
# Gitaly migration: https://gitlab.com/gitlab-org/gitaly/issues/320
- def where(repository, sha, path = nil)
+ def where(repository, sha, path = nil, recursive = false)
path = nil if path == '' || path == '/'
Gitlab::GitalyClient.migrate(:tree_entries) do |is_enabled|
if is_enabled
- repository.gitaly_commit_client.tree_entries(repository, sha, path)
+ repository.gitaly_commit_client.tree_entries(repository, sha, path, recursive)
else
- tree_entries_from_rugged(repository, sha, path)
+ tree_entries_from_rugged(repository, sha, path, recursive)
end
end
end
@@ -57,7 +57,22 @@ module Gitlab
end
end
- def tree_entries_from_rugged(repository, sha, path)
+ def tree_entries_from_rugged(repository, sha, path, recursive)
+ current_path_entries = get_tree_entries_from_rugged(repository, sha, path)
+ ordered_entries = []
+
+ current_path_entries.each do |entry|
+ ordered_entries << entry
+
+ if recursive && entry.dir?
+ ordered_entries.concat(tree_entries_from_rugged(repository, sha, entry.path, true))
+ end
+ end
+
+ ordered_entries
+ end
+
+ def get_tree_entries_from_rugged(repository, sha, path)
commit = repository.lookup(sha)
root_tree = commit.tree
diff --git a/ruby/vendor/gitlab_git/lib/gitlab/git/wiki.rb b/ruby/vendor/gitlab_git/lib/gitlab/git/wiki.rb
index 39040d569..52b44b9b3 100644
--- a/ruby/vendor/gitlab_git/lib/gitlab/git/wiki.rb
+++ b/ruby/vendor/gitlab_git/lib/gitlab/git/wiki.rb
@@ -25,9 +25,8 @@ module Gitlab
@repository.exists?
end
- # Disabled because of https://gitlab.com/gitlab-org/gitaly/merge_requests/539
def write_page(name, format, content, commit_details)
- @repository.gitaly_migrate(:wiki_write_page, status: Gitlab::GitalyClient::MigrationStatus::DISABLED) do |is_enabled|
+ @repository.gitaly_migrate(:wiki_write_page) do |is_enabled|
if is_enabled
gitaly_write_page(name, format, content, commit_details)
gollum_wiki.clear_cache
@@ -48,9 +47,8 @@ module Gitlab
end
end
- # Disable because of https://gitlab.com/gitlab-org/gitlab-ce/issues/42094
def update_page(page_path, title, format, content, commit_details)
- @repository.gitaly_migrate(:wiki_update_page, status: Gitlab::GitalyClient::MigrationStatus::DISABLED) do |is_enabled|
+ @repository.gitaly_migrate(:wiki_update_page) do |is_enabled|
if is_enabled
gitaly_update_page(page_path, title, format, content, commit_details)
gollum_wiki.clear_cache
@@ -61,7 +59,7 @@ module Gitlab
end
def pages(limit: nil)
- @repository.gitaly_migrate(:wiki_get_all_pages, status: Gitlab::GitalyClient::MigrationStatus::DISABLED) do |is_enabled|
+ @repository.gitaly_migrate(:wiki_get_all_pages) do |is_enabled|
if is_enabled
gitaly_get_all_pages
else
@@ -70,9 +68,8 @@ module Gitlab
end
end
- # Disable because of https://gitlab.com/gitlab-org/gitlab-ce/issues/42039
def page(title:, version: nil, dir: nil)
- @repository.gitaly_migrate(:wiki_find_page, status: Gitlab::GitalyClient::MigrationStatus::DISABLED) do |is_enabled|
+ @repository.gitaly_migrate(:wiki_find_page) do |is_enabled|
if is_enabled
gitaly_find_page(title: title, version: version, dir: dir)
else
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
index 359ee08a7..fe6d01c1a 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/VERSION
@@ -1 +1 @@
-0.87.0
+0.88.0
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/commit.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/commit.pb.go
index 1ddd03322..443fe4e34 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/commit.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/commit.pb.go
@@ -350,6 +350,8 @@ type CountCommitsRequest struct {
Before *google_protobuf.Timestamp `protobuf:"bytes,4,opt,name=before" json:"before,omitempty"`
Path []byte `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"`
MaxCount int32 `protobuf:"varint,6,opt,name=max_count,json=maxCount" json:"max_count,omitempty"`
+ // all and revision are mutually exclusive
+ All bool `protobuf:"varint,7,opt,name=all" json:"all,omitempty"`
}
func (m *CountCommitsRequest) Reset() { *m = CountCommitsRequest{} }
@@ -399,6 +401,13 @@ func (m *CountCommitsRequest) GetMaxCount() int32 {
return 0
}
+func (m *CountCommitsRequest) GetAll() bool {
+ if m != nil {
+ return m.All
+ }
+ return false
+}
+
type CountCommitsResponse struct {
Count int32 `protobuf:"varint,1,opt,name=count" json:"count,omitempty"`
}
@@ -741,6 +750,8 @@ type FindCommitsRequest struct {
DisableWalk bool `protobuf:"varint,8,opt,name=disable_walk,json=disableWalk" json:"disable_walk,omitempty"`
After *google_protobuf.Timestamp `protobuf:"bytes,9,opt,name=after" json:"after,omitempty"`
Before *google_protobuf.Timestamp `protobuf:"bytes,10,opt,name=before" json:"before,omitempty"`
+ // all and revision are mutually exclusive
+ All bool `protobuf:"varint,11,opt,name=all" json:"all,omitempty"`
}
func (m *FindCommitsRequest) Reset() { *m = FindCommitsRequest{} }
@@ -818,6 +829,13 @@ func (m *FindCommitsRequest) GetBefore() *google_protobuf.Timestamp {
return nil
}
+func (m *FindCommitsRequest) GetAll() bool {
+ if m != nil {
+ return m.All
+ }
+ return false
+}
+
// A single 'page' of the result set
type FindCommitsResponse struct {
Commits []*GitCommit `protobuf:"bytes,1,rep,name=commits" json:"commits,omitempty"`
@@ -2249,108 +2267,109 @@ var _CommitService_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("commit.proto", fileDescriptor1) }
var fileDescriptor1 = []byte{
- // 1640 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xdd, 0x4e, 0x1b, 0x49,
- 0x16, 0xa6, 0x6d, 0x6c, 0xec, 0x83, 0x97, 0x98, 0xca, 0x9f, 0x69, 0x48, 0x20, 0x95, 0x4d, 0x96,
- 0x28, 0x2b, 0x07, 0x79, 0xb5, 0xab, 0xdd, 0xab, 0x15, 0x24, 0x86, 0x25, 0x0b, 0x71, 0xd4, 0x58,
- 0x8a, 0xb2, 0x37, 0x56, 0xe3, 0x2e, 0xdb, 0xb5, 0xb4, 0xdd, 0x4e, 0x77, 0x19, 0xf0, 0x5c, 0xcc,
- 0xfd, 0x48, 0xa3, 0xb9, 0x9f, 0x87, 0x98, 0x87, 0x98, 0x57, 0x98, 0xc7, 0x98, 0x47, 0x88, 0xe6,
- 0x62, 0x54, 0x3f, 0xdd, 0xd5, 0x6d, 0xb7, 0x61, 0x02, 0x72, 0x6e, 0xac, 0xae, 0x53, 0xa7, 0xea,
- 0x7c, 0xe7, 0xd4, 0xf9, 0x35, 0x94, 0xda, 0x5e, 0xbf, 0x4f, 0x59, 0x75, 0xe8, 0x7b, 0xcc, 0x43,
- 0xf9, 0x2e, 0x65, 0xb6, 0x3b, 0x36, 0x4b, 0x41, 0xcf, 0xf6, 0x89, 0x23, 0xa9, 0xe6, 0x66, 0xd7,
- 0xf3, 0xba, 0x2e, 0x79, 0x25, 0x56, 0xa7, 0xa3, 0xce, 0x2b, 0x46, 0xfb, 0x24, 0x60, 0x76, 0x7f,
- 0x28, 0x19, 0xb0, 0x03, 0xe8, 0xb5, 0xb8, 0xe6, 0x84, 0xd9, 0x2c, 0xb0, 0xc8, 0xa7, 0x11, 0x09,
- 0x18, 0xaa, 0x01, 0xf8, 0x64, 0xe8, 0x05, 0x94, 0x79, 0xfe, 0xb8, 0x62, 0x6c, 0x19, 0xdb, 0xcb,
- 0x35, 0x54, 0x95, 0x12, 0xaa, 0x56, 0xb4, 0x63, 0xc5, 0xb8, 0x90, 0x09, 0x05, 0x9f, 0x9c, 0xd3,
- 0x80, 0x7a, 0x83, 0x4a, 0x66, 0xcb, 0xd8, 0x2e, 0x59, 0xd1, 0x1a, 0xb7, 0xe1, 0x6e, 0x42, 0x4a,
- 0x30, 0xf4, 0x06, 0x01, 0x41, 0x65, 0xc8, 0x7a, 0xd4, 0x11, 0xf7, 0x17, 0x2d, 0xfe, 0x89, 0x36,
- 0xa0, 0x68, 0x3b, 0x0e, 0x65, 0xd4, 0x1b, 0x04, 0xe2, 0x96, 0x9c, 0xa5, 0x09, 0x7c, 0xd7, 0x21,
- 0x2e, 0x91, 0xbb, 0x59, 0xb9, 0x1b, 0x11, 0xf0, 0x77, 0x06, 0x3c, 0x94, 0x52, 0x0e, 0x83, 0xdd,
- 0x41, 0x9b, 0x04, 0xcc, 0xf3, 0x6f, 0xa3, 0xd0, 0x26, 0x2c, 0xdb, 0xea, 0x9a, 0x16, 0x75, 0x04,
- 0x9a, 0xa2, 0x05, 0x21, 0xe9, 0xd0, 0x41, 0x6b, 0x50, 0x68, 0xf7, 0xa8, 0xeb, 0xf0, 0xdd, 0xac,
- 0xd8, 0x5d, 0x12, 0xeb, 0x43, 0x07, 0xef, 0x40, 0x65, 0x1a, 0x8a, 0xd2, 0xfa, 0x1e, 0xe4, 0xce,
- 0x6d, 0x77, 0x44, 0x04, 0x8c, 0x82, 0x25, 0x17, 0xf8, 0x7b, 0x03, 0xca, 0x4d, 0x9f, 0x90, 0xfa,
- 0x80, 0xf9, 0xe3, 0x39, 0xbd, 0x03, 0x42, 0xb0, 0x38, 0xb4, 0x59, 0x4f, 0xa0, 0x2d, 0x59, 0xe2,
- 0x9b, 0xc3, 0x71, 0x69, 0x9f, 0xb2, 0xca, 0xe2, 0x96, 0xb1, 0x9d, 0xb5, 0xe4, 0x02, 0xff, 0x62,
- 0xc0, 0x6a, 0x0c, 0x8e, 0x82, 0xfe, 0x4f, 0x58, 0x64, 0xe3, 0xa1, 0x44, 0xbe, 0x52, 0xfb, 0x73,
- 0x88, 0x64, 0x8a, 0xb1, 0xda, 0x38, 0xfd, 0x3f, 0x69, 0xb3, 0xe6, 0x78, 0x48, 0x2c, 0x71, 0x22,
- 0x7c, 0xea, 0x8c, 0x7e, 0x6a, 0x04, 0x8b, 0x01, 0xfd, 0x86, 0x08, 0x2c, 0x59, 0x4b, 0x7c, 0x73,
- 0x5a, 0xdf, 0x73, 0x88, 0x80, 0x92, 0xb3, 0xc4, 0x37, 0xa7, 0x39, 0x36, 0xb3, 0x2b, 0x39, 0x89,
- 0x99, 0x7f, 0xe3, 0xbf, 0x03, 0x68, 0x09, 0x08, 0x20, 0xff, 0xba, 0x71, 0x7c, 0x7c, 0xd8, 0x2c,
- 0x2f, 0xa0, 0x02, 0x2c, 0xee, 0x1d, 0x35, 0xf6, 0xca, 0x06, 0xff, 0x6a, 0x5a, 0xf5, 0x7a, 0x39,
- 0x83, 0x96, 0x20, 0xdb, 0xdc, 0x3d, 0x28, 0x67, 0xb1, 0x07, 0xf7, 0xe5, 0xab, 0x04, 0x7b, 0x84,
- 0x5d, 0x10, 0x32, 0xb8, 0x8d, 0x9d, 0x11, 0x2c, 0x76, 0x7c, 0xaf, 0xaf, 0x6c, 0x2c, 0xbe, 0xd1,
- 0x0a, 0x64, 0x98, 0xa7, 0xac, 0x9b, 0x61, 0x1e, 0xae, 0xc3, 0x83, 0x49, 0x81, 0xca, 0x92, 0x2f,
- 0x61, 0x49, 0x86, 0x6f, 0x50, 0x31, 0xb6, 0xb2, 0xdb, 0xcb, 0xb5, 0xd5, 0x50, 0xdc, 0x01, 0x65,
- 0xf2, 0x8c, 0x15, 0x72, 0xe0, 0xdf, 0x0c, 0x1e, 0x3f, 0xa3, 0x81, 0xda, 0x98, 0x57, 0x98, 0xa2,
- 0x1d, 0xc8, 0xd9, 0x1d, 0x46, 0x7c, 0xa1, 0xc1, 0x72, 0xcd, 0xac, 0xca, 0xec, 0x51, 0x0d, 0xb3,
- 0x47, 0xb5, 0x19, 0x66, 0x0f, 0x4b, 0x32, 0xa2, 0x1a, 0xe4, 0x4f, 0x49, 0xc7, 0xf3, 0xe5, 0x93,
- 0x5d, 0x7d, 0x44, 0x71, 0x46, 0x4e, 0x98, 0x8b, 0x39, 0xe1, 0x3a, 0x14, 0xfb, 0xf6, 0x65, 0xab,
- 0xcd, 0x95, 0xac, 0xe4, 0xc5, 0xeb, 0x17, 0xfa, 0xf6, 0xa5, 0x50, 0x1a, 0xff, 0x15, 0xee, 0x25,
- 0xb5, 0xd7, 0x81, 0x24, 0x0f, 0x18, 0xe2, 0x80, 0x5c, 0xe0, 0xcf, 0x06, 0x14, 0x23, 0x87, 0x4c,
- 0x49, 0x31, 0x6b, 0x50, 0xf0, 0x3d, 0x8f, 0xb5, 0xb4, 0x3b, 0x2e, 0xf1, 0x75, 0x43, 0xba, 0xe4,
- 0x54, 0x78, 0xbc, 0x52, 0x2e, 0xbf, 0x28, 0x5c, 0x7e, 0x7d, 0xca, 0xe5, 0xab, 0xe2, 0x37, 0xe6,
- 0xe9, 0xa1, 0x0f, 0xe7, 0x62, 0x3e, 0xfc, 0x08, 0x40, 0xbe, 0xa5, 0x90, 0x9a, 0x17, 0x52, 0x8b,
- 0x92, 0xc2, 0xe5, 0xae, 0x43, 0xb1, 0xe3, 0xda, 0xac, 0x25, 0x84, 0x2f, 0xc9, 0x47, 0xe1, 0x84,
- 0xf7, 0x36, 0xeb, 0xe1, 0x97, 0x50, 0x8c, 0x44, 0x44, 0xee, 0xbd, 0x10, 0xb9, 0xb7, 0x11, 0x73,
- 0xff, 0x2c, 0xfe, 0xd1, 0x80, 0xfb, 0x07, 0x84, 0x85, 0xe8, 0x28, 0x09, 0xbe, 0x66, 0x2a, 0xd9,
- 0x80, 0xa2, 0x4f, 0xda, 0x23, 0x3f, 0xa0, 0xe7, 0xd2, 0x60, 0x05, 0x4b, 0x13, 0x78, 0x30, 0x4c,
- 0x42, 0xd3, 0xc1, 0x40, 0x24, 0x69, 0x32, 0x18, 0x74, 0x66, 0x09, 0x39, 0xf0, 0x29, 0x94, 0x8f,
- 0x68, 0xc0, 0xf6, 0xa9, 0x3b, 0x37, 0xe5, 0xf0, 0x0b, 0x58, 0x8d, 0xc9, 0xd0, 0xee, 0xc6, 0xb5,
- 0x94, 0x18, 0x4b, 0x96, 0x5c, 0xe0, 0x36, 0xac, 0xee, 0xd3, 0x81, 0xa3, 0x42, 0x76, 0x4e, 0x78,
- 0xfe, 0x0d, 0x28, 0x2e, 0x44, 0x01, 0x7a, 0x01, 0x79, 0xe9, 0x43, 0x4a, 0x42, 0x4a, 0x0a, 0x51,
- 0x0c, 0xb8, 0x05, 0x0f, 0xb9, 0x42, 0x61, 0x32, 0x1a, 0x37, 0xa8, 0x73, 0x1b, 0xac, 0x51, 0x36,
- 0xcf, 0xaa, 0xa8, 0xc2, 0x07, 0x50, 0x99, 0x16, 0x70, 0x93, 0x5c, 0xf7, 0xd9, 0x80, 0xfb, 0x5c,
- 0xd7, 0x5d, 0xd7, 0x9d, 0x73, 0xb6, 0x4b, 0xe4, 0x9c, 0x6c, 0x32, 0xe7, 0x88, 0xea, 0x74, 0x46,
- 0x87, 0x61, 0x25, 0xe2, 0xdf, 0xe8, 0x5f, 0x90, 0xf3, 0x7c, 0x87, 0xf8, 0x22, 0xb4, 0x57, 0x6a,
- 0x4f, 0x43, 0xd9, 0xa9, 0x70, 0xab, 0x0d, 0xce, 0x6a, 0xc9, 0x13, 0xf8, 0x19, 0xe4, 0xc4, 0x9a,
- 0x87, 0xed, 0xbb, 0xc6, 0xbb, 0xba, 0x0a, 0xe0, 0xc6, 0xfb, 0x86, 0xac, 0x54, 0x6f, 0x76, 0x9b,
- 0xf5, 0x72, 0x86, 0x87, 0xc8, 0xe4, 0x65, 0x37, 0xb1, 0xe1, 0xaf, 0x99, 0xb8, 0xbf, 0xcc, 0xcd,
- 0x80, 0x51, 0xe7, 0x20, 0x8d, 0x27, 0x17, 0xe8, 0x01, 0xe4, 0xbd, 0x4e, 0x27, 0x20, 0x4c, 0xd9,
- 0x4e, 0xad, 0x74, 0xf8, 0xe4, 0x62, 0xe1, 0xc3, 0xb9, 0x3b, 0x9e, 0xeb, 0x7a, 0x17, 0x22, 0x2b,
- 0x16, 0x2c, 0xb5, 0xe2, 0xcd, 0x17, 0xb7, 0x79, 0xab, 0x4f, 0xfc, 0x2e, 0x09, 0x44, 0x52, 0x2c,
- 0x58, 0xc0, 0x49, 0xc7, 0x82, 0x82, 0x9e, 0x40, 0xc9, 0xa1, 0x81, 0x7d, 0xea, 0x92, 0xd6, 0x85,
- 0xed, 0x9e, 0x55, 0x0a, 0x82, 0x63, 0x59, 0xd1, 0x3e, 0xd8, 0xee, 0x99, 0x2e, 0x67, 0xc5, 0x2f,
- 0x2f, 0x67, 0xf0, 0x47, 0xcb, 0x19, 0xde, 0x83, 0xbb, 0x09, 0x5b, 0xdf, 0xe4, 0xc1, 0x7a, 0x61,
- 0x9f, 0x70, 0x64, 0x0f, 0xba, 0x23, 0xbb, 0x3b, 0xbf, 0xcc, 0xf6, 0x53, 0xd4, 0x24, 0xc7, 0x44,
- 0x29, 0xc8, 0xfb, 0x50, 0x74, 0x43, 0xa2, 0x02, 0xbd, 0x1d, 0x8a, 0x9a, 0x71, 0xa6, 0x1a, 0x52,
- 0x2c, 0x7d, 0xd4, 0x7c, 0x0b, 0x85, 0x90, 0xcc, 0xe3, 0x68, 0x60, 0xf7, 0x89, 0x2a, 0xc0, 0xe2,
- 0x9b, 0x7b, 0x82, 0x18, 0x52, 0x04, 0xb8, 0x8c, 0x25, 0x17, 0xb2, 0x9a, 0xbb, 0x9e, 0xaf, 0x5a,
- 0x69, 0xb9, 0xc0, 0x23, 0xb8, 0x63, 0xd9, 0x17, 0x7b, 0xae, 0xdd, 0x27, 0x5f, 0xb1, 0x92, 0xe1,
- 0xe7, 0x50, 0xd6, 0x62, 0x95, 0x79, 0xc2, 0x46, 0xd4, 0x88, 0x35, 0xa2, 0xdf, 0x42, 0xe5, 0xc8,
- 0x0e, 0xd3, 0xde, 0xbe, 0xe7, 0xf3, 0x8a, 0xfd, 0x35, 0x71, 0xee, 0xc3, 0x5a, 0x8a, 0xfc, 0x2f,
- 0xaf, 0x0f, 0x3f, 0x47, 0x6e, 0x11, 0xec, 0x8d, 0x8f, 0x49, 0x10, 0xf0, 0x27, 0x9d, 0x93, 0x1e,
- 0x3a, 0x41, 0x64, 0x27, 0x13, 0x84, 0x1e, 0x44, 0xa2, 0x74, 0x92, 0xd6, 0x2d, 0xde, 0x83, 0xdc,
- 0xa7, 0x11, 0xf1, 0xc7, 0xaa, 0x93, 0x92, 0x0b, 0x5e, 0x82, 0xa6, 0x55, 0xb8, 0x49, 0x34, 0x52,
- 0xd8, 0xdc, 0xa7, 0x2e, 0x23, 0xfe, 0x49, 0xcf, 0x0e, 0x3e, 0x50, 0xd6, 0x3b, 0xa1, 0xdd, 0x81,
- 0xcd, 0x46, 0xfe, 0xed, 0xc2, 0x92, 0x97, 0x94, 0x9e, 0x1d, 0x88, 0xaa, 0x59, 0xb2, 0xc4, 0x37,
- 0xfe, 0x07, 0x6c, 0xcd, 0x16, 0xa5, 0xfd, 0x4e, 0x9c, 0x33, 0x62, 0xe7, 0x86, 0xf0, 0xa8, 0x7e,
- 0xc9, 0x7c, 0xbb, 0xad, 0xc0, 0x47, 0xc7, 0x6e, 0x03, 0x70, 0x1d, 0x54, 0x4f, 0xaa, 0xc7, 0xdd,
- 0x82, 0x24, 0x1c, 0x3a, 0xb8, 0x05, 0x8f, 0x67, 0x49, 0x54, 0x38, 0x37, 0xa0, 0x18, 0x84, 0x44,
- 0x15, 0x24, 0x9a, 0x20, 0x12, 0x3a, 0xed, 0x0e, 0x88, 0xd3, 0x62, 0xe4, 0x92, 0x29, 0xa7, 0x00,
- 0x49, 0x6a, 0x92, 0x4b, 0x86, 0x3d, 0x30, 0x0f, 0xc8, 0xe4, 0xe5, 0xb7, 0x32, 0xb8, 0xee, 0xba,
- 0xa9, 0x13, 0xa8, 0x66, 0xa5, 0x18, 0x2a, 0x14, 0xe0, 0x31, 0xac, 0xa7, 0x0a, 0x54, 0xea, 0x24,
- 0xac, 0x61, 0x24, 0xad, 0x91, 0xd4, 0x35, 0x73, 0x8d, 0xae, 0xd9, 0x49, 0x5d, 0x6b, 0x3f, 0x94,
- 0xe0, 0x4f, 0x4a, 0x30, 0xf1, 0xcf, 0x69, 0x9b, 0xa0, 0x0f, 0x50, 0x9e, 0xfc, 0xc3, 0x00, 0x6d,
- 0x26, 0x93, 0xef, 0xd4, 0xbf, 0x1a, 0xe6, 0xd6, 0x6c, 0x06, 0xa9, 0x04, 0x5e, 0x40, 0x6f, 0xe2,
- 0xd3, 0x50, 0x25, 0x65, 0x62, 0x97, 0x57, 0xad, 0xcd, 0x9c, 0xe5, 0xf1, 0xc2, 0x8e, 0x81, 0x4e,
- 0x60, 0x25, 0x39, 0xc8, 0xa2, 0x47, 0x49, 0xd9, 0x13, 0x13, 0xb5, 0xf9, 0x78, 0xd6, 0x76, 0xec,
- 0xd2, 0xff, 0x42, 0x29, 0x3e, 0xd7, 0xa1, 0x75, 0x7d, 0x66, 0x6a, 0xd6, 0x35, 0x37, 0xd2, 0x37,
- 0x23, 0x3d, 0x4f, 0x60, 0x25, 0x39, 0x5d, 0x68, 0x84, 0xa9, 0x03, 0x91, 0x46, 0x98, 0x3e, 0x94,
- 0x08, 0x84, 0x6f, 0xa0, 0x18, 0xcd, 0x01, 0xda, 0x78, 0x93, 0xe3, 0x87, 0x36, 0xde, 0xd4, 0xd0,
- 0x20, 0x6e, 0xa9, 0x03, 0xe8, 0x0e, 0x01, 0xad, 0xc5, 0xdb, 0xc6, 0xc4, 0xd8, 0x60, 0x9a, 0x69,
- 0x5b, 0x91, 0x86, 0xff, 0x81, 0xe5, 0xd8, 0x9f, 0x68, 0xc8, 0x4c, 0x5a, 0x38, 0xfe, 0xff, 0x9d,
- 0xb9, 0x9e, 0xba, 0x17, 0xb7, 0x55, 0xb2, 0xcd, 0xd4, 0xb6, 0x4a, 0xed, 0x65, 0xb5, 0xad, 0xd2,
- 0xbb, 0x53, 0xa1, 0xe5, 0x5b, 0x58, 0x8e, 0xf5, 0x41, 0x28, 0x45, 0x97, 0x69, 0x78, 0x29, 0x8d,
- 0x93, 0xb8, 0xab, 0x09, 0x77, 0x26, 0x1a, 0x0e, 0xf4, 0x78, 0x66, 0x27, 0x22, 0xef, 0xdc, 0xbc,
- 0xa6, 0x53, 0xc1, 0x0b, 0x68, 0x17, 0x0a, 0x61, 0x51, 0x47, 0x0f, 0xa3, 0xdc, 0x91, 0xec, 0x2e,
- 0xcc, 0xca, 0xf4, 0x46, 0x0c, 0xd8, 0xff, 0x60, 0x75, 0xaa, 0xde, 0xa2, 0x28, 0x0c, 0x67, 0xb5,
- 0x02, 0xe6, 0x93, 0x2b, 0x38, 0x22, 0x78, 0x1f, 0xc3, 0x14, 0xa0, 0xeb, 0xd7, 0x64, 0x0a, 0x98,
- 0x2a, 0xce, 0x93, 0x29, 0x60, 0xba, 0xf4, 0x09, 0xd8, 0x1f, 0xe5, 0xcc, 0x1c, 0x9f, 0xce, 0xf4,
- 0xd5, 0x33, 0x06, 0x43, 0x7d, 0xf5, 0xac, 0xc1, 0x4e, 0x5c, 0x1d, 0x40, 0x65, 0x56, 0x05, 0x43,
- 0x7f, 0xd1, 0xef, 0x7c, 0x65, 0x39, 0x35, 0xb7, 0xaf, 0x67, 0x0c, 0x45, 0x6e, 0x1b, 0x3b, 0x06,
- 0x3a, 0x83, 0x07, 0xe9, 0xc5, 0x08, 0x3d, 0x0b, 0x6f, 0xba, 0xb2, 0x3c, 0x9a, 0xcf, 0xaf, 0x63,
- 0x8b, 0x69, 0x78, 0x0a, 0x77, 0x53, 0xea, 0x04, 0xc2, 0xb1, 0xfc, 0x31, 0xa3, 0x6a, 0x99, 0x4f,
- 0xaf, 0xe4, 0xd1, 0x32, 0x4e, 0xf3, 0x62, 0xc0, 0xf8, 0xdb, 0xef, 0x01, 0x00, 0x00, 0xff, 0xff,
- 0x49, 0x26, 0x00, 0x5f, 0xd4, 0x17, 0x00, 0x00,
+ // 1650 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x5f, 0x6f, 0x1a, 0xc7,
+ 0x16, 0xf7, 0x82, 0xc1, 0x70, 0xe0, 0x3a, 0x78, 0xf2, 0x0f, 0xaf, 0x9d, 0xd8, 0x99, 0xdc, 0xe4,
+ 0x3a, 0xca, 0x15, 0xb1, 0xb8, 0xba, 0x55, 0xfb, 0x54, 0xd9, 0x09, 0x76, 0x9d, 0xda, 0x21, 0x5a,
+ 0x23, 0x45, 0xe9, 0x0b, 0x5a, 0xb3, 0x03, 0x4c, 0xbd, 0xb0, 0x64, 0x77, 0xb0, 0x4d, 0x1f, 0xfa,
+ 0x5e, 0xa9, 0xca, 0x7b, 0x3f, 0x44, 0x3f, 0x44, 0xbf, 0x42, 0x3f, 0x4e, 0xd4, 0x87, 0x6a, 0xfe,
+ 0xec, 0xce, 0x02, 0x8b, 0xdd, 0xd8, 0x22, 0x2f, 0x68, 0xe6, 0xcc, 0xec, 0x39, 0xbf, 0x73, 0xe6,
+ 0xfc, 0x05, 0x8a, 0x2d, 0xaf, 0xd7, 0xa3, 0xac, 0x32, 0xf0, 0x3d, 0xe6, 0xa1, 0x6c, 0x87, 0x32,
+ 0xdb, 0x1d, 0x99, 0xc5, 0xa0, 0x6b, 0xfb, 0xc4, 0x91, 0x54, 0x73, 0xa3, 0xe3, 0x79, 0x1d, 0x97,
+ 0xbc, 0x10, 0xbb, 0x93, 0x61, 0xfb, 0x05, 0xa3, 0x3d, 0x12, 0x30, 0xbb, 0x37, 0x90, 0x17, 0xb0,
+ 0x03, 0xe8, 0xa5, 0x60, 0x73, 0xcc, 0x6c, 0x16, 0x58, 0xe4, 0xc3, 0x90, 0x04, 0x0c, 0x55, 0x01,
+ 0x7c, 0x32, 0xf0, 0x02, 0xca, 0x3c, 0x7f, 0x54, 0x36, 0x36, 0x8d, 0xad, 0x42, 0x15, 0x55, 0xa4,
+ 0x84, 0x8a, 0x15, 0x9d, 0x58, 0xb1, 0x5b, 0xc8, 0x84, 0x9c, 0x4f, 0xce, 0x68, 0x40, 0xbd, 0x7e,
+ 0x39, 0xb5, 0x69, 0x6c, 0x15, 0xad, 0x68, 0x8f, 0x5b, 0x70, 0x7b, 0x4c, 0x4a, 0x30, 0xf0, 0xfa,
+ 0x01, 0x41, 0x25, 0x48, 0x7b, 0xd4, 0x11, 0xfc, 0xf3, 0x16, 0x5f, 0xa2, 0x75, 0xc8, 0xdb, 0x8e,
+ 0x43, 0x19, 0xf5, 0xfa, 0x81, 0xe0, 0x92, 0xb1, 0x34, 0x81, 0x9f, 0x3a, 0xc4, 0x25, 0xf2, 0x34,
+ 0x2d, 0x4f, 0x23, 0x02, 0xfe, 0xc5, 0x80, 0xfb, 0x52, 0xca, 0x41, 0xb0, 0xd3, 0x6f, 0x91, 0x80,
+ 0x79, 0xfe, 0x4d, 0x14, 0xda, 0x80, 0x82, 0xad, 0xd8, 0x34, 0xa9, 0x23, 0xd0, 0xe4, 0x2d, 0x08,
+ 0x49, 0x07, 0x0e, 0x5a, 0x85, 0x5c, 0xab, 0x4b, 0x5d, 0x87, 0x9f, 0xa6, 0xc5, 0xe9, 0x92, 0xd8,
+ 0x1f, 0x38, 0x78, 0x1b, 0xca, 0xd3, 0x50, 0x94, 0xd6, 0x77, 0x20, 0x73, 0x66, 0xbb, 0x43, 0x22,
+ 0x60, 0xe4, 0x2c, 0xb9, 0xc1, 0xbf, 0x1a, 0x50, 0x6a, 0xf8, 0x84, 0xd4, 0xfa, 0xcc, 0x1f, 0xcd,
+ 0xe9, 0x1d, 0x10, 0x82, 0xc5, 0x81, 0xcd, 0xba, 0x02, 0x6d, 0xd1, 0x12, 0x6b, 0x0e, 0xc7, 0xa5,
+ 0x3d, 0xca, 0xca, 0x8b, 0x9b, 0xc6, 0x56, 0xda, 0x92, 0x1b, 0xfc, 0xa7, 0x01, 0x2b, 0x31, 0x38,
+ 0x0a, 0xfa, 0xd7, 0xb0, 0xc8, 0x46, 0x03, 0x89, 0x7c, 0xb9, 0xfa, 0xef, 0x10, 0xc9, 0xd4, 0xc5,
+ 0x4a, 0xfd, 0xe4, 0x47, 0xd2, 0x62, 0x8d, 0xd1, 0x80, 0x58, 0xe2, 0x8b, 0xf0, 0xa9, 0x53, 0xfa,
+ 0xa9, 0x11, 0x2c, 0x06, 0xf4, 0x27, 0x22, 0xb0, 0xa4, 0x2d, 0xb1, 0xe6, 0xb4, 0x9e, 0xe7, 0x10,
+ 0x01, 0x25, 0x63, 0x89, 0x35, 0xa7, 0x39, 0x36, 0xb3, 0xcb, 0x19, 0x89, 0x99, 0xaf, 0xf1, 0xff,
+ 0x01, 0xb4, 0x04, 0x04, 0x90, 0x7d, 0x59, 0x3f, 0x3a, 0x3a, 0x68, 0x94, 0x16, 0x50, 0x0e, 0x16,
+ 0x77, 0x0f, 0xeb, 0xbb, 0x25, 0x83, 0xaf, 0x1a, 0x56, 0xad, 0x56, 0x4a, 0xa1, 0x25, 0x48, 0x37,
+ 0x76, 0xf6, 0x4b, 0x69, 0xec, 0xc1, 0x5d, 0xf9, 0x2a, 0xc1, 0x2e, 0x61, 0xe7, 0x84, 0xf4, 0x6f,
+ 0x62, 0x67, 0x04, 0x8b, 0x6d, 0xdf, 0xeb, 0x29, 0x1b, 0x8b, 0x35, 0x5a, 0x86, 0x14, 0xf3, 0x94,
+ 0x75, 0x53, 0xcc, 0xc3, 0x35, 0xb8, 0x37, 0x29, 0x50, 0x59, 0xf2, 0x39, 0x2c, 0xc9, 0xf0, 0x0d,
+ 0xca, 0xc6, 0x66, 0x7a, 0xab, 0x50, 0x5d, 0x09, 0xc5, 0xed, 0x53, 0x26, 0xbf, 0xb1, 0xc2, 0x1b,
+ 0xf8, 0x63, 0x8a, 0xc7, 0xcf, 0xb0, 0xaf, 0x0e, 0xe6, 0x15, 0xa6, 0x68, 0x1b, 0x32, 0x76, 0x9b,
+ 0x11, 0x5f, 0x68, 0x50, 0xa8, 0x9a, 0x15, 0x99, 0x3d, 0x2a, 0x61, 0xf6, 0xa8, 0x34, 0xc2, 0xec,
+ 0x61, 0xc9, 0x8b, 0xa8, 0x0a, 0xd9, 0x13, 0xd2, 0xf6, 0x7c, 0xf9, 0x64, 0x97, 0x7f, 0xa2, 0x6e,
+ 0x46, 0x4e, 0x98, 0x89, 0x39, 0xe1, 0x1a, 0xe4, 0x7b, 0xf6, 0x45, 0xb3, 0xc5, 0x95, 0x2c, 0x67,
+ 0xc5, 0xeb, 0xe7, 0x7a, 0xf6, 0x85, 0x50, 0x9a, 0xfb, 0x8e, 0xed, 0xba, 0xe5, 0x25, 0x11, 0x2e,
+ 0x7c, 0x89, 0xff, 0x0b, 0x77, 0xc6, 0xed, 0xa1, 0x43, 0x4b, 0xb2, 0x30, 0x04, 0x0b, 0xb9, 0xc1,
+ 0x9f, 0x0c, 0xc8, 0x47, 0x2e, 0x9a, 0x90, 0x74, 0x56, 0x21, 0xe7, 0x7b, 0x1e, 0x6b, 0x6a, 0x07,
+ 0x5d, 0xe2, 0xfb, 0xba, 0x74, 0xd2, 0xa9, 0x80, 0x79, 0xa1, 0x82, 0x60, 0x51, 0x04, 0xc1, 0xda,
+ 0x54, 0x10, 0x54, 0xc4, 0x6f, 0xcc, 0xf7, 0x43, 0xaf, 0xce, 0xc4, 0xbc, 0xfa, 0x01, 0x80, 0x7c,
+ 0x5d, 0x21, 0x35, 0x2b, 0xa4, 0xe6, 0x25, 0x85, 0xcb, 0x5d, 0x83, 0x7c, 0xdb, 0xb5, 0x59, 0x53,
+ 0x08, 0x5f, 0x92, 0xcf, 0xc4, 0x09, 0x6f, 0x6d, 0xd6, 0xc5, 0xcf, 0x21, 0x1f, 0x89, 0x88, 0x1c,
+ 0x7e, 0x21, 0x72, 0x78, 0x23, 0x16, 0x10, 0x69, 0xfc, 0x9b, 0x01, 0x77, 0xf7, 0x09, 0x0b, 0xd1,
+ 0x51, 0x12, 0x7c, 0xc9, 0xe4, 0xb2, 0x0e, 0x79, 0x9f, 0xb4, 0x86, 0x7e, 0x40, 0xcf, 0xa4, 0xc1,
+ 0x72, 0x96, 0x26, 0xf0, 0xf0, 0x98, 0x84, 0xa6, 0xc3, 0x83, 0x48, 0xd2, 0x64, 0x78, 0xe8, 0x5c,
+ 0x13, 0xde, 0xc0, 0x27, 0x50, 0x3a, 0xa4, 0x01, 0xdb, 0xa3, 0xee, 0xdc, 0x94, 0xc3, 0xcf, 0x60,
+ 0x25, 0x26, 0x43, 0xbb, 0x1b, 0xd7, 0x52, 0x62, 0x2c, 0x5a, 0x72, 0x83, 0x5b, 0xb0, 0xb2, 0x47,
+ 0xfb, 0x8e, 0x0a, 0xe2, 0x39, 0xe1, 0xf9, 0x16, 0x50, 0x5c, 0x88, 0x02, 0xf4, 0x0c, 0xb2, 0xd2,
+ 0x87, 0x94, 0x84, 0x84, 0xa4, 0xa2, 0x2e, 0xe0, 0x26, 0xdc, 0xe7, 0x0a, 0x85, 0xe9, 0x69, 0x54,
+ 0xa7, 0xce, 0x4d, 0xb0, 0x46, 0xf9, 0x3d, 0xad, 0xa2, 0x0a, 0xef, 0x43, 0x79, 0x5a, 0xc0, 0x75,
+ 0xb2, 0xdf, 0x27, 0x03, 0xee, 0x72, 0x5d, 0x77, 0x5c, 0x77, 0xce, 0xf9, 0x6f, 0x2c, 0x0b, 0xa5,
+ 0x27, 0xb2, 0x10, 0xaf, 0x57, 0xa7, 0x74, 0x10, 0xd6, 0x26, 0xbe, 0x46, 0xdf, 0x40, 0xc6, 0xf3,
+ 0x1d, 0xe2, 0x8b, 0xd0, 0x5e, 0xae, 0x3e, 0x0e, 0x65, 0x27, 0xc2, 0xad, 0xd4, 0xf9, 0x55, 0x4b,
+ 0x7e, 0x81, 0x9f, 0x40, 0x46, 0xec, 0x79, 0xd8, 0xbe, 0xa9, 0xbf, 0xa9, 0xa9, 0x00, 0xae, 0xbf,
+ 0xad, 0xcb, 0xda, 0xf5, 0x6a, 0xa7, 0x51, 0x2b, 0xa5, 0x78, 0x88, 0x4c, 0x32, 0xbb, 0x8e, 0x0d,
+ 0xff, 0x4a, 0xc5, 0xfd, 0x65, 0x6e, 0x06, 0x8c, 0x7a, 0x09, 0x69, 0x3c, 0xb9, 0x41, 0xf7, 0x20,
+ 0xeb, 0xb5, 0xdb, 0x01, 0x61, 0xca, 0x76, 0x6a, 0xa7, 0xc3, 0x27, 0x13, 0x0b, 0x1f, 0x7e, 0xbb,
+ 0xed, 0xb9, 0xae, 0x77, 0x2e, 0xb2, 0x62, 0xce, 0x52, 0x3b, 0xde, 0x8e, 0x71, 0x9b, 0x37, 0x7b,
+ 0xc4, 0xef, 0x90, 0x40, 0x55, 0x03, 0xe0, 0xa4, 0x23, 0x41, 0x41, 0x8f, 0xa0, 0xe8, 0xd0, 0xc0,
+ 0x3e, 0x71, 0x49, 0xf3, 0xdc, 0x76, 0x4f, 0xcb, 0x39, 0x71, 0xa3, 0xa0, 0x68, 0xef, 0x6c, 0xf7,
+ 0x54, 0x17, 0xb8, 0xfc, 0xe7, 0x17, 0x38, 0xf8, 0xc7, 0x05, 0x4e, 0xd5, 0xab, 0x82, 0xae, 0x57,
+ 0xbb, 0x70, 0x7b, 0xcc, 0xfa, 0xd7, 0x79, 0xc2, 0x6e, 0xd8, 0x4b, 0x1c, 0xda, 0xfd, 0xce, 0xd0,
+ 0xee, 0xcc, 0x2f, 0xd7, 0xfd, 0x1e, 0x35, 0xd2, 0x31, 0x51, 0x0a, 0xf2, 0x1e, 0xe4, 0xdd, 0x90,
+ 0xa8, 0x40, 0x6f, 0x85, 0xa2, 0x66, 0x7c, 0x53, 0x09, 0x29, 0x96, 0xfe, 0xd4, 0x7c, 0x0d, 0xb9,
+ 0x90, 0xcc, 0x23, 0xab, 0x6f, 0xf7, 0x88, 0x2a, 0xc9, 0x62, 0xcd, 0x7d, 0x43, 0x0c, 0x32, 0x02,
+ 0x5c, 0xca, 0x92, 0x1b, 0x59, 0xdf, 0x5d, 0xcf, 0x57, 0xed, 0xb6, 0xdc, 0xe0, 0x21, 0xdc, 0xb2,
+ 0xec, 0xf3, 0x5d, 0xd7, 0xee, 0x91, 0x2f, 0x58, 0xdb, 0xf0, 0x53, 0x28, 0x69, 0xb1, 0xca, 0x3c,
+ 0x61, 0xb3, 0x6a, 0xc4, 0x9a, 0xd5, 0x9f, 0xa1, 0x7c, 0x68, 0x87, 0x89, 0x70, 0xcf, 0xf3, 0x79,
+ 0x0d, 0xff, 0x92, 0x38, 0xf7, 0x60, 0x35, 0x41, 0xfe, 0xe7, 0x57, 0x8c, 0x3f, 0x22, 0xb7, 0x08,
+ 0x76, 0x47, 0x47, 0x24, 0x08, 0xf8, 0x93, 0xce, 0x49, 0x0f, 0x9d, 0x32, 0xd2, 0x93, 0x29, 0x43,
+ 0x0f, 0x2b, 0x51, 0x82, 0x49, 0xea, 0x28, 0xef, 0x40, 0xe6, 0xc3, 0x90, 0xf8, 0x23, 0xd5, 0x5b,
+ 0xc9, 0x0d, 0x2f, 0x4a, 0xd3, 0x2a, 0x5c, 0x27, 0x1a, 0x29, 0x6c, 0xec, 0x51, 0x97, 0x11, 0xff,
+ 0xb8, 0x6b, 0x07, 0xef, 0x28, 0xeb, 0x1e, 0xd3, 0x4e, 0xdf, 0x66, 0x43, 0xff, 0x66, 0x61, 0xc9,
+ 0x8b, 0x4c, 0xd7, 0x0e, 0x44, 0x1d, 0x2d, 0x5a, 0x62, 0x8d, 0xbf, 0x82, 0xcd, 0xd9, 0xa2, 0xb4,
+ 0xdf, 0x89, 0xef, 0x8c, 0xd8, 0x77, 0x03, 0x78, 0x50, 0xbb, 0x60, 0xbe, 0xdd, 0x52, 0xe0, 0xa3,
+ 0xcf, 0x6e, 0x02, 0x70, 0x0d, 0x54, 0x97, 0xaa, 0x47, 0xe2, 0x9c, 0x24, 0x1c, 0x38, 0xb8, 0x09,
+ 0x0f, 0x67, 0x49, 0x54, 0x38, 0xd7, 0x21, 0x1f, 0x84, 0x44, 0x15, 0x24, 0x9a, 0x20, 0x52, 0x3c,
+ 0xed, 0xf4, 0x89, 0xd3, 0x64, 0xe4, 0x82, 0x29, 0xa7, 0x00, 0x49, 0x6a, 0x90, 0x0b, 0x86, 0x3d,
+ 0x30, 0xf7, 0xc9, 0x24, 0xf3, 0x1b, 0x19, 0x5c, 0xf7, 0xe1, 0xd4, 0x09, 0x54, 0xfb, 0x92, 0x0f,
+ 0x15, 0x0a, 0xf0, 0x08, 0xd6, 0x12, 0x05, 0x2a, 0x75, 0xc6, 0xac, 0x61, 0x8c, 0x5b, 0x63, 0x5c,
+ 0xd7, 0xd4, 0x15, 0xba, 0xa6, 0x27, 0x75, 0xad, 0x7e, 0x2c, 0xc2, 0xbf, 0x94, 0x60, 0xe2, 0x9f,
+ 0xd1, 0x16, 0x41, 0xef, 0xa0, 0x34, 0xf9, 0xa7, 0x02, 0xda, 0x18, 0x4f, 0xbe, 0x53, 0xff, 0x7c,
+ 0x98, 0x9b, 0xb3, 0x2f, 0x48, 0x25, 0xf0, 0x02, 0x7a, 0x15, 0x9f, 0x8f, 0xca, 0x09, 0x53, 0xbd,
+ 0x64, 0xb5, 0x3a, 0x73, 0xde, 0xc7, 0x0b, 0xdb, 0x06, 0x3a, 0x86, 0xe5, 0xf1, 0x61, 0x17, 0x3d,
+ 0x18, 0x97, 0x3d, 0x31, 0x75, 0x9b, 0x0f, 0x67, 0x1d, 0xc7, 0x98, 0x7e, 0x0f, 0xc5, 0xf8, 0xa4,
+ 0x87, 0xd6, 0xf4, 0x37, 0x53, 0xf3, 0xb0, 0xb9, 0x9e, 0x7c, 0x18, 0xe9, 0x79, 0x0c, 0xcb, 0xe3,
+ 0xf3, 0x86, 0x46, 0x98, 0x38, 0x22, 0x69, 0x84, 0xc9, 0x63, 0x8a, 0x40, 0xf8, 0x0a, 0xf2, 0xd1,
+ 0x64, 0xa0, 0x8d, 0x37, 0x39, 0x90, 0x68, 0xe3, 0x4d, 0x8d, 0x11, 0x82, 0x4b, 0x0d, 0x40, 0x77,
+ 0x08, 0x68, 0x35, 0xde, 0x48, 0x8e, 0x0d, 0x12, 0xa6, 0x99, 0x74, 0x14, 0x69, 0xf8, 0x1d, 0x14,
+ 0x62, 0x7f, 0xb4, 0x21, 0x73, 0xdc, 0xc2, 0xf1, 0xff, 0xf8, 0xcc, 0xb5, 0xc4, 0xb3, 0xb8, 0xad,
+ 0xc6, 0x1b, 0x4f, 0x6d, 0xab, 0xc4, 0xee, 0x56, 0xdb, 0x2a, 0xb9, 0x5f, 0x15, 0x5a, 0xbe, 0x86,
+ 0x42, 0xac, 0x0f, 0x42, 0x09, 0xba, 0x4c, 0xc3, 0x4b, 0x68, 0x9c, 0x04, 0xaf, 0x06, 0xdc, 0x9a,
+ 0x68, 0x38, 0xd0, 0xc3, 0x99, 0x9d, 0x88, 0xe4, 0xb9, 0x71, 0x45, 0xa7, 0x82, 0x17, 0xd0, 0x0e,
+ 0xe4, 0xc2, 0xa2, 0x8e, 0xee, 0x47, 0xb9, 0x63, 0xbc, 0xbb, 0x30, 0xcb, 0xd3, 0x07, 0x31, 0x60,
+ 0x3f, 0xc0, 0xca, 0x54, 0xbd, 0x45, 0x51, 0x18, 0xce, 0x6a, 0x05, 0xcc, 0x47, 0x97, 0xdc, 0x88,
+ 0xe0, 0xbd, 0x0f, 0x53, 0x80, 0xae, 0x5f, 0x93, 0x29, 0x60, 0xaa, 0x38, 0x4f, 0xa6, 0x80, 0xe9,
+ 0xd2, 0x27, 0x60, 0xbf, 0x97, 0x53, 0x74, 0x7c, 0x5e, 0xd3, 0xac, 0x67, 0x8c, 0x8a, 0x9a, 0xf5,
+ 0xac, 0x51, 0x4f, 0xb0, 0x0e, 0xa0, 0x3c, 0xab, 0x82, 0xa1, 0xff, 0xe8, 0x77, 0xbe, 0xb4, 0x9c,
+ 0x9a, 0x5b, 0x57, 0x5f, 0x0c, 0x45, 0x6e, 0x19, 0xdb, 0x06, 0x3a, 0x85, 0x7b, 0xc9, 0xc5, 0x08,
+ 0x3d, 0x09, 0x39, 0x5d, 0x5a, 0x1e, 0xcd, 0xa7, 0x57, 0x5d, 0x8b, 0x69, 0x78, 0x02, 0xb7, 0x13,
+ 0xea, 0x04, 0xc2, 0xb1, 0xfc, 0x31, 0xa3, 0x6a, 0x99, 0x8f, 0x2f, 0xbd, 0xa3, 0x65, 0x9c, 0x64,
+ 0xc5, 0xc8, 0xf1, 0xbf, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x80, 0x60, 0xe9, 0xf3, 0xf8, 0x17,
+ 0x00, 0x00,
}
diff --git a/vendor/vendor.json b/vendor/vendor.json
index fe1f868e4..054b04f63 100644
--- a/vendor/vendor.json
+++ b/vendor/vendor.json
@@ -201,12 +201,12 @@
"revisionTime": "2017-12-31T12:27:32Z"
},
{
- "checksumSHA1": "SkLpvkNLVOiN2bCW6FWceyLzSjg=",
+ "checksumSHA1": "6rhb7Co+LU7N7p7es+y+79D8nwY=",
"path": "gitlab.com/gitlab-org/gitaly-proto/go",
- "revision": "c2cb89626b5c88fdcf50abdafb056b1a9dfbebeb",
- "revisionTime": "2018-02-28T21:07:46Z",
- "version": "v0.87.0",
- "versionExact": "v0.87.0"
+ "revision": "481b76004a78263bc5dc3827ed48767c5f1533ac",
+ "revisionTime": "2018-03-01T20:06:59Z",
+ "version": "v0.88.0",
+ "versionExact": "v0.88.0"
},
{
"checksumSHA1": "nqWNlnMmVpt628zzvyo6Yv2CX5Q=",