{"action":"created","comment":{"url":"https://api.github.com/repos/uber/prototool/pulls/comments/217818437","pull_request_review_id":155630801,"id":217818437,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxNzgxODQzNw==","diff_hunk":"@@ -135,6 +137,14 @@ func (f *flags) bindProtocURL(flagSet *pflag.FlagSet) {\n \tflagSet.StringVar(&f.protocURL, \"protoc-url\", \"\", \"The url to use to download the protoc zip file, otherwise uses GitHub Releases. Setting this option will ignore the config protoc.version setting.\")\n }\n \n+func (f *flags) bindProtocBinPath(flagSet *pflag.FlagSet) {\n+\tflagSet.StringVar(&f.protocBinPath, \"protoc-bin-path\", \"\", \"The path to the protoc binary. Setting this option will ignore the config protoc.version setting. This flag must be used with protoc-wkt-path.\")","path":"internal/cmd/flags.go","position":14,"original_position":14,"commit_id":"4e5ba415eeb3e80c70380f80dba35365698e32e8","original_commit_id":"4e5ba415eeb3e80c70380f80dba35365698e32e8","user":{"login":"peter-edge","id":4228796,"node_id":"MDQ6VXNlcjQyMjg3OTY=","avatar_url":"https://avatars1.githubusercontent.com/u/4228796?v=4","gravatar_id":"","url":"https://api.github.com/users/peter-edge","html_url":"https://github.com/peter-edge","followers_url":"https://api.github.com/users/peter-edge/followers","following_url":"https://api.github.com/users/peter-edge/following{/other_user}","gists_url":"https://api.github.com/users/peter-edge/gists{/gist_id}","starred_url":"https://api.github.com/users/peter-edge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peter-edge/subscriptions","organizations_url":"https://api.github.com/users/peter-edge/orgs","repos_url":"https://api.github.com/users/peter-edge/repos","events_url":"https://api.github.com/users/peter-edge/events{/privacy}","received_events_url":"https://api.github.com/users/peter-edge/received_events","type":"User","site_admin":false},"body":"Add that this flag and the other one cannot be used with the —protoc-url flag","created_at":"2018-09-14T19:25:45Z","updated_at":"2018-09-14T19:31:38Z","html_url":"https://github.com/uber/prototool/pull/231#discussion_r217818437","pull_request_url":"https://api.github.com/repos/uber/prototool/pulls/231","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/uber/prototool/pulls/comments/217818437"},"html":{"href":"https://github.com/uber/prototool/pull/231#discussion_r217818437"},"pull_request":{"href":"https://api.github.com/repos/uber/prototool/pulls/231"}}},"pull_request":{"url":"https://api.github.com/repos/uber/prototool/pulls/231","id":215474228,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE1NDc0MjI4","html_url":"https://github.com/uber/prototool/pull/231","diff_url":"https://github.com/uber/prototool/pull/231.diff","patch_url":"https://github.com/uber/prototool/pull/231.patch","issue_url":"https://api.github.com/repos/uber/prototool/issues/231","number":231,"state":"open","locked":false,"title":"Add protoc-bin-path and protoc-wkt-path flags","user":{"login":"amckinney","id":5760684,"node_id":"MDQ6VXNlcjU3NjA2ODQ=","avatar_url":"https://avatars1.githubusercontent.com/u/5760684?v=4","gravatar_id":"","url":"https://api.github.com/users/amckinney","html_url":"https://github.com/amckinney","followers_url":"https://api.github.com/users/amckinney/followers","following_url":"https://api.github.com/users/amckinney/following{/other_user}","gists_url":"https://api.github.com/users/amckinney/gists{/gist_id}","starred_url":"https://api.github.com/users/amckinney/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amckinney/subscriptions","organizations_url":"https://api.github.com/users/amckinney/orgs","repos_url":"https://api.github.com/users/amckinney/repos","events_url":"https://api.github.com/users/amckinney/events{/privacy}","received_events_url":"https://api.github.com/users/amckinney/received_events","type":"User","site_admin":false},"body":"This proposes two new flags: `--protoc-bin-path` and  `protoc-wkt-path`. This will let users effectively disable Prototool's caching feature. In general, caching is nice-to-have and desirable. However, Prototool needs to handle cases when the `protoc` binary is already compiled from another local file path (as opposed to being copied into its cache). This is especially relevant in build systems, such as [Buck](https://buckbuild.com/) or [Bazel](https://bazel.build/). \r\n\r\nNote that we purposefully add a separate `protoc-wkt-path` flag so that we guarantee that users are including the well-known types. An error is returned if either of these flags are set without the other.\r\n\r\nI've tested this manually for the time being. If we think that this is the best approach forward, then I'm happy to add tests. I'd prefer to gather feedback before doing so because this is a potentially controversial change.\r\n","created_at":"2018-09-14T03:49:51Z","updated_at":"2018-09-14T19:31:38Z","closed_at":null,"merged_at":null,"merge_commit_sha":"333e51451a98b5a363d90e584db726eb0f8c3e58","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/uber/prototool/pulls/231/commits","review_comments_url":"https://api.github.com/repos/uber/prototool/pulls/231/comments","review_comment_url":"https://api.github.com/repos/uber/prototool/pulls/comments{/number}","comments_url":"https://api.github.com/repos/uber/prototool/issues/231/comments","statuses_url":"https://api.github.com/repos/uber/prototool/statuses/4e5ba415eeb3e80c70380f80dba35365698e32e8","head":{"label":"uber:no-cache","ref":"no-cache","sha":"4e5ba415eeb3e80c70380f80dba35365698e32e8","user":{"login":"uber","id":538264,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzODI2NA==","avatar_url":"https://avatars3.githubusercontent.com/u/538264?v=4","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"repo":{"id":120625155,"node_id":"MDEwOlJlcG9zaXRvcnkxMjA2MjUxNTU=","name":"prototool","full_name":"uber/prototool","owner":{"login":"uber","id":538264,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzODI2NA==","avatar_url":"https://avatars3.githubusercontent.com/u/538264?v=4","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/uber/prototool","description":"Your Swiss Army Knife for Protocol Buffers","fork":false,"url":"https://api.github.com/repos/uber/prototool","forks_url":"https://api.github.com/repos/uber/prototool/forks","keys_url":"https://api.github.com/repos/uber/prototool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/uber/prototool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/uber/prototool/teams","hooks_url":"https://api.github.com/repos/uber/prototool/hooks","issue_events_url":"https://api.github.com/repos/uber/prototool/issues/events{/number}","events_url":"https://api.github.com/repos/uber/prototool/events","assignees_url":"https://api.github.com/repos/uber/prototool/assignees{/user}","branches_url":"https://api.github.com/repos/uber/prototool/branches{/branch}","tags_url":"https://api.github.com/repos/uber/prototool/tags","blobs_url":"https://api.github.com/repos/uber/prototool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/uber/prototool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/uber/prototool/git/refs{/sha}","trees_url":"https://api.github.com/repos/uber/prototool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/uber/prototool/statuses/{sha}","languages_url":"https://api.github.com/repos/uber/prototool/languages","stargazers_url":"https://api.github.com/repos/uber/prototool/stargazers","contributors_url":"https://api.github.com/repos/uber/prototool/contributors","subscribers_url":"https://api.github.com/repos/uber/prototool/subscribers","subscription_url":"https://api.github.com/repos/uber/prototool/subscription","commits_url":"https://api.github.com/repos/uber/prototool/commits{/sha}","git_commits_url":"https://api.github.com/repos/uber/prototool/git/commits{/sha}","comments_url":"https://api.github.com/repos/uber/prototool/comments{/number}","issue_comment_url":"https://api.github.com/repos/uber/prototool/issues/comments{/number}","contents_url":"https://api.github.com/repos/uber/prototool/contents/{+path}","compare_url":"https://api.github.com/repos/uber/prototool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/uber/prototool/merges","archive_url":"https://api.github.com/repos/uber/prototool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/uber/prototool/downloads","issues_url":"https://api.github.com/repos/uber/prototool/issues{/number}","pulls_url":"https://api.github.com/repos/uber/prototool/pulls{/number}","milestones_url":"https://api.github.com/repos/uber/prototool/milestones{/number}","notifications_url":"https://api.github.com/repos/uber/prototool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/uber/prototool/labels{/name}","releases_url":"https://api.github.com/repos/uber/prototool/releases{/id}","deployments_url":"https://api.github.com/repos/uber/prototool/deployments","created_at":"2018-02-07T14:25:02Z","updated_at":"2018-09-14T18:49:43Z","pushed_at":"2018-09-14T19:17:38Z","git_url":"git://github.com/uber/prototool.git","ssh_url":"git@github.com:uber/prototool.git","clone_url":"https://github.com/uber/prototool.git","svn_url":"https://github.com/uber/prototool","homepage":"","size":646,"stargazers_count":2421,"watchers_count":2421,"language":"Go","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":71,"mirror_url":null,"archived":false,"open_issues_count":18,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":71,"open_issues":18,"watchers":2421,"default_branch":"dev"}},"base":{"label":"uber:dev","ref":"dev","sha":"c591abf995fca5e0b38b4804563d3727b4fc6f8a","user":{"login":"uber","id":538264,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzODI2NA==","avatar_url":"https://avatars3.githubusercontent.com/u/538264?v=4","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"repo":{"id":120625155,"node_id":"MDEwOlJlcG9zaXRvcnkxMjA2MjUxNTU=","name":"prototool","full_name":"uber/prototool","owner":{"login":"uber","id":538264,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzODI2NA==","avatar_url":"https://avatars3.githubusercontent.com/u/538264?v=4","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/uber/prototool","description":"Your Swiss Army Knife for Protocol Buffers","fork":false,"url":"https://api.github.com/repos/uber/prototool","forks_url":"https://api.github.com/repos/uber/prototool/forks","keys_url":"https://api.github.com/repos/uber/prototool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/uber/prototool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/uber/prototool/teams","hooks_url":"https://api.github.com/repos/uber/prototool/hooks","issue_events_url":"https://api.github.com/repos/uber/prototool/issues/events{/number}","events_url":"https://api.github.com/repos/uber/prototool/events","assignees_url":"https://api.github.com/repos/uber/prototool/assignees{/user}","branches_url":"https://api.github.com/repos/uber/prototool/branches{/branch}","tags_url":"https://api.github.com/repos/uber/prototool/tags","blobs_url":"https://api.github.com/repos/uber/prototool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/uber/prototool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/uber/prototool/git/refs{/sha}","trees_url":"https://api.github.com/repos/uber/prototool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/uber/prototool/statuses/{sha}","languages_url":"https://api.github.com/repos/uber/prototool/languages","stargazers_url":"https://api.github.com/repos/uber/prototool/stargazers","contributors_url":"https://api.github.com/repos/uber/prototool/contributors","subscribers_url":"https://api.github.com/repos/uber/prototool/subscribers","subscription_url":"https://api.github.com/repos/uber/prototool/subscription","commits_url":"https://api.github.com/repos/uber/prototool/commits{/sha}","git_commits_url":"https://api.github.com/repos/uber/prototool/git/commits{/sha}","comments_url":"https://api.github.com/repos/uber/prototool/comments{/number}","issue_comment_url":"https://api.github.com/repos/uber/prototool/issues/comments{/number}","contents_url":"https://api.github.com/repos/uber/prototool/contents/{+path}","compare_url":"https://api.github.com/repos/uber/prototool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/uber/prototool/merges","archive_url":"https://api.github.com/repos/uber/prototool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/uber/prototool/downloads","issues_url":"https://api.github.com/repos/uber/prototool/issues{/number}","pulls_url":"https://api.github.com/repos/uber/prototool/pulls{/number}","milestones_url":"https://api.github.com/repos/uber/prototool/milestones{/number}","notifications_url":"https://api.github.com/repos/uber/prototool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/uber/prototool/labels{/name}","releases_url":"https://api.github.com/repos/uber/prototool/releases{/id}","deployments_url":"https://api.github.com/repos/uber/prototool/deployments","created_at":"2018-02-07T14:25:02Z","updated_at":"2018-09-14T18:49:43Z","pushed_at":"2018-09-14T19:17:38Z","git_url":"git://github.com/uber/prototool.git","ssh_url":"git@github.com:uber/prototool.git","clone_url":"https://github.com/uber/prototool.git","svn_url":"https://github.com/uber/prototool","homepage":"","size":646,"stargazers_count":2421,"watchers_count":2421,"language":"Go","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":71,"mirror_url":null,"archived":false,"open_issues_count":18,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":71,"open_issues":18,"watchers":2421,"default_branch":"dev"}},"_links":{"self":{"href":"https://api.github.com/repos/uber/prototool/pulls/231"},"html":{"href":"https://github.com/uber/prototool/pull/231"},"issue":{"href":"https://api.github.com/repos/uber/prototool/issues/231"},"comments":{"href":"https://api.github.com/repos/uber/prototool/issues/231/comments"},"review_comments":{"href":"https://api.github.com/repos/uber/prototool/pulls/231/comments"},"review_comment":{"href":"https://api.github.com/repos/uber/prototool/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/uber/prototool/pulls/231/commits"},"statuses":{"href":"https://api.github.com/repos/uber/prototool/statuses/4e5ba415eeb3e80c70380f80dba35365698e32e8"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"peter-edge"}}