)]}'
{"keystone/catalog/controllers.py":[{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"cca2f237f406df039448d50ea4fb9798769009e7","unresolved":false,"context_lines":[{"line_number":63,"context_line":"class Endpoint(controller.V2Controller):"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    @controller.v2_deprecated"},{"line_number":66,"context_line":"    @controller.protected()"},{"line_number":67,"context_line":"    def get_endpoints(self, context):"},{"line_number":68,"context_line":"        \"\"\"Merge matching v3 endpoint refs into legacy refs.\"\"\""},{"line_number":69,"context_line":"        legacy_endpoints \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_f07628a2","line":66,"updated":"2014-08-03 07:03:29.000000000","message":"Did you verify this v3.cloudpolicy.json? You will most probably break if u call via v2 token","commit_id":"c6833f973fac9f06f5c9df0d2ba7bf7fbb493296"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"4d5199bf9440ef2f8d5039f97e0c559b3d7d5771","unresolved":false,"context_lines":[{"line_number":63,"context_line":"class Endpoint(controller.V2Controller):"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    @controller.v2_deprecated"},{"line_number":66,"context_line":"    @controller.protected()"},{"line_number":67,"context_line":"    def get_endpoints(self, context):"},{"line_number":68,"context_line":"        \"\"\"Merge matching v3 endpoint refs into legacy refs.\"\"\""},{"line_number":69,"context_line":"        legacy_endpoints \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_53033775","line":66,"in_reply_to":"baada198_dd62023c","updated":"2014-08-04 18:21:16.000000000","message":"The default policy.json change should be in this patch.","commit_id":"c6833f973fac9f06f5c9df0d2ba7bf7fbb493296"},{"author":{"_account_id":12715,"name":"John Trowbridge","email":"trown@redhat.com","username":"trown"},"change_message_id":"cd0a1fdfe8e757cae02071f4243d85ee02c1006c","unresolved":false,"context_lines":[{"line_number":63,"context_line":"class Endpoint(controller.V2Controller):"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    @controller.v2_deprecated"},{"line_number":66,"context_line":"    @controller.protected()"},{"line_number":67,"context_line":"    def get_endpoints(self, context):"},{"line_number":68,"context_line":"        \"\"\"Merge matching v3 endpoint refs into legacy refs.\"\"\""},{"line_number":69,"context_line":"        legacy_endpoints \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_dd62023c","line":66,"in_reply_to":"baada198_f07628a2","updated":"2014-08-04 13:32:37.000000000","message":"I had to add a \"identity:get_endpoints\" rule. This rule is not in v3.cloudpolicy.json or the default policy.json.\n\nI tested changing this rule to \"rule:admin_required\", and this created the same behavior that was previously hard-coded. I then tested my use case of allowing all project members to list the endpoints, and this also worked.","commit_id":"c6833f973fac9f06f5c9df0d2ba7bf7fbb493296"}]}
