)]}'
{"keystone/auth/controllers.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"fbfa7ee4532f6ae0d51b22abf3d41e4de70a7865","unresolved":false,"context_lines":[{"line_number":141,"context_line":"                project_id\u003dproject_id, is_domain\u003dis_domain,"},{"line_number":142,"context_line":"                domain_id\u003ddomain_id, auth_context\u003dauth_context, trust\u003dtrust,"},{"line_number":143,"context_line":"                include_catalog\u003dinclude_catalog,"},{"line_number":144,"context_line":"                parent_audit_id\u003dtoken_audit_id)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"            # NOTE(wanghong): We consume a trust use only when we are using"},{"line_number":147,"context_line":"            # trusts and have successfully issued a token."}],"source_content_type":"text/x-python","patch_set":14,"id":"7f96bb07_e01cd378","line":144,"updated":"2018-01-22 23:34:16.000000000","message":"Did you mean to add a system scope parameter here or is this just cleanup?","commit_id":"d9f8397a46279cd1765429f5ed9b1dd9c2cf8c02"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"bcd10e42e313f956a1708e6729eb07deca9a5b18","unresolved":false,"context_lines":[{"line_number":141,"context_line":"                project_id\u003dproject_id, is_domain\u003dis_domain,"},{"line_number":142,"context_line":"                domain_id\u003ddomain_id, auth_context\u003dauth_context, trust\u003dtrust,"},{"line_number":143,"context_line":"                include_catalog\u003dinclude_catalog,"},{"line_number":144,"context_line":"                parent_audit_id\u003dtoken_audit_id)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"            # NOTE(wanghong): We consume a trust use only when we are using"},{"line_number":147,"context_line":"            # trusts and have successfully issued a token."}],"source_content_type":"text/x-python","patch_set":14,"id":"7f96bb07_43f01868","line":144,"in_reply_to":"7f96bb07_e01cd378","updated":"2018-01-23 15:10:04.000000000","message":"I wanted to clean this up since adding a new parameter, \u0027system\u0027, to the method signature caused issues with the caller. Since the caller was calling the method\u0027s argument based on position when it should be called with kwargs to avoid problems when method signatures change.\n\nI open this up in a subsequent patch: https://review.openstack.org/#/c/525687/19/keystone/auth/controllers.py@143","commit_id":"d9f8397a46279cd1765429f5ed9b1dd9c2cf8c02"}],"keystone/token/provider.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":196,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"},{"line_number":199,"context_line":"                    system_scoped\u003dNone, project_id\u003dNone, is_domain\u003dFalse,"},{"line_number":200,"context_line":"                    domain_id\u003dNone, auth_context\u003dNone, trust\u003dNone,"},{"line_number":201,"context_line":"                    include_catalog\u003dTrue, parent_audit_id\u003dNone):"},{"line_number":202,"context_line":"        token_id, token_data \u003d self.driver.issue_token("}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_769af46e","line":199,"range":{"start_line":199,"start_character":20,"end_line":199,"end_character":33},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                    include_catalog\u003dTrue, parent_audit_id\u003dNone):"},{"line_number":202,"context_line":"        token_id, token_data \u003d self.driver.issue_token("},{"line_number":203,"context_line":"            user_id, method_names, expires_at\u003dexpires_at,"},{"line_number":204,"context_line":"            system_scoped\u003dsystem_scoped, project_id\u003dproject_id,"},{"line_number":205,"context_line":"            domain_id\u003ddomain_id, auth_context\u003dauth_context, trust\u003dtrust,"},{"line_number":206,"context_line":"            include_catalog\u003dinclude_catalog, parent_audit_id\u003dparent_audit_id)"},{"line_number":207,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_368eac2e","line":204,"range":{"start_line":204,"start_character":12,"end_line":204,"end_character":25},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"}],"keystone/token/providers/common.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":129,"context_line":"            filtered_project[\u0027domain\u0027] \u003d None"},{"line_number":130,"context_line":"        return filtered_project"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    def _populate_scope(self, token_data, system_scoped, domain_id,"},{"line_number":133,"context_line":"                        project_id):"},{"line_number":134,"context_line":"        if \u0027domain\u0027 in token_data or \u0027project\u0027 in token_data:"},{"line_number":135,"context_line":"            # scope already exist, no need to populate it again"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f687e40e","line":132,"range":{"start_line":132,"start_character":42,"end_line":132,"end_character":55},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":129,"context_line":"            filtered_project[\u0027domain\u0027] \u003d None"},{"line_number":130,"context_line":"        return filtered_project"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    def _populate_scope(self, token_data, system_scoped, domain_id,"},{"line_number":133,"context_line":"                        project_id):"},{"line_number":134,"context_line":"        if \u0027domain\u0027 in token_data or \u0027project\u0027 in token_data:"},{"line_number":135,"context_line":"            # scope already exist, no need to populate it again"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f6036472","line":132,"range":{"start_line":132,"start_character":42,"end_line":132,"end_character":55},"in_reply_to":"7f96bb07_f687e40e","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":141,"context_line":"            token_data[\u0027project\u0027] \u003d self._get_filtered_project(project_id)"},{"line_number":142,"context_line":"            project_ref \u003d PROVIDERS.resource_api.get_project(project_id)"},{"line_number":143,"context_line":"            token_data[\u0027is_domain\u0027] \u003d project_ref[\u0027is_domain\u0027]"},{"line_number":144,"context_line":"        elif system_scoped:"},{"line_number":145,"context_line":"            token_data[\u0027system\u0027] \u003d {\u0027all\u0027: True}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def _populate_is_admin_project(self, token_data):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_967c6021","line":144,"range":{"start_line":144,"start_character":13,"end_line":144,"end_character":26},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":141,"context_line":"            token_data[\u0027project\u0027] \u003d self._get_filtered_project(project_id)"},{"line_number":142,"context_line":"            project_ref \u003d PROVIDERS.resource_api.get_project(project_id)"},{"line_number":143,"context_line":"            token_data[\u0027is_domain\u0027] \u003d project_ref[\u0027is_domain\u0027]"},{"line_number":144,"context_line":"        elif system_scoped:"},{"line_number":145,"context_line":"            token_data[\u0027system\u0027] \u003d {\u0027all\u0027: True}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def _populate_is_admin_project(self, token_data):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_96f8e07c","line":144,"range":{"start_line":144,"start_character":13,"end_line":144,"end_character":26},"in_reply_to":"7f96bb07_967c6021","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":286,"context_line":"            token_data[\u0027OS-OAUTH1\u0027] \u003d ({\u0027access_token_id\u0027: access_token_id,"},{"line_number":287,"context_line":"                                        \u0027consumer_id\u0027: consumer_id})"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"    def _populate_roles(self, token_data, user_id, system_scoped, domain_id,"},{"line_number":290,"context_line":"                        project_id, trust, access_token):"},{"line_number":291,"context_line":"        if \u0027roles\u0027 in token_data:"},{"line_number":292,"context_line":"            # no need to repopulate roles"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_5676d840","line":289,"range":{"start_line":289,"start_character":51,"end_line":289,"end_character":64},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":286,"context_line":"            token_data[\u0027OS-OAUTH1\u0027] \u003d ({\u0027access_token_id\u0027: access_token_id,"},{"line_number":287,"context_line":"                                        \u0027consumer_id\u0027: consumer_id})"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"    def _populate_roles(self, token_data, user_id, system_scoped, domain_id,"},{"line_number":290,"context_line":"                        project_id, trust, access_token):"},{"line_number":291,"context_line":"        if \u0027roles\u0027 in token_data:"},{"line_number":292,"context_line":"            # no need to repopulate roles"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_161370ba","line":289,"range":{"start_line":289,"start_character":51,"end_line":289,"end_character":64},"in_reply_to":"7f96bb07_5676d840","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            token_project_id \u003d project_id"},{"line_number":329,"context_line":"            token_domain_id \u003d domain_id"},{"line_number":330,"context_line":""},{"line_number":331,"context_line":"        if system_scoped or token_domain_id or token_project_id:"},{"line_number":332,"context_line":"            filtered_roles \u003d []"},{"line_number":333,"context_line":"            if CONF.trust.enabled and trust:"},{"line_number":334,"context_line":"                # First expand out any roles that were in the trust to include"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_168e1027","line":331,"range":{"start_line":331,"start_character":11,"end_line":331,"end_character":24},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            token_project_id \u003d project_id"},{"line_number":329,"context_line":"            token_domain_id \u003d domain_id"},{"line_number":330,"context_line":""},{"line_number":331,"context_line":"        if system_scoped or token_domain_id or token_project_id:"},{"line_number":332,"context_line":"            filtered_roles \u003d []"},{"line_number":333,"context_line":"            if CONF.trust.enabled and trust:"},{"line_number":334,"context_line":"                # First expand out any roles that were in the trust to include"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_9626a016","line":331,"range":{"start_line":331,"start_character":11,"end_line":331,"end_character":24},"in_reply_to":"7f96bb07_168e1027","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":340,"context_line":"                # including any domain specific roles."},{"line_number":341,"context_line":"                assignments \u003d PROVIDERS.assignment_api.list_role_assignments("},{"line_number":342,"context_line":"                    user_id\u003dtoken_user_id,"},{"line_number":343,"context_line":"                    system\u003dsystem_scoped,"},{"line_number":344,"context_line":"                    project_id\u003dtoken_project_id,"},{"line_number":345,"context_line":"                    effective\u003dTrue, strip_domain_roles\u003dFalse)"},{"line_number":346,"context_line":"                current_effective_trustor_roles \u003d ("}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_36930c52","line":343,"range":{"start_line":343,"start_character":27,"end_line":343,"end_character":40},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":340,"context_line":"                # including any domain specific roles."},{"line_number":341,"context_line":"                assignments \u003d PROVIDERS.assignment_api.list_role_assignments("},{"line_number":342,"context_line":"                    user_id\u003dtoken_user_id,"},{"line_number":343,"context_line":"                    system\u003dsystem_scoped,"},{"line_number":344,"context_line":"                    project_id\u003dtoken_project_id,"},{"line_number":345,"context_line":"                    effective\u003dTrue, strip_domain_roles\u003dFalse)"},{"line_number":346,"context_line":"                current_effective_trustor_roles \u003d ("}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f61124ae","line":343,"range":{"start_line":343,"start_character":27,"end_line":343,"end_character":40},"in_reply_to":"7f96bb07_36930c52","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":378,"context_line":"                            \u0027to domain %(domain_id)s\u0027) % {"},{"line_number":379,"context_line":"                                \u0027user_id\u0027: user_id,"},{"line_number":380,"context_line":"                                \u0027domain_id\u0027: token_domain_id}"},{"line_number":381,"context_line":"                elif system_scoped:"},{"line_number":382,"context_line":"                    msg \u003d _(\u0027User %(user_id)s has no access \u0027"},{"line_number":383,"context_line":"                            \u0027to the system\u0027) % {\u0027user_id\u0027: user_id}"},{"line_number":384,"context_line":"                LOG.debug(msg)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f69cc45e","line":381,"range":{"start_line":381,"start_character":21,"end_line":381,"end_character":34},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":378,"context_line":"                            \u0027to domain %(domain_id)s\u0027) % {"},{"line_number":379,"context_line":"                                \u0027user_id\u0027: user_id,"},{"line_number":380,"context_line":"                                \u0027domain_id\u0027: token_domain_id}"},{"line_number":381,"context_line":"                elif system_scoped:"},{"line_number":382,"context_line":"                    msg \u003d _(\u0027User %(user_id)s has no access \u0027"},{"line_number":383,"context_line":"                            \u0027to the system\u0027) % {\u0027user_id\u0027: user_id}"},{"line_number":384,"context_line":"                LOG.debug(msg)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_d60c2896","line":381,"range":{"start_line":381,"start_character":21,"end_line":381,"end_character":34},"in_reply_to":"7f96bb07_f69cc45e","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"b46155d824ec91eb24fc83604da43d8c001076c5","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                                \u0027domain_id\u0027: token_domain_id}"},{"line_number":381,"context_line":"                elif system_scoped:"},{"line_number":382,"context_line":"                    msg \u003d _(\u0027User %(user_id)s has no access \u0027"},{"line_number":383,"context_line":"                            \u0027to the system\u0027) % {\u0027user_id\u0027: user_id}"},{"line_number":384,"context_line":"                LOG.debug(msg)"},{"line_number":385,"context_line":"                raise exception.Unauthorized(msg)"},{"line_number":386,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_25d30906","line":383,"updated":"2018-01-18 17:02:01.000000000","message":"This might violate string freeze for translations.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"2495b59bcdb0a339bcfd872a8f862772f077b5a2","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                                \u0027domain_id\u0027: token_domain_id}"},{"line_number":381,"context_line":"                elif system_scoped:"},{"line_number":382,"context_line":"                    msg \u003d _(\u0027User %(user_id)s has no access \u0027"},{"line_number":383,"context_line":"                            \u0027to the system\u0027) % {\u0027user_id\u0027: user_id}"},{"line_number":384,"context_line":"                LOG.debug(msg)"},{"line_number":385,"context_line":"                raise exception.Unauthorized(msg)"},{"line_number":386,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_53bb6671","line":383,"in_reply_to":"7f96bb07_25d30906","updated":"2018-01-19 12:41:42.000000000","message":"I think soft freeze is next week, if we get this in soonish I think we\u0027re okay https://releases.openstack.org/queens/schedule.html","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e4b110f28173f01ae1de69f94156063147b357d7","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                                \u0027domain_id\u0027: token_domain_id}"},{"line_number":381,"context_line":"                elif system_scoped:"},{"line_number":382,"context_line":"                    msg \u003d _(\u0027User %(user_id)s has no access \u0027"},{"line_number":383,"context_line":"                            \u0027to the system\u0027) % {\u0027user_id\u0027: user_id}"},{"line_number":384,"context_line":"                LOG.debug(msg)"},{"line_number":385,"context_line":"                raise exception.Unauthorized(msg)"},{"line_number":386,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_53cef583","line":383,"in_reply_to":"7f96bb07_53bb6671","updated":"2018-01-19 23:01:58.000000000","message":"Yeah - We\u0027ll have to focus on getting these straightened out early next week or over the weekend.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":386,"context_line":""},{"line_number":387,"context_line":"            token_data[\u0027roles\u0027] \u003d filtered_roles"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"    def _populate_service_catalog(self, token_data, user_id, system_scoped,"},{"line_number":390,"context_line":"                                  domain_id, project_id, trust):"},{"line_number":391,"context_line":"        if \u0027catalog\u0027 in token_data:"},{"line_number":392,"context_line":"            # no need to repopulate service catalog"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_96a1c098","line":389,"range":{"start_line":389,"start_character":61,"end_line":389,"end_character":74},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":386,"context_line":""},{"line_number":387,"context_line":"            token_data[\u0027roles\u0027] \u003d filtered_roles"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"    def _populate_service_catalog(self, token_data, user_id, system_scoped,"},{"line_number":390,"context_line":"                                  domain_id, project_id, trust):"},{"line_number":391,"context_line":"        if \u0027catalog\u0027 in token_data:"},{"line_number":392,"context_line":"            # no need to repopulate service catalog"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_b6239c05","line":389,"range":{"start_line":389,"start_character":61,"end_line":389,"end_character":74},"in_reply_to":"7f96bb07_96a1c098","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":400,"context_line":"        # endpoint -\u003e project relationships. In the event we\u0027re dealing with a"},{"line_number":401,"context_line":"        # system_scoped token, we should pass None to the catalog API and just"},{"line_number":402,"context_line":"        # get a catalog anyway."},{"line_number":403,"context_line":"        if project_id or domain_id or system_scoped:"},{"line_number":404,"context_line":"            service_catalog \u003d PROVIDERS.catalog_api.get_v3_catalog("},{"line_number":405,"context_line":"                user_id, project_id)"},{"line_number":406,"context_line":"            token_data[\u0027catalog\u0027] \u003d service_catalog"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_b69e3c52","line":403,"range":{"start_line":403,"start_character":38,"end_line":403,"end_character":51},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":400,"context_line":"        # endpoint -\u003e project relationships. In the event we\u0027re dealing with a"},{"line_number":401,"context_line":"        # system_scoped token, we should pass None to the catalog API and just"},{"line_number":402,"context_line":"        # get a catalog anyway."},{"line_number":403,"context_line":"        if project_id or domain_id or system_scoped:"},{"line_number":404,"context_line":"            service_catalog \u003d PROVIDERS.catalog_api.get_v3_catalog("},{"line_number":405,"context_line":"                user_id, project_id)"},{"line_number":406,"context_line":"            token_data[\u0027catalog\u0027] \u003d service_catalog"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_562018f8","line":403,"range":{"start_line":403,"start_character":38,"end_line":403,"end_character":51},"in_reply_to":"7f96bb07_b69e3c52","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":435,"context_line":"            LOG.error(msg)"},{"line_number":436,"context_line":"            raise exception.UnexpectedError(msg)"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"    def get_token_data(self, user_id, method_names, system_scoped\u003dNone,"},{"line_number":439,"context_line":"                       domain_id\u003dNone, project_id\u003dNone, expires\u003dNone,"},{"line_number":440,"context_line":"                       trust\u003dNone, token\u003dNone, include_catalog\u003dTrue, bind\u003dNone,"},{"line_number":441,"context_line":"                       access_token\u003dNone, issued_at\u003dNone, audit_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_56ab3874","line":438,"range":{"start_line":438,"start_character":52,"end_line":438,"end_character":65},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":435,"context_line":"            LOG.error(msg)"},{"line_number":436,"context_line":"            raise exception.UnexpectedError(msg)"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"    def get_token_data(self, user_id, method_names, system_scoped\u003dNone,"},{"line_number":439,"context_line":"                       domain_id\u003dNone, project_id\u003dNone, expires\u003dNone,"},{"line_number":440,"context_line":"                       trust\u003dNone, token\u003dNone, include_catalog\u003dTrue, bind\u003dNone,"},{"line_number":441,"context_line":"                       access_token\u003dNone, issued_at\u003dNone, audit_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_167850f6","line":438,"range":{"start_line":438,"start_character":52,"end_line":438,"end_character":65},"in_reply_to":"7f96bb07_56ab3874","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":450,"context_line":"        if bind:"},{"line_number":451,"context_line":"            token_data[\u0027bind\u0027] \u003d bind"},{"line_number":452,"context_line":""},{"line_number":453,"context_line":"        self._populate_scope(token_data, system_scoped, domain_id, project_id)"},{"line_number":454,"context_line":"        if token_data.get(\u0027project\u0027):"},{"line_number":455,"context_line":"            self._populate_is_admin_project(token_data)"},{"line_number":456,"context_line":"        self._populate_user(token_data, user_id, trust)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_76a8b476","line":453,"range":{"start_line":453,"start_character":41,"end_line":453,"end_character":54},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":450,"context_line":"        if bind:"},{"line_number":451,"context_line":"            token_data[\u0027bind\u0027] \u003d bind"},{"line_number":452,"context_line":""},{"line_number":453,"context_line":"        self._populate_scope(token_data, system_scoped, domain_id, project_id)"},{"line_number":454,"context_line":"        if token_data.get(\u0027project\u0027):"},{"line_number":455,"context_line":"            self._populate_is_admin_project(token_data)"},{"line_number":456,"context_line":"        self._populate_user(token_data, user_id, trust)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_367d4ce7","line":453,"range":{"start_line":453,"start_character":41,"end_line":453,"end_character":54},"in_reply_to":"7f96bb07_76a8b476","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":454,"context_line":"        if token_data.get(\u0027project\u0027):"},{"line_number":455,"context_line":"            self._populate_is_admin_project(token_data)"},{"line_number":456,"context_line":"        self._populate_user(token_data, user_id, trust)"},{"line_number":457,"context_line":"        self._populate_roles(token_data, user_id, system_scoped, domain_id,"},{"line_number":458,"context_line":"                             project_id, trust, access_token)"},{"line_number":459,"context_line":"        self._populate_audit_info(token_data, audit_info)"},{"line_number":460,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_16b7f0da","line":457,"range":{"start_line":457,"start_character":50,"end_line":457,"end_character":63},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":454,"context_line":"        if token_data.get(\u0027project\u0027):"},{"line_number":455,"context_line":"            self._populate_is_admin_project(token_data)"},{"line_number":456,"context_line":"        self._populate_user(token_data, user_id, trust)"},{"line_number":457,"context_line":"        self._populate_roles(token_data, user_id, system_scoped, domain_id,"},{"line_number":458,"context_line":"                             project_id, trust, access_token)"},{"line_number":459,"context_line":"        self._populate_audit_info(token_data, audit_info)"},{"line_number":460,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_d68188c5","line":457,"range":{"start_line":457,"start_character":50,"end_line":457,"end_character":63},"in_reply_to":"7f96bb07_16b7f0da","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":460,"context_line":""},{"line_number":461,"context_line":"        if include_catalog:"},{"line_number":462,"context_line":"            self._populate_service_catalog("},{"line_number":463,"context_line":"                token_data, user_id, system_scoped, domain_id, project_id,"},{"line_number":464,"context_line":"                trust"},{"line_number":465,"context_line":"            )"},{"line_number":466,"context_line":"        self._populate_service_providers(token_data)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_36bc6cba","line":463,"range":{"start_line":463,"start_character":37,"end_line":463,"end_character":50},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":460,"context_line":""},{"line_number":461,"context_line":"        if include_catalog:"},{"line_number":462,"context_line":"            self._populate_service_catalog("},{"line_number":463,"context_line":"                token_data, user_id, system_scoped, domain_id, project_id,"},{"line_number":464,"context_line":"                trust"},{"line_number":465,"context_line":"            )"},{"line_number":466,"context_line":"        self._populate_service_providers(token_data)"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f68604dc","line":463,"range":{"start_line":463,"start_character":37,"end_line":463,"end_character":50},"in_reply_to":"7f96bb07_36bc6cba","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":495,"context_line":"                federation_constants.PROTOCOL in auth_context)"},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"},{"line_number":498,"context_line":"                    system_scoped\u003dNone, project_id\u003dNone, domain_id\u003dNone,"},{"line_number":499,"context_line":"                    auth_context\u003dNone, trust\u003dNone, include_catalog\u003dTrue,"},{"line_number":500,"context_line":"                    parent_audit_id\u003dNone):"},{"line_number":501,"context_line":"        if auth_context and auth_context.get(\u0027bind\u0027):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_d6b0a8e0","line":498,"range":{"start_line":498,"start_character":20,"end_line":498,"end_character":33},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":495,"context_line":"                federation_constants.PROTOCOL in auth_context)"},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"},{"line_number":498,"context_line":"                    system_scoped\u003dNone, project_id\u003dNone, domain_id\u003dNone,"},{"line_number":499,"context_line":"                    auth_context\u003dNone, trust\u003dNone, include_catalog\u003dTrue,"},{"line_number":500,"context_line":"                    parent_audit_id\u003dNone):"},{"line_number":501,"context_line":"        if auth_context and auth_context.get(\u0027bind\u0027):"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_567578f9","line":498,"range":{"start_line":498,"start_character":20,"end_line":498,"end_character":33},"in_reply_to":"7f96bb07_d6b0a8e0","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        token_data \u003d self.v3_token_data_helper.get_token_data("},{"line_number":526,"context_line":"            user_id,"},{"line_number":527,"context_line":"            method_names,"},{"line_number":528,"context_line":"            system_scoped\u003dsystem_scoped,"},{"line_number":529,"context_line":"            domain_id\u003ddomain_id,"},{"line_number":530,"context_line":"            project_id\u003dproject_id,"},{"line_number":531,"context_line":"            expires\u003dexpires_at,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f6b5a4ce","line":528,"range":{"start_line":528,"start_character":26,"end_line":528,"end_character":39},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        token_data \u003d self.v3_token_data_helper.get_token_data("},{"line_number":526,"context_line":"            user_id,"},{"line_number":527,"context_line":"            method_names,"},{"line_number":528,"context_line":"            system_scoped\u003dsystem_scoped,"},{"line_number":529,"context_line":"            domain_id\u003ddomain_id,"},{"line_number":530,"context_line":"            project_id\u003dproject_id,"},{"line_number":531,"context_line":"            expires\u003dexpires_at,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_b6687c21","line":528,"range":{"start_line":528,"start_character":26,"end_line":528,"end_character":39},"in_reply_to":"7f96bb07_f6b5a4ce","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":586,"context_line":"            issued_at \u003d token_data[\u0027token\u0027][\u0027issued_at\u0027]"},{"line_number":587,"context_line":"            expires_at \u003d token_data[\u0027token\u0027][\u0027expires_at\u0027]"},{"line_number":588,"context_line":"            audit_ids \u003d token_data[\u0027token\u0027].get(\u0027audit_ids\u0027)"},{"line_number":589,"context_line":"            system_scoped \u003d token_data[\u0027token\u0027].get(\u0027system\u0027, {}).get(\u0027all\u0027)"},{"line_number":590,"context_line":"            domain_id \u003d token_data[\u0027token\u0027].get(\u0027domain\u0027, {}).get(\u0027id\u0027)"},{"line_number":591,"context_line":"            project_id \u003d token_data[\u0027token\u0027].get(\u0027project\u0027, {}).get(\u0027id\u0027)"},{"line_number":592,"context_line":"            access_token \u003d None"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_96ca204d","line":589,"range":{"start_line":589,"start_character":12,"end_line":589,"end_character":25},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":586,"context_line":"            issued_at \u003d token_data[\u0027token\u0027][\u0027issued_at\u0027]"},{"line_number":587,"context_line":"            expires_at \u003d token_data[\u0027token\u0027][\u0027expires_at\u0027]"},{"line_number":588,"context_line":"            audit_ids \u003d token_data[\u0027token\u0027].get(\u0027audit_ids\u0027)"},{"line_number":589,"context_line":"            system_scoped \u003d token_data[\u0027token\u0027].get(\u0027system\u0027, {}).get(\u0027all\u0027)"},{"line_number":590,"context_line":"            domain_id \u003d token_data[\u0027token\u0027].get(\u0027domain\u0027, {}).get(\u0027id\u0027)"},{"line_number":591,"context_line":"            project_id \u003d token_data[\u0027token\u0027].get(\u0027project\u0027, {}).get(\u0027id\u0027)"},{"line_number":592,"context_line":"            access_token \u003d None"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_1661303a","line":589,"range":{"start_line":589,"start_character":12,"end_line":589,"end_character":25},"in_reply_to":"7f96bb07_96ca204d","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":609,"context_line":"                token_dict \u003d {\u0027user\u0027: token_ref[\u0027user\u0027]}"},{"line_number":610,"context_line":"        else:"},{"line_number":611,"context_line":"            try:"},{"line_number":612,"context_line":"                (user_id, methods, audit_ids, system_scoped, domain_id,"},{"line_number":613,"context_line":"                    project_id, trust_id, federated_info, access_token_id,"},{"line_number":614,"context_line":"                    issued_at, expires_at) \u003d ("},{"line_number":615,"context_line":"                        self.token_formatter.validate_token(token_id))"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_56c49840","line":612,"range":{"start_line":612,"start_character":46,"end_line":612,"end_character":59},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":609,"context_line":"                token_dict \u003d {\u0027user\u0027: token_ref[\u0027user\u0027]}"},{"line_number":610,"context_line":"        else:"},{"line_number":611,"context_line":"            try:"},{"line_number":612,"context_line":"                (user_id, methods, audit_ids, system_scoped, domain_id,"},{"line_number":613,"context_line":"                    project_id, trust_id, federated_info, access_token_id,"},{"line_number":614,"context_line":"                    issued_at, expires_at) \u003d ("},{"line_number":615,"context_line":"                        self.token_formatter.validate_token(token_id))"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_3666ac53","line":612,"range":{"start_line":612,"start_character":46,"end_line":612,"end_character":59},"in_reply_to":"7f96bb07_56c49840","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":651,"context_line":"        return self.v3_token_data_helper.get_token_data("},{"line_number":652,"context_line":"            user_id,"},{"line_number":653,"context_line":"            method_names\u003dmethods,"},{"line_number":654,"context_line":"            system_scoped\u003dsystem_scoped,"},{"line_number":655,"context_line":"            domain_id\u003ddomain_id,"},{"line_number":656,"context_line":"            project_id\u003dproject_id,"},{"line_number":657,"context_line":"            issued_at\u003dissued_at,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_76c1942e","line":654,"range":{"start_line":654,"start_character":12,"end_line":654,"end_character":25},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":651,"context_line":"        return self.v3_token_data_helper.get_token_data("},{"line_number":652,"context_line":"            user_id,"},{"line_number":653,"context_line":"            method_names\u003dmethods,"},{"line_number":654,"context_line":"            system_scoped\u003dsystem_scoped,"},{"line_number":655,"context_line":"            domain_id\u003ddomain_id,"},{"line_number":656,"context_line":"            project_id\u003dproject_id,"},{"line_number":657,"context_line":"            issued_at\u003dissued_at,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_f65fe46f","line":654,"range":{"start_line":654,"start_character":12,"end_line":654,"end_character":25},"in_reply_to":"7f96bb07_76c1942e","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"}],"keystone/token/providers/fernet/token_formatters.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c6b3a2f692bbba50db23a08f436c9f2aa6fa906f","unresolved":false,"context_lines":[{"line_number":199,"context_line":"        expires_at \u003d timeutils.parse_isotime(expires_at)"},{"line_number":200,"context_line":"        expires_at \u003d ks_utils.isotime(at\u003dexpires_at, subsecond\u003dTrue)"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"        return (user_id, methods, audit_ids, system_scoped, domain_id,"},{"line_number":203,"context_line":"                project_id, trust_id, federated_info, access_token_id,"},{"line_number":204,"context_line":"                issued_at, expires_at)"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_16dcd016","line":202,"range":{"start_line":202,"start_character":45,"end_line":202,"end_character":58},"updated":"2018-01-21 14:25:10.000000000","message":"Change this to not be boolean-ish.","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ac4ffc343c9380ac8b3c85a8a3040da9c8dd81a4","unresolved":false,"context_lines":[{"line_number":199,"context_line":"        expires_at \u003d timeutils.parse_isotime(expires_at)"},{"line_number":200,"context_line":"        expires_at \u003d ks_utils.isotime(at\u003dexpires_at, subsecond\u003dTrue)"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"        return (user_id, methods, audit_ids, system_scoped, domain_id,"},{"line_number":203,"context_line":"                project_id, trust_id, federated_info, access_token_id,"},{"line_number":204,"context_line":"                issued_at, expires_at)"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-python","patch_set":13,"id":"7f96bb07_96546056","line":202,"range":{"start_line":202,"start_character":45,"end_line":202,"end_character":58},"in_reply_to":"7f96bb07_16dcd016","updated":"2018-01-21 14:34:58.000000000","message":"Done","commit_id":"de3144f12a95cf284f402da5145cc8bec2d5b9cd"}]}
