{"action":"created","comment":{"url":"https://api.github.com/repos/twosigma/waiter/pulls/comments/233568893","pull_request_review_id":175013451,"id":233568893,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIzMzU2ODg5Mw==","diff_hunk":"@@ -52,7 +52,7 @@\n \n (def service-description-schema\n   {;; Required\n-   (s/required-key \"cmd\") schema/non-empty-string\n+   (s/required-key \"cmd\") (s/both s/Str (s/pred #(<= 1 (count %) 1024)'at-most-1K-chars))","path":"waiter/src/waiter/service_description.clj","position":5,"original_position":5,"commit_id":"c57acbadaef4f6bb410e072b47b131877b95201b","original_commit_id":"c57acbadaef4f6bb410e072b47b131877b95201b","user":{"login":"DaoWen","id":1783674,"node_id":"MDQ6VXNlcjE3ODM2NzQ=","avatar_url":"https://avatars3.githubusercontent.com/u/1783674?v=4","gravatar_id":"","url":"https://api.github.com/users/DaoWen","html_url":"https://github.com/DaoWen","followers_url":"https://api.github.com/users/DaoWen/followers","following_url":"https://api.github.com/users/DaoWen/following{/other_user}","gists_url":"https://api.github.com/users/DaoWen/gists{/gist_id}","starred_url":"https://api.github.com/users/DaoWen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DaoWen/subscriptions","organizations_url":"https://api.github.com/users/DaoWen/orgs","repos_url":"https://api.github.com/users/DaoWen/repos","events_url":"https://api.github.com/users/DaoWen/events{/privacy}","received_events_url":"https://api.github.com/users/DaoWen/received_events","type":"User","site_admin":false},"body":"Maybe maximum length should be configurable, but with the default of 1024.","created_at":"2018-11-14T18:36:15Z","updated_at":"2018-11-14T18:55:59Z","html_url":"https://github.com/twosigma/waiter/pull/509#discussion_r233568893","pull_request_url":"https://api.github.com/repos/twosigma/waiter/pulls/509","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/comments/233568893"},"html":{"href":"https://github.com/twosigma/waiter/pull/509#discussion_r233568893"},"pull_request":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/509"}},"in_reply_to_id":233567829},"pull_request":{"url":"https://api.github.com/repos/twosigma/waiter/pulls/509","id":230917290,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMwOTE3Mjkw","html_url":"https://github.com/twosigma/waiter/pull/509","diff_url":"https://github.com/twosigma/waiter/pull/509.diff","patch_url":"https://github.com/twosigma/waiter/pull/509.patch","issue_url":"https://api.github.com/repos/twosigma/waiter/issues/509","number":509,"state":"open","locked":false,"title":"Enforces limit on length of the command string","user":{"login":"shamsimam","id":6611249,"node_id":"MDQ6VXNlcjY2MTEyNDk=","avatar_url":"https://avatars0.githubusercontent.com/u/6611249?v=4","gravatar_id":"","url":"https://api.github.com/users/shamsimam","html_url":"https://github.com/shamsimam","followers_url":"https://api.github.com/users/shamsimam/followers","following_url":"https://api.github.com/users/shamsimam/following{/other_user}","gists_url":"https://api.github.com/users/shamsimam/gists{/gist_id}","starred_url":"https://api.github.com/users/shamsimam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shamsimam/subscriptions","organizations_url":"https://api.github.com/users/shamsimam/orgs","repos_url":"https://api.github.com/users/shamsimam/repos","events_url":"https://api.github.com/users/shamsimam/events{/privacy}","received_events_url":"https://api.github.com/users/shamsimam/received_events","type":"User","site_admin":false},"body":"## Changes proposed in this PR\r\n\r\n- enforces validation limit on cmd - must be no larger than 1K characters\r\n- issues friendly error message when command string validation fails\r\n\r\n## Why are we making these changes?\r\n\r\nWe would like to prevent users from sending huge command strings as inputs with a goal of avoiding stress on our backing store.\r\n\r\n","created_at":"2018-11-14T17:21:10Z","updated_at":"2018-11-14T18:55:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a5aef08aebc35ca779d4b44b6f17ffce2bd45913","assignee":{"login":"shamsimam","id":6611249,"node_id":"MDQ6VXNlcjY2MTEyNDk=","avatar_url":"https://avatars0.githubusercontent.com/u/6611249?v=4","gravatar_id":"","url":"https://api.github.com/users/shamsimam","html_url":"https://github.com/shamsimam","followers_url":"https://api.github.com/users/shamsimam/followers","following_url":"https://api.github.com/users/shamsimam/following{/other_user}","gists_url":"https://api.github.com/users/shamsimam/gists{/gist_id}","starred_url":"https://api.github.com/users/shamsimam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shamsimam/subscriptions","organizations_url":"https://api.github.com/users/shamsimam/orgs","repos_url":"https://api.github.com/users/shamsimam/repos","events_url":"https://api.github.com/users/shamsimam/events{/privacy}","received_events_url":"https://api.github.com/users/shamsimam/received_events","type":"User","site_admin":false},"assignees":[{"login":"shamsimam","id":6611249,"node_id":"MDQ6VXNlcjY2MTEyNDk=","avatar_url":"https://avatars0.githubusercontent.com/u/6611249?v=4","gravatar_id":"","url":"https://api.github.com/users/shamsimam","html_url":"https://github.com/shamsimam","followers_url":"https://api.github.com/users/shamsimam/followers","following_url":"https://api.github.com/users/shamsimam/following{/other_user}","gists_url":"https://api.github.com/users/shamsimam/gists{/gist_id}","starred_url":"https://api.github.com/users/shamsimam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shamsimam/subscriptions","organizations_url":"https://api.github.com/users/shamsimam/orgs","repos_url":"https://api.github.com/users/shamsimam/repos","events_url":"https://api.github.com/users/shamsimam/events{/privacy}","received_events_url":"https://api.github.com/users/shamsimam/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/twosigma/waiter/pulls/509/commits","review_comments_url":"https://api.github.com/repos/twosigma/waiter/pulls/509/comments","review_comment_url":"https://api.github.com/repos/twosigma/waiter/pulls/comments{/number}","comments_url":"https://api.github.com/repos/twosigma/waiter/issues/509/comments","statuses_url":"https://api.github.com/repos/twosigma/waiter/statuses/c57acbadaef4f6bb410e072b47b131877b95201b","head":{"label":"twosigma:limit-cmd-string","ref":"limit-cmd-string","sha":"c57acbadaef4f6bb410e072b47b131877b95201b","user":{"login":"twosigma","id":4049181,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNDkxODE=","avatar_url":"https://avatars3.githubusercontent.com/u/4049181?v=4","gravatar_id":"","url":"https://api.github.com/users/twosigma","html_url":"https://github.com/twosigma","followers_url":"https://api.github.com/users/twosigma/followers","following_url":"https://api.github.com/users/twosigma/following{/other_user}","gists_url":"https://api.github.com/users/twosigma/gists{/gist_id}","starred_url":"https://api.github.com/users/twosigma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twosigma/subscriptions","organizations_url":"https://api.github.com/users/twosigma/orgs","repos_url":"https://api.github.com/users/twosigma/repos","events_url":"https://api.github.com/users/twosigma/events{/privacy}","received_events_url":"https://api.github.com/users/twosigma/received_events","type":"Organization","site_admin":false},"repo":{"id":81378873,"node_id":"MDEwOlJlcG9zaXRvcnk4MTM3ODg3Mw==","name":"waiter","full_name":"twosigma/waiter","private":false,"owner":{"login":"twosigma","id":4049181,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNDkxODE=","avatar_url":"https://avatars3.githubusercontent.com/u/4049181?v=4","gravatar_id":"","url":"https://api.github.com/users/twosigma","html_url":"https://github.com/twosigma","followers_url":"https://api.github.com/users/twosigma/followers","following_url":"https://api.github.com/users/twosigma/following{/other_user}","gists_url":"https://api.github.com/users/twosigma/gists{/gist_id}","starred_url":"https://api.github.com/users/twosigma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twosigma/subscriptions","organizations_url":"https://api.github.com/users/twosigma/orgs","repos_url":"https://api.github.com/users/twosigma/repos","events_url":"https://api.github.com/users/twosigma/events{/privacy}","received_events_url":"https://api.github.com/users/twosigma/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/twosigma/waiter","description":"Runs, manages, and autoscales web services on Mesos and Kubernetes","fork":false,"url":"https://api.github.com/repos/twosigma/waiter","forks_url":"https://api.github.com/repos/twosigma/waiter/forks","keys_url":"https://api.github.com/repos/twosigma/waiter/keys{/key_id}","collaborators_url":"https://api.github.com/repos/twosigma/waiter/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/twosigma/waiter/teams","hooks_url":"https://api.github.com/repos/twosigma/waiter/hooks","issue_events_url":"https://api.github.com/repos/twosigma/waiter/issues/events{/number}","events_url":"https://api.github.com/repos/twosigma/waiter/events","assignees_url":"https://api.github.com/repos/twosigma/waiter/assignees{/user}","branches_url":"https://api.github.com/repos/twosigma/waiter/branches{/branch}","tags_url":"https://api.github.com/repos/twosigma/waiter/tags","blobs_url":"https://api.github.com/repos/twosigma/waiter/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/twosigma/waiter/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/twosigma/waiter/git/refs{/sha}","trees_url":"https://api.github.com/repos/twosigma/waiter/git/trees{/sha}","statuses_url":"https://api.github.com/repos/twosigma/waiter/statuses/{sha}","languages_url":"https://api.github.com/repos/twosigma/waiter/languages","stargazers_url":"https://api.github.com/repos/twosigma/waiter/stargazers","contributors_url":"https://api.github.com/repos/twosigma/waiter/contributors","subscribers_url":"https://api.github.com/repos/twosigma/waiter/subscribers","subscription_url":"https://api.github.com/repos/twosigma/waiter/subscription","commits_url":"https://api.github.com/repos/twosigma/waiter/commits{/sha}","git_commits_url":"https://api.github.com/repos/twosigma/waiter/git/commits{/sha}","comments_url":"https://api.github.com/repos/twosigma/waiter/comments{/number}","issue_comment_url":"https://api.github.com/repos/twosigma/waiter/issues/comments{/number}","contents_url":"https://api.github.com/repos/twosigma/waiter/contents/{+path}","compare_url":"https://api.github.com/repos/twosigma/waiter/compare/{base}...{head}","merges_url":"https://api.github.com/repos/twosigma/waiter/merges","archive_url":"https://api.github.com/repos/twosigma/waiter/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/twosigma/waiter/downloads","issues_url":"https://api.github.com/repos/twosigma/waiter/issues{/number}","pulls_url":"https://api.github.com/repos/twosigma/waiter/pulls{/number}","milestones_url":"https://api.github.com/repos/twosigma/waiter/milestones{/number}","notifications_url":"https://api.github.com/repos/twosigma/waiter/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/twosigma/waiter/labels{/name}","releases_url":"https://api.github.com/repos/twosigma/waiter/releases{/id}","deployments_url":"https://api.github.com/repos/twosigma/waiter/deployments","created_at":"2017-02-08T21:40:37Z","updated_at":"2018-11-14T18:32:00Z","pushed_at":"2018-11-14T18:52:45Z","git_url":"git://github.com/twosigma/waiter.git","ssh_url":"git@github.com:twosigma/waiter.git","clone_url":"https://github.com/twosigma/waiter.git","svn_url":"https://github.com/twosigma/waiter","homepage":"","size":3508,"stargazers_count":40,"watchers_count":40,"language":"Clojure","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":10,"mirror_url":null,"archived":false,"open_issues_count":42,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":10,"open_issues":42,"watchers":40,"default_branch":"master"}},"base":{"label":"twosigma:master","ref":"master","sha":"b3fbcdb9900f0442205b3d8b0f48e7e9d3325ce7","user":{"login":"twosigma","id":4049181,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNDkxODE=","avatar_url":"https://avatars3.githubusercontent.com/u/4049181?v=4","gravatar_id":"","url":"https://api.github.com/users/twosigma","html_url":"https://github.com/twosigma","followers_url":"https://api.github.com/users/twosigma/followers","following_url":"https://api.github.com/users/twosigma/following{/other_user}","gists_url":"https://api.github.com/users/twosigma/gists{/gist_id}","starred_url":"https://api.github.com/users/twosigma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twosigma/subscriptions","organizations_url":"https://api.github.com/users/twosigma/orgs","repos_url":"https://api.github.com/users/twosigma/repos","events_url":"https://api.github.com/users/twosigma/events{/privacy}","received_events_url":"https://api.github.com/users/twosigma/received_events","type":"Organization","site_admin":false},"repo":{"id":81378873,"node_id":"MDEwOlJlcG9zaXRvcnk4MTM3ODg3Mw==","name":"waiter","full_name":"twosigma/waiter","private":false,"owner":{"login":"twosigma","id":4049181,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNDkxODE=","avatar_url":"https://avatars3.githubusercontent.com/u/4049181?v=4","gravatar_id":"","url":"https://api.github.com/users/twosigma","html_url":"https://github.com/twosigma","followers_url":"https://api.github.com/users/twosigma/followers","following_url":"https://api.github.com/users/twosigma/following{/other_user}","gists_url":"https://api.github.com/users/twosigma/gists{/gist_id}","starred_url":"https://api.github.com/users/twosigma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twosigma/subscriptions","organizations_url":"https://api.github.com/users/twosigma/orgs","repos_url":"https://api.github.com/users/twosigma/repos","events_url":"https://api.github.com/users/twosigma/events{/privacy}","received_events_url":"https://api.github.com/users/twosigma/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/twosigma/waiter","description":"Runs, manages, and autoscales web services on Mesos and Kubernetes","fork":false,"url":"https://api.github.com/repos/twosigma/waiter","forks_url":"https://api.github.com/repos/twosigma/waiter/forks","keys_url":"https://api.github.com/repos/twosigma/waiter/keys{/key_id}","collaborators_url":"https://api.github.com/repos/twosigma/waiter/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/twosigma/waiter/teams","hooks_url":"https://api.github.com/repos/twosigma/waiter/hooks","issue_events_url":"https://api.github.com/repos/twosigma/waiter/issues/events{/number}","events_url":"https://api.github.com/repos/twosigma/waiter/events","assignees_url":"https://api.github.com/repos/twosigma/waiter/assignees{/user}","branches_url":"https://api.github.com/repos/twosigma/waiter/branches{/branch}","tags_url":"https://api.github.com/repos/twosigma/waiter/tags","blobs_url":"https://api.github.com/repos/twosigma/waiter/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/twosigma/waiter/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/twosigma/waiter/git/refs{/sha}","trees_url":"https://api.github.com/repos/twosigma/waiter/git/trees{/sha}","statuses_url":"https://api.github.com/repos/twosigma/waiter/statuses/{sha}","languages_url":"https://api.github.com/repos/twosigma/waiter/languages","stargazers_url":"https://api.github.com/repos/twosigma/waiter/stargazers","contributors_url":"https://api.github.com/repos/twosigma/waiter/contributors","subscribers_url":"https://api.github.com/repos/twosigma/waiter/subscribers","subscription_url":"https://api.github.com/repos/twosigma/waiter/subscription","commits_url":"https://api.github.com/repos/twosigma/waiter/commits{/sha}","git_commits_url":"https://api.github.com/repos/twosigma/waiter/git/commits{/sha}","comments_url":"https://api.github.com/repos/twosigma/waiter/comments{/number}","issue_comment_url":"https://api.github.com/repos/twosigma/waiter/issues/comments{/number}","contents_url":"https://api.github.com/repos/twosigma/waiter/contents/{+path}","compare_url":"https://api.github.com/repos/twosigma/waiter/compare/{base}...{head}","merges_url":"https://api.github.com/repos/twosigma/waiter/merges","archive_url":"https://api.github.com/repos/twosigma/waiter/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/twosigma/waiter/downloads","issues_url":"https://api.github.com/repos/twosigma/waiter/issues{/number}","pulls_url":"https://api.github.com/repos/twosigma/waiter/pulls{/number}","milestones_url":"https://api.github.com/repos/twosigma/waiter/milestones{/number}","notifications_url":"https://api.github.com/repos/twosigma/waiter/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/twosigma/waiter/labels{/name}","releases_url":"https://api.github.com/repos/twosigma/waiter/releases{/id}","deployments_url":"https://api.github.com/repos/twosigma/waiter/deployments","created_at":"2017-02-08T21:40:37Z","updated_at":"2018-11-14T18:32:00Z","pushed_at":"2018-11-14T18:52:45Z","git_url":"git://github.com/twosigma/waiter.git","ssh_url":"git@github.com:twosigma/waiter.git","clone_url":"https://github.com/twosigma/waiter.git","svn_url":"https://github.com/twosigma/waiter","homepage":"","size":3508,"stargazers_count":40,"watchers_count":40,"language":"Clojure","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":10,"mirror_url":null,"archived":false,"open_issues_count":42,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":10,"open_issues":42,"watchers":40,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/509"},"html":{"href":"https://github.com/twosigma/waiter/pull/509"},"issue":{"href":"https://api.github.com/repos/twosigma/waiter/issues/509"},"comments":{"href":"https://api.github.com/repos/twosigma/waiter/issues/509/comments"},"review_comments":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/509/comments"},"review_comment":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/twosigma/waiter/pulls/509/commits"},"statuses":{"href":"https://api.github.com/repos/twosigma/waiter/statuses/c57acbadaef4f6bb410e072b47b131877b95201b"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"DaoWen"}}