{"action":"closed","number":759,"pull_request":{"url":"https://api.github.com/repos/azavea/raster-foundry/pulls/759","id":96776364,"html_url":"https://github.com/azavea/raster-foundry/pull/759","diff_url":"https://github.com/azavea/raster-foundry/pull/759.diff","patch_url":"https://github.com/azavea/raster-foundry/pull/759.patch","issue_url":"https://api.github.com/repos/azavea/raster-foundry/issues/759","number":759,"state":"closed","locked":false,"title":"Add data_footprint to scenes","user":{"login":"jisantuc","id":5702984,"avatar_url":"https://avatars.githubusercontent.com/u/5702984?v=3","gravatar_id":"","url":"https://api.github.com/users/jisantuc","html_url":"https://github.com/jisantuc","followers_url":"https://api.github.com/users/jisantuc/followers","following_url":"https://api.github.com/users/jisantuc/following{/other_user}","gists_url":"https://api.github.com/users/jisantuc/gists{/gist_id}","starred_url":"https://api.github.com/users/jisantuc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jisantuc/subscriptions","organizations_url":"https://api.github.com/users/jisantuc/orgs","repos_url":"https://api.github.com/users/jisantuc/repos","events_url":"https://api.github.com/users/jisantuc/events{/privacy}","received_events_url":"https://api.github.com/users/jisantuc/received_events","type":"User","site_admin":false},"body":"## Overview\r\n\r\nBrief description of what this PR does, and why it is needed.\r\n\r\n### Checklist\r\n\r\n- [x] Styleguide updated, if necessary\r\n- [x] Swagger specification updated, if necessary\r\n\r\n\r\n### Notes\r\n\r\nWriting custom serializers because of having too many fields is unpleasant and we should strive to avoid having to do so in the future. There's a lot of magic and a lot of choices between seemingly equivalent things that nonetheless behave differently (`convertTo` vs. `asInstanceOf` vs. `to`, for example, for `JsValue`s).\r\n\r\nI [changed](https://github.com/azavea/raster-foundry/compare/feature/add-data-footprint-to-scenes?expand=1#diff-eb70f6a64fbc11cf4e57ebb41735a671R268) the bbox intersection filter from scene to data footprints rather than augmenting the filter list -- it makes more sense to filter based on where we have data. How we handle having one or the other I think is a separate question -- e.g., in the absence of a data footprint, should that just fill from the tile footprint?\r\n\r\n## Testing Instructions\r\n\r\n* run tests from `sbt`\r\n * `./scripts/server | grep airflow-worker\\|app-server`, wait a bit, observe that scenes still successfully post. This confirms that serialization hasn't ruined everything, even though `data_footprint` isn't yet in the post from airflow\r\n\r\nCloses #734 \r\n\r\nTo track both scene footprints and data footprints, we needed an\r\nadditional field on scenes. This change also required overhauling the\r\nserialization of Scene.WithRelated objects, since we exceeded the\r\nFunc22/Tuple22/jsonFormat22 limit.","created_at":"2016-12-06T18:10:29Z","updated_at":"2016-12-07T16:53:55Z","closed_at":"2016-12-07T16:53:55Z","merged_at":"2016-12-07T16:53:55Z","merge_commit_sha":"a345a5d0557829be122aec33fe8901a434cc91b2","assignee":{"login":"notthatbreezy","id":898060,"avatar_url":"https://avatars.githubusercontent.com/u/898060?v=3","gravatar_id":"","url":"https://api.github.com/users/notthatbreezy","html_url":"https://github.com/notthatbreezy","followers_url":"https://api.github.com/users/notthatbreezy/followers","following_url":"https://api.github.com/users/notthatbreezy/following{/other_user}","gists_url":"https://api.github.com/users/notthatbreezy/gists{/gist_id}","starred_url":"https://api.github.com/users/notthatbreezy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/notthatbreezy/subscriptions","organizations_url":"https://api.github.com/users/notthatbreezy/orgs","repos_url":"https://api.github.com/users/notthatbreezy/repos","events_url":"https://api.github.com/users/notthatbreezy/events{/privacy}","received_events_url":"https://api.github.com/users/notthatbreezy/received_events","type":"User","site_admin":false},"assignees":[{"login":"notthatbreezy","id":898060,"avatar_url":"https://avatars.githubusercontent.com/u/898060?v=3","gravatar_id":"","url":"https://api.github.com/users/notthatbreezy","html_url":"https://github.com/notthatbreezy","followers_url":"https://api.github.com/users/notthatbreezy/followers","following_url":"https://api.github.com/users/notthatbreezy/following{/other_user}","gists_url":"https://api.github.com/users/notthatbreezy/gists{/gist_id}","starred_url":"https://api.github.com/users/notthatbreezy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/notthatbreezy/subscriptions","organizations_url":"https://api.github.com/users/notthatbreezy/orgs","repos_url":"https://api.github.com/users/notthatbreezy/repos","events_url":"https://api.github.com/users/notthatbreezy/events{/privacy}","received_events_url":"https://api.github.com/users/notthatbreezy/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/azavea/raster-foundry/pulls/759/commits","review_comments_url":"https://api.github.com/repos/azavea/raster-foundry/pulls/759/comments","review_comment_url":"https://api.github.com/repos/azavea/raster-foundry/pulls/comments{/number}","comments_url":"https://api.github.com/repos/azavea/raster-foundry/issues/759/comments","statuses_url":"https://api.github.com/repos/azavea/raster-foundry/statuses/3329dc8949316057cac2a0e6e98596537177054a","head":{"label":"azavea:feature/add-data-footprint-to-scenes","ref":"feature/add-data-footprint-to-scenes","sha":"3329dc8949316057cac2a0e6e98596537177054a","user":{"login":"azavea","id":595231,"avatar_url":"https://avatars.githubusercontent.com/u/595231?v=3","gravatar_id":"","url":"https://api.github.com/users/azavea","html_url":"https://github.com/azavea","followers_url":"https://api.github.com/users/azavea/followers","following_url":"https://api.github.com/users/azavea/following{/other_user}","gists_url":"https://api.github.com/users/azavea/gists{/gist_id}","starred_url":"https://api.github.com/users/azavea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azavea/subscriptions","organizations_url":"https://api.github.com/users/azavea/orgs","repos_url":"https://api.github.com/users/azavea/repos","events_url":"https://api.github.com/users/azavea/events{/privacy}","received_events_url":"https://api.github.com/users/azavea/received_events","type":"Organization","site_admin":false},"repo":{"id":36464140,"name":"raster-foundry","full_name":"azavea/raster-foundry","owner":{"login":"azavea","id":595231,"avatar_url":"https://avatars.githubusercontent.com/u/595231?v=3","gravatar_id":"","url":"https://api.github.com/users/azavea","html_url":"https://github.com/azavea","followers_url":"https://api.github.com/users/azavea/followers","following_url":"https://api.github.com/users/azavea/following{/other_user}","gists_url":"https://api.github.com/users/azavea/gists{/gist_id}","starred_url":"https://api.github.com/users/azavea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azavea/subscriptions","organizations_url":"https://api.github.com/users/azavea/orgs","repos_url":"https://api.github.com/users/azavea/repos","events_url":"https://api.github.com/users/azavea/events{/privacy}","received_events_url":"https://api.github.com/users/azavea/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/azavea/raster-foundry","description":"The Raster Foundry web application.","fork":false,"url":"https://api.github.com/repos/azavea/raster-foundry","forks_url":"https://api.github.com/repos/azavea/raster-foundry/forks","keys_url":"https://api.github.com/repos/azavea/raster-foundry/keys{/key_id}","collaborators_url":"https://api.github.com/repos/azavea/raster-foundry/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/azavea/raster-foundry/teams","hooks_url":"https://api.github.com/repos/azavea/raster-foundry/hooks","issue_events_url":"https://api.github.com/repos/azavea/raster-foundry/issues/events{/number}","events_url":"https://api.github.com/repos/azavea/raster-foundry/events","assignees_url":"https://api.github.com/repos/azavea/raster-foundry/assignees{/user}","branches_url":"https://api.github.com/repos/azavea/raster-foundry/branches{/branch}","tags_url":"https://api.github.com/repos/azavea/raster-foundry/tags","blobs_url":"https://api.github.com/repos/azavea/raster-foundry/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/azavea/raster-foundry/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/azavea/raster-foundry/git/refs{/sha}","trees_url":"https://api.github.com/repos/azavea/raster-foundry/git/trees{/sha}","statuses_url":"https://api.github.com/repos/azavea/raster-foundry/statuses/{sha}","languages_url":"https://api.github.com/repos/azavea/raster-foundry/languages","stargazers_url":"https://api.github.com/repos/azavea/raster-foundry/stargazers","contributors_url":"https://api.github.com/repos/azavea/raster-foundry/contributors","subscribers_url":"https://api.github.com/repos/azavea/raster-foundry/subscribers","subscription_url":"https://api.github.com/repos/azavea/raster-foundry/subscription","commits_url":"https://api.github.com/repos/azavea/raster-foundry/commits{/sha}","git_commits_url":"https://api.github.com/repos/azavea/raster-foundry/git/commits{/sha}","comments_url":"https://api.github.com/repos/azavea/raster-foundry/comments{/number}","issue_comment_url":"https://api.github.com/repos/azavea/raster-foundry/issues/comments{/number}","contents_url":"https://api.github.com/repos/azavea/raster-foundry/contents/{+path}","compare_url":"https://api.github.com/repos/azavea/raster-foundry/compare/{base}...{head}","merges_url":"https://api.github.com/repos/azavea/raster-foundry/merges","archive_url":"https://api.github.com/repos/azavea/raster-foundry/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/azavea/raster-foundry/downloads","issues_url":"https://api.github.com/repos/azavea/raster-foundry/issues{/number}","pulls_url":"https://api.github.com/repos/azavea/raster-foundry/pulls{/number}","milestones_url":"https://api.github.com/repos/azavea/raster-foundry/milestones{/number}","notifications_url":"https://api.github.com/repos/azavea/raster-foundry/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/azavea/raster-foundry/labels{/name}","releases_url":"https://api.github.com/repos/azavea/raster-foundry/releases{/id}","deployments_url":"https://api.github.com/repos/azavea/raster-foundry/deployments","created_at":"2015-05-28T20:25:45Z","updated_at":"2016-12-02T20:56:12Z","pushed_at":"2016-12-07T16:53:55Z","git_url":"git://github.com/azavea/raster-foundry.git","ssh_url":"git@github.com:azavea/raster-foundry.git","clone_url":"https://github.com/azavea/raster-foundry.git","svn_url":"https://github.com/azavea/raster-foundry","homepage":"","size":29604,"stargazers_count":10,"watchers_count":10,"language":"Scala","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":11,"mirror_url":null,"open_issues_count":134,"forks":11,"open_issues":134,"watchers":10,"default_branch":"develop"}},"base":{"label":"azavea:develop","ref":"develop","sha":"916796c1d70539b9340e13497d56225b944cb0a6","user":{"login":"azavea","id":595231,"avatar_url":"https://avatars.githubusercontent.com/u/595231?v=3","gravatar_id":"","url":"https://api.github.com/users/azavea","html_url":"https://github.com/azavea","followers_url":"https://api.github.com/users/azavea/followers","following_url":"https://api.github.com/users/azavea/following{/other_user}","gists_url":"https://api.github.com/users/azavea/gists{/gist_id}","starred_url":"https://api.github.com/users/azavea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azavea/subscriptions","organizations_url":"https://api.github.com/users/azavea/orgs","repos_url":"https://api.github.com/users/azavea/repos","events_url":"https://api.github.com/users/azavea/events{/privacy}","received_events_url":"https://api.github.com/users/azavea/received_events","type":"Organization","site_admin":false},"repo":{"id":36464140,"name":"raster-foundry","full_name":"azavea/raster-foundry","owner":{"login":"azavea","id":595231,"avatar_url":"https://avatars.githubusercontent.com/u/595231?v=3","gravatar_id":"","url":"https://api.github.com/users/azavea","html_url":"https://github.com/azavea","followers_url":"https://api.github.com/users/azavea/followers","following_url":"https://api.github.com/users/azavea/following{/other_user}","gists_url":"https://api.github.com/users/azavea/gists{/gist_id}","starred_url":"https://api.github.com/users/azavea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azavea/subscriptions","organizations_url":"https://api.github.com/users/azavea/orgs","repos_url":"https://api.github.com/users/azavea/repos","events_url":"https://api.github.com/users/azavea/events{/privacy}","received_events_url":"https://api.github.com/users/azavea/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/azavea/raster-foundry","description":"The Raster Foundry web application.","fork":false,"url":"https://api.github.com/repos/azavea/raster-foundry","forks_url":"https://api.github.com/repos/azavea/raster-foundry/forks","keys_url":"https://api.github.com/repos/azavea/raster-foundry/keys{/key_id}","collaborators_url":"https://api.github.com/repos/azavea/raster-foundry/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/azavea/raster-foundry/teams","hooks_url":"https://api.github.com/repos/azavea/raster-foundry/hooks","issue_events_url":"https://api.github.com/repos/azavea/raster-foundry/issues/events{/number}","events_url":"https://api.github.com/repos/azavea/raster-foundry/events","assignees_url":"https://api.github.com/repos/azavea/raster-foundry/assignees{/user}","branches_url":"https://api.github.com/repos/azavea/raster-foundry/branches{/branch}","tags_url":"https://api.github.com/repos/azavea/raster-foundry/tags","blobs_url":"https://api.github.com/repos/azavea/raster-foundry/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/azavea/raster-foundry/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/azavea/raster-foundry/git/refs{/sha}","trees_url":"https://api.github.com/repos/azavea/raster-foundry/git/trees{/sha}","statuses_url":"https://api.github.com/repos/azavea/raster-foundry/statuses/{sha}","languages_url":"https://api.github.com/repos/azavea/raster-foundry/languages","stargazers_url":"https://api.github.com/repos/azavea/raster-foundry/stargazers","contributors_url":"https://api.github.com/repos/azavea/raster-foundry/contributors","subscribers_url":"https://api.github.com/repos/azavea/raster-foundry/subscribers","subscription_url":"https://api.github.com/repos/azavea/raster-foundry/subscription","commits_url":"https://api.github.com/repos/azavea/raster-foundry/commits{/sha}","git_commits_url":"https://api.github.com/repos/azavea/raster-foundry/git/commits{/sha}","comments_url":"https://api.github.com/repos/azavea/raster-foundry/comments{/number}","issue_comment_url":"https://api.github.com/repos/azavea/raster-foundry/issues/comments{/number}","contents_url":"https://api.github.com/repos/azavea/raster-foundry/contents/{+path}","compare_url":"https://api.github.com/repos/azavea/raster-foundry/compare/{base}...{head}","merges_url":"https://api.github.com/repos/azavea/raster-foundry/merges","archive_url":"https://api.github.com/repos/azavea/raster-foundry/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/azavea/raster-foundry/downloads","issues_url":"https://api.github.com/repos/azavea/raster-foundry/issues{/number}","pulls_url":"https://api.github.com/repos/azavea/raster-foundry/pulls{/number}","milestones_url":"https://api.github.com/repos/azavea/raster-foundry/milestones{/number}","notifications_url":"https://api.github.com/repos/azavea/raster-foundry/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/azavea/raster-foundry/labels{/name}","releases_url":"https://api.github.com/repos/azavea/raster-foundry/releases{/id}","deployments_url":"https://api.github.com/repos/azavea/raster-foundry/deployments","created_at":"2015-05-28T20:25:45Z","updated_at":"2016-12-02T20:56:12Z","pushed_at":"2016-12-07T16:53:55Z","git_url":"git://github.com/azavea/raster-foundry.git","ssh_url":"git@github.com:azavea/raster-foundry.git","clone_url":"https://github.com/azavea/raster-foundry.git","svn_url":"https://github.com/azavea/raster-foundry","homepage":"","size":29604,"stargazers_count":10,"watchers_count":10,"language":"Scala","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":11,"mirror_url":null,"open_issues_count":134,"forks":11,"open_issues":134,"watchers":10,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/azavea/raster-foundry/pulls/759"},"html":{"href":"https://github.com/azavea/raster-foundry/pull/759"},"issue":{"href":"https://api.github.com/repos/azavea/raster-foundry/issues/759"},"comments":{"href":"https://api.github.com/repos/azavea/raster-foundry/issues/759/comments"},"review_comments":{"href":"https://api.github.com/repos/azavea/raster-foundry/pulls/759/comments"},"review_comment":{"href":"https://api.github.com/repos/azavea/raster-foundry/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/azavea/raster-foundry/pulls/759/commits"},"statuses":{"href":"https://api.github.com/repos/azavea/raster-foundry/statuses/3329dc8949316057cac2a0e6e98596537177054a"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"jisantuc","id":5702984,"avatar_url":"https://avatars.githubusercontent.com/u/5702984?v=3","gravatar_id":"","url":"https://api.github.com/users/jisantuc","html_url":"https://github.com/jisantuc","followers_url":"https://api.github.com/users/jisantuc/followers","following_url":"https://api.github.com/users/jisantuc/following{/other_user}","gists_url":"https://api.github.com/users/jisantuc/gists{/gist_id}","starred_url":"https://api.github.com/users/jisantuc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jisantuc/subscriptions","organizations_url":"https://api.github.com/users/jisantuc/orgs","repos_url":"https://api.github.com/users/jisantuc/repos","events_url":"https://api.github.com/users/jisantuc/events{/privacy}","received_events_url":"https://api.github.com/users/jisantuc/received_events","type":"User","site_admin":false},"comments":0,"review_comments":2,"commits":1,"additions":164,"deletions":25,"changed_files":12}}
{"actor":{"display_login":"jisantuc"}}