)]}'
{"keystone/assignment/core.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        # FIXME(blk-u): handle default assignment driver."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        #if assignment_driver is None:"},{"line_number":55,"context_line":"        #    assignment_driver \u003d identity_api.default_assignment_driver()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        super(Manager, self).__init__(assignment_driver)"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAQn%2F%2F4XE%3D","line":55,"updated":"2013-07-19 21:33:15.000000000","message":"Plans to remove the commented out code?","commit_id":"9344186d301b9434b8ad29db4d10176132c19145"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        # FIXME(blk-u): handle default assignment driver."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        #if assignment_driver is None:"},{"line_number":55,"context_line":"        #    assignment_driver \u003d identity_api.default_assignment_driver()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        super(Manager, self).__init__(assignment_driver)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4Wc%3D","line":54,"updated":"2013-07-19 21:34:26.000000000","message":"Plans to remove commented out code?","commit_id":"a703d0aecac5446d9a1de6e3c1112211a205b83e"}],"keystone/common/dependency.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            def __wrapped_init__(self, *args, **kwargs):"},{"line_number":33,"context_line":"                \"\"\"Initialize the wrapped object and add it to the registry.\"\"\""},{"line_number":34,"context_line":"                init(self, *args, **kwargs)"},{"line_number":35,"context_line":"                REGISTRY[name] \u003d self"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"                resolve_future_dependencies(name)"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAQn%2F%2F4Xg%3D","line":35,"updated":"2013-07-19 21:33:15.000000000","message":"Don\u0027t we need to define:\n\nglobal _future_dependencies\n\nhere as well?","commit_id":"9344186d301b9434b8ad29db4d10176132c19145"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.__wrapped_init__(*args, **kwargs)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        for dependency in self._dependencies:"},{"line_number":54,"context_line":"            if dependency not in REGISTRY:"},{"line_number":55,"context_line":"                if dependency in _future_dependencies:"},{"line_number":56,"context_line":"                    _future_dependencies[dependency] +\u003d [self]"},{"line_number":57,"context_line":"                else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAQn%2F%2F4Xk%3D","line":54,"updated":"2013-07-19 21:33:15.000000000","message":"Don\u0027t we need to define:\n\nglobal _future_dependencies\n\nhere as well?","commit_id":"9344186d301b9434b8ad29db4d10176132c19145"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":34,"context_line":"                init(self, *args, **kwargs)"},{"line_number":35,"context_line":"                REGISTRY[name] \u003d self"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"                resolve_future_dependencies(name)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"            return __wrapped_init__"},{"line_number":40,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4WU%3D","line":37,"updated":"2013-07-19 21:34:26.000000000","message":"Do we need to define:\n\nglobal _future_dependencies\n\nhere like below?","commit_id":"a703d0aecac5446d9a1de6e3c1112211a205b83e"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e6dc9650cf457387f0188394be202a7e1c44966b","unresolved":false,"context_lines":[{"line_number":55,"context_line":"                if dependency in _future_dependencies:"},{"line_number":56,"context_line":"                    _future_dependencies[dependency] +\u003d [self]"},{"line_number":57,"context_line":"                else:"},{"line_number":58,"context_line":"                    _future_dependencies[dependency] \u003d [self]"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"                continue"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4WQ%3D","line":58,"updated":"2013-07-19 21:34:26.000000000","message":"and here","commit_id":"a703d0aecac5446d9a1de6e3c1112211a205b83e"}],"keystone/service.py":[{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"68de901b8533c0c44b3ac262a3e46073f004956d","unresolved":false,"context_lines":[{"line_number":37,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"# Ensure that identity_api is created before assignment_api."},{"line_number":41,"context_line":"_IDENTITY_API \u003d identity.Manager()"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"DRIVERS \u003d dict("}],"source_content_type":"text/x-python","patch_set":14,"id":"AAAAQn%2F%2Fhr0%3D","line":40,"updated":"2013-07-29 19:48:19.000000000","message":"probably should expand this comment to explain that identity_api is different from the other apis below to mitigate the circular dependency it would otherwise have with assignment_api. If not someone will come by in a month or two and try and \"clean this wackiness up\"","commit_id":"87f98ff18bba9c05f4c0884b7681d6ec3a43fdcb"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"52da1df9d50e46960cf389216a42f03d2b5afb05","unresolved":false,"context_lines":[{"line_number":37,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"# Ensure that identity_api is created before assignment_api."},{"line_number":41,"context_line":"_IDENTITY_API \u003d identity.Manager()"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"DRIVERS \u003d dict("}],"source_content_type":"text/x-python","patch_set":14,"id":"AAAAQn%2F%2FdQE%3D","line":40,"in_reply_to":"AAAAQn%2F%2Fhr0%3D","updated":"2013-07-30 22:10:14.000000000","message":"Done. I hope someone does come by in a month or two and \"clean this wackiness up\".","commit_id":"87f98ff18bba9c05f4c0884b7681d6ec3a43fdcb"}],"keystone/test.py":[{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"68de901b8533c0c44b3ac262a3e46073f004956d","unresolved":false,"context_lines":[{"line_number":267,"context_line":"        dependency.reset()"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        # NOTE(blk-u): identity must be first to ensure that it\u0027s available to"},{"line_number":270,"context_line":"        # the assignment backend."},{"line_number":271,"context_line":"        for manager in [identity, assignment, ec2, catalog, credential, policy,"},{"line_number":272,"context_line":"                        token, token_provider, trust]:"},{"line_number":273,"context_line":"            manager_name \u003d \u0027%s_api\u0027 % manager.__name__.split(\u0027.\u0027)[-1]"}],"source_content_type":"text/x-python","patch_set":14,"id":"AAAAQn%2F%2Fhrs%3D","line":270,"updated":"2013-07-29 19:48:19.000000000","message":"does it need to be first or just before assignment???","commit_id":"87f98ff18bba9c05f4c0884b7681d6ec3a43fdcb"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"52da1df9d50e46960cf389216a42f03d2b5afb05","unresolved":false,"context_lines":[{"line_number":267,"context_line":"        dependency.reset()"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        # NOTE(blk-u): identity must be first to ensure that it\u0027s available to"},{"line_number":270,"context_line":"        # the assignment backend."},{"line_number":271,"context_line":"        for manager in [identity, assignment, ec2, catalog, credential, policy,"},{"line_number":272,"context_line":"                        token, token_provider, trust]:"},{"line_number":273,"context_line":"            manager_name \u003d \u0027%s_api\u0027 % manager.__name__.split(\u0027.\u0027)[-1]"}],"source_content_type":"text/x-python","patch_set":14,"id":"AAAAQn%2F%2FdQA%3D","line":270,"in_reply_to":"AAAAQn%2F%2Fhrs%3D","updated":"2013-07-30 22:10:14.000000000","message":"Done. You\u0027re correct that identity only has to be before assignment and not necessarily first.","commit_id":"87f98ff18bba9c05f4c0884b7681d6ec3a43fdcb"}]}
