{"action":"created","comment":{"url":"https://api.github.com/repos/18F/identity-idp/pulls/comments/148307469","pull_request_review_id":73529446,"id":148307469,"diff_hunk":"@@ -43,7 +43,7 @@ class Application < Rails::Application\n           ServiceProvider.pluck(:redirect_uris).flatten.compact.map do |uri|\n             begin\n               URI.join(uri, '/').to_s[0..-2]\n-            rescue URI::BadURIError => err\n+            rescue URI::Error => err\n               Rails.logger.warn({ warning: err.class.to_s, source: 'Rack::Cors', uri: uri }.to_json)\n               ''","path":"config/application.rb","position":7,"original_position":7,"commit_id":"74bb95baa1aec62138415067f627d7e9bd1cdafb","original_commit_id":"74bb95baa1aec62138415067f627d7e9bd1cdafb","user":{"login":"monfresh","id":811150,"avatar_url":"https://avatars1.githubusercontent.com/u/811150?v=4","gravatar_id":"","url":"https://api.github.com/users/monfresh","html_url":"https://github.com/monfresh","followers_url":"https://api.github.com/users/monfresh/followers","following_url":"https://api.github.com/users/monfresh/following{/other_user}","gists_url":"https://api.github.com/users/monfresh/gists{/gist_id}","starred_url":"https://api.github.com/users/monfresh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/monfresh/subscriptions","organizations_url":"https://api.github.com/users/monfresh/orgs","repos_url":"https://api.github.com/users/monfresh/repos","events_url":"https://api.github.com/users/monfresh/events{/privacy}","received_events_url":"https://api.github.com/users/monfresh/received_events","type":"User","site_admin":false},"body":"Should we also, or instead of Rails.logger, send this to the exception notification?\r\n```ruby\r\nExceptionNotifier.notify_exception(err)\r\n```","created_at":"2017-11-01T16:18:24Z","updated_at":"2017-11-01T16:18:24Z","html_url":"https://github.com/18F/identity-idp/pull/1758#discussion_r148307469","pull_request_url":"https://api.github.com/repos/18F/identity-idp/pulls/1758","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/comments/148307469"},"html":{"href":"https://github.com/18F/identity-idp/pull/1758#discussion_r148307469"},"pull_request":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1758"}}},"pull_request":{"url":"https://api.github.com/repos/18F/identity-idp/pulls/1758","id":149639953,"html_url":"https://github.com/18F/identity-idp/pull/1758","diff_url":"https://github.com/18F/identity-idp/pull/1758.diff","patch_url":"https://github.com/18F/identity-idp/pull/1758.patch","issue_url":"https://api.github.com/repos/18F/identity-idp/issues/1758","number":1758,"state":"open","locked":false,"title":"Rescue from URI:Error instead of URI::BadURIError","user":{"login":"jmhooper","id":963654,"avatar_url":"https://avatars1.githubusercontent.com/u/963654?v=4","gravatar_id":"","url":"https://api.github.com/users/jmhooper","html_url":"https://github.com/jmhooper","followers_url":"https://api.github.com/users/jmhooper/followers","following_url":"https://api.github.com/users/jmhooper/following{/other_user}","gists_url":"https://api.github.com/users/jmhooper/gists{/gist_id}","starred_url":"https://api.github.com/users/jmhooper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmhooper/subscriptions","organizations_url":"https://api.github.com/users/jmhooper/orgs","repos_url":"https://api.github.com/users/jmhooper/repos","events_url":"https://api.github.com/users/jmhooper/events{/privacy}","received_events_url":"https://api.github.com/users/jmhooper/received_events","type":"User","site_admin":false},"body":"**Why**: So that the app will not break if there is a URI error adding\r\nthe SP's url to the allowed origins in our CORS headers. Previously we\r\nwere rescuing from `URI::InvalidURIError`, but the URI module has a\r\nnumber of URI error subclasses it can raise if there is an issue with\r\nthe URI.\r\n\r\nref: https://docs.ruby-lang.org/en/2.4.0/URI.html","created_at":"2017-10-30T21:16:51Z","updated_at":"2017-11-01T16:18:24Z","closed_at":null,"merged_at":null,"merge_commit_sha":"24e355ee62e99cd306a4e24ba3790255c9c90c3d","assignee":null,"assignees":[],"requested_reviewers":[{"login":"mugizico","id":1028320,"avatar_url":"https://avatars2.githubusercontent.com/u/1028320?v=4","gravatar_id":"","url":"https://api.github.com/users/mugizico","html_url":"https://github.com/mugizico","followers_url":"https://api.github.com/users/mugizico/followers","following_url":"https://api.github.com/users/mugizico/following{/other_user}","gists_url":"https://api.github.com/users/mugizico/gists{/gist_id}","starred_url":"https://api.github.com/users/mugizico/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mugizico/subscriptions","organizations_url":"https://api.github.com/users/mugizico/orgs","repos_url":"https://api.github.com/users/mugizico/repos","events_url":"https://api.github.com/users/mugizico/events{/privacy}","received_events_url":"https://api.github.com/users/mugizico/received_events","type":"User","site_admin":false},{"login":"annalee","id":1122643,"avatar_url":"https://avatars2.githubusercontent.com/u/1122643?v=4","gravatar_id":"","url":"https://api.github.com/users/annalee","html_url":"https://github.com/annalee","followers_url":"https://api.github.com/users/annalee/followers","following_url":"https://api.github.com/users/annalee/following{/other_user}","gists_url":"https://api.github.com/users/annalee/gists{/gist_id}","starred_url":"https://api.github.com/users/annalee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/annalee/subscriptions","organizations_url":"https://api.github.com/users/annalee/orgs","repos_url":"https://api.github.com/users/annalee/repos","events_url":"https://api.github.com/users/annalee/events{/privacy}","received_events_url":"https://api.github.com/users/annalee/received_events","type":"User","site_admin":false},{"login":"tbaxter-18f","id":32077682,"avatar_url":"https://avatars2.githubusercontent.com/u/32077682?v=4","gravatar_id":"","url":"https://api.github.com/users/tbaxter-18f","html_url":"https://github.com/tbaxter-18f","followers_url":"https://api.github.com/users/tbaxter-18f/followers","following_url":"https://api.github.com/users/tbaxter-18f/following{/other_user}","gists_url":"https://api.github.com/users/tbaxter-18f/gists{/gist_id}","starred_url":"https://api.github.com/users/tbaxter-18f/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tbaxter-18f/subscriptions","organizations_url":"https://api.github.com/users/tbaxter-18f/orgs","repos_url":"https://api.github.com/users/tbaxter-18f/repos","events_url":"https://api.github.com/users/tbaxter-18f/events{/privacy}","received_events_url":"https://api.github.com/users/tbaxter-18f/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/18F/identity-idp/pulls/1758/commits","review_comments_url":"https://api.github.com/repos/18F/identity-idp/pulls/1758/comments","review_comment_url":"https://api.github.com/repos/18F/identity-idp/pulls/comments{/number}","comments_url":"https://api.github.com/repos/18F/identity-idp/issues/1758/comments","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/74bb95baa1aec62138415067f627d7e9bd1cdafb","head":{"label":"18F:jmhooper-uri-error","ref":"jmhooper-uri-error","sha":"74bb95baa1aec62138415067f627d7e9bd1cdafb","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":50386243,"name":"identity-idp","full_name":"18F/identity-idp","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/identity-idp","description":"18F Identity Provider (IdP)","fork":false,"url":"https://api.github.com/repos/18F/identity-idp","forks_url":"https://api.github.com/repos/18F/identity-idp/forks","keys_url":"https://api.github.com/repos/18F/identity-idp/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/identity-idp/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/identity-idp/teams","hooks_url":"https://api.github.com/repos/18F/identity-idp/hooks","issue_events_url":"https://api.github.com/repos/18F/identity-idp/issues/events{/number}","events_url":"https://api.github.com/repos/18F/identity-idp/events","assignees_url":"https://api.github.com/repos/18F/identity-idp/assignees{/user}","branches_url":"https://api.github.com/repos/18F/identity-idp/branches{/branch}","tags_url":"https://api.github.com/repos/18F/identity-idp/tags","blobs_url":"https://api.github.com/repos/18F/identity-idp/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/identity-idp/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/identity-idp/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/identity-idp/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/identity-idp/languages","stargazers_url":"https://api.github.com/repos/18F/identity-idp/stargazers","contributors_url":"https://api.github.com/repos/18F/identity-idp/contributors","subscribers_url":"https://api.github.com/repos/18F/identity-idp/subscribers","subscription_url":"https://api.github.com/repos/18F/identity-idp/subscription","commits_url":"https://api.github.com/repos/18F/identity-idp/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/identity-idp/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/identity-idp/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/identity-idp/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/identity-idp/contents/{+path}","compare_url":"https://api.github.com/repos/18F/identity-idp/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/identity-idp/merges","archive_url":"https://api.github.com/repos/18F/identity-idp/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/identity-idp/downloads","issues_url":"https://api.github.com/repos/18F/identity-idp/issues{/number}","pulls_url":"https://api.github.com/repos/18F/identity-idp/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/identity-idp/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/identity-idp/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/identity-idp/labels{/name}","releases_url":"https://api.github.com/repos/18F/identity-idp/releases{/id}","deployments_url":"https://api.github.com/repos/18F/identity-idp/deployments","created_at":"2016-01-25T22:40:59Z","updated_at":"2017-10-27T17:06:47Z","pushed_at":"2017-11-01T14:25:48Z","git_url":"git://github.com/18F/identity-idp.git","ssh_url":"git@github.com:18F/identity-idp.git","clone_url":"https://github.com/18F/identity-idp.git","svn_url":"https://github.com/18F/identity-idp","homepage":"https://secure.login.gov/","size":11013,"stargazers_count":138,"watchers_count":138,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":27,"mirror_url":null,"archived":false,"open_issues_count":17,"forks":27,"open_issues":17,"watchers":138,"default_branch":"master"}},"base":{"label":"18F:master","ref":"master","sha":"23a7feea5dfb264a548a549ed7816dfd27b39220","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":50386243,"name":"identity-idp","full_name":"18F/identity-idp","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/identity-idp","description":"18F Identity Provider (IdP)","fork":false,"url":"https://api.github.com/repos/18F/identity-idp","forks_url":"https://api.github.com/repos/18F/identity-idp/forks","keys_url":"https://api.github.com/repos/18F/identity-idp/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/identity-idp/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/identity-idp/teams","hooks_url":"https://api.github.com/repos/18F/identity-idp/hooks","issue_events_url":"https://api.github.com/repos/18F/identity-idp/issues/events{/number}","events_url":"https://api.github.com/repos/18F/identity-idp/events","assignees_url":"https://api.github.com/repos/18F/identity-idp/assignees{/user}","branches_url":"https://api.github.com/repos/18F/identity-idp/branches{/branch}","tags_url":"https://api.github.com/repos/18F/identity-idp/tags","blobs_url":"https://api.github.com/repos/18F/identity-idp/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/identity-idp/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/identity-idp/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/identity-idp/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/identity-idp/languages","stargazers_url":"https://api.github.com/repos/18F/identity-idp/stargazers","contributors_url":"https://api.github.com/repos/18F/identity-idp/contributors","subscribers_url":"https://api.github.com/repos/18F/identity-idp/subscribers","subscription_url":"https://api.github.com/repos/18F/identity-idp/subscription","commits_url":"https://api.github.com/repos/18F/identity-idp/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/identity-idp/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/identity-idp/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/identity-idp/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/identity-idp/contents/{+path}","compare_url":"https://api.github.com/repos/18F/identity-idp/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/identity-idp/merges","archive_url":"https://api.github.com/repos/18F/identity-idp/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/identity-idp/downloads","issues_url":"https://api.github.com/repos/18F/identity-idp/issues{/number}","pulls_url":"https://api.github.com/repos/18F/identity-idp/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/identity-idp/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/identity-idp/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/identity-idp/labels{/name}","releases_url":"https://api.github.com/repos/18F/identity-idp/releases{/id}","deployments_url":"https://api.github.com/repos/18F/identity-idp/deployments","created_at":"2016-01-25T22:40:59Z","updated_at":"2017-10-27T17:06:47Z","pushed_at":"2017-11-01T14:25:48Z","git_url":"git://github.com/18F/identity-idp.git","ssh_url":"git@github.com:18F/identity-idp.git","clone_url":"https://github.com/18F/identity-idp.git","svn_url":"https://github.com/18F/identity-idp","homepage":"https://secure.login.gov/","size":11013,"stargazers_count":138,"watchers_count":138,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":27,"mirror_url":null,"archived":false,"open_issues_count":17,"forks":27,"open_issues":17,"watchers":138,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1758"},"html":{"href":"https://github.com/18F/identity-idp/pull/1758"},"issue":{"href":"https://api.github.com/repos/18F/identity-idp/issues/1758"},"comments":{"href":"https://api.github.com/repos/18F/identity-idp/issues/1758/comments"},"review_comments":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1758/comments"},"review_comment":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1758/commits"},"statuses":{"href":"https://api.github.com/repos/18F/identity-idp/statuses/74bb95baa1aec62138415067f627d7e9bd1cdafb"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"monfresh"}}