GitHub PullRequestReviewCommentEvent at 2014-10-15 13:08:45
Repository: activerecord-rescue_from_duplicate
Actor: tjoyal
Payload: {"action":"created","comment":{"url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/comments/18891676","id":18891676,"diff_hunk":"@@ -29,17 +33,13 @@ def create_or_update(*params, &block)\n       false\n     end\n \n-    def exception_validator(exception)\n+    def exception_handler(exception)\n       columns = exception_columns(exception)","path":"lib/rescue_from_duplicate/active_record/extension.rb","position":26,"original_position":26,"commit_id":"ea8184a4f67fb0c4d7d61e3e67d3fee2ed0d1a67","original_commit_id":"ea8184a4f67fb0c4d7d61e3e67d3fee2ed0d1a67","user":{"login":"tjoyal","id":207902,"avatar_url":"https://avatars.githubusercontent.com/u/207902?v=2","gravatar_id":"","url":"https://api.github.com/users/tjoyal","html_url":"https://github.com/tjoyal","followers_url":"https://api.github.com/users/tjoyal/followers","following_url":"https://api.github.com/users/tjoyal/following{/other_user}","gists_url":"https://api.github.com/users/tjoyal/gists{/gist_id}","starred_url":"https://api.github.com/users/tjoyal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tjoyal/subscriptions","organizations_url":"https://api.github.com/users/tjoyal/orgs","repos_url":"https://api.github.com/users/tjoyal/repos","events_url":"https://api.github.com/users/tjoyal/events{/privacy}","received_events_url":"https://api.github.com/users/tjoyal/received_events","type":"User","site_admin":false},"body":"Unrelated to the PR changes, but I think these need to be sorted the same way you sort the `validator_columns`","created_at":"2014-10-15T13:08:45Z","updated_at":"2014-10-15T13:08:45Z","html_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5#discussion_r18891676","pull_request_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5","_links":{"self":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/comments/18891676"},"html":{"href":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5#discussion_r18891676"},"pull_request":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5"}}},"pull_request":{"url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5","id":22743661,"html_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5","diff_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5.diff","patch_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5.patch","issue_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/5","number":5,"state":"open","locked":false,"title":"Simplify rescue code","user":{"login":"gmalette","id":351915,"avatar_url":"https://avatars.githubusercontent.com/u/351915?v=2","gravatar_id":"","url":"https://api.github.com/users/gmalette","html_url":"https://github.com/gmalette","followers_url":"https://api.github.com/users/gmalette/followers","following_url":"https://api.github.com/users/gmalette/following{/other_user}","gists_url":"https://api.github.com/users/gmalette/gists{/gist_id}","starred_url":"https://api.github.com/users/gmalette/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gmalette/subscriptions","organizations_url":"https://api.github.com/users/gmalette/orgs","repos_url":"https://api.github.com/users/gmalette/repos","events_url":"https://api.github.com/users/gmalette/events{/privacy}","received_events_url":"https://api.github.com/users/gmalette/received_events","type":"User","site_admin":false},"body":"By using the same interface for validators and rescue handlers, the code is much simplified.\r\n\r\nping @tjoyal @sgnr ","created_at":"2014-10-14T21:12:25Z","updated_at":"2014-10-15T13:08:45Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f1d7214fbd3afe64683930c8c7533112fcfb57e7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5/commits","review_comments_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5/comments","review_comment_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/comments/{number}","comments_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/5/comments","statuses_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/statuses/ea8184a4f67fb0c4d7d61e3e67d3fee2ed0d1a67","head":{"label":"Shopify:simplify-rescuing","ref":"simplify-rescuing","sha":"ea8184a4f67fb0c4d7d61e3e67d3fee2ed0d1a67","user":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=2","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"repo":{"id":14712570,"name":"activerecord-rescue_from_duplicate","full_name":"Shopify/activerecord-rescue_from_duplicate","owner":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=2","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate","description":"","fork":false,"url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate","forks_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/forks","keys_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/teams","hooks_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/hooks","issue_events_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/events{/number}","events_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/events","assignees_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/assignees{/user}","branches_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/branches{/branch}","tags_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/tags","blobs_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/refs{/sha}","trees_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/statuses/{sha}","languages_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/languages","stargazers_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/stargazers","contributors_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/contributors","subscribers_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/subscribers","subscription_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/subscription","commits_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/commits{/sha}","git_commits_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/commits{/sha}","comments_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/comments{/number}","issue_comment_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/comments/{number}","contents_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/contents/{+path}","compare_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/merges","archive_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/downloads","issues_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues{/number}","pulls_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls{/number}","milestones_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/milestones{/number}","notifications_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/labels{/name}","releases_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/releases{/id}","created_at":"2013-11-26T09:36:54Z","updated_at":"2014-10-03T07:53:23Z","pushed_at":"2014-10-14T21:11:44Z","git_url":"git://github.com/Shopify/activerecord-rescue_from_duplicate.git","ssh_url":"git@github.com:Shopify/activerecord-rescue_from_duplicate.git","clone_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate.git","svn_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate","homepage":null,"size":460,"stargazers_count":4,"watchers_count":4,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":4,"default_branch":"master"}},"base":{"label":"Shopify:master","ref":"master","sha":"f8a67e19a0a74befac31150a7d41d53f74edbf1a","user":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=2","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"repo":{"id":14712570,"name":"activerecord-rescue_from_duplicate","full_name":"Shopify/activerecord-rescue_from_duplicate","owner":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=2","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate","description":"","fork":false,"url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate","forks_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/forks","keys_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/teams","hooks_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/hooks","issue_events_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/events{/number}","events_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/events","assignees_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/assignees{/user}","branches_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/branches{/branch}","tags_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/tags","blobs_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/refs{/sha}","trees_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/statuses/{sha}","languages_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/languages","stargazers_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/stargazers","contributors_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/contributors","subscribers_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/subscribers","subscription_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/subscription","commits_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/commits{/sha}","git_commits_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/git/commits{/sha}","comments_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/comments{/number}","issue_comment_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/comments/{number}","contents_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/contents/{+path}","compare_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/merges","archive_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/downloads","issues_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues{/number}","pulls_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls{/number}","milestones_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/milestones{/number}","notifications_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/labels{/name}","releases_url":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/releases{/id}","created_at":"2013-11-26T09:36:54Z","updated_at":"2014-10-03T07:53:23Z","pushed_at":"2014-10-14T21:11:44Z","git_url":"git://github.com/Shopify/activerecord-rescue_from_duplicate.git","ssh_url":"git@github.com:Shopify/activerecord-rescue_from_duplicate.git","clone_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate.git","svn_url":"https://github.com/Shopify/activerecord-rescue_from_duplicate","homepage":null,"size":460,"stargazers_count":4,"watchers_count":4,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":4,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5"},"html":{"href":"https://github.com/Shopify/activerecord-rescue_from_duplicate/pull/5"},"issue":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/5"},"comments":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/issues/5/comments"},"review_comments":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5/comments"},"review_comment":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/pulls/5/commits"},"statuses":{"href":"https://api.github.com/repos/Shopify/activerecord-rescue_from_duplicate/statuses/ea8184a4f67fb0c4d7d61e3e67d3fee2ed0d1a67"}}}}