{"action":"created","issue":{"url":"https://api.github.com/repos/youtube/vitess/issues/1955","repository_url":"https://api.github.com/repos/youtube/vitess","labels_url":"https://api.github.com/repos/youtube/vitess/issues/1955/labels{/name}","comments_url":"https://api.github.com/repos/youtube/vitess/issues/1955/comments","events_url":"https://api.github.com/repos/youtube/vitess/issues/1955/events","html_url":"https://github.com/youtube/vitess/pull/1955","id":171560809,"number":1955,"title":"vtctld: Use \"jsonpb\" marshaler for protobuf only JSON responses.","user":{"login":"michael-berlin","id":3919251,"avatar_url":"https://avatars.githubusercontent.com/u/3919251?v=3","gravatar_id":"","url":"https://api.github.com/users/michael-berlin","html_url":"https://github.com/michael-berlin","followers_url":"https://api.github.com/users/michael-berlin/followers","following_url":"https://api.github.com/users/michael-berlin/following{/other_user}","gists_url":"https://api.github.com/users/michael-berlin/gists{/gist_id}","starred_url":"https://api.github.com/users/michael-berlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michael-berlin/subscriptions","organizations_url":"https://api.github.com/users/michael-berlin/orgs","repos_url":"https://api.github.com/users/michael-berlin/repos","events_url":"https://api.github.com/users/michael-berlin/events{/privacy}","received_events_url":"https://api.github.com/users/michael-berlin/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/youtube/vitess/labels/cla:%20yes","name":"cla: yes","color":"009800"}],"state":"open","locked":false,"assignee":{"login":"enisoc","id":6733629,"avatar_url":"https://avatars.githubusercontent.com/u/6733629?v=3","gravatar_id":"","url":"https://api.github.com/users/enisoc","html_url":"https://github.com/enisoc","followers_url":"https://api.github.com/users/enisoc/followers","following_url":"https://api.github.com/users/enisoc/following{/other_user}","gists_url":"https://api.github.com/users/enisoc/gists{/gist_id}","starred_url":"https://api.github.com/users/enisoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enisoc/subscriptions","organizations_url":"https://api.github.com/users/enisoc/orgs","repos_url":"https://api.github.com/users/enisoc/repos","events_url":"https://api.github.com/users/enisoc/events{/privacy}","received_events_url":"https://api.github.com/users/enisoc/received_events","type":"User","site_admin":false},"assignees":[{"login":"enisoc","id":6733629,"avatar_url":"https://avatars.githubusercontent.com/u/6733629?v=3","gravatar_id":"","url":"https://api.github.com/users/enisoc","html_url":"https://github.com/enisoc","followers_url":"https://api.github.com/users/enisoc/followers","following_url":"https://api.github.com/users/enisoc/following{/other_user}","gists_url":"https://api.github.com/users/enisoc/gists{/gist_id}","starred_url":"https://api.github.com/users/enisoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enisoc/subscriptions","organizations_url":"https://api.github.com/users/enisoc/orgs","repos_url":"https://api.github.com/users/enisoc/repos","events_url":"https://api.github.com/users/enisoc/events{/privacy}","received_events_url":"https://api.github.com/users/enisoc/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2016-08-17T02:31:30Z","updated_at":"2016-08-23T23:45:06Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/youtube/vitess/pulls/1955","html_url":"https://github.com/youtube/vitess/pull/1955","diff_url":"https://github.com/youtube/vitess/pull/1955.diff","patch_url":"https://github.com/youtube/vitess/pull/1955.patch"},"body":"@enisoc \r\n\r\nUnfortunately, `jsonpb` works only on pure protobuf messages :( But most of our code uses a mixture where custom structs have a protobuf message as field.\r\n\r\nEven worse: The type switch I used in the code recognizes a custom struct  which has a protobuf message as an anonymous field as `proto.Message` as well. However, `jsonpb` then panics on the struct because it has unexported fields. See the work-around for the `GetShard()` result."},"comment":{"url":"https://api.github.com/repos/youtube/vitess/issues/comments/241916443","html_url":"https://github.com/youtube/vitess/pull/1955#issuecomment-241916443","issue_url":"https://api.github.com/repos/youtube/vitess/issues/1955","id":241916443,"user":{"login":"enisoc-bot","id":20912124,"avatar_url":"https://avatars.githubusercontent.com/u/20912124?v=3","gravatar_id":"","url":"https://api.github.com/users/enisoc-bot","html_url":"https://github.com/enisoc-bot","followers_url":"https://api.github.com/users/enisoc-bot/followers","following_url":"https://api.github.com/users/enisoc-bot/following{/other_user}","gists_url":"https://api.github.com/users/enisoc-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/enisoc-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enisoc-bot/subscriptions","organizations_url":"https://api.github.com/users/enisoc-bot/orgs","repos_url":"https://api.github.com/users/enisoc-bot/repos","events_url":"https://api.github.com/users/enisoc-bot/events{/privacy}","received_events_url":"https://api.github.com/users/enisoc-bot/received_events","type":"User","site_admin":false},"created_at":"2016-08-23T23:45:06Z","updated_at":"2016-08-23T23:45:06Z","body":"\n\n\n\nReviewed 2 of 2 files at r3.\nReview status: all files reviewed at latest revision, 1 unresolved discussion.\n\n---\n\n\n\n*Comments from [Reviewable](https://reviewable.io:443/reviews/youtube/vitess/1955)*\n<!-- Sent from Reviewable.io -->\n"}}
{"actor":{"display_login":"enisoc-bot"}}