)]}'
{"keystone/catalog/backends/templated.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c1b0af738212acfb1c64f3436b9003ea2278d641","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from oslo_log import log"},{"line_number":20,"context_line":"import six"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from keystone.catalog import core"},{"line_number":23,"context_line":"from keystone import exception"},{"line_number":24,"context_line":"from keystone.i18n import _LC"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_441e3ebb","side":"PARENT","line":22,"updated":"2016-05-06 21:17:00.000000000","message":"Can\u0027t we get rid of:\n\n    from keystone.catalog import core \n\nnow?","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"26735e798b53c7ccf7925ebf4370799d3a5d9b9a","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from oslo_log import log"},{"line_number":20,"context_line":"import six"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from keystone.catalog import core"},{"line_number":23,"context_line":"from keystone import exception"},{"line_number":24,"context_line":"from keystone.i18n import _LC"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_aa7371b0","side":"PARENT","line":22,"in_reply_to":"dab17558_2a494160","updated":"2016-05-06 21:59:40.000000000","message":"Done","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"d968605fb9bce0992ab926045935bbf900ea3882","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from oslo_log import log"},{"line_number":20,"context_line":"import six"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from keystone.catalog import core"},{"line_number":23,"context_line":"from keystone import exception"},{"line_number":24,"context_line":"from keystone.i18n import _LC"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_2a494160","side":"PARENT","line":22,"in_reply_to":"dab17558_441e3ebb","updated":"2016-05-06 21:59:09.000000000","message":"Good catch Lance","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"}],"keystone/catalog/core.py":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"b41712aa65d6d166dc2271e9cfd52f71ad4af46f","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_ece5fd37","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"updated":"2016-04-28 16:25:14.000000000","message":"Is this also something we also assume people may be referring to from outside keystone ? I agree about the driver\u0027s interface, but not sure about these methods ..\n\nMy rationale is that these methods don\u0027t go through the diriver\u0027s versioning process .. so not sure we want to do this","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"fea4d567927494c5a93e98204ee850bd6717f1d1","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_d7fc0ab7","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"in_reply_to":"1a122d0e_aca5c5a2","updated":"2016-04-28 16:48:33.000000000","message":"So as agreed in our conversation at Summit, Ron will check if it this method is really necessary to be called from the drivers (it\u0027s currently called by the driver AND the controller, which seems very odd). If not, it should just be moved to controller module","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"a28dcccd314eb6ab88f46339c63840d40eb9d61c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_aca5c5a2","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"in_reply_to":"1a122d0e_cceac1d7","updated":"2016-04-28 16:31:20.000000000","message":"you can just put them at base.py then import-\u003euse where necessary","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"5ba1af57722ed6f8ba440a1a1ad512fb54a88a9c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_1dce5cb7","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"in_reply_to":"1a122d0e_d7fc0ab7","updated":"2016-05-02 14:07:44.000000000","message":"Moved these methods to utils, seemed to be the most appropriate spot.","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"5ba1af57722ed6f8ba440a1a1ad512fb54a88a9c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_9dc26c85","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"in_reply_to":"1a122d0e_ece5fd37","updated":"2016-05-02 14:07:44.000000000","message":"Done","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"a4eab04ceb226493e7c622de7a75b0e8d9e4d597","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    region\u003dCOMPUTED_CATALOG_REGION)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@versionutils.deprecated("},{"line_number":51,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":52,"context_line":"    what\u003d\u0027keystone.catalog.format_url\u0027,"},{"line_number":53,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.format_url\u0027,"},{"line_number":54,"context_line":"    remove_in\u003d+1)"},{"line_number":55,"context_line":"def format_url(url, substitutions, silent_keyerror_failures\u003dNone):"},{"line_number":56,"context_line":"    return base.format_url(url, substitutions, silent_keyerror_failures)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"@versionutils.deprecated("},{"line_number":60,"context_line":"    versionutils.deprecated.NEWTON,"},{"line_number":61,"context_line":"    what\u003d\u0027keystone.catalog.check_endpoint_url\u0027,"},{"line_number":62,"context_line":"    in_favor_of\u003d\u0027keystone.catalog.backends.base.check_endpoint_url\u0027,"},{"line_number":63,"context_line":"    remove_in\u003d+1)"},{"line_number":64,"context_line":"def check_endpoint_url(url):"},{"line_number":65,"context_line":"    return base.check_endpoint_url(url)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"@dependency.provider(\u0027catalog_api\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_cceac1d7","line":65,"range":{"start_line":50,"start_character":0,"end_line":65,"end_character":39},"in_reply_to":"1a122d0e_ece5fd37","updated":"2016-04-28 16:27:36.000000000","message":"Yeah agree Samuel, just wasn\u0027t sure where to put these methods.  Suggestion?","commit_id":"76e57c008e723cf865b90645cc444e100e702bfe"}],"keystone/common/utils.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c1b0af738212acfb1c64f3436b9003ea2278d641","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"CONF \u003d cfg.CONF"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_44759ef7","side":"PARENT","line":43,"updated":"2016-05-06 21:17:00.000000000","message":"unrelated whitespace change?","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"514e33851f5ac9bbb538d7d823619c66249eecf7","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"CONF \u003d cfg.CONF"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_eaac59ef","side":"PARENT","line":43,"in_reply_to":"dab17558_44759ef7","updated":"2016-05-06 22:00:49.000000000","message":"yeah, just looked prettier having them all together :)","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"757bceefa32dcb428ed4e41f18237625c02e1dae","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"CONF \u003d cfg.CONF"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_0a96fd4b","side":"PARENT","line":43,"in_reply_to":"dab17558_eaac59ef","updated":"2016-05-06 22:10:00.000000000","message":"Works for me","commit_id":"f7b33213f1cb8313d2cb81225e8530ebbc37ce18"}]}
