)]}'
{"tempest/api/compute/admin/test_auto_allocate_network.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"e81cf00a2a107ba1d654677c970f07dd4f1f7858","unresolved":false,"context_lines":[{"line_number":17,"context_line":"from tempest.api.compute import base"},{"line_number":18,"context_line":"from tempest.common import compute"},{"line_number":19,"context_line":"from tempest.common import credentials_factory as credentials"},{"line_number":20,"context_line":"from tempest.common.utils import test_utils as tu"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":23,"context_line":"from tempest.lib import decorators"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_ad395df2","line":20,"updated":"2017-08-16 15:20:20.000000000","message":"Heh, doesn\u0027t tu mean you?","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"23103547bc9a41a4e1e66e42bec2259b3f81056a","unresolved":false,"context_lines":[{"line_number":17,"context_line":"from tempest.api.compute import base"},{"line_number":18,"context_line":"from tempest.common import compute"},{"line_number":19,"context_line":"from tempest.common import credentials_factory as credentials"},{"line_number":20,"context_line":"from tempest.common.utils import test_utils as tu"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":23,"context_line":"from tempest.lib import decorators"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_9cd80853","line":20,"in_reply_to":"9f436f4f_ad395df2","updated":"2017-08-16 17:36:04.000000000","message":"yeah, your Italian is getting better :)","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"7ade2c491c63e416ff1a97577909d306de94cc1e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from tempest.common import credentials_factory as credentials"},{"line_number":20,"context_line":"from tempest.common.utils import test_utils as tu"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":23,"context_line":"from tempest.lib import decorators"},{"line_number":24,"context_line":"from tempest.lib import exceptions as lib_excs"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9f436f4f_36ad8cea","line":22,"range":{"start_line":22,"start_character":37,"end_line":22,"end_character":47},"updated":"2017-08-18 05:58:26.000000000","message":"I\u0027d rather rename this as lib_test_utils, the name \"tu\" is hard to understand","commit_id":"7cd6cd80ccaedfae647f72d99a9b7956c37bee18"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"3051647ee7bdbf8790bd521a8a8ec9d6af778da4","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from tempest.common import credentials_factory as credentials"},{"line_number":20,"context_line":"from tempest.common.utils import test_utils as tu"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":23,"context_line":"from tempest.lib import decorators"},{"line_number":24,"context_line":"from tempest.lib import exceptions as lib_excs"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_ed73a84c","line":22,"range":{"start_line":22,"start_character":37,"end_line":22,"end_character":47},"updated":"2017-08-23 06:22:52.000000000","message":"I\u0027m not strongly object to using test_utils as module name, \nbut if we use that, I\u0027d perfer renaming this to lib_test_utils, because \"tu\" is hard to understand.","commit_id":"8ab860d978b6ab6c1378ca4f263a1cd72f3b19e2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"97851c0fb866cd6ed7d07e6ab0dd54db64dc26bc","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from tempest.common import credentials_factory as credentials"},{"line_number":20,"context_line":"from tempest.common.utils import test_utils as tu"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":23,"context_line":"from tempest.lib import decorators"},{"line_number":24,"context_line":"from tempest.lib import exceptions as lib_excs"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_3be1e79b","line":22,"range":{"start_line":22,"start_character":37,"end_line":22,"end_character":47},"in_reply_to":"7f287b81_ed73a84c","updated":"2017-08-23 10:00:47.000000000","message":"Done","commit_id":"8ab860d978b6ab6c1378ca4f263a1cd72f3b19e2"}],"tempest/common/utils/test_utils.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"e81cf00a2a107ba1d654677c970f07dd4f1f7858","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_8d3c59e1","line":1,"updated":"2017-08-16 15:20:20.000000000","message":"The foundation really has the copyright on this file? This doesn\u0027t seem right, this is almost never the correct copyright line especially with a 2017 year. (unles you wokrk for the foundation)","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"b532bbe61854a4dbb99fdf74e54950c276e0adb8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_552393a7","line":1,"in_reply_to":"9f436f4f_8d3c59e1","updated":"2017-08-16 17:37:41.000000000","message":"The code was just moved around which is why I maintained OpenStack here but I should not have changed the date.","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"7f519011423c914bccdb80f224871f20180e55df","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9f436f4f_de08a92e","updated":"2017-08-17 15:48:32.000000000","message":"file name is confusing with from tempest.lib.common.utils import test_utils\n\nPeople will be confusing with what is what. can we rename this file to something else like test_common.py or common.py etc","commit_id":"7cd6cd80ccaedfae647f72d99a9b7956c37bee18"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"3051647ee7bdbf8790bd521a8a8ec9d6af778da4","unresolved":false,"context_lines":[{"line_number":25,"context_line":"CONF \u003d config.CONF"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class InvalidServiceTag(lib_exc.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Invalid service tag\""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_cd046cc9","line":28,"range":{"start_line":28,"start_character":0,"end_line":28,"end_character":50},"updated":"2017-08-23 06:22:52.000000000","message":"I wonder why not put this in tempest\\exceptions.py?","commit_id":"8ab860d978b6ab6c1378ca4f263a1cd72f3b19e2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"97851c0fb866cd6ed7d07e6ab0dd54db64dc26bc","unresolved":false,"context_lines":[{"line_number":25,"context_line":"CONF \u003d config.CONF"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class InvalidServiceTag(lib_exc.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Invalid service tag\""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_dbe9c380","line":28,"range":{"start_line":28,"start_character":0,"end_line":28,"end_character":50},"in_reply_to":"7f287b81_cd046cc9","updated":"2017-08-23 10:00:47.000000000","message":"Done","commit_id":"8ab860d978b6ab6c1378ca4f263a1cd72f3b19e2"}],"tempest/scenario/test_network_basic_ops.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"e81cf00a2a107ba1d654677c970f07dd4f1f7858","unresolved":false,"context_lines":[{"line_number":409,"context_line":"                                                   \"floating ip\")"},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"    @decorators.idempotent_id(\u0027b158ea55-472e-4086-8fa9-c64ac0c6c1d0\u0027)"},{"line_number":412,"context_line":"    @testtools.skipUnless(tu.is_extension_enabled(\u0027net-mtu\u0027, \u0027network\u0027),"},{"line_number":413,"context_line":"                          \u0027No way to calculate MTU for networks\u0027)"},{"line_number":414,"context_line":"    @decorators.attr(type\u003d\u0027slow\u0027)"},{"line_number":415,"context_line":"    @tu.services(\u0027compute\u0027, \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_cd36e103","line":412,"updated":"2017-08-16 15:20:20.000000000","message":"I wonder why this isn\u0027t requires_ext?","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"23103547bc9a41a4e1e66e42bec2259b3f81056a","unresolved":false,"context_lines":[{"line_number":409,"context_line":"                                                   \"floating ip\")"},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"    @decorators.idempotent_id(\u0027b158ea55-472e-4086-8fa9-c64ac0c6c1d0\u0027)"},{"line_number":412,"context_line":"    @testtools.skipUnless(tu.is_extension_enabled(\u0027net-mtu\u0027, \u0027network\u0027),"},{"line_number":413,"context_line":"                          \u0027No way to calculate MTU for networks\u0027)"},{"line_number":414,"context_line":"    @decorators.attr(type\u003d\u0027slow\u0027)"},{"line_number":415,"context_line":"    @tu.services(\u0027compute\u0027, \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_322705cd","line":412,"in_reply_to":"9f436f4f_cd36e103","updated":"2017-08-16 17:36:04.000000000","message":"I don\u0027t know really, the only reason that comes to mind it a custom skip message, but I\u0027m not sure it really justifies it?","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"}],"tempest/test.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"e81cf00a2a107ba1d654677c970f07dd4f1f7858","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"services \u003d debtcollector.moves.moved_function("},{"line_number":53,"context_line":"    test_utils.services, \u0027services\u0027, __name__,"},{"line_number":54,"context_line":"    version\u003d\u0027Pike\u0027, removal_version\u003d\u0027?\u0027)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"requires_ext \u003d debtcollector.moves.moved_function("}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_6d27f5cb","line":54,"updated":"2017-08-16 15:20:20.000000000","message":"I really don\u0027t like this because it tells consumers outside of tempest the thing they should not be using (which they really shouldn\u0027t be) has just moved. So as someone who doesn\u0027t understand how to consume tempest, or willfully ignores the docs and everything said about consuming tempest, I see the error message and say \"oh, I just need to update my import\". Which is not what we really want...","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"23103547bc9a41a4e1e66e42bec2259b3f81056a","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"services \u003d debtcollector.moves.moved_function("},{"line_number":53,"context_line":"    test_utils.services, \u0027services\u0027, __name__,"},{"line_number":54,"context_line":"    version\u003d\u0027Pike\u0027, removal_version\u003d\u0027?\u0027)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"requires_ext \u003d debtcollector.moves.moved_function("}],"source_content_type":"text/x-python","patch_set":3,"id":"9f436f4f_15106b4d","line":54,"in_reply_to":"9f436f4f_6d27f5cb","updated":"2017-08-16 17:36:04.000000000","message":"Yeah but I don\u0027t really see an alternative for doing this without breaking everyone.","commit_id":"1605adfdec9813e675909766822ad18bc757ba49"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"7f519011423c914bccdb80f224871f20180e55df","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    version\u003d\u0027Pike\u0027, removal_version\u003d\u0027?\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"services \u003d debtcollector.moves.moved_function("},{"line_number":53,"context_line":"    test_utils.services, \u0027services\u0027, __name__,"},{"line_number":54,"context_line":"    version\u003d\u0027Pike\u0027, removal_version\u003d\u0027?\u0027)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"requires_ext \u003d debtcollector.moves.moved_function("}],"source_content_type":"text/x-python","patch_set":4,"id":"9f436f4f_ded549b9","line":54,"range":{"start_line":52,"start_character":0,"end_line":54,"end_character":40},"updated":"2017-08-17 15:48:32.000000000","message":"this is little bit difficult to remove but its good as first step.","commit_id":"7cd6cd80ccaedfae647f72d99a9b7956c37bee18"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"5de0d9b9a2176ba0f700c8d593ff11f2361bb604","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    message \u003d \"Invalid service tag\""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"def get_service_list():"},{"line_number":57,"context_line":"    service_list \u003d {"},{"line_number":58,"context_line":"        \u0027compute\u0027: CONF.service_available.nova,"},{"line_number":59,"context_line":"        \u0027image\u0027: CONF.service_available.glance,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f287b81_76540bcb","side":"PARENT","line":56,"updated":"2017-08-24 02:11:28.000000000","message":"It seems like Patrole using this function. So, do we need to keep the compatibility?\nhttp://git.openstack.org/cgit/openstack/patrole/tree/patrole_tempest_plugin/tests/api/compute/test_server_rbac.py#n189","commit_id":"ac9500a4572abc10465c0c59b1b9cc60c25b5621"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0ba864ada671926f18a7cfb15a086b84dcb3f852","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    message \u003d \"Invalid service tag\""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"def get_service_list():"},{"line_number":57,"context_line":"    service_list \u003d {"},{"line_number":58,"context_line":"        \u0027compute\u0027: CONF.service_available.nova,"},{"line_number":59,"context_line":"        \u0027image\u0027: CONF.service_available.glance,"}],"source_content_type":"text/x-python","patch_set":13,"id":"7f287b81_cc268eb8","side":"PARENT","line":56,"in_reply_to":"7f287b81_76540bcb","updated":"2017-08-24 05:11:12.000000000","message":"nice catch. i do not know whey they use for \u0027network\u0027 as it is always true.\nanyways i fixed that usage to merge this patch - https://review.openstack.org/#/c/497013/","commit_id":"ac9500a4572abc10465c0c59b1b9cc60c25b5621"}]}
