)]}'
{"keystone/contrib/endpoint_filter/controllers.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b09ee1445ba4d8b80ebd2e60b28f618af6567774","unresolved":false,"context_lines":[{"line_number":279,"context_line":"            endpoint_group_id, project_id)"},{"line_number":280,"context_line":""},{"line_number":281,"context_line":"    @classmethod"},{"line_number":282,"context_line":"    def _add_self_referential_link(cls, context, ref):"},{"line_number":283,"context_line":"        url \u003d (\u0027/projects/%(project_id)s/OS-EP-FILTER\u0027"},{"line_number":284,"context_line":"               \u0027/endpoint_groups/%(endpoint_group_id)s\u0027 % {"},{"line_number":285,"context_line":"                   \u0027endpoint_group_id\u0027: ref[\u0027endpoint_group_id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_db856608","line":282,"updated":"2014-09-17 05:31:12.000000000","message":"i *think* you might need to add a similar function for EndpointFilterV3Controller","commit_id":"2c49007a04abaf2aa3d433cb96724407c33777ae"},{"author":{"_account_id":11045,"name":"Bob Thyne","email":"bob.thyne@hp.com","username":"bobt"},"change_message_id":"8e97d8ab93f3818e5bac1917d52e7f8f755e9d7d","unresolved":false,"context_lines":[{"line_number":279,"context_line":"            endpoint_group_id, project_id)"},{"line_number":280,"context_line":""},{"line_number":281,"context_line":"    @classmethod"},{"line_number":282,"context_line":"    def _add_self_referential_link(cls, context, ref):"},{"line_number":283,"context_line":"        url \u003d (\u0027/projects/%(project_id)s/OS-EP-FILTER\u0027"},{"line_number":284,"context_line":"               \u0027/endpoint_groups/%(endpoint_group_id)s\u0027 % {"},{"line_number":285,"context_line":"                   \u0027endpoint_group_id\u0027: ref[\u0027endpoint_group_id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_3618471e","line":282,"in_reply_to":"fa98f980_db856608","updated":"2014-09-17 06:14:59.000000000","message":"Steve, the legacy EndpointFilterV3Controller did not overload the this method.","commit_id":"2c49007a04abaf2aa3d433cb96724407c33777ae"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"c2a3b111650f301ed78169b77a79b4a004a0151d","unresolved":false,"context_lines":[{"line_number":280,"context_line":""},{"line_number":281,"context_line":"    @classmethod"},{"line_number":282,"context_line":"    def _add_self_referential_link(cls, context, ref):"},{"line_number":283,"context_line":"        url \u003d (\u0027/projects/%(project_id)s/OS-EP-FILTER\u0027"},{"line_number":284,"context_line":"               \u0027/endpoint_groups/%(endpoint_group_id)s\u0027 % {"},{"line_number":285,"context_line":"                   \u0027endpoint_group_id\u0027: ref[\u0027endpoint_group_id\u0027],"},{"line_number":286,"context_line":"                   \u0027project_id\u0027: ref[\u0027project_id\u0027]})"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa98f980_f0e060fa","line":283,"updated":"2014-09-18 10:28:38.000000000","message":"it looks like even if somebody calls Icehouse URL (/OS-EP-FILTER/{....}) he will get new format of the link. Whereas I can see some reasoning behind that, I am not sure if we shouldn\u0027t keep links section consistent?","commit_id":"4d3b333895f87b3227236eecc097d09b7bfb1b51"},{"author":{"_account_id":11045,"name":"Bob Thyne","email":"bob.thyne@hp.com","username":"bobt"},"change_message_id":"a7079870405620514b7e274dcfec2932f100155a","unresolved":false,"context_lines":[{"line_number":280,"context_line":""},{"line_number":281,"context_line":"    @classmethod"},{"line_number":282,"context_line":"    def _add_self_referential_link(cls, context, ref):"},{"line_number":283,"context_line":"        url \u003d (\u0027/projects/%(project_id)s/OS-EP-FILTER\u0027"},{"line_number":284,"context_line":"               \u0027/endpoint_groups/%(endpoint_group_id)s\u0027 % {"},{"line_number":285,"context_line":"                   \u0027endpoint_group_id\u0027: ref[\u0027endpoint_group_id\u0027],"},{"line_number":286,"context_line":"                   \u0027project_id\u0027: ref[\u0027project_id\u0027]})"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa98f980_1b0419c5","line":283,"in_reply_to":"fa98f980_f0e060fa","updated":"2014-09-18 19:00:53.000000000","message":"For the new endpoint grouping APIs we won\u0027t need to concern ourselves with Icehouse backward compatibility.","commit_id":"4d3b333895f87b3227236eecc097d09b7bfb1b51"}],"keystone/contrib/endpoint_filter/routers.py":[{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"c2a3b111650f301ed78169b77a79b4a004a0151d","unresolved":false,"context_lines":[{"line_number":163,"context_line":"            path\u003dself.PATH_PREFIX + \u0027/projects/{project_id}\u0027 + ("},{"line_number":164,"context_line":"                \u0027/endpoints/{endpoint_id}\u0027),"},{"line_number":165,"context_line":"            get_head_action\u003d\u0027check_endpoint_in_project\u0027,"},{"line_number":166,"context_line":"            put_action\u003d\u0027add_endpoint_to_project\u0027,"},{"line_number":167,"context_line":"            delete_action\u003d\u0027remove_endpoint_from_project\u0027,"},{"line_number":168,"context_line":"            rel\u003dbuild_resource_relation(resource_name\u003d\u0027project_endpoint\u0027),"},{"line_number":169,"context_line":"            path_vars\u003d{"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa98f980_d0cfdc55","line":166,"updated":"2014-09-18 10:28:38.000000000","message":"is this reflected in the docstrings?\nIt should be PUT /OS-EP-FILTER/projects/..... ?","commit_id":"4d3b333895f87b3227236eecc097d09b7bfb1b51"},{"author":{"_account_id":11045,"name":"Bob Thyne","email":"bob.thyne@hp.com","username":"bobt"},"change_message_id":"a7079870405620514b7e274dcfec2932f100155a","unresolved":false,"context_lines":[{"line_number":163,"context_line":"            path\u003dself.PATH_PREFIX + \u0027/projects/{project_id}\u0027 + ("},{"line_number":164,"context_line":"                \u0027/endpoints/{endpoint_id}\u0027),"},{"line_number":165,"context_line":"            get_head_action\u003d\u0027check_endpoint_in_project\u0027,"},{"line_number":166,"context_line":"            put_action\u003d\u0027add_endpoint_to_project\u0027,"},{"line_number":167,"context_line":"            delete_action\u003d\u0027remove_endpoint_from_project\u0027,"},{"line_number":168,"context_line":"            rel\u003dbuild_resource_relation(resource_name\u003d\u0027project_endpoint\u0027),"},{"line_number":169,"context_line":"            path_vars\u003d{"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa98f980_5b406107","line":166,"in_reply_to":"fa98f980_d0cfdc55","updated":"2014-09-18 19:00:53.000000000","message":"Done","commit_id":"4d3b333895f87b3227236eecc097d09b7bfb1b51"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"507613e0fe3addf58fa85ab0d94b40e0d1a4d547","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        GET /OS-EP-FILTER/endpoint_groups/$endpoint_group_id/projects"},{"line_number":54,"context_line":"        GET /OS-EP-FILTER/endpoint_groups/$endpoint_group_id/endpoints"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        PUT /projects/$project_id/OS-EP-FILTER/endpoint_groups/"},{"line_number":57,"context_line":"            $endpoint_group_id"},{"line_number":58,"context_line":"        GET /projects/$project_id/OS-EP-FILTER/endpoint_groups/"},{"line_number":59,"context_line":"            $endpoint_group_id"}],"source_content_type":"text/x-python","patch_set":4,"id":"da9df570_e117d2a1","line":56,"updated":"2014-09-22 16:42:20.000000000","message":"undo this block of changes, per below","commit_id":"3f78c8b3297ee2e2e349213166226c2f55197eaf"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"507613e0fe3addf58fa85ab0d94b40e0d1a4d547","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        DELETE /projects/$project_id/OS-EP-FILTER/endpoint_groups/"},{"line_number":63,"context_line":"            $endpoint_group_id"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        # NOTE(bobt): For Icehouse Backward Compatibility:"},{"line_number":66,"context_line":"        PUT /OS-EP-FILTER/projects/$project_id/endpoints/$endpoint_id"},{"line_number":67,"context_line":"        GET /OS-EP-FILTER/projects/$project_id/endpoints/$endpoint_id"},{"line_number":68,"context_line":"        HEAD /OS-EP-FILTER/projects/$project_id/endpoints/$endpoint_id"}],"source_content_type":"text/x-python","patch_set":4,"id":"da9df570_819fe65e","line":65,"updated":"2014-09-22 16:42:20.000000000","message":"oh damn, i didn\u0027t realize we made this same mistake in icehouse. i don\u0027t think we should bother introducing new APIs for something that\u0027s already been released though. there\u0027s not enough benefit.\n\nundo this block of changes","commit_id":"3f78c8b3297ee2e2e349213166226c2f55197eaf"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"507613e0fe3addf58fa85ab0d94b40e0d1a4d547","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    \"\"\""},{"line_number":73,"context_line":"    PATH_PREFIX \u003d \u0027/OS-EP-FILTER\u0027"},{"line_number":74,"context_line":"    PATH_PROJECT_ENDPOINT \u003d \u0027/projects/{project_id}\u0027 + PATH_PREFIX + ("},{"line_number":75,"context_line":"        \u0027/endpoints/{endpoint_id}\u0027)"},{"line_number":76,"context_line":"    PATH_ENDPOINT_GROUPS \u003d \u0027/endpoint_groups/{endpoint_group_id}\u0027"},{"line_number":77,"context_line":"    PATH_ENDPOINT_GROUP_PROJECTS \u003d \u0027/projects/{project_id}\u0027 + PATH_PREFIX + ("}],"source_content_type":"text/x-python","patch_set":4,"id":"da9df570_a174eafd","line":74,"updated":"2014-09-22 16:42:20.000000000","message":"put the whole thing in parens, instead of starting the paren at the end of the line (if you need to maintain this change, which it doesn\u0027t look like is the case?)","commit_id":"3f78c8b3297ee2e2e349213166226c2f55197eaf"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"507613e0fe3addf58fa85ab0d94b40e0d1a4d547","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        \u0027/endpoints/{endpoint_id}\u0027)"},{"line_number":76,"context_line":"    PATH_ENDPOINT_GROUPS \u003d \u0027/endpoint_groups/{endpoint_group_id}\u0027"},{"line_number":77,"context_line":"    PATH_ENDPOINT_GROUP_PROJECTS \u003d \u0027/projects/{project_id}\u0027 + PATH_PREFIX + ("},{"line_number":78,"context_line":"        PATH_ENDPOINT_GROUPS)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def add_routes(self, mapper):"},{"line_number":81,"context_line":"        endpoint_filter_controller \u003d controllers.EndpointFilterV3Controller()"}],"source_content_type":"text/x-python","patch_set":4,"id":"da9df570_2160fa31","line":78,"updated":"2014-09-22 16:42:20.000000000","message":"same comment as above","commit_id":"3f78c8b3297ee2e2e349213166226c2f55197eaf"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"17e8abbcce190ef2572130b52085a2c579f5251b","unresolved":false,"context_lines":[{"line_number":167,"context_line":"            get_head_action\u003d\u0027check_endpoint_in_project\u0027,"},{"line_number":168,"context_line":"            put_action\u003d\u0027add_endpoint_to_project\u0027,"},{"line_number":169,"context_line":"            delete_action\u003d\u0027remove_endpoint_from_project\u0027,"},{"line_number":170,"context_line":"            rel\u003dbuild_resource_relation(resource_name\u003d\u0027project_endpoint\u0027),"},{"line_number":171,"context_line":"            path_vars\u003d{"},{"line_number":172,"context_line":"                \u0027endpoint_id\u0027: json_home.Parameters.ENDPOINT_ID,"},{"line_number":173,"context_line":"                \u0027project_id\u0027: json_home.Parameters.PROJECT_ID,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_dbab7173","line":170,"updated":"2014-09-18 19:09:18.000000000","message":"We\u0027ll want the JSON Home document to have the relationship pointing to the new resource link rather than the old one.\n\nI think what we\u0027ll want to do here is enhance self._add_resource() to take a \"deprecated_path\" option that the mappings are also created for, but it doesn\u0027t register the relationship with the JSON Home info.","commit_id":"3f78c8b3297ee2e2e349213166226c2f55197eaf"}],"keystone/tests/test_associate_project_endpoint_extension.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b09ee1445ba4d8b80ebd2e60b28f618af6567774","unresolved":false,"context_lines":[{"line_number":58,"context_line":"                 expected_status\u003d204)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def test_create_endpoint_project_association_with_invalid_project(self):"},{"line_number":61,"context_line":"        \"\"\"PUT OS-EP-FILTER/projects/{project_id}/endpoints/{endpoint_id}"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"        Invalid project id test case."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_bb97c239","line":61,"updated":"2014-09-17 05:31:12.000000000","message":"update the doc string?","commit_id":"2c49007a04abaf2aa3d433cb96724407c33777ae"},{"author":{"_account_id":11045,"name":"Bob Thyne","email":"bob.thyne@hp.com","username":"bobt"},"change_message_id":"8e97d8ab93f3818e5bac1917d52e7f8f755e9d7d","unresolved":false,"context_lines":[{"line_number":58,"context_line":"                 expected_status\u003d204)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def test_create_endpoint_project_association_with_invalid_project(self):"},{"line_number":61,"context_line":"        \"\"\"PUT OS-EP-FILTER/projects/{project_id}/endpoints/{endpoint_id}"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"        Invalid project id test case."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_16bfc3fd","line":61,"in_reply_to":"fa98f980_bb97c239","updated":"2014-09-17 06:14:59.000000000","message":"Done","commit_id":"2c49007a04abaf2aa3d433cb96724407c33777ae"}]}
