{"action":"closed","number":69,"pull_request":{"url":"https://api.github.com/repos/brandicted/nefertari/pulls/69","id":39076330,"html_url":"https://github.com/brandicted/nefertari/pull/69","diff_url":"https://github.com/brandicted/nefertari/pull/69.diff","patch_url":"https://github.com/brandicted/nefertari/pull/69.patch","issue_url":"https://api.github.com/repos/brandicted/nefertari/issues/69","number":69,"state":"closed","locked":false,"title":"Handle polymorphic ES collections requests","user":{"login":"postatum","id":1999863,"avatar_url":"https://avatars.githubusercontent.com/u/1999863?v=3","gravatar_id":"","url":"https://api.github.com/users/postatum","html_url":"https://github.com/postatum","followers_url":"https://api.github.com/users/postatum/followers","following_url":"https://api.github.com/users/postatum/following{/other_user}","gists_url":"https://api.github.com/users/postatum/gists{/gist_id}","starred_url":"https://api.github.com/users/postatum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/postatum/subscriptions","organizations_url":"https://api.github.com/users/postatum/orgs","repos_url":"https://api.github.com/users/postatum/repos","events_url":"https://api.github.com/users/postatum/events{/privacy}","received_events_url":"https://api.github.com/users/postatum/received_events","type":"User","site_admin":false},"body":"* New module `polymorphic` that holds all polymorphism logic.\r\n* Fix `resource.get_root_resource` to get root resource using package name that started inclusion change and not the current one. Before if `get_root_resource` was run from `nefertari.includeme`, `get_root_resource` created root resource under `nefertari` which created 2 difference roots - one for app, and 2nd for nefertari.\r\n* Rename `utility_views.py -> view_helpers.py`.\r\n* Split `wrappers.add_meta` into `wrappers.add_meta` which adds `count` and `wrappers.add_object_url` which adds `self` key.\r\n* Renamed/refactored test modules according to above renamings/refactorings.\r\n* Move `nefertari.view.ESAggregator` to `view_helpers.py`.\r\n* Fix `add_object_url` to set `self` key properly when singular object is processed (before singular `self` looked like `/users/user12/profile/1`).\r\n\r\n\r\nDoc on using polymorphism https://github.com/postatum/nefertari/blob/96102074_polymorphic_collections/nefertari/polymorphic.py#L2","created_at":"2015-07-02T12:17:14Z","updated_at":"2015-07-03T04:48:29Z","closed_at":"2015-07-03T04:48:29Z","merged_at":"2015-07-03T04:48:29Z","merge_commit_sha":"7f1af1115bd74f0553a0850ae2768e740d88c79a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/brandicted/nefertari/pulls/69/commits","review_comments_url":"https://api.github.com/repos/brandicted/nefertari/pulls/69/comments","review_comment_url":"https://api.github.com/repos/brandicted/nefertari/pulls/comments{/number}","comments_url":"https://api.github.com/repos/brandicted/nefertari/issues/69/comments","statuses_url":"https://api.github.com/repos/brandicted/nefertari/statuses/bb745cb59ffb453b7dd07e6d4ae9e53f838bf420","head":{"label":"postatum:96102074_polymorphic_collections","ref":"96102074_polymorphic_collections","sha":"bb745cb59ffb453b7dd07e6d4ae9e53f838bf420","user":{"login":"postatum","id":1999863,"avatar_url":"https://avatars.githubusercontent.com/u/1999863?v=3","gravatar_id":"","url":"https://api.github.com/users/postatum","html_url":"https://github.com/postatum","followers_url":"https://api.github.com/users/postatum/followers","following_url":"https://api.github.com/users/postatum/following{/other_user}","gists_url":"https://api.github.com/users/postatum/gists{/gist_id}","starred_url":"https://api.github.com/users/postatum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/postatum/subscriptions","organizations_url":"https://api.github.com/users/postatum/orgs","repos_url":"https://api.github.com/users/postatum/repos","events_url":"https://api.github.com/users/postatum/events{/privacy}","received_events_url":"https://api.github.com/users/postatum/received_events","type":"User","site_admin":false},"repo":{"id":33106222,"name":"nefertari","full_name":"postatum/nefertari","owner":{"login":"postatum","id":1999863,"avatar_url":"https://avatars.githubusercontent.com/u/1999863?v=3","gravatar_id":"","url":"https://api.github.com/users/postatum","html_url":"https://github.com/postatum","followers_url":"https://api.github.com/users/postatum/followers","following_url":"https://api.github.com/users/postatum/following{/other_user}","gists_url":"https://api.github.com/users/postatum/gists{/gist_id}","starred_url":"https://api.github.com/users/postatum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/postatum/subscriptions","organizations_url":"https://api.github.com/users/postatum/orgs","repos_url":"https://api.github.com/users/postatum/repos","events_url":"https://api.github.com/users/postatum/events{/privacy}","received_events_url":"https://api.github.com/users/postatum/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/postatum/nefertari","description":"Nefertari is a REST API framework sitting on top of Pyramid and ElasticSearch","fork":true,"url":"https://api.github.com/repos/postatum/nefertari","forks_url":"https://api.github.com/repos/postatum/nefertari/forks","keys_url":"https://api.github.com/repos/postatum/nefertari/keys{/key_id}","collaborators_url":"https://api.github.com/repos/postatum/nefertari/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/postatum/nefertari/teams","hooks_url":"https://api.github.com/repos/postatum/nefertari/hooks","issue_events_url":"https://api.github.com/repos/postatum/nefertari/issues/events{/number}","events_url":"https://api.github.com/repos/postatum/nefertari/events","assignees_url":"https://api.github.com/repos/postatum/nefertari/assignees{/user}","branches_url":"https://api.github.com/repos/postatum/nefertari/branches{/branch}","tags_url":"https://api.github.com/repos/postatum/nefertari/tags","blobs_url":"https://api.github.com/repos/postatum/nefertari/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/postatum/nefertari/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/postatum/nefertari/git/refs{/sha}","trees_url":"https://api.github.com/repos/postatum/nefertari/git/trees{/sha}","statuses_url":"https://api.github.com/repos/postatum/nefertari/statuses/{sha}","languages_url":"https://api.github.com/repos/postatum/nefertari/languages","stargazers_url":"https://api.github.com/repos/postatum/nefertari/stargazers","contributors_url":"https://api.github.com/repos/postatum/nefertari/contributors","subscribers_url":"https://api.github.com/repos/postatum/nefertari/subscribers","subscription_url":"https://api.github.com/repos/postatum/nefertari/subscription","commits_url":"https://api.github.com/repos/postatum/nefertari/commits{/sha}","git_commits_url":"https://api.github.com/repos/postatum/nefertari/git/commits{/sha}","comments_url":"https://api.github.com/repos/postatum/nefertari/comments{/number}","issue_comment_url":"https://api.github.com/repos/postatum/nefertari/issues/comments{/number}","contents_url":"https://api.github.com/repos/postatum/nefertari/contents/{+path}","compare_url":"https://api.github.com/repos/postatum/nefertari/compare/{base}...{head}","merges_url":"https://api.github.com/repos/postatum/nefertari/merges","archive_url":"https://api.github.com/repos/postatum/nefertari/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/postatum/nefertari/downloads","issues_url":"https://api.github.com/repos/postatum/nefertari/issues{/number}","pulls_url":"https://api.github.com/repos/postatum/nefertari/pulls{/number}","milestones_url":"https://api.github.com/repos/postatum/nefertari/milestones{/number}","notifications_url":"https://api.github.com/repos/postatum/nefertari/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/postatum/nefertari/labels{/name}","releases_url":"https://api.github.com/repos/postatum/nefertari/releases{/id}","created_at":"2015-03-30T06:07:37Z","updated_at":"2015-04-20T08:06:33Z","pushed_at":"2015-07-02T12:37:52Z","git_url":"git://github.com/postatum/nefertari.git","ssh_url":"git@github.com:postatum/nefertari.git","clone_url":"https://github.com/postatum/nefertari.git","svn_url":"https://github.com/postatum/nefertari","homepage":null,"size":1013,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"brandicted:develop","ref":"develop","sha":"e5fb0991638e42bc17c7433f5b961ac67f65169a","user":{"login":"brandicted","id":3409991,"avatar_url":"https://avatars.githubusercontent.com/u/3409991?v=3","gravatar_id":"","url":"https://api.github.com/users/brandicted","html_url":"https://github.com/brandicted","followers_url":"https://api.github.com/users/brandicted/followers","following_url":"https://api.github.com/users/brandicted/following{/other_user}","gists_url":"https://api.github.com/users/brandicted/gists{/gist_id}","starred_url":"https://api.github.com/users/brandicted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandicted/subscriptions","organizations_url":"https://api.github.com/users/brandicted/orgs","repos_url":"https://api.github.com/users/brandicted/repos","events_url":"https://api.github.com/users/brandicted/events{/privacy}","received_events_url":"https://api.github.com/users/brandicted/received_events","type":"Organization","site_admin":false},"repo":{"id":32995588,"name":"nefertari","full_name":"brandicted/nefertari","owner":{"login":"brandicted","id":3409991,"avatar_url":"https://avatars.githubusercontent.com/u/3409991?v=3","gravatar_id":"","url":"https://api.github.com/users/brandicted","html_url":"https://github.com/brandicted","followers_url":"https://api.github.com/users/brandicted/followers","following_url":"https://api.github.com/users/brandicted/following{/other_user}","gists_url":"https://api.github.com/users/brandicted/gists{/gist_id}","starred_url":"https://api.github.com/users/brandicted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandicted/subscriptions","organizations_url":"https://api.github.com/users/brandicted/orgs","repos_url":"https://api.github.com/users/brandicted/repos","events_url":"https://api.github.com/users/brandicted/events{/privacy}","received_events_url":"https://api.github.com/users/brandicted/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/brandicted/nefertari","description":"Nefertari is a REST API framework sitting on top of Pyramid and ElasticSearch","fork":false,"url":"https://api.github.com/repos/brandicted/nefertari","forks_url":"https://api.github.com/repos/brandicted/nefertari/forks","keys_url":"https://api.github.com/repos/brandicted/nefertari/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brandicted/nefertari/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brandicted/nefertari/teams","hooks_url":"https://api.github.com/repos/brandicted/nefertari/hooks","issue_events_url":"https://api.github.com/repos/brandicted/nefertari/issues/events{/number}","events_url":"https://api.github.com/repos/brandicted/nefertari/events","assignees_url":"https://api.github.com/repos/brandicted/nefertari/assignees{/user}","branches_url":"https://api.github.com/repos/brandicted/nefertari/branches{/branch}","tags_url":"https://api.github.com/repos/brandicted/nefertari/tags","blobs_url":"https://api.github.com/repos/brandicted/nefertari/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brandicted/nefertari/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brandicted/nefertari/git/refs{/sha}","trees_url":"https://api.github.com/repos/brandicted/nefertari/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brandicted/nefertari/statuses/{sha}","languages_url":"https://api.github.com/repos/brandicted/nefertari/languages","stargazers_url":"https://api.github.com/repos/brandicted/nefertari/stargazers","contributors_url":"https://api.github.com/repos/brandicted/nefertari/contributors","subscribers_url":"https://api.github.com/repos/brandicted/nefertari/subscribers","subscription_url":"https://api.github.com/repos/brandicted/nefertari/subscription","commits_url":"https://api.github.com/repos/brandicted/nefertari/commits{/sha}","git_commits_url":"https://api.github.com/repos/brandicted/nefertari/git/commits{/sha}","comments_url":"https://api.github.com/repos/brandicted/nefertari/comments{/number}","issue_comment_url":"https://api.github.com/repos/brandicted/nefertari/issues/comments{/number}","contents_url":"https://api.github.com/repos/brandicted/nefertari/contents/{+path}","compare_url":"https://api.github.com/repos/brandicted/nefertari/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brandicted/nefertari/merges","archive_url":"https://api.github.com/repos/brandicted/nefertari/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brandicted/nefertari/downloads","issues_url":"https://api.github.com/repos/brandicted/nefertari/issues{/number}","pulls_url":"https://api.github.com/repos/brandicted/nefertari/pulls{/number}","milestones_url":"https://api.github.com/repos/brandicted/nefertari/milestones{/number}","notifications_url":"https://api.github.com/repos/brandicted/nefertari/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brandicted/nefertari/labels{/name}","releases_url":"https://api.github.com/repos/brandicted/nefertari/releases{/id}","created_at":"2015-03-27T16:00:31Z","updated_at":"2015-07-02T02:51:24Z","pushed_at":"2015-07-03T04:48:29Z","git_url":"git://github.com/brandicted/nefertari.git","ssh_url":"git@github.com:brandicted/nefertari.git","clone_url":"https://github.com/brandicted/nefertari.git","svn_url":"https://github.com/brandicted/nefertari","homepage":null,"size":1121,"stargazers_count":8,"watchers_count":8,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":0,"forks":5,"open_issues":0,"watchers":8,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/brandicted/nefertari/pulls/69"},"html":{"href":"https://github.com/brandicted/nefertari/pull/69"},"issue":{"href":"https://api.github.com/repos/brandicted/nefertari/issues/69"},"comments":{"href":"https://api.github.com/repos/brandicted/nefertari/issues/69/comments"},"review_comments":{"href":"https://api.github.com/repos/brandicted/nefertari/pulls/69/comments"},"review_comment":{"href":"https://api.github.com/repos/brandicted/nefertari/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/brandicted/nefertari/pulls/69/commits"},"statuses":{"href":"https://api.github.com/repos/brandicted/nefertari/statuses/bb745cb59ffb453b7dd07e6d4ae9e53f838bf420"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"jstoiko","id":9660342,"avatar_url":"https://avatars.githubusercontent.com/u/9660342?v=3","gravatar_id":"","url":"https://api.github.com/users/jstoiko","html_url":"https://github.com/jstoiko","followers_url":"https://api.github.com/users/jstoiko/followers","following_url":"https://api.github.com/users/jstoiko/following{/other_user}","gists_url":"https://api.github.com/users/jstoiko/gists{/gist_id}","starred_url":"https://api.github.com/users/jstoiko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jstoiko/subscriptions","organizations_url":"https://api.github.com/users/jstoiko/orgs","repos_url":"https://api.github.com/users/jstoiko/repos","events_url":"https://api.github.com/users/jstoiko/events{/privacy}","received_events_url":"https://api.github.com/users/jstoiko/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"commits":13,"additions":989,"deletions":452,"changed_files":12}}