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:
authorJohn Cai <jcai@gitlab.com>2019-11-05 00:00:58 +0300
committerJohn Cai <jcai@gitlab.com>2019-11-05 00:00:58 +0300
commit54e803c183039d19a5a6e0d7e0f730fb74c758e7 (patch)
tree4598b5fbb5624dbf32873e0c30f49fe9c878c87a
parente9f9183a3228241d3b4ab352425d3d68890fcf02 (diff)
parentf5e796192cf2d6d0b3ff3b4f5825ddbb0ddde1de (diff)
Merge branch 'feat/tz-and-tagger' into 'master'
Add tagger and timezone See merge request gitlab-org/gitaly!1594
-rw-r--r--internal/git/log/commit.go4
-rw-r--r--internal/git/log/commit_test.go14
-rw-r--r--internal/git/log/tag.go8
-rw-r--r--internal/git/log/tag_test.go8
-rw-r--r--internal/service/commit/between_test.go52
-rw-r--r--internal/service/commit/commits_by_message_test.go14
-rw-r--r--internal/service/commit/find_all_commits_test.go14
-rw-r--r--internal/service/commit/find_commit_test.go112
-rw-r--r--internal/service/commit/find_commits_test.go56
-rw-r--r--internal/service/commit/last_commit_for_path_test.go14
-rw-r--r--internal/service/commit/testhelper_test.go7
-rw-r--r--internal/service/ref/refs_test.go154
-rw-r--r--internal/service/ref/testhelper_test.go42
-rw-r--r--internal/service/ref/util.go14
-rw-r--r--internal/service/ref/util_test.go56
-rw-r--r--internal/testhelper/testhelper.go5
-rw-r--r--proto/go/gitalypb/ref.pb.go223
-rw-r--r--proto/go/gitalypb/shared.pb.go127
-rw-r--r--proto/ref.proto1
-rw-r--r--proto/shared.proto1
-rw-r--r--ruby/lib/gitaly_server/utils.rb3
-rw-r--r--ruby/proto/gitaly/ref_pb.rb1
-rw-r--r--ruby/proto/gitaly/shared_pb.rb1
23 files changed, 565 insertions, 366 deletions
diff --git a/internal/git/log/commit.go b/internal/git/log/commit.go
index e0b7d30db..3fd7a4cfd 100644
--- a/internal/git/log/commit.go
+++ b/internal/git/log/commit.go
@@ -158,6 +158,10 @@ func parseCommitAuthor(line string) *gitalypb.CommitAuthor {
author.Date = &timestamp.Timestamp{Seconds: sec}
+ if len(secSplit) == 2 {
+ author.Timezone = []byte(secSplit[1])
+ }
+
return author
}
diff --git a/internal/git/log/commit_test.go b/internal/git/log/commit_test.go
index a70efdb36..120604859 100644
--- a/internal/git/log/commit_test.go
+++ b/internal/git/log/commit_test.go
@@ -71,9 +71,10 @@ func TestParseRawCommit(t *testing.T) {
out: &gitalypb.GitCommit{
Id: info.Oid,
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jane Doe"),
- Email: []byte("janedoe@example.com"),
- Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Name: []byte("Jane Doe"),
+ Email: []byte("janedoe@example.com"),
+ Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Timezone: []byte("+0200"),
},
},
},
@@ -83,9 +84,10 @@ func TestParseRawCommit(t *testing.T) {
out: &gitalypb.GitCommit{
Id: info.Oid,
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jane Doe"),
- Email: []byte("janedoe@example.com"),
- Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Name: []byte("Jane Doe"),
+ Email: []byte("janedoe@example.com"),
+ Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Timezone: []byte("+0200"),
},
},
},
diff --git a/internal/git/log/tag.go b/internal/git/log/tag.go
index fca94292d..52c340673 100644
--- a/internal/git/log/tag.go
+++ b/internal/git/log/tag.go
@@ -44,6 +44,8 @@ func GetTagCatfile(c *catfile.Batch, tagID, tagName string) (*gitalypb.Tag, erro
type tagHeader struct {
oid string
tagType string
+ tag string
+ tagger string
}
func splitRawTag(r io.Reader) (*tagHeader, []byte, error) {
@@ -75,6 +77,10 @@ func splitRawTag(r io.Reader) (*tagHeader, []byte, error) {
header.oid = value
case "type":
header.tagType = value
+ case "tag":
+ header.tag = value
+ case "tagger":
+ header.tagger = value
}
}
@@ -108,6 +114,8 @@ func buildAnnotatedTag(b *catfile.Batch, tagID, name string, header *tagHeader,
}
}
+ tag.Tagger = parseCommitAuthor(header.tagger)
+
return tag, nil
}
diff --git a/internal/git/log/tag_test.go b/internal/git/log/tag_test.go
index 13ef06166..daa8540b4 100644
--- a/internal/git/log/tag_test.go
+++ b/internal/git/log/tag_test.go
@@ -69,6 +69,8 @@ func TestSplitRawTag(t *testing.T) {
header: tagHeader{
oid: "c92faf3e0a557270141be67f206d7cdb99bfc3a2",
tagType: "commit",
+ tag: "v2.6.16.28",
+ tagger: "Adrian Bunk <bunk@stusta.de> 1156539089 +0200",
},
body: nil,
},
@@ -78,6 +80,8 @@ func TestSplitRawTag(t *testing.T) {
header: tagHeader{
oid: "c92faf3e0a557270141be67f206d7cdb99bfc3a2",
tagType: "commit",
+ tag: "v2.6.16.28",
+ tagger: "Adrian Bunk <bunk@stusta.de> 1156539089 +0200",
},
body: []byte("message"),
},
@@ -87,6 +91,8 @@ func TestSplitRawTag(t *testing.T) {
header: tagHeader{
oid: "c92faf3e0a557270141be67f206d7cdb99bfc3a2",
tagType: "commit",
+ tag: "v2.6.16.28",
+ tagger: "Adrian Bunk <bunk@stusta.de> 1156539089 +0200",
},
body: []byte{},
},
@@ -96,6 +102,8 @@ func TestSplitRawTag(t *testing.T) {
header: tagHeader{
oid: "c92faf3e0a557270141be67f206d7cdb99bfc3a2",
tagType: "commit",
+ tag: "v2.6.16.28",
+ tagger: "Adrian Bunk <bunk@stusta.de> 1156539089 +0200",
},
body: []byte("Hello world\n\nThis is a message"),
},
diff --git a/internal/service/commit/between_test.go b/internal/service/commit/between_test.go
index cc4d14c64..78f678aaf 100644
--- a/internal/service/commit/between_test.go
+++ b/internal/service/commit/between_test.go
@@ -32,14 +32,16 @@ func TestSuccessfulCommitsBetween(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -52,14 +54,16 @@ func TestSuccessfulCommitsBetween(t *testing.T) {
Subject: []byte("Update README.md to include `Usage in testing and development`"),
Body: []byte("Update README.md to include `Usage in testing and development`"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Luke \"Jared\" Bennett"),
- Email: []byte("lbennett@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1491905339},
+ Name: []byte("Luke \"Jared\" Bennett"),
+ Email: []byte("lbennett@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1491905339},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Luke \"Jared\" Bennett"),
- Email: []byte("lbennett@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1491905339},
+ Name: []byte("Luke \"Jared\" Bennett"),
+ Email: []byte("lbennett@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1491905339},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{"b83d6e391c22777fca1ed3012fce84f633d7fed0"},
BodySize: 62,
@@ -69,14 +73,16 @@ func TestSuccessfulCommitsBetween(t *testing.T) {
Subject: []byte("Merge branch 'gitlab-test-usage-dev-testing-docs' into 'master'"),
Body: []byte("Merge branch 'gitlab-test-usage-dev-testing-docs' into 'master'\r\n\r\nUpdate README.md to include `Usage in testing and development`\r\n\r\nSee merge request !21"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Sean McGivern"),
- Email: []byte("sean@mcgivern.me.uk"),
- Date: &timestamp.Timestamp{Seconds: 1491906794},
+ Name: []byte("Sean McGivern"),
+ Email: []byte("sean@mcgivern.me.uk"),
+ Date: &timestamp.Timestamp{Seconds: 1491906794},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Sean McGivern"),
- Email: []byte("sean@mcgivern.me.uk"),
- Date: &timestamp.Timestamp{Seconds: 1491906794},
+ Name: []byte("Sean McGivern"),
+ Email: []byte("sean@mcgivern.me.uk"),
+ Date: &timestamp.Timestamp{Seconds: 1491906794},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{
"b83d6e391c22777fca1ed3012fce84f633d7fed0",
@@ -92,12 +98,14 @@ func TestSuccessfulCommitsBetween(t *testing.T) {
Name: []byte("Alejandro Rodríguez"),
Email: []byte("alejorro70@gmail.com"),
// Not the actual commit date, but the biggest we can represent
- Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Alejandro Rodríguez"),
- Email: []byte("alejorro70@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Name: []byte("Alejandro Rodríguez"),
+ Email: []byte("alejorro70@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 9223371974719179007},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{"e63f41fe459e62e1228fcef60d7189127aeba95a"},
BodySize: 18,
diff --git a/internal/service/commit/commits_by_message_test.go b/internal/service/commit/commits_by_message_test.go
index 40fb232d6..fd6f43ef7 100644
--- a/internal/service/commit/commits_by_message_test.go
+++ b/internal/service/commit/commits_by_message_test.go
@@ -86,14 +86,16 @@ func TestSuccessfulCommitsByMessageRequest(t *testing.T) {
Subject: []byte("Files, encoding and much more"),
Body: []byte("Files, encoding and much more\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"cfe32cf61b73a0d5e9f13e774abde7ff789b1660"},
BodySize: 98,
diff --git a/internal/service/commit/find_all_commits_test.go b/internal/service/commit/find_all_commits_test.go
index 629207133..e79b1ae45 100644
--- a/internal/service/commit/find_all_commits_test.go
+++ b/internal/service/commit/find_all_commits_test.go
@@ -159,14 +159,16 @@ func TestSuccessfulFindAllCommitsRequest(t *testing.T) {
Subject: []byte("Initial commit"),
Body: []byte("Initial commit\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Timezone: []byte("-0800"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Timezone: []byte("-0800"),
},
ParentIds: nil,
BodySize: 15,
diff --git a/internal/service/commit/find_commit_test.go b/internal/service/commit/find_commit_test.go
index 08cc730c8..dcfa5d019 100644
--- a/internal/service/commit/find_commit_test.go
+++ b/internal/service/commit/find_commit_test.go
@@ -57,14 +57,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("adds bar folder and branch-test text file to check Repository merged_to_root_ref method"),
Body: []byte("adds bar folder and branch-test text file to check Repository merged_to_root_ref method\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("tiagonbotelho"),
- Email: []byte("tiagonbotelho@hotmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1474470806},
+ Name: []byte("tiagonbotelho"),
+ Email: []byte("tiagonbotelho@hotmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474470806},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("tiagonbotelho"),
- Email: []byte("tiagonbotelho@hotmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1474470806},
+ Name: []byte("tiagonbotelho"),
+ Email: []byte("tiagonbotelho@hotmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474470806},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"1b12f15a11fc6e62177bef08f47bc7b5ce50b141"},
BodySize: 88,
@@ -78,14 +80,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("More submodules"),
Body: []byte("More submodules\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
BodySize: 84,
@@ -99,14 +103,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -123,14 +129,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("Initial commit"),
Body: []byte("Initial commit\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Timezone: []byte("-0800"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488198},
+ Timezone: []byte("-0800"),
},
ParentIds: nil,
BodySize: 15,
@@ -144,14 +152,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: windows1251Message[:len(windows1251Message)-1],
Body: windows1251Message,
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"e63f41fe459e62e1228fcef60d7189127aeba95a"},
BodySize: 49,
@@ -165,14 +175,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("Hello\xf0world"),
Body: []byte("Hello\xf0world\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
BodySize: 12,
@@ -185,14 +197,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Id: bigCommitID,
Subject: []byte("An empty commit with REALLY BIG message"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Scrooge McDuck"),
- Email: []byte("scrooge@mcduck.com"),
- Date: &timestamp.Timestamp{Seconds: bigCommit.Author.Date.Seconds},
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: bigCommit.Author.Date.Seconds},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Scrooge McDuck"),
- Email: []byte("scrooge@mcduck.com"),
- Date: &timestamp.Timestamp{Seconds: bigCommit.Committer.Date.Seconds},
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: bigCommit.Committer.Date.Seconds},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
Body: []byte(bigMessage[:helper.MaxCommitOrTagMessageSize]),
@@ -207,14 +221,16 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Subject: []byte("Add file larger than 1 mb"),
Body: []byte("Add file larger than 1 mb\n\nIn order to test Max File Size push rule we need a file larger than 1 MB\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Ruben Davila"),
- Email: []byte("rdavila84@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1523247267},
+ Name: []byte("Ruben Davila"),
+ Email: []byte("rdavila84@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1523247267},
+ Timezone: []byte("-0500"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1527855450},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1527855450},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
BodySize: 100,
diff --git a/internal/service/commit/find_commits_test.go b/internal/service/commit/find_commits_test.go
index dd4c4d58f..3dff50d09 100644
--- a/internal/service/commit/find_commits_test.go
+++ b/internal/service/commit/find_commits_test.go
@@ -40,14 +40,16 @@ func TestFindCommitsFields(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0000"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -63,14 +65,16 @@ func TestFindCommitsFields(t *testing.T) {
Subject: windows1251Message[:len(windows1251Message)-1],
Body: windows1251Message,
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1512132977},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"e63f41fe459e62e1228fcef60d7189127aeba95a"},
BodySize: 49,
@@ -83,14 +87,16 @@ func TestFindCommitsFields(t *testing.T) {
Subject: []byte("Hello\xf0world"),
Body: []byte("Hello\xf0world\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Timezone: []byte("+0100"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1517328273},
+ Timezone: []byte("+0100"),
},
ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
BodySize: 12,
@@ -103,14 +109,16 @@ func TestFindCommitsFields(t *testing.T) {
Subject: []byte("Add file larger than 1 mb"),
Body: []byte("Add file larger than 1 mb\n\nIn order to test Max File Size push rule we need a file larger than 1 MB\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Ruben Davila"),
- Email: []byte("rdavila84@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1523247267},
+ Name: []byte("Ruben Davila"),
+ Email: []byte("rdavila84@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1523247267},
+ Timezone: []byte("-0500"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Jacob Vosmaer"),
- Email: []byte("jacob@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1527855450},
+ Name: []byte("Jacob Vosmaer"),
+ Email: []byte("jacob@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1527855450},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
BodySize: 100,
diff --git a/internal/service/commit/last_commit_for_path_test.go b/internal/service/commit/last_commit_for_path_test.go
index ccf581672..d027c6df2 100644
--- a/internal/service/commit/last_commit_for_path_test.go
+++ b/internal/service/commit/last_commit_for_path_test.go
@@ -26,14 +26,16 @@ func TestSuccessfulLastCommitForPathRequest(t *testing.T) {
Subject: []byte("Change some files"),
Body: []byte("Change some files\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491451},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491451},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491451},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491451},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9"},
BodySize: 86,
diff --git a/internal/service/commit/testhelper_test.go b/internal/service/commit/testhelper_test.go
index 4137e9d6c..2c140392a 100644
--- a/internal/service/commit/testhelper_test.go
+++ b/internal/service/commit/testhelper_test.go
@@ -63,8 +63,9 @@ func newCommitServiceClient(t testing.TB, serviceSocketPath string) (gitalypb.Co
func dummyCommitAuthor(ts int64) *gitalypb.CommitAuthor {
return &gitalypb.CommitAuthor{
- Name: []byte("Ahmad Sherif"),
- Email: []byte("ahmad+gitlab-test@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: ts},
+ Name: []byte("Ahmad Sherif"),
+ Email: []byte("ahmad+gitlab-test@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: ts},
+ Timezone: []byte("+0200"),
}
}
diff --git a/internal/service/ref/refs_test.go b/internal/service/ref/refs_test.go
index c50631825..a43b3161f 100644
--- a/internal/service/ref/refs_test.go
+++ b/internal/service/ref/refs_test.go
@@ -447,14 +447,16 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
Subject: []byte("More submodules"),
Body: []byte("More submodules\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
BodySize: 84,
@@ -516,6 +518,12 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("commit tag with a commit sha as the name"),
MessageSize: 40,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("tag-of-tag"),
@@ -523,6 +531,12 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("tag of a tag"),
MessageSize: 12,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("v1.0.0"),
@@ -530,6 +544,12 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("Release"),
MessageSize: 7,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491299},
+ Timezone: []byte("+0200"),
+ },
},
{
Name: []byte("v1.1.0"),
@@ -539,26 +559,40 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
Subject: []byte("Add submodule from gitlab.com"),
Body: []byte("Add submodule from gitlab.com\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
BodySize: 98,
},
Message: []byte("Version 1.1.0"),
MessageSize: 13,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393505709},
+ Timezone: []byte("+0200"),
+ },
},
{
Name: []byte("v1.2.0"),
Id: string(annotatedTagID),
Message: []byte("Blob tag"),
MessageSize: 8,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("v1.3.0"),
@@ -585,6 +619,12 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
Message: []byte(bigMessage[:helper.MaxCommitOrTagMessageSize]),
MessageSize: int64(len(bigMessage)),
TargetCommit: gitCommit,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
}
@@ -659,6 +699,12 @@ func TestFindAllTagNestedTags(t *testing.T) {
Id: string(tagID),
Message: []byte(tagMessage),
MessageSize: int64(len([]byte(tagMessage))),
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
}
// only expect the TargetCommit to be populated if it is a commit and if its less than 10 tags deep
@@ -913,14 +959,16 @@ func TestSuccessfulFindAllBranchesRequest(t *testing.T) {
BodySize: 98,
ParentIds: []string{"cfe32cf61b73a0d5e9f13e774abde7ff789b1660"},
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393488896},
+ Timezone: []byte("+0200"),
},
},
}
@@ -1293,14 +1341,16 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Subject: []byte("More submodules"),
Body: []byte("More submodules\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491261},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
BodySize: 84,
@@ -1347,6 +1397,12 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("commit tag with a commit sha as the name"),
MessageSize: 40,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("tag-of-tag"),
@@ -1354,6 +1410,12 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("tag of a tag"),
MessageSize: 12,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("v1.0.0"),
@@ -1361,6 +1423,12 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
TargetCommit: gitCommit,
Message: []byte("Release"),
MessageSize: 7,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491299},
+ Timezone: []byte("+0200"),
+ },
},
{
Name: []byte("v1.1.0"),
@@ -1370,26 +1438,40 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Subject: []byte("Add submodule from gitlab.com"),
Body: []byte("Add submodule from gitlab.com\n\nSigned-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>\n"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
BodySize: 98,
},
Message: []byte("Version 1.1.0"),
MessageSize: 13,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393505709},
+ Timezone: []byte("+0200"),
+ },
},
{
Name: []byte("v1.2.0"),
Id: string(annotatedTagID),
Message: []byte("Blob tag"),
MessageSize: 8,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
{
Name: []byte("v1.3.0"),
@@ -1416,6 +1498,12 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Message: []byte(bigMessage[:helper.MaxCommitOrTagMessageSize]),
MessageSize: int64(len(bigMessage)),
TargetCommit: gitCommit,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
},
}
@@ -1496,6 +1584,12 @@ func TestFindTagNestedTag(t *testing.T) {
Id: string(tagID),
Message: []byte(tagMessage),
MessageSize: int64(len([]byte(tagMessage))),
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Scrooge McDuck"),
+ Email: []byte("scrooge@mcduck.com"),
+ Date: &timestamp.Timestamp{Seconds: 1572776879},
+ Timezone: []byte("+0100"),
+ },
}
// only expect the TargetCommit to be populated if it is a commit and if its less than 10 tags deep
if info.Type == "commit" && tc.depth < log.MaxTagReferenceDepth {
diff --git a/internal/service/ref/testhelper_test.go b/internal/service/ref/testhelper_test.go
index 7c68f8416..609150b26 100644
--- a/internal/service/ref/testhelper_test.go
+++ b/internal/service/ref/testhelper_test.go
@@ -26,14 +26,16 @@ var (
ParentIds: []string{"6907208d755b60ebeacb2e9dfea74c92c3449a1f", "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e"},
Subject: []byte("Merge branch 'add-directory-with-space' into 'master'"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Stan Hu"),
- Email: []byte("stanhu@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1471558878},
+ Name: []byte("Stan Hu"),
+ Email: []byte("stanhu@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1471558878},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Stan Hu"),
- Email: []byte("stanhu@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1471558878},
+ Name: []byte("Stan Hu"),
+ Email: []byte("stanhu@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1471558878},
+ Timezone: []byte("+0000"),
},
},
"refs/heads/improve/awesome": {
@@ -43,14 +45,16 @@ var (
BodySize: 98,
ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
Author: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Dmitriy Zaporozhets"),
- Email: []byte("dmitriy.zaporozhets@gmail.com"),
- Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Name: []byte("Dmitriy Zaporozhets"),
+ Email: []byte("dmitriy.zaporozhets@gmail.com"),
+ Date: &timestamp.Timestamp{Seconds: 1393491698},
+ Timezone: []byte("+0200"),
},
},
"refs/heads/'test'": {
@@ -60,14 +64,16 @@ var (
BodySize: 317,
ParentIds: []string{"5937ac0a7beb003549fc5fd26fc247adbce4a52e", "4cd80ccab63c82b4bad16faa5193fbd2aa06df40"},
Author: &gitalypb.CommitAuthor{
- Name: []byte("Sytse Sijbrandij"),
- Email: []byte("sytse@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1420925009},
+ Name: []byte("Sytse Sijbrandij"),
+ Email: []byte("sytse@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1420925009},
+ Timezone: []byte("+0000"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Sytse Sijbrandij"),
- Email: []byte("sytse@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1420925009},
+ Name: []byte("Sytse Sijbrandij"),
+ Email: []byte("sytse@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1420925009},
+ Timezone: []byte("+0000"),
},
},
}
diff --git a/internal/service/ref/util.go b/internal/service/ref/util.go
index d4b1120eb..eecc0c49d 100644
--- a/internal/service/ref/util.go
+++ b/internal/service/ref/util.go
@@ -34,17 +34,19 @@ func buildLocalBranch(name []byte, target *gitalypb.GitCommit) *gitalypb.FindLoc
if author := target.Author; author != nil {
response.CommitAuthor = &gitalypb.FindLocalBranchCommitAuthor{
- Name: author.Name,
- Email: author.Email,
- Date: author.Date,
+ Name: author.Name,
+ Email: author.Email,
+ Date: author.Date,
+ Timezone: author.Timezone,
}
}
if committer := target.Committer; committer != nil {
response.CommitCommitter = &gitalypb.FindLocalBranchCommitAuthor{
- Name: committer.Name,
- Email: committer.Email,
- Date: committer.Date,
+ Name: committer.Name,
+ Email: committer.Email,
+ Date: committer.Date,
+ Timezone: committer.Timezone,
}
}
diff --git a/internal/service/ref/util_test.go b/internal/service/ref/util_test.go
index 7a9d40d29..ac09bb8cc 100644
--- a/internal/service/ref/util_test.go
+++ b/internal/service/ref/util_test.go
@@ -21,14 +21,16 @@ func TestBuildLocalBranch(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -41,14 +43,16 @@ func TestBuildLocalBranch(t *testing.T) {
CommitId: "b83d6e391c22777fca1ed3012fce84f633d7fed0",
CommitSubject: []byte("Merge branch 'branch-merged' into 'master'"),
CommitAuthor: &gitalypb.FindLocalBranchCommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
CommitCommitter: &gitalypb.FindLocalBranchCommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
},
},
@@ -59,9 +63,10 @@ func TestBuildLocalBranch(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Committer: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -75,9 +80,10 @@ func TestBuildLocalBranch(t *testing.T) {
CommitSubject: []byte("Merge branch 'branch-merged' into 'master'"),
CommitAuthor: nil,
CommitCommitter: &gitalypb.FindLocalBranchCommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
},
},
@@ -88,9 +94,10 @@ func TestBuildLocalBranch(t *testing.T) {
Subject: []byte("Merge branch 'branch-merged' into 'master'"),
Body: []byte("Merge branch 'branch-merged' into 'master'\r\n\r\nadds bar folder and branch-test text file to check Repository merged_to_root_ref method\r\n\r\n\r\n\r\nSee merge request !12"),
Author: &gitalypb.CommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
ParentIds: []string{
"1b12f15a11fc6e62177bef08f47bc7b5ce50b141",
@@ -103,9 +110,10 @@ func TestBuildLocalBranch(t *testing.T) {
CommitId: "b83d6e391c22777fca1ed3012fce84f633d7fed0",
CommitSubject: []byte("Merge branch 'branch-merged' into 'master'"),
CommitAuthor: &gitalypb.FindLocalBranchCommitAuthor{
- Name: []byte("Job van der Voort"),
- Email: []byte("job@gitlab.com"),
- Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Name: []byte("Job van der Voort"),
+ Email: []byte("job@gitlab.com"),
+ Date: &timestamp.Timestamp{Seconds: 1474987066},
+ Timezone: []byte("+0200"),
},
CommitCommitter: nil,
},
diff --git a/internal/testhelper/testhelper.go b/internal/testhelper/testhelper.go
index f7809b2ee..d547d865a 100644
--- a/internal/testhelper/testhelper.go
+++ b/internal/testhelper/testhelper.go
@@ -165,7 +165,12 @@ func MustRunCommand(t testing.TB, stdin io.Reader, name string, args ...string)
cmd := exec.Command(name, args...)
if name == "git" {
+ cmd.Env = os.Environ()
cmd.Env = append(command.GitEnv, cmd.Env...)
+ cmd.Env = append(cmd.Env,
+ "GIT_AUTHOR_DATE=1572776879 +0100",
+ "GIT_COMMITTER_DATE=1572776879 +0100",
+ )
}
if stdin != nil {
diff --git a/proto/go/gitalypb/ref.pb.go b/proto/go/gitalypb/ref.pb.go
index 85bf911c9..e9753d9d3 100644
--- a/proto/go/gitalypb/ref.pb.go
+++ b/proto/go/gitalypb/ref.pb.go
@@ -672,6 +672,7 @@ type FindLocalBranchCommitAuthor struct {
Name []byte `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Email []byte `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
Date *timestamp.Timestamp `protobuf:"bytes,3,opt,name=date,proto3" json:"date,omitempty"`
+ Timezone []byte `protobuf:"bytes,4,opt,name=timezone,proto3" json:"timezone,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@@ -723,6 +724,13 @@ func (m *FindLocalBranchCommitAuthor) GetDate() *timestamp.Timestamp {
return nil
}
+func (m *FindLocalBranchCommitAuthor) GetTimezone() []byte {
+ if m != nil {
+ return m.Timezone
+ }
+ return nil
+}
+
type FindAllBranchesRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
// Only return branches that are merged into root ref
@@ -2073,113 +2081,114 @@ func init() {
func init() { proto.RegisterFile("ref.proto", fileDescriptor_65d958559ea81b29) }
var fileDescriptor_65d958559ea81b29 = []byte{
- // 1693 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0x5f, 0x73, 0xdb, 0xb8,
- 0x11, 0x0f, 0x65, 0x5b, 0x96, 0x56, 0x8a, 0x4c, 0xc3, 0xff, 0x64, 0x3a, 0x89, 0x1d, 0xe4, 0x9f,
- 0xd3, 0xa4, 0x72, 0xa2, 0x4c, 0xfb, 0xd2, 0xce, 0xb4, 0xb2, 0xad, 0x26, 0x6e, 0x1c, 0xd9, 0x85,
- 0xd4, 0x24, 0xfd, 0x37, 0x2c, 0x25, 0x41, 0x34, 0x5b, 0x4a, 0x54, 0x48, 0x28, 0x8e, 0x67, 0xda,
- 0x3e, 0x75, 0x3a, 0xd3, 0xb9, 0x9b, 0xc9, 0xdb, 0xdd, 0x37, 0xb8, 0xaf, 0x72, 0x0f, 0xf7, 0x8d,
- 0xee, 0xe9, 0x86, 0x00, 0x28, 0x92, 0x12, 0x25, 0x7b, 0x4e, 0x97, 0xbb, 0x27, 0x09, 0x8b, 0xdd,
- 0xdf, 0x2e, 0x16, 0x8b, 0xc5, 0x0f, 0x84, 0xac, 0x4b, 0x3b, 0xa5, 0xbe, 0xeb, 0x30, 0x07, 0xa5,
- 0x4d, 0x8b, 0x19, 0xf6, 0x85, 0x06, 0x4d, 0xdb, 0x69, 0x0a, 0x99, 0x96, 0xf7, 0xce, 0x0c, 0x97,
- 0xb6, 0xe5, 0x68, 0xdb, 0x74, 0x1c, 0xd3, 0xa6, 0x7b, 0x7c, 0xd4, 0x1c, 0x74, 0xf6, 0x98, 0xd5,
- 0xa5, 0x1e, 0x33, 0xba, 0x7d, 0xa1, 0x80, 0xff, 0x05, 0x2b, 0xc7, 0x96, 0xc7, 0x6a, 0xf4, 0x7c,
- 0xdf, 0x76, 0x9a, 0x1e, 0xa1, 0xef, 0x06, 0xd4, 0x63, 0xa8, 0x0c, 0xe0, 0xd2, 0xbe, 0xe3, 0x59,
- 0xcc, 0x71, 0x2f, 0x8a, 0xca, 0x8e, 0xb2, 0x9b, 0x2b, 0xa3, 0x92, 0x70, 0x57, 0x22, 0xc3, 0x19,
- 0x12, 0xd1, 0x42, 0x5b, 0x90, 0x6d, 0x39, 0xdd, 0xae, 0xc5, 0x74, 0xab, 0x5d, 0x4c, 0xed, 0x28,
- 0xbb, 0x59, 0x92, 0x11, 0x82, 0xa3, 0x36, 0x5a, 0x85, 0x05, 0xdb, 0xea, 0x5a, 0xac, 0x38, 0xb7,
- 0xa3, 0xec, 0x5e, 0x27, 0x62, 0x80, 0xdf, 0xc0, 0x6a, 0xdc, 0xbb, 0xd7, 0x77, 0x7a, 0x1e, 0x45,
- 0xbf, 0x01, 0xb5, 0x47, 0xcf, 0x75, 0x7f, 0x59, 0xba, 0xd3, 0xfc, 0x07, 0x6d, 0x31, 0xaf, 0xa8,
- 0xec, 0xcc, 0xed, 0xe6, 0xca, 0x6b, 0x41, 0x10, 0xd2, 0xe6, 0x84, 0xcf, 0x92, 0x42, 0x2f, 0x3a,
- 0xf4, 0x30, 0x81, 0x1b, 0xbf, 0xb3, 0x7a, 0xed, 0x43, 0xda, 0x31, 0x06, 0x36, 0xdb, 0x77, 0x8d,
- 0x5e, 0xeb, 0xac, 0x66, 0x74, 0xe9, 0x0c, 0xeb, 0xc3, 0xcf, 0xe0, 0xe6, 0x04, 0x4c, 0x19, 0x35,
- 0x82, 0xf9, 0x9e, 0xd1, 0xa5, 0x1c, 0x2e, 0x4f, 0xf8, 0x7f, 0x7c, 0x02, 0x9b, 0xbe, 0x51, 0xc5,
- 0xb6, 0x43, 0x83, 0x59, 0xb2, 0x8c, 0xcb, 0xa0, 0x25, 0x01, 0xca, 0x10, 0x56, 0x61, 0xc1, 0x77,
- 0x2b, 0xb2, 0x95, 0x27, 0x62, 0x80, 0x8f, 0x61, 0x5d, 0xda, 0x34, 0x0c, 0x73, 0xe6, 0x08, 0xf6,
- 0x60, 0x63, 0x0c, 0x6d, 0xaa, 0xfb, 0x7f, 0x03, 0xf2, 0x0d, 0x08, 0xed, 0xcc, 0xb8, 0x05, 0xd3,
- 0x4b, 0x6c, 0x1d, 0xd2, 0x7d, 0x97, 0x76, 0xac, 0x0f, 0xbc, 0xc6, 0xf2, 0x44, 0x8e, 0xf0, 0x43,
- 0x58, 0x89, 0xb9, 0x9f, 0xb2, 0x5b, 0x5f, 0x2b, 0x50, 0xf4, 0x75, 0x8f, 0x9d, 0x96, 0x21, 0xf3,
- 0x3b, 0x53, 0xae, 0xd0, 0x6f, 0x61, 0xd1, 0x73, 0x5c, 0xa6, 0x37, 0x2f, 0x78, 0xb8, 0x85, 0xf2,
- 0x83, 0xc0, 0x60, 0x92, 0x9b, 0x52, 0xdd, 0x71, 0xd9, 0xfe, 0x05, 0x49, 0x7b, 0xfc, 0x17, 0xff,
- 0x02, 0xd2, 0x42, 0x82, 0x32, 0x30, 0x5f, 0xab, 0xbc, 0xaa, 0xaa, 0xd7, 0xd0, 0x12, 0xe4, 0xfe,
- 0x78, 0x7a, 0x58, 0x69, 0x54, 0x0f, 0xf5, 0x4a, 0xfd, 0x40, 0x55, 0x90, 0x0a, 0xf9, 0x40, 0x70,
- 0x58, 0xad, 0x1f, 0xa8, 0x29, 0xfc, 0x56, 0xd4, 0xdd, 0x88, 0x07, 0xb9, 0xf4, 0x5f, 0x41, 0xa6,
- 0x29, 0x65, 0xf2, 0x58, 0x6d, 0x4f, 0x08, 0x2b, 0x30, 0x21, 0x43, 0x03, 0xfc, 0x59, 0x4a, 0xec,
- 0x7f, 0x82, 0x56, 0x52, 0x4e, 0xa7, 0xef, 0xd9, 0x3d, 0x28, 0xc8, 0x49, 0x6f, 0xc0, 0x8f, 0xae,
- 0xdc, 0xbb, 0xeb, 0x42, 0x5a, 0x17, 0x42, 0xf4, 0x02, 0xa4, 0x40, 0x37, 0x06, 0xec, 0xcc, 0x71,
- 0x8b, 0xf3, 0x3c, 0xfb, 0x77, 0x26, 0x44, 0x7d, 0xc0, 0x75, 0x2b, 0x5c, 0x95, 0xe4, 0x5b, 0x91,
- 0x11, 0xaa, 0x81, 0x2a, 0x91, 0xc4, 0x0f, 0xa3, 0x6e, 0x71, 0xe1, 0xea, 0x60, 0x4b, 0xc2, 0xea,
- 0x20, 0xb0, 0xc5, 0xe7, 0xb0, 0x35, 0x45, 0x3f, 0x31, 0x21, 0xab, 0xb0, 0x40, 0xbb, 0x86, 0x65,
- 0xf3, 0x64, 0xe4, 0x89, 0x18, 0xa0, 0x12, 0xcc, 0xb7, 0x0d, 0x46, 0xf9, 0xfa, 0x73, 0x65, 0xad,
- 0x24, 0x1a, 0x77, 0x29, 0x68, 0xdc, 0xa5, 0x46, 0xd0, 0xb8, 0x09, 0xd7, 0xc3, 0x5f, 0x28, 0xc3,
- 0x43, 0xfd, 0x43, 0x14, 0xea, 0x36, 0xe4, 0xba, 0xd4, 0x35, 0x69, 0x5b, 0x77, 0x7a, 0xb6, 0x28,
- 0xd6, 0x0c, 0x01, 0x21, 0x3a, 0xe9, 0xd9, 0x17, 0xe8, 0x01, 0x2c, 0x49, 0x85, 0x61, 0xe9, 0xcc,
- 0xf1, 0x43, 0x5e, 0x10, 0xe2, 0x20, 0x08, 0xfc, 0x95, 0x32, 0xec, 0x0f, 0x63, 0x85, 0xb7, 0x3f,
- 0x56, 0x78, 0xf7, 0xa3, 0x59, 0x4f, 0x30, 0x29, 0xc9, 0x0a, 0x1b, 0xda, 0x69, 0xcf, 0x21, 0x2d,
- 0x64, 0x89, 0xc9, 0x7d, 0x08, 0x69, 0x66, 0xb8, 0x26, 0x65, 0x7c, 0x09, 0xb9, 0xf2, 0x72, 0x80,
- 0xff, 0x3c, 0xd8, 0x35, 0x22, 0x15, 0xb0, 0x0e, 0x05, 0xdf, 0x69, 0xc3, 0x30, 0x67, 0x49, 0xdc,
- 0x26, 0x64, 0x98, 0x61, 0xea, 0x3c, 0x10, 0xb1, 0xa1, 0x8b, 0x4c, 0xb4, 0x45, 0xfc, 0x04, 0x96,
- 0x86, 0x0e, 0x64, 0x02, 0x6e, 0xc2, 0x1c, 0x33, 0x4c, 0x09, 0x9d, 0x0b, 0xa0, 0x7d, 0x0d, 0x5f,
- 0x8e, 0x5f, 0x88, 0x4e, 0x29, 0x5a, 0xeb, 0x4c, 0x4d, 0xfa, 0x97, 0xa2, 0xe9, 0x0d, 0x91, 0xa4,
- 0xff, 0x6d, 0x98, 0x67, 0x86, 0x19, 0x24, 0x3f, 0x16, 0x00, 0x9f, 0xc0, 0x6f, 0x41, 0x25, 0xb4,
- 0x53, 0xfd, 0x60, 0x79, 0x6c, 0xa6, 0x7a, 0x52, 0x61, 0xce, 0xa5, 0x1d, 0x99, 0x11, 0xff, 0x2f,
- 0x7e, 0x08, 0xcb, 0x11, 0xe4, 0xf0, 0xc2, 0x78, 0x6f, 0xd8, 0x03, 0xb1, 0x87, 0x19, 0x22, 0x06,
- 0xf8, 0x3f, 0xb0, 0x72, 0xe0, 0x52, 0x83, 0xd1, 0xa0, 0xbd, 0x7c, 0xff, 0x38, 0x82, 0x1a, 0x49,
- 0x45, 0x6a, 0x64, 0x1b, 0x72, 0x1e, 0x33, 0x5c, 0xa6, 0xf7, 0x1d, 0xab, 0x17, 0x74, 0x1c, 0xe0,
- 0xa2, 0x53, 0x5f, 0x82, 0xbf, 0x51, 0x60, 0x35, 0x1e, 0xc0, 0xb0, 0x71, 0xa6, 0x3d, 0x66, 0xb0,
- 0x81, 0xc7, 0xbd, 0x17, 0xc2, 0x9e, 0x91, 0xa4, 0x5d, 0xaa, 0x73, 0x55, 0x22, 0x4d, 0xd0, 0x7d,
- 0x48, 0x8b, 0x22, 0x96, 0xa5, 0x59, 0x08, 0x8c, 0xa5, 0x99, 0x9c, 0xc5, 0x35, 0x48, 0x0b, 0x4b,
- 0x94, 0x86, 0xd4, 0xc9, 0x4b, 0xf5, 0x1a, 0x2a, 0x00, 0x54, 0x09, 0xd1, 0xab, 0x6f, 0x8f, 0xea,
- 0x8d, 0xba, 0xaa, 0xf8, 0xfd, 0xdf, 0x1f, 0x1f, 0xd5, 0x5e, 0x57, 0x8e, 0x8f, 0x0e, 0xd5, 0x14,
- 0xda, 0x82, 0x8d, 0x88, 0x40, 0xaf, 0x37, 0x2a, 0xa4, 0xa1, 0x9f, 0x9e, 0x1c, 0xd5, 0x1a, 0xea,
- 0x1c, 0xfe, 0x1b, 0xac, 0x1c, 0x52, 0x9b, 0x7e, 0xa2, 0x6c, 0xe2, 0x75, 0x58, 0x8d, 0xc3, 0x8b,
- 0xd5, 0xe3, 0xbf, 0xc0, 0xb2, 0x5f, 0x81, 0x9f, 0xc6, 0xe9, 0xaf, 0xc5, 0x41, 0x19, 0xd9, 0x9e,
- 0x30, 0xc3, 0xca, 0xd4, 0x0c, 0xff, 0x5f, 0x81, 0x65, 0x11, 0x33, 0xa1, 0x9d, 0x99, 0xca, 0xfc,
- 0x31, 0x20, 0xfa, 0xa1, 0x45, 0xfb, 0x4c, 0x3f, 0xb7, 0xd8, 0x99, 0x2e, 0xf9, 0x47, 0x8a, 0x37,
- 0x46, 0x55, 0xcc, 0xbc, 0xb1, 0xd8, 0xd9, 0x29, 0x97, 0xfb, 0x2b, 0x71, 0x69, 0x27, 0x68, 0x9c,
- 0xfc, 0x3f, 0x7e, 0x0a, 0x28, 0x1a, 0x8a, 0x5c, 0xc9, 0x16, 0x64, 0x4d, 0x8b, 0xe9, 0xd4, 0x75,
- 0x1d, 0x97, 0x87, 0x92, 0x25, 0x19, 0xd3, 0x62, 0x55, 0x7f, 0x8c, 0x3f, 0x2a, 0x70, 0xdf, 0xa7,
- 0xcd, 0x11, 0x02, 0x78, 0xe0, 0xf4, 0x98, 0x61, 0xf5, 0xac, 0x9e, 0x29, 0x9b, 0xdc, 0x8f, 0xcb,
- 0xe3, 0x09, 0x3c, 0xb8, 0x34, 0x20, 0xb9, 0xb2, 0xdb, 0x90, 0x17, 0xbb, 0xa0, 0x0b, 0xa6, 0x28,
- 0x72, 0x95, 0x6b, 0x86, 0xa6, 0xbf, 0x9f, 0xcf, 0x28, 0x6a, 0x0a, 0x7f, 0xae, 0xc0, 0x1d, 0x1f,
- 0x34, 0x20, 0x99, 0x3f, 0xf1, 0x12, 0x8f, 0xe0, 0xee, 0xf4, 0x68, 0xc2, 0x9d, 0x0b, 0xee, 0x83,
- 0x60, 0x71, 0x19, 0x79, 0x21, 0x04, 0x2b, 0x1b, 0xc0, 0xda, 0x73, 0xea, 0x23, 0xbd, 0xa2, 0x9e,
- 0x67, 0x98, 0xb3, 0x5d, 0xdc, 0x1b, 0xe0, 0xdf, 0x37, 0xba, 0xd5, 0x16, 0x65, 0x95, 0xf5, 0xaf,
- 0x37, 0xf3, 0xa8, 0xed, 0xfb, 0x4a, 0xa9, 0x73, 0x24, 0x0c, 0x06, 0xff, 0x09, 0xd6, 0x47, 0xdd,
- 0xca, 0x98, 0x8b, 0xb0, 0xd8, 0x15, 0xb2, 0xe0, 0x0a, 0x93, 0x43, 0xb4, 0xe6, 0x5f, 0xa7, 0x3e,
- 0x3a, 0x4f, 0x46, 0x96, 0x2c, 0x70, 0x70, 0xb1, 0x0e, 0x32, 0xbc, 0xf8, 0xf0, 0x19, 0xac, 0xc9,
- 0x77, 0x9c, 0xc8, 0xc6, 0x27, 0x7b, 0x47, 0xe2, 0x2a, 0xac, 0x8f, 0x7a, 0x92, 0x8b, 0x78, 0x04,
- 0x8b, 0x42, 0x2b, 0xb8, 0xdd, 0x12, 0xae, 0xfe, 0x40, 0x03, 0x7b, 0xe2, 0x7d, 0x58, 0xb1, 0x6d,
- 0x42, 0xbb, 0x4e, 0xd0, 0xbb, 0x66, 0xa6, 0x50, 0x2e, 0x07, 0x0b, 0xc9, 0x40, 0xd6, 0x57, 0xf0,
- 0x45, 0x9c, 0x0f, 0xbc, 0x14, 0x0f, 0xc8, 0x04, 0xa7, 0x72, 0x09, 0x3f, 0x1b, 0xa3, 0x47, 0xa3,
- 0x1d, 0x2c, 0xa4, 0xe1, 0x7f, 0x87, 0xa5, 0x53, 0xa3, 0xf5, 0xcf, 0x59, 0x1b, 0xd8, 0x26, 0x64,
- 0x0c, 0xdb, 0xd6, 0x79, 0x5b, 0x12, 0xa4, 0x6f, 0xd1, 0xf0, 0xe3, 0xeb, 0x78, 0x18, 0x81, 0x1a,
- 0x7a, 0x10, 0x11, 0x96, 0xff, 0xbb, 0x04, 0x40, 0x68, 0xa7, 0x4e, 0xdd, 0xf7, 0x56, 0x8b, 0x22,
- 0x07, 0xd6, 0x12, 0x9f, 0xc4, 0xe8, 0x6e, 0x94, 0xd6, 0x4d, 0x7a, 0x85, 0x6b, 0xf7, 0x2e, 0xd1,
- 0x92, 0x37, 0x49, 0xf6, 0xdb, 0x2f, 0x77, 0x17, 0x32, 0x29, 0x4d, 0x79, 0x8a, 0xce, 0x86, 0x04,
- 0x29, 0xd2, 0x6b, 0xd0, 0xed, 0x44, 0x12, 0x19, 0x7d, 0xe8, 0x6a, 0x78, 0x9a, 0xca, 0x98, 0x9f,
- 0x27, 0x0a, 0xd2, 0x05, 0x79, 0x8b, 0xbc, 0x72, 0xd1, 0xad, 0x11, 0x8c, 0x91, 0xc7, 0xb4, 0xb6,
- 0x3d, 0x71, 0x3e, 0xc9, 0xc1, 0x1f, 0x20, 0x17, 0x79, 0x96, 0x22, 0x2d, 0x6a, 0x1c, 0x7f, 0x2a,
- 0x6b, 0x5b, 0x89, 0x73, 0xe3, 0xd9, 0xa1, 0xe2, 0xca, 0x8d, 0x3d, 0xfa, 0xd0, 0xce, 0x65, 0x2f,
- 0x4e, 0xed, 0xf6, 0x14, 0x8d, 0xe9, 0xa9, 0x19, 0x3a, 0xb9, 0x35, 0x91, 0xc6, 0x27, 0xa7, 0x66,
- 0xba, 0x83, 0xba, 0x48, 0x8d, 0x24, 0xaf, 0xf1, 0xd4, 0xc4, 0xb9, 0x71, 0x3c, 0x35, 0x23, 0x6c,
- 0x37, 0x0e, 0x5a, 0x85, 0x45, 0xc9, 0xc6, 0xd1, 0x7a, 0xd4, 0x28, 0xe4, 0xff, 0xda, 0xc6, 0x98,
- 0x7c, 0x3c, 0xc7, 0xef, 0x44, 0xc9, 0x8f, 0x1d, 0xe2, 0x78, 0xc9, 0x4f, 0x6a, 0x2c, 0xf1, 0x92,
- 0x9f, 0xd8, 0x09, 0xe2, 0x91, 0xbf, 0x84, 0xec, 0x90, 0x39, 0xa3, 0x62, 0x78, 0xa0, 0xe3, 0x34,
- 0x5d, 0xdb, 0x4c, 0x98, 0x19, 0x8f, 0xbf, 0x01, 0xf9, 0x28, 0x59, 0x45, 0x5b, 0xc9, 0x14, 0x56,
- 0x40, 0xde, 0x98, 0xc6, 0x6f, 0x25, 0xaa, 0x22, 0x51, 0xa3, 0x24, 0x30, 0x44, 0x4d, 0x60, 0x9e,
- 0x21, 0x6a, 0x22, 0x6f, 0x8c, 0xa0, 0xd6, 0x00, 0x42, 0x96, 0x87, 0x36, 0xa3, 0xa9, 0x8b, 0x23,
- 0x6a, 0x49, 0x53, 0xe3, 0x6b, 0xaf, 0x01, 0x84, 0x5c, 0x2b, 0xc4, 0x1b, 0xa3, 0x82, 0x21, 0xde,
- 0x38, 0x35, 0x8b, 0xc6, 0xf7, 0x51, 0x81, 0xed, 0x4b, 0x78, 0x0f, 0x2a, 0x05, 0x50, 0x57, 0x63,
- 0x6c, 0xda, 0xde, 0x95, 0xf5, 0x93, 0x4a, 0xe5, 0x7f, 0x0a, 0xdc, 0x98, 0x46, 0x53, 0xd0, 0xa3,
- 0x28, 0xfc, 0x25, 0xd4, 0x4a, 0x7b, 0x7c, 0x35, 0xe5, 0xa4, 0x40, 0xfe, 0x0a, 0x85, 0x38, 0xd9,
- 0x40, 0x37, 0x87, 0xd7, 0x71, 0x12, 0xf7, 0xd1, 0x6e, 0x4d, 0x9a, 0x9e, 0x80, 0x1e, 0x67, 0x01,
- 0x21, 0x7a, 0x22, 0x0f, 0x09, 0xd1, 0x93, 0xc9, 0x43, 0x1c, 0xfd, 0x35, 0xe4, 0xa3, 0x5f, 0xa5,
- 0xc3, 0x62, 0x4e, 0xf8, 0x52, 0x1e, 0x16, 0x73, 0xd2, 0x87, 0xec, 0x38, 0xee, 0x0b, 0xc8, 0x04,
- 0x17, 0x2a, 0x1a, 0xb6, 0x9a, 0x91, 0x4b, 0x5c, 0x2b, 0x8e, 0x4f, 0x8c, 0x15, 0xde, 0xfe, 0x93,
- 0x3f, 0xfb, 0x5a, 0xb6, 0xd1, 0x2c, 0xb5, 0x9c, 0xee, 0x9e, 0xf8, 0xfb, 0x73, 0xc7, 0x35, 0xf7,
- 0x84, 0xad, 0xf8, 0xdc, 0xbf, 0x67, 0x3a, 0x72, 0xdc, 0x6f, 0x36, 0xd3, 0x5c, 0xf4, 0xec, 0xbb,
- 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x4b, 0x81, 0x9a, 0x3e, 0x18, 0x00, 0x00,
+ // 1706 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0xdb, 0x72, 0x1b, 0x4d,
+ 0x11, 0xfe, 0x57, 0xb6, 0x65, 0xa9, 0xa5, 0xc8, 0xeb, 0xf1, 0x49, 0x5e, 0x27, 0xb1, 0x33, 0x39,
+ 0x39, 0x24, 0xc8, 0x89, 0x52, 0x70, 0x03, 0x55, 0x20, 0xdb, 0x22, 0x31, 0x71, 0x64, 0x33, 0x12,
+ 0x49, 0x38, 0xd5, 0xb2, 0x92, 0x46, 0xeb, 0x85, 0x95, 0x56, 0xd9, 0x1d, 0x25, 0x31, 0x05, 0x5c,
+ 0x51, 0x54, 0x51, 0x50, 0x95, 0x0b, 0xaa, 0xe0, 0x0d, 0x78, 0x15, 0x2e, 0x78, 0x23, 0xae, 0xa8,
+ 0x9d, 0x99, 0x3d, 0x49, 0x2b, 0xd9, 0x85, 0x08, 0xff, 0x55, 0x34, 0x3d, 0xdd, 0x5f, 0xf7, 0xf4,
+ 0xf4, 0x76, 0x7f, 0xe3, 0x40, 0xde, 0xa5, 0xbd, 0xca, 0xd0, 0x75, 0x98, 0x83, 0xb2, 0xa6, 0xc5,
+ 0x0c, 0xfb, 0x52, 0x83, 0xb6, 0xed, 0xb4, 0x85, 0x4c, 0x2b, 0x7a, 0x17, 0x86, 0x4b, 0xbb, 0x72,
+ 0xb5, 0x6b, 0x3a, 0x8e, 0x69, 0xd3, 0x03, 0xbe, 0x6a, 0x8f, 0x7a, 0x07, 0xcc, 0xea, 0x53, 0x8f,
+ 0x19, 0xfd, 0xa1, 0x50, 0xc0, 0xbf, 0x85, 0xb5, 0x53, 0xcb, 0x63, 0x0d, 0xfa, 0xf1, 0xd0, 0x76,
+ 0xda, 0x1e, 0xa1, 0xef, 0x47, 0xd4, 0x63, 0xa8, 0x0a, 0xe0, 0xd2, 0xa1, 0xe3, 0x59, 0xcc, 0x71,
+ 0x2f, 0xcb, 0xca, 0x9e, 0xb2, 0x5f, 0xa8, 0xa2, 0x8a, 0x70, 0x57, 0x21, 0xe1, 0x0e, 0x89, 0x69,
+ 0xa1, 0x1d, 0xc8, 0x77, 0x9c, 0x7e, 0xdf, 0x62, 0xba, 0xd5, 0x2d, 0x67, 0xf6, 0x94, 0xfd, 0x3c,
+ 0xc9, 0x09, 0xc1, 0x49, 0x17, 0xad, 0xc3, 0x92, 0x6d, 0xf5, 0x2d, 0x56, 0x5e, 0xd8, 0x53, 0xf6,
+ 0x6f, 0x10, 0xb1, 0xc0, 0x6f, 0x61, 0x3d, 0xe9, 0xdd, 0x1b, 0x3a, 0x03, 0x8f, 0xa2, 0xef, 0x81,
+ 0x3a, 0xa0, 0x1f, 0x75, 0xff, 0x58, 0xba, 0xd3, 0xfe, 0x15, 0xed, 0x30, 0xaf, 0xac, 0xec, 0x2d,
+ 0xec, 0x17, 0xaa, 0x1b, 0x41, 0x10, 0xd2, 0xe6, 0x8c, 0xef, 0x92, 0xd2, 0x20, 0xbe, 0xf4, 0x30,
+ 0x81, 0x9b, 0x3f, 0xb0, 0x06, 0xdd, 0x63, 0xda, 0x33, 0x46, 0x36, 0x3b, 0x74, 0x8d, 0x41, 0xe7,
+ 0xa2, 0x61, 0xf4, 0xe9, 0x1c, 0xe7, 0xc3, 0xcf, 0xe1, 0xd6, 0x14, 0x4c, 0x19, 0x35, 0x82, 0xc5,
+ 0x81, 0xd1, 0xa7, 0x1c, 0xae, 0x48, 0xf8, 0x6f, 0x7c, 0x06, 0xdb, 0xbe, 0x51, 0xcd, 0xb6, 0x23,
+ 0x83, 0x79, 0xb2, 0x8c, 0xab, 0xa0, 0xa5, 0x01, 0xca, 0x10, 0xd6, 0x61, 0xc9, 0x77, 0x2b, 0xb2,
+ 0x55, 0x24, 0x62, 0x81, 0x4f, 0x61, 0x53, 0xda, 0xb4, 0x0c, 0x73, 0xee, 0x08, 0x0e, 0x60, 0x6b,
+ 0x02, 0x6d, 0xa6, 0xfb, 0xdf, 0x01, 0xf2, 0x0d, 0x08, 0xed, 0xcd, 0x79, 0x05, 0xb3, 0x4b, 0x6c,
+ 0x13, 0xb2, 0x43, 0x97, 0xf6, 0xac, 0x4f, 0xbc, 0xc6, 0x8a, 0x44, 0xae, 0xf0, 0x23, 0x58, 0x4b,
+ 0xb8, 0x9f, 0x71, 0x5b, 0xff, 0x54, 0xa0, 0xec, 0xeb, 0x9e, 0x3a, 0x1d, 0x43, 0xe6, 0x77, 0xae,
+ 0x5c, 0xa1, 0xef, 0xc3, 0xb2, 0xe7, 0xb8, 0x4c, 0x6f, 0x5f, 0xf2, 0x70, 0x4b, 0xd5, 0x87, 0x81,
+ 0xc1, 0x34, 0x37, 0x95, 0xa6, 0xe3, 0xb2, 0xc3, 0x4b, 0x92, 0xf5, 0xf8, 0xbf, 0xf8, 0x5b, 0x90,
+ 0x15, 0x12, 0x94, 0x83, 0xc5, 0x46, 0xed, 0x75, 0x5d, 0xfd, 0x0a, 0xad, 0x40, 0xe1, 0xc7, 0xe7,
+ 0xc7, 0xb5, 0x56, 0xfd, 0x58, 0xaf, 0x35, 0x8f, 0x54, 0x05, 0xa9, 0x50, 0x0c, 0x04, 0xc7, 0xf5,
+ 0xe6, 0x91, 0x9a, 0xc1, 0xef, 0x44, 0xdd, 0x8d, 0x79, 0x90, 0x47, 0xff, 0x0e, 0xe4, 0xda, 0x52,
+ 0x26, 0x3f, 0xab, 0xdd, 0x29, 0x61, 0x05, 0x26, 0x24, 0x34, 0xc0, 0x7f, 0xce, 0x88, 0xfb, 0x4f,
+ 0xd1, 0x4a, 0xcb, 0xe9, 0xec, 0x3b, 0xbb, 0x0f, 0x25, 0xb9, 0xe9, 0x8d, 0xf8, 0xa7, 0x2b, 0xef,
+ 0xee, 0x86, 0x90, 0x36, 0x85, 0x10, 0xbd, 0x04, 0x29, 0xd0, 0x8d, 0x11, 0xbb, 0x70, 0xdc, 0xf2,
+ 0x22, 0xcf, 0xfe, 0xdd, 0x29, 0x51, 0x1f, 0x71, 0xdd, 0x1a, 0x57, 0x25, 0xc5, 0x4e, 0x6c, 0x85,
+ 0x1a, 0xa0, 0x4a, 0x24, 0xf1, 0x0f, 0xa3, 0x6e, 0x79, 0xe9, 0xfa, 0x60, 0x2b, 0xc2, 0xea, 0x28,
+ 0xb0, 0xc5, 0x7f, 0x55, 0x60, 0x67, 0x86, 0x41, 0x6a, 0x46, 0xd6, 0x61, 0x89, 0xf6, 0x0d, 0xcb,
+ 0xe6, 0xd9, 0x28, 0x12, 0xb1, 0x40, 0x15, 0x58, 0xec, 0x1a, 0x8c, 0xf2, 0x04, 0x14, 0xaa, 0x5a,
+ 0x45, 0x74, 0xee, 0x4a, 0xd0, 0xb9, 0x2b, 0xad, 0xa0, 0x73, 0x13, 0xae, 0x87, 0x34, 0xc8, 0xf9,
+ 0xcd, 0xfc, 0x37, 0xce, 0x80, 0xf2, 0x74, 0x14, 0x49, 0xb8, 0xc6, 0x7f, 0x53, 0xc2, 0x2f, 0xfe,
+ 0x7f, 0x51, 0xc5, 0xbb, 0x50, 0xe8, 0x53, 0xd7, 0xa4, 0x5d, 0xdd, 0x19, 0xd8, 0xa2, 0x92, 0x73,
+ 0x04, 0x84, 0xe8, 0x6c, 0x60, 0x5f, 0xa2, 0x87, 0xb0, 0x22, 0x15, 0xc2, 0xba, 0x5a, 0xe0, 0x1d,
+ 0xa0, 0x24, 0xc4, 0x41, 0x10, 0xf8, 0x1f, 0x4a, 0xd8, 0x3c, 0x26, 0xaa, 0xf2, 0x70, 0xa2, 0x2a,
+ 0x1f, 0xc4, 0xaf, 0x24, 0xc5, 0xa4, 0x22, 0xcb, 0x2f, 0xb4, 0xd3, 0x5e, 0x40, 0x56, 0xc8, 0x52,
+ 0x13, 0xff, 0x08, 0xb2, 0xcc, 0x70, 0x4d, 0xca, 0xf8, 0x11, 0x0a, 0xd5, 0xd5, 0x00, 0xff, 0x45,
+ 0x70, 0xa5, 0x44, 0x2a, 0x60, 0x1d, 0x4a, 0xbe, 0xd3, 0x96, 0x61, 0xce, 0x93, 0xb8, 0x6d, 0xc8,
+ 0x31, 0xc3, 0xd4, 0x79, 0x20, 0xe2, 0xb2, 0x97, 0x99, 0xe8, 0x99, 0xf8, 0x29, 0xac, 0x84, 0x0e,
+ 0x64, 0x02, 0x6e, 0xc1, 0x02, 0x33, 0x4c, 0x09, 0x5d, 0x08, 0xa0, 0x7d, 0x0d, 0x5f, 0x8e, 0x5f,
+ 0x8a, 0x36, 0x2a, 0xfa, 0xee, 0x5c, 0x1d, 0xfc, 0xdb, 0xa2, 0x23, 0x86, 0x48, 0xd2, 0xff, 0x2e,
+ 0x2c, 0x32, 0xc3, 0x0c, 0x92, 0x9f, 0x08, 0x80, 0x6f, 0xe0, 0x77, 0xa0, 0x12, 0xda, 0xab, 0x7f,
+ 0xb2, 0x3c, 0x36, 0x57, 0x3d, 0xa9, 0xb0, 0xe0, 0xd2, 0x9e, 0xcc, 0x88, 0xff, 0x13, 0x3f, 0x82,
+ 0xd5, 0x18, 0x72, 0x34, 0x4d, 0x3e, 0x18, 0xf6, 0x48, 0xdc, 0x61, 0x8e, 0x88, 0x05, 0xfe, 0x3d,
+ 0xac, 0x1d, 0xb9, 0xd4, 0x60, 0x34, 0xe8, 0x3d, 0xff, 0x7d, 0x1c, 0x41, 0x8d, 0x64, 0x62, 0x35,
+ 0xb2, 0x0b, 0x05, 0x8f, 0x19, 0x2e, 0xd3, 0x87, 0x8e, 0x35, 0x08, 0xda, 0x11, 0x70, 0xd1, 0xb9,
+ 0x2f, 0xc1, 0xff, 0x52, 0x60, 0x3d, 0x19, 0x40, 0xd8, 0x55, 0xb3, 0x1e, 0x33, 0xd8, 0xc8, 0xe3,
+ 0xde, 0x4b, 0x51, 0x43, 0x49, 0xd3, 0xae, 0x34, 0xb9, 0x2a, 0x91, 0x26, 0xe8, 0x01, 0x64, 0x45,
+ 0x11, 0xcb, 0xd2, 0x2c, 0x05, 0xc6, 0xd2, 0x4c, 0xee, 0xe2, 0x06, 0x64, 0x85, 0x25, 0xca, 0x42,
+ 0xe6, 0xec, 0x95, 0xfa, 0x15, 0x2a, 0x01, 0xd4, 0x09, 0xd1, 0xeb, 0xef, 0x4e, 0x9a, 0xad, 0xa6,
+ 0xaa, 0xf8, 0xc3, 0xc1, 0x5f, 0x9f, 0x34, 0xde, 0xd4, 0x4e, 0x4f, 0x8e, 0xd5, 0x0c, 0xda, 0x81,
+ 0xad, 0x98, 0x40, 0x6f, 0xb6, 0x6a, 0xa4, 0xa5, 0x9f, 0x9f, 0x9d, 0x34, 0x5a, 0xea, 0x02, 0xfe,
+ 0x05, 0xac, 0x1d, 0x53, 0x9b, 0x7e, 0xa1, 0x6c, 0xe2, 0x4d, 0x58, 0x4f, 0xc2, 0x8b, 0xd3, 0xe3,
+ 0x9f, 0xc1, 0xaa, 0x5f, 0x81, 0x5f, 0xc6, 0xe9, 0x77, 0xc5, 0x87, 0x32, 0x76, 0x3d, 0x51, 0x86,
+ 0x95, 0x99, 0x19, 0xfe, 0x93, 0x02, 0xab, 0x22, 0x66, 0x42, 0x7b, 0x73, 0x95, 0xf9, 0x13, 0x40,
+ 0xf4, 0x53, 0x87, 0x0e, 0x99, 0xfe, 0xd1, 0x62, 0x17, 0xba, 0x24, 0x27, 0x19, 0xde, 0x18, 0x55,
+ 0xb1, 0xf3, 0xd6, 0x62, 0x17, 0xe7, 0x5c, 0xee, 0x9f, 0xc4, 0xa5, 0xbd, 0xa0, 0x71, 0xf2, 0xdf,
+ 0xf8, 0x19, 0xa0, 0x78, 0x28, 0xf2, 0x24, 0x3b, 0x90, 0x37, 0x2d, 0xa6, 0x53, 0xd7, 0x75, 0x5c,
+ 0x1e, 0x4a, 0x9e, 0xe4, 0x4c, 0x8b, 0xd5, 0xfd, 0x35, 0xfe, 0xac, 0xc0, 0x03, 0x9f, 0x53, 0xc7,
+ 0xd8, 0xe1, 0x91, 0x33, 0x60, 0x86, 0x35, 0xb0, 0x06, 0xa6, 0x6c, 0x72, 0xff, 0x5f, 0x92, 0x4f,
+ 0xe0, 0xe1, 0x95, 0x01, 0xc9, 0x93, 0xdd, 0x81, 0xa2, 0xb8, 0x05, 0x5d, 0xd0, 0x48, 0x91, 0xab,
+ 0x42, 0x3b, 0x32, 0xfd, 0xe1, 0x62, 0x4e, 0x51, 0x33, 0xf8, 0x2f, 0x0a, 0xdc, 0xf5, 0x41, 0x03,
+ 0x06, 0xfa, 0x35, 0x1f, 0xf1, 0x04, 0xee, 0xcd, 0x8e, 0x26, 0xba, 0xb9, 0x60, 0x1e, 0x04, 0x87,
+ 0xcb, 0xc9, 0x81, 0x10, 0x9c, 0x6c, 0x04, 0x1b, 0x2f, 0xa8, 0x8f, 0xf4, 0x9a, 0x7a, 0x9e, 0x61,
+ 0xce, 0x37, 0xb8, 0xb7, 0xc0, 0x9f, 0x37, 0xba, 0xd5, 0x15, 0x65, 0x95, 0xf7, 0xc7, 0x9b, 0x79,
+ 0xd2, 0xf5, 0x7d, 0x65, 0xd4, 0x05, 0x12, 0x05, 0x83, 0x7f, 0x02, 0x9b, 0xe3, 0x6e, 0x65, 0xcc,
+ 0x65, 0x58, 0xee, 0x0b, 0x59, 0x30, 0xc2, 0xe4, 0x12, 0x6d, 0xf8, 0xe3, 0xd4, 0x47, 0xe7, 0xc9,
+ 0xc8, 0x93, 0x25, 0x0e, 0x2e, 0xce, 0x41, 0xc2, 0xc1, 0x87, 0x2f, 0x60, 0x43, 0x3e, 0xf2, 0x44,
+ 0x36, 0xbe, 0xd8, 0x23, 0x13, 0xd7, 0x61, 0x73, 0xdc, 0x93, 0x3c, 0xc4, 0x63, 0x58, 0x16, 0x5a,
+ 0xc1, 0x74, 0x4b, 0x19, 0xfd, 0x81, 0x06, 0xf6, 0xc4, 0xe3, 0xb1, 0x66, 0xdb, 0x84, 0xf6, 0x9d,
+ 0xa0, 0x77, 0xcd, 0x4d, 0xa1, 0x5c, 0x0e, 0x16, 0x91, 0x81, 0xbc, 0xaf, 0xe0, 0x8b, 0x38, 0x1f,
+ 0x78, 0x25, 0x5e, 0x97, 0x29, 0x4e, 0xe5, 0x11, 0xbe, 0x31, 0x41, 0x8f, 0xc6, 0x3b, 0x58, 0xc4,
+ 0xd1, 0x7f, 0x09, 0x2b, 0xe7, 0x46, 0xe7, 0xd7, 0xf3, 0x36, 0xb0, 0x6d, 0xc8, 0x19, 0xb6, 0xad,
+ 0xf3, 0xb6, 0x24, 0x48, 0xdf, 0xb2, 0xe1, 0xc7, 0xd7, 0xf3, 0x30, 0x02, 0x35, 0xf2, 0x20, 0x22,
+ 0xac, 0xfe, 0x61, 0x05, 0x80, 0xd0, 0x5e, 0x93, 0xba, 0x1f, 0xac, 0x0e, 0x45, 0x0e, 0x6c, 0xa4,
+ 0xbe, 0x97, 0xd1, 0xbd, 0x38, 0xad, 0x9b, 0xf6, 0x44, 0xd7, 0xee, 0x5f, 0xa1, 0x25, 0x27, 0x49,
+ 0xfe, 0xdf, 0x7f, 0xdf, 0x5f, 0xca, 0x65, 0x34, 0xe5, 0x19, 0xba, 0x08, 0x09, 0x52, 0xac, 0xd7,
+ 0xa0, 0x3b, 0xa9, 0x24, 0x32, 0xfe, 0x0a, 0xd6, 0xf0, 0x2c, 0x95, 0x09, 0x3f, 0x4f, 0x15, 0xa4,
+ 0x0b, 0xf2, 0x16, 0x7b, 0x02, 0xa3, 0xdb, 0x63, 0x18, 0x63, 0x2f, 0x6d, 0x6d, 0x77, 0xea, 0x7e,
+ 0x9a, 0x83, 0x1f, 0x41, 0x21, 0xf6, 0x66, 0x45, 0x5a, 0xdc, 0x38, 0xf9, 0x8e, 0xd6, 0x76, 0x52,
+ 0xf7, 0x26, 0xb3, 0x43, 0xc5, 0xc8, 0x4d, 0xbc, 0x08, 0xd1, 0xde, 0x55, 0xcf, 0x51, 0xed, 0xce,
+ 0x0c, 0x8d, 0xd9, 0xa9, 0x09, 0x9d, 0xdc, 0x9e, 0x4a, 0xe3, 0xd3, 0x53, 0x33, 0xdb, 0x41, 0x53,
+ 0xa4, 0x46, 0x92, 0xd7, 0x64, 0x6a, 0x92, 0xdc, 0x38, 0x99, 0x9a, 0x31, 0xb6, 0x9b, 0x04, 0xad,
+ 0xc3, 0xb2, 0x64, 0xe3, 0x68, 0x33, 0x6e, 0x14, 0xf1, 0x7f, 0x6d, 0x6b, 0x42, 0x3e, 0x99, 0xe3,
+ 0xf7, 0xa2, 0xe4, 0x27, 0x3e, 0xe2, 0x64, 0xc9, 0x4f, 0x6b, 0x2c, 0xc9, 0x92, 0x9f, 0xda, 0x09,
+ 0x92, 0x91, 0xbf, 0x82, 0x7c, 0xc8, 0x9c, 0x51, 0x39, 0xfa, 0xa0, 0x93, 0x34, 0x5d, 0xdb, 0x4e,
+ 0xd9, 0x99, 0x8c, 0xbf, 0x05, 0xc5, 0x38, 0x59, 0x45, 0x3b, 0xe9, 0x14, 0x56, 0x40, 0xde, 0x9c,
+ 0xc5, 0x6f, 0x25, 0xaa, 0x22, 0x51, 0xe3, 0x24, 0x30, 0x42, 0x4d, 0x61, 0x9e, 0x11, 0x6a, 0x2a,
+ 0x6f, 0x8c, 0xa1, 0x36, 0x00, 0x22, 0x96, 0x87, 0xb6, 0xe3, 0xa9, 0x4b, 0x22, 0x6a, 0x69, 0x5b,
+ 0x93, 0x67, 0x6f, 0x00, 0x44, 0x5c, 0x2b, 0xc2, 0x9b, 0xa0, 0x82, 0x11, 0xde, 0x24, 0x35, 0x8b,
+ 0xc7, 0xf7, 0x59, 0x81, 0xdd, 0x2b, 0x78, 0x0f, 0xaa, 0x04, 0x50, 0xd7, 0x63, 0x6c, 0xda, 0xc1,
+ 0xb5, 0xf5, 0xd3, 0x4a, 0xe5, 0x8f, 0x0a, 0xdc, 0x9c, 0x45, 0x53, 0xd0, 0xe3, 0x38, 0xfc, 0x15,
+ 0xd4, 0x4a, 0x7b, 0x72, 0x3d, 0xe5, 0xb4, 0x40, 0x7e, 0x0e, 0xa5, 0x24, 0xd9, 0x40, 0xb7, 0xc2,
+ 0x71, 0x9c, 0xc6, 0x7d, 0xb4, 0xdb, 0xd3, 0xb6, 0xa7, 0xa0, 0x27, 0x59, 0x40, 0x84, 0x9e, 0xca,
+ 0x43, 0x22, 0xf4, 0x74, 0xf2, 0x90, 0x44, 0x7f, 0x03, 0xc5, 0xf8, 0x9f, 0xac, 0xa3, 0x62, 0x4e,
+ 0xf9, 0x33, 0x7a, 0x54, 0xcc, 0x69, 0x7f, 0xe5, 0x4e, 0xe2, 0xbe, 0x84, 0x5c, 0x30, 0x50, 0x51,
+ 0xd8, 0x6a, 0xc6, 0x86, 0xb8, 0x56, 0x9e, 0xdc, 0x98, 0x28, 0xbc, 0xc3, 0xa7, 0x3f, 0xf5, 0xb5,
+ 0x6c, 0xa3, 0x5d, 0xe9, 0x38, 0xfd, 0x03, 0xf1, 0xf3, 0x9b, 0x8e, 0x6b, 0x1e, 0x08, 0x5b, 0xf1,
+ 0x7f, 0x01, 0x07, 0xa6, 0x23, 0xd7, 0xc3, 0x76, 0x3b, 0xcb, 0x45, 0xcf, 0xff, 0x13, 0x00, 0x00,
+ 0xff, 0xff, 0x7d, 0xe4, 0x3f, 0x87, 0x5b, 0x18, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
diff --git a/proto/go/gitalypb/shared.pb.go b/proto/go/gitalypb/shared.pb.go
index 43c7b4cb7..1b1fa2d8d 100644
--- a/proto/go/gitalypb/shared.pb.go
+++ b/proto/go/gitalypb/shared.pb.go
@@ -378,6 +378,7 @@ type CommitAuthor struct {
Name []byte `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Email []byte `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
Date *timestamp.Timestamp `protobuf:"bytes,3,opt,name=date,proto3" json:"date,omitempty"`
+ Timezone []byte `protobuf:"bytes,4,opt,name=timezone,proto3" json:"timezone,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@@ -429,6 +430,13 @@ func (m *CommitAuthor) GetDate() *timestamp.Timestamp {
return nil
}
+func (m *CommitAuthor) GetTimezone() []byte {
+ if m != nil {
+ return m.Timezone
+ }
+ return nil
+}
+
type ExitStatus struct {
Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -728,63 +736,64 @@ func init() {
func init() { proto.RegisterFile("shared.proto", fileDescriptor_d8a4e87e678c5ced) }
var fileDescriptor_d8a4e87e678c5ced = []byte{
- // 920 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xdd, 0x6e, 0xe3, 0xc4,
- 0x17, 0x5f, 0x3b, 0xce, 0xd7, 0x89, 0xdb, 0xbf, 0xff, 0x43, 0x11, 0xa6, 0xab, 0xdd, 0x0d, 0x46,
- 0x42, 0x15, 0x82, 0xb4, 0xea, 0x4a, 0x7b, 0x01, 0x12, 0x22, 0x2d, 0xa1, 0xea, 0xb2, 0xad, 0xab,
- 0x89, 0x0b, 0x82, 0x1b, 0x6b, 0x12, 0x4f, 0x27, 0x83, 0xec, 0x8c, 0x35, 0x9e, 0x54, 0x74, 0x2f,
- 0x79, 0x20, 0x9e, 0x84, 0x27, 0xe0, 0x05, 0x78, 0x0c, 0xd0, 0xcc, 0xd8, 0x49, 0xb6, 0x2d, 0x88,
- 0xbb, 0x39, 0xe7, 0xfc, 0xce, 0xf7, 0xf9, 0xd9, 0xe0, 0x57, 0x0b, 0x22, 0x69, 0x36, 0x2a, 0xa5,
- 0x50, 0x02, 0x75, 0x18, 0x57, 0x24, 0xbf, 0xdb, 0x7f, 0xc1, 0x84, 0x60, 0x39, 0x3d, 0x34, 0xda,
- 0xd9, 0xea, 0xe6, 0x50, 0xf1, 0x82, 0x56, 0x8a, 0x14, 0xa5, 0x05, 0xee, 0x0f, 0xef, 0x03, 0x32,
- 0x5a, 0xcd, 0x25, 0x2f, 0x95, 0x90, 0x16, 0x11, 0xfd, 0xe1, 0x82, 0x1f, 0x97, 0x54, 0x12, 0xc5,
- 0xc5, 0xf2, 0xa2, 0x62, 0x68, 0x04, 0xae, 0x28, 0x43, 0x67, 0xe8, 0x1c, 0xec, 0x1e, 0x3f, 0x1f,
- 0xd9, 0x44, 0xa3, 0x6d, 0xc4, 0x46, 0xc0, 0xae, 0x28, 0xd1, 0x97, 0x30, 0xa8, 0xe6, 0xa2, 0xa4,
- 0x69, 0x4e, 0x6f, 0x69, 0x1e, 0xba, 0xc6, 0x71, 0xff, 0x51, 0xc7, 0xa9, 0xc6, 0x61, 0x30, 0xf0,
- 0x37, 0x1a, 0x8d, 0x5e, 0xc1, 0x07, 0x8a, 0x48, 0x46, 0x55, 0x2a, 0x69, 0x29, 0x2a, 0xae, 0x84,
- 0xbc, 0x4b, 0x6f, 0x38, 0xcd, 0xb3, 0xb0, 0x35, 0x74, 0x0e, 0xfa, 0xf8, 0x7d, 0x6b, 0xc6, 0x6b,
- 0xeb, 0xb7, 0xda, 0x88, 0xbe, 0x82, 0xa7, 0x24, 0xcb, 0xb8, 0x0e, 0x4c, 0xf2, 0x87, 0xbe, 0x9e,
- 0xf1, 0xfd, 0x70, 0x03, 0xb9, 0xe7, 0x1f, 0xbd, 0x84, 0xfe, 0xba, 0x32, 0x34, 0x80, 0xee, 0xf5,
- 0xe5, 0x77, 0x97, 0xf1, 0x0f, 0x97, 0xc1, 0x13, 0x2d, 0x5c, 0x5c, 0x27, 0xe3, 0x24, 0xc6, 0x81,
- 0x83, 0x7c, 0xe8, 0x8d, 0x4f, 0x4f, 0x27, 0xd3, 0x69, 0x8c, 0x03, 0x37, 0x3a, 0x82, 0xb6, 0xe9,
- 0x00, 0xed, 0x02, 0xe0, 0xc9, 0x55, 0x3c, 0x3d, 0x4f, 0x62, 0xfc, 0x63, 0xf0, 0x04, 0x01, 0x74,
- 0xa6, 0x13, 0xfc, 0xfd, 0x44, 0xbb, 0x0c, 0xa0, 0x3b, 0x4d, 0x62, 0x3c, 0x3e, 0x9b, 0x04, 0x6e,
- 0xf4, 0x9b, 0x0b, 0xb0, 0x49, 0x8d, 0x3e, 0x02, 0xbf, 0x52, 0x42, 0x12, 0x46, 0xd3, 0x25, 0x29,
- 0xa8, 0x99, 0x55, 0x1f, 0x0f, 0x6a, 0xdd, 0x25, 0x29, 0x28, 0xfa, 0x18, 0x76, 0x24, 0xcd, 0x89,
- 0xe2, 0xb7, 0x34, 0x2d, 0x89, 0x5a, 0xd4, 0x63, 0xf0, 0x1b, 0xe5, 0x15, 0x51, 0x0b, 0x74, 0x04,
- 0x7b, 0x8c, 0xab, 0x54, 0xcc, 0x7e, 0xa6, 0x73, 0x95, 0x66, 0x5c, 0xd2, 0xb9, 0x8e, 0x5f, 0xb7,
- 0x8d, 0x18, 0x57, 0xb1, 0x31, 0x7d, 0xd3, 0x58, 0xd0, 0x19, 0x0c, 0xb5, 0x07, 0xc9, 0x15, 0x95,
- 0x4b, 0xa2, 0xe8, 0x7d, 0x5f, 0x4e, 0xab, 0xb0, 0x3d, 0x6c, 0x1d, 0xf4, 0xf1, 0x33, 0xc6, 0xd5,
- 0xb8, 0x81, 0xbd, 0x1b, 0x86, 0xd3, 0x4a, 0xd7, 0xc7, 0xb6, 0x07, 0x1e, 0x76, 0x6c, 0x7d, 0x6c,
- 0x6b, 0xc4, 0xe8, 0x13, 0xf8, 0x1f, 0xcb, 0xd3, 0x52, 0x0a, 0x93, 0xc3, 0xb4, 0xd1, 0x33, 0xb0,
- 0x1d, 0x96, 0x5f, 0x59, 0xad, 0xee, 0xe3, 0xb5, 0xd7, 0x73, 0x02, 0xf7, 0xb5, 0xd7, 0xeb, 0x06,
- 0x3d, 0xec, 0x69, 0x58, 0xf4, 0xa7, 0x03, 0xfd, 0x33, 0xae, 0x4e, 0x45, 0x51, 0x70, 0x85, 0x76,
- 0xc1, 0xe5, 0x99, 0x39, 0xc5, 0x3e, 0x76, 0x79, 0x86, 0x42, 0xe8, 0x56, 0x2b, 0x53, 0x92, 0x19,
- 0x9d, 0x8f, 0x1b, 0x11, 0x21, 0xf0, 0x66, 0x22, 0xbb, 0x33, 0xd3, 0xf2, 0xb1, 0x79, 0xa3, 0xcf,
- 0xa0, 0x43, 0x56, 0x6a, 0x21, 0xa4, 0x99, 0xcb, 0xe0, 0x78, 0xaf, 0xb9, 0x49, 0x1b, 0x7d, 0x6c,
- 0x6c, 0xb8, 0xc6, 0xa0, 0x63, 0xe8, 0xcf, 0x8d, 0x5e, 0x51, 0x19, 0xb6, 0xff, 0xc5, 0x61, 0x03,
- 0x43, 0xcf, 0x00, 0x4a, 0x22, 0xe9, 0x52, 0xa5, 0x3c, 0xab, 0xc2, 0x8e, 0x99, 0x5f, 0xdf, 0x6a,
- 0xce, 0xb3, 0x0a, 0x3d, 0x85, 0xbe, 0x2e, 0x24, 0xad, 0xf8, 0x5b, 0x1a, 0x76, 0x87, 0xce, 0x41,
- 0x0b, 0xf7, 0xb4, 0x62, 0xca, 0xdf, 0xd2, 0x68, 0x01, 0xfe, 0x76, 0x58, 0xdd, 0x81, 0xb9, 0x09,
- 0xc7, 0x76, 0xa0, 0xdf, 0x68, 0x0f, 0xda, 0xb4, 0x20, 0x3c, 0xaf, 0xbb, 0xb5, 0x02, 0x1a, 0x81,
- 0x97, 0x11, 0x45, 0x4d, 0xaf, 0x03, 0xcd, 0x34, 0x43, 0xf1, 0x51, 0x43, 0xf1, 0x51, 0xd2, 0x7c,
- 0x03, 0xb0, 0xc1, 0x45, 0x11, 0xc0, 0xe4, 0x17, 0xae, 0xa6, 0x8a, 0xa8, 0x55, 0xa5, 0x63, 0xde,
- 0x92, 0x7c, 0x65, 0x13, 0xb5, 0xb1, 0x15, 0xa2, 0x04, 0x3a, 0x27, 0x92, 0x2c, 0xe7, 0x8b, 0x47,
- 0xeb, 0x78, 0x05, 0x3b, 0x35, 0x4b, 0x6d, 0xef, 0xa6, 0x9e, 0xc1, 0xf1, 0xff, 0x9b, 0xf9, 0xac,
- 0x37, 0x86, 0x7d, 0x8b, 0xb3, 0x52, 0xf4, 0xbb, 0x03, 0xad, 0x84, 0xb0, 0x47, 0x63, 0xda, 0xdd,
- 0xba, 0xeb, 0xdd, 0x3e, 0xc8, 0xd1, 0xfa, 0x4f, 0x39, 0xf4, 0x4d, 0x14, 0xb4, 0xaa, 0x08, 0xa3,
- 0x66, 0xcd, 0x3e, 0x6e, 0x44, 0xcd, 0xb6, 0xfa, 0x69, 0x37, 0xd0, 0x36, 0x1b, 0x18, 0xd4, 0x3a,
- 0xbd, 0x04, 0x7d, 0x22, 0x8a, 0x30, 0x46, 0xa5, 0x39, 0xe3, 0x7f, 0x3c, 0x11, 0x8b, 0x89, 0x6e,
- 0xc0, 0xbb, 0xae, 0xa8, 0x44, 0xef, 0x41, 0x9b, 0xe5, 0xe9, 0xfa, 0x32, 0x3d, 0x96, 0x9f, 0x67,
- 0xeb, 0x1e, 0xdd, 0xc7, 0xf6, 0xd7, 0xda, 0xde, 0xdf, 0x0b, 0x18, 0xb0, 0x3c, 0x5d, 0x55, 0x9a,
- 0x62, 0x05, 0xad, 0x49, 0x0b, 0x2c, 0xbf, 0xae, 0x35, 0xd1, 0xd7, 0x00, 0x96, 0x78, 0x57, 0x42,
- 0xe4, 0xe8, 0x18, 0x60, 0x8b, 0x6e, 0x8e, 0xa9, 0x13, 0x35, 0x75, 0x6e, 0x48, 0x87, 0xb7, 0x50,
- 0x9f, 0x9e, 0x34, 0x11, 0x92, 0xbb, 0x92, 0xbe, 0xfb, 0x7d, 0x03, 0xe8, 0x9c, 0xc6, 0x17, 0x17,
- 0xe7, 0x49, 0xe0, 0xa0, 0x1e, 0x78, 0x27, 0x6f, 0xe2, 0x93, 0xc0, 0xd5, 0xaf, 0x04, 0x4f, 0x26,
- 0x41, 0x0b, 0x75, 0xa1, 0x95, 0x8c, 0xcf, 0x02, 0xef, 0x8b, 0x18, 0xba, 0xa2, 0x4c, 0x95, 0x0e,
- 0xf0, 0xfc, 0xc1, 0x8d, 0x5d, 0x50, 0xb5, 0x10, 0x59, 0x5c, 0xea, 0xef, 0x67, 0x15, 0xfe, 0xf5,
- 0xeb, 0x3d, 0xc2, 0x6c, 0x7f, 0xf5, 0x71, 0x47, 0x94, 0xba, 0x8c, 0x93, 0xa3, 0x9f, 0xb4, 0x39,
- 0x27, 0xb3, 0xd1, 0x5c, 0x14, 0x87, 0xf6, 0xf9, 0xb9, 0x90, 0xec, 0xd0, 0x3a, 0xd9, 0x7f, 0xd4,
- 0x21, 0x13, 0xb5, 0x5c, 0xce, 0x66, 0x1d, 0xa3, 0x7a, 0xf9, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xec, 0x10, 0xbf, 0x4b, 0xfd, 0x06, 0x00, 0x00,
+ // 932 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xdd, 0x6e, 0xe3, 0x44,
+ 0x14, 0x5e, 0x3b, 0xce, 0xdf, 0x89, 0x5b, 0xcc, 0x50, 0x84, 0xe9, 0x6a, 0x77, 0x83, 0x91, 0x50,
+ 0x85, 0x20, 0xad, 0xba, 0xd2, 0x5e, 0x80, 0x84, 0x48, 0x4b, 0xa8, 0xba, 0x6c, 0xeb, 0x6a, 0xe2,
+ 0x82, 0xe0, 0xc6, 0x9a, 0xc4, 0xd3, 0xc9, 0x20, 0x3b, 0x63, 0x8d, 0x27, 0x15, 0xed, 0x25, 0xe2,
+ 0x79, 0x78, 0x12, 0x9e, 0x80, 0x17, 0xe0, 0x31, 0x40, 0x33, 0x63, 0xa7, 0xd9, 0xb6, 0x20, 0xee,
+ 0xe6, 0x9c, 0xf3, 0x9d, 0xff, 0xf3, 0xd9, 0xe0, 0x57, 0x0b, 0x22, 0x69, 0x36, 0x2a, 0xa5, 0x50,
+ 0x02, 0x75, 0x18, 0x57, 0x24, 0xbf, 0xd9, 0x7d, 0xc1, 0x84, 0x60, 0x39, 0xdd, 0x37, 0xda, 0xd9,
+ 0xea, 0x6a, 0x5f, 0xf1, 0x82, 0x56, 0x8a, 0x14, 0xa5, 0x05, 0xee, 0x0e, 0xef, 0x03, 0x32, 0x5a,
+ 0xcd, 0x25, 0x2f, 0x95, 0x90, 0x16, 0x11, 0xfd, 0xe9, 0x82, 0x1f, 0x97, 0x54, 0x12, 0xc5, 0xc5,
+ 0xf2, 0xac, 0x62, 0x68, 0x04, 0xae, 0x28, 0x43, 0x67, 0xe8, 0xec, 0x6d, 0x1f, 0x3e, 0x1f, 0xd9,
+ 0x44, 0xa3, 0x4d, 0xc4, 0x9d, 0x80, 0x5d, 0x51, 0xa2, 0x2f, 0x61, 0x50, 0xcd, 0x45, 0x49, 0xd3,
+ 0x9c, 0x5e, 0xd3, 0x3c, 0x74, 0x8d, 0xe3, 0xee, 0xa3, 0x8e, 0x53, 0x8d, 0xc3, 0x60, 0xe0, 0x6f,
+ 0x34, 0x1a, 0xbd, 0x82, 0x0f, 0x14, 0x91, 0x8c, 0xaa, 0x54, 0xd2, 0x52, 0x54, 0x5c, 0x09, 0x79,
+ 0x93, 0x5e, 0x71, 0x9a, 0x67, 0x61, 0x6b, 0xe8, 0xec, 0xf5, 0xf1, 0xfb, 0xd6, 0x8c, 0xd7, 0xd6,
+ 0x6f, 0xb5, 0x11, 0x7d, 0x05, 0x4f, 0x49, 0x96, 0x71, 0x1d, 0x98, 0xe4, 0x0f, 0x7d, 0x3d, 0xe3,
+ 0xfb, 0xe1, 0x1d, 0xe4, 0x9e, 0x7f, 0xf4, 0x12, 0xfa, 0xeb, 0xca, 0xd0, 0x00, 0xba, 0x97, 0xe7,
+ 0xdf, 0x9d, 0xc7, 0x3f, 0x9c, 0x07, 0x4f, 0xb4, 0x70, 0x76, 0x99, 0x8c, 0x93, 0x18, 0x07, 0x0e,
+ 0xf2, 0xa1, 0x37, 0x3e, 0x3e, 0x9e, 0x4c, 0xa7, 0x31, 0x0e, 0xdc, 0xe8, 0x00, 0xda, 0xa6, 0x03,
+ 0xb4, 0x0d, 0x80, 0x27, 0x17, 0xf1, 0xf4, 0x34, 0x89, 0xf1, 0x8f, 0xc1, 0x13, 0x04, 0xd0, 0x99,
+ 0x4e, 0xf0, 0xf7, 0x13, 0xed, 0x32, 0x80, 0xee, 0x34, 0x89, 0xf1, 0xf8, 0x64, 0x12, 0xb8, 0xd1,
+ 0xef, 0x2e, 0xc0, 0x5d, 0x6a, 0xf4, 0x11, 0xf8, 0x95, 0x12, 0x92, 0x30, 0x9a, 0x2e, 0x49, 0x41,
+ 0xcd, 0xac, 0xfa, 0x78, 0x50, 0xeb, 0xce, 0x49, 0x41, 0xd1, 0xc7, 0xb0, 0x25, 0x69, 0x4e, 0x14,
+ 0xbf, 0xa6, 0x69, 0x49, 0xd4, 0xa2, 0x1e, 0x83, 0xdf, 0x28, 0x2f, 0x88, 0x5a, 0xa0, 0x03, 0xd8,
+ 0x61, 0x5c, 0xa5, 0x62, 0xf6, 0x33, 0x9d, 0xab, 0x34, 0xe3, 0x92, 0xce, 0x75, 0xfc, 0xba, 0x6d,
+ 0xc4, 0xb8, 0x8a, 0x8d, 0xe9, 0x9b, 0xc6, 0x82, 0x4e, 0x60, 0xa8, 0x3d, 0x48, 0xae, 0xa8, 0x5c,
+ 0x12, 0x45, 0xef, 0xfb, 0x72, 0x5a, 0x85, 0xed, 0x61, 0x6b, 0xaf, 0x8f, 0x9f, 0x31, 0xae, 0xc6,
+ 0x0d, 0xec, 0xed, 0x30, 0x9c, 0x56, 0xba, 0x3e, 0xb6, 0x39, 0xf0, 0xb0, 0x63, 0xeb, 0x63, 0x1b,
+ 0x23, 0x46, 0x9f, 0xc0, 0x3b, 0x2c, 0x4f, 0x4b, 0x29, 0x4c, 0x0e, 0xd3, 0x46, 0xcf, 0xc0, 0xb6,
+ 0x58, 0x7e, 0x61, 0xb5, 0xba, 0x8f, 0xd7, 0x5e, 0xcf, 0x09, 0xdc, 0xd7, 0x5e, 0xaf, 0x1b, 0xf4,
+ 0xb0, 0xa7, 0x61, 0xd1, 0x5f, 0x0e, 0xf4, 0x4f, 0xb8, 0x3a, 0x16, 0x45, 0xc1, 0x15, 0xda, 0x06,
+ 0x97, 0x67, 0xe6, 0x14, 0xfb, 0xd8, 0xe5, 0x19, 0x0a, 0xa1, 0x5b, 0xad, 0x4c, 0x49, 0x66, 0x74,
+ 0x3e, 0x6e, 0x44, 0x84, 0xc0, 0x9b, 0x89, 0xec, 0xc6, 0x4c, 0xcb, 0xc7, 0xe6, 0x8d, 0x3e, 0x83,
+ 0x0e, 0x59, 0xa9, 0x85, 0x90, 0x66, 0x2e, 0x83, 0xc3, 0x9d, 0xe6, 0x26, 0x6d, 0xf4, 0xb1, 0xb1,
+ 0xe1, 0x1a, 0x83, 0x0e, 0xa1, 0x3f, 0x37, 0x7a, 0x45, 0x65, 0xd8, 0xfe, 0x0f, 0x87, 0x3b, 0x18,
+ 0x7a, 0x06, 0x50, 0x12, 0x49, 0x97, 0x2a, 0xe5, 0x59, 0x15, 0x76, 0xcc, 0xfc, 0xfa, 0x56, 0x73,
+ 0x9a, 0x55, 0xe8, 0x29, 0xf4, 0x75, 0x21, 0x69, 0xc5, 0x6f, 0x69, 0xd8, 0x1d, 0x3a, 0x7b, 0x2d,
+ 0xdc, 0xd3, 0x8a, 0x29, 0xbf, 0xa5, 0xd1, 0x6f, 0x0e, 0xf8, 0x9b, 0x71, 0x75, 0x0b, 0xe6, 0x28,
+ 0x1c, 0xdb, 0x82, 0x7e, 0xa3, 0x1d, 0x68, 0xd3, 0x82, 0xf0, 0xbc, 0x6e, 0xd7, 0x0a, 0x68, 0x04,
+ 0x5e, 0x46, 0x14, 0x35, 0xcd, 0x0e, 0x34, 0xd5, 0x0c, 0xc7, 0x47, 0x0d, 0xc7, 0x47, 0x49, 0xf3,
+ 0x11, 0xc0, 0x06, 0x87, 0x76, 0xa1, 0xa7, 0xbf, 0x0b, 0xb7, 0x62, 0x49, 0xcd, 0x28, 0x7c, 0xbc,
+ 0x96, 0xa3, 0x08, 0x60, 0xf2, 0x0b, 0x57, 0x53, 0x45, 0xd4, 0xaa, 0xd2, 0xf9, 0xae, 0x49, 0xbe,
+ 0xb2, 0x45, 0xb4, 0xb1, 0x15, 0xa2, 0x04, 0x3a, 0x47, 0x92, 0x2c, 0xe7, 0x8b, 0x47, 0x6b, 0x7c,
+ 0x05, 0x5b, 0x35, 0x85, 0xed, 0x60, 0x4c, 0xad, 0x83, 0xc3, 0x77, 0x9b, 0xe1, 0xad, 0xd7, 0x89,
+ 0x7d, 0x8b, 0xb3, 0x52, 0xf4, 0x87, 0x03, 0xad, 0x84, 0xb0, 0x47, 0x63, 0xda, 0xc5, 0xbb, 0xeb,
+ 0xc5, 0x3f, 0xc8, 0xd1, 0xfa, 0x5f, 0x39, 0xf4, 0xc1, 0x14, 0xb4, 0xaa, 0x08, 0x6b, 0x1a, 0x6f,
+ 0x44, 0x4d, 0xc5, 0xfa, 0x69, 0xd7, 0xd3, 0x36, 0xeb, 0x19, 0xd4, 0x3a, 0xbd, 0x21, 0x7d, 0x3f,
+ 0x8a, 0x30, 0x46, 0xa5, 0xb9, 0xf1, 0x7f, 0xbd, 0x1f, 0x8b, 0x89, 0xae, 0xc0, 0xbb, 0xac, 0xa8,
+ 0x44, 0xef, 0x41, 0x9b, 0xe5, 0xe9, 0xfa, 0x6c, 0x3d, 0x96, 0x9f, 0x66, 0xeb, 0x1e, 0xdd, 0xc7,
+ 0x76, 0xdb, 0xda, 0xdc, 0xed, 0x0b, 0x18, 0xb0, 0x3c, 0x5d, 0x55, 0x9a, 0x7f, 0x05, 0xad, 0x19,
+ 0x0d, 0x2c, 0xbf, 0xac, 0x35, 0xd1, 0xd7, 0x00, 0x96, 0x95, 0x17, 0x42, 0xe4, 0xe8, 0x10, 0x60,
+ 0x83, 0x8b, 0x8e, 0xa9, 0x13, 0x35, 0x75, 0xde, 0x31, 0x12, 0x6f, 0xa0, 0x3e, 0x3d, 0x6a, 0x22,
+ 0x24, 0x37, 0x25, 0x7d, 0xfb, 0xe3, 0x07, 0xd0, 0x39, 0x8e, 0xcf, 0xce, 0x4e, 0x93, 0xc0, 0x41,
+ 0x3d, 0xf0, 0x8e, 0xde, 0xc4, 0x47, 0x81, 0xab, 0x5f, 0x09, 0x9e, 0x4c, 0x82, 0x16, 0xea, 0x42,
+ 0x2b, 0x19, 0x9f, 0x04, 0xde, 0x17, 0x31, 0x74, 0x45, 0x99, 0x2a, 0x1d, 0xe0, 0xf9, 0x83, 0xfb,
+ 0x3b, 0xa3, 0x6a, 0x21, 0xb2, 0xb8, 0xd4, 0x1f, 0xd7, 0x2a, 0xfc, 0xfb, 0xd7, 0x7b, 0x6c, 0xda,
+ 0xfc, 0x25, 0xe0, 0x8e, 0x28, 0x75, 0x19, 0x47, 0x07, 0x3f, 0x69, 0x73, 0x4e, 0x66, 0xa3, 0xb9,
+ 0x28, 0xf6, 0xed, 0xf3, 0x73, 0x21, 0xd9, 0xbe, 0x75, 0xb2, 0x3f, 0xb0, 0x7d, 0x26, 0x6a, 0xb9,
+ 0x9c, 0xcd, 0x3a, 0x46, 0xf5, 0xf2, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xcd, 0xd3, 0x79, 0xc7,
+ 0x1a, 0x07, 0x00, 0x00,
}
diff --git a/proto/ref.proto b/proto/ref.proto
index 37b5bd225..886881840 100644
--- a/proto/ref.proto
+++ b/proto/ref.proto
@@ -214,6 +214,7 @@ message FindLocalBranchCommitAuthor {
bytes name = 1;
bytes email = 2;
google.protobuf.Timestamp date = 3;
+ bytes timezone = 4;
}
message FindAllBranchesRequest {
diff --git a/proto/shared.proto b/proto/shared.proto
index 439f1b906..883d04f9b 100644
--- a/proto/shared.proto
+++ b/proto/shared.proto
@@ -102,6 +102,7 @@ message CommitAuthor {
bytes name = 1;
bytes email = 2;
google.protobuf.Timestamp date = 3;
+ bytes timezone = 4;
}
message ExitStatus {
diff --git a/ruby/lib/gitaly_server/utils.rb b/ruby/lib/gitaly_server/utils.rb
index e81e148e2..4ad28a136 100644
--- a/ruby/lib/gitaly_server/utils.rb
+++ b/ruby/lib/gitaly_server/utils.rb
@@ -23,7 +23,8 @@ module GitalyServer
Gitaly::CommitAuthor.new(
name: rugged_author[:name].b,
email: rugged_author[:email].b,
- date: Google::Protobuf::Timestamp.new(seconds: rugged_author[:time].to_i)
+ date: Google::Protobuf::Timestamp.new(seconds: rugged_author[:time].to_i),
+ timezone: rugged_author[:time].strftime("%z")
)
end
diff --git a/ruby/proto/gitaly/ref_pb.rb b/ruby/proto/gitaly/ref_pb.rb
index 758e3a84f..d8c7395aa 100644
--- a/ruby/proto/gitaly/ref_pb.rb
+++ b/ruby/proto/gitaly/ref_pb.rb
@@ -64,6 +64,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :name, :bytes, 1
optional :email, :bytes, 2
optional :date, :message, 3, "google.protobuf.Timestamp"
+ optional :timezone, :bytes, 4
end
add_message "gitaly.FindAllBranchesRequest" do
optional :repository, :message, 1, "gitaly.Repository"
diff --git a/ruby/proto/gitaly/shared_pb.rb b/ruby/proto/gitaly/shared_pb.rb
index dd8ef3531..d6dd836b6 100644
--- a/ruby/proto/gitaly/shared_pb.rb
+++ b/ruby/proto/gitaly/shared_pb.rb
@@ -42,6 +42,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :name, :bytes, 1
optional :email, :bytes, 2
optional :date, :message, 3, "google.protobuf.Timestamp"
+ optional :timezone, :bytes, 4
end
add_message "gitaly.ExitStatus" do
optional :value, :int32, 1