)]}'
{"rally/plugins/openstack/scenarios/neutron/utils.py":[{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"63201d2d291702b7a6aeb2d77221fde29f052efc","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_5c640c48","line":71,"updated":"2015-10-14 15:35:13.000000000","message":"If so then we could simply write this line before if\u0027s Lets move it to 62 line.","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"0f19264b2f2bc58c9e8fab352797caaee19950ef","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_78f8e449","line":71,"in_reply_to":"3a29b11f_229480e0","updated":"2015-10-20 08:57:21.000000000","message":"@Kiran, explicit is better because this way is more readable, easy to maintain and therefore causes less errors\n\nSee \"Explicit is better than implicit.\" - The Zen of Python https://www.python.org/dev/peps/pep-0020/","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"899458c8672ad0b7f07f4875138f6e63acbd7b6f","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_35b6e63d","line":71,"in_reply_to":"3a29b11f_78f8e449","updated":"2015-10-20 13:25:25.000000000","message":"Done","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"cae047052af28602cec4f0a58145f23e24a49e3e","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_bfde726b","line":71,"in_reply_to":"5a2ca52d_5c640c48","updated":"2015-10-14 15:43:54.000000000","message":"Also I don\u0027t like prefix that you pass it told to me nothing. Lets left this work to Chris and just move 64 line from if.","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"a1f686e6e8dd096b3bf99fc72fc10b560f7f3957","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a29b11f_229480e0","line":71,"in_reply_to":"5a2ca52d_9709bb86","updated":"2015-10-20 06:38:38.000000000","message":"Agreed. One question, what is the advantage of having it explicitly instead of implicitly?","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"f748287934555828342174266809d572e5ed667d","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                         \"id\": list(resource.values())[0][\"id\"],"},{"line_number":69,"context_line":"                         \"name\": kwargs[\"name\"]})"},{"line_number":70,"context_line":"        else:"},{"line_number":71,"context_line":"            kwargs[\"name\"] \u003d self._generate_random_name(\"rally_updated_\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def _get_network_id(self, network, **kwargs):"},{"line_number":74,"context_line":"        \"\"\"Get Neutron network ID for the network name."}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_9709bb86","line":71,"in_reply_to":"5a2ca52d_bfde726b","updated":"2015-10-16 12:50:22.000000000","message":"Agreed with Roman, this line is duplicated, should appear once, and prefix is hardcoded\n\nAlso, this method makes implicit update of kwargs - make it explicit by returning kwargs","commit_id":"d7c3507bdbb8e7a03770d529ef09e358d809047b"},{"author":{"_account_id":11748,"name":"Chris St. Pierre","email":"cstpierr@cisco.com","username":"stpierre"},"change_message_id":"9cfe9d6b37f0edfae66bd507fb3de239464f8760","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        arguments in a different way than the other update functions"},{"line_number":53,"context_line":"        that this helper is used in."},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        :param resource: Name of the neutron resource to generate random name"},{"line_number":56,"context_line":"        :param resource: A neutron resource object dict describing the"},{"line_number":57,"context_line":"                         resource that the name is being set for. In"},{"line_number":58,"context_line":"                         particular, this must have have a single key"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a29b11f_677d956d","line":55,"updated":"2015-10-20 13:44:53.000000000","message":"Should this be :param resource_name:?","commit_id":"c207c56dd83b15e3d29f5fab6278e2f081929761"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"ce1b70db1ffacb91131f27ae66b2e471b3c870b4","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        arguments in a different way than the other update functions"},{"line_number":53,"context_line":"        that this helper is used in."},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        :param resource: Name of the neutron resource to generate random name"},{"line_number":56,"context_line":"        :param resource: A neutron resource object dict describing the"},{"line_number":57,"context_line":"                         resource that the name is being set for. In"},{"line_number":58,"context_line":"                         particular, this must have have a single key"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a29b11f_083efb8b","line":55,"in_reply_to":"3a29b11f_677d956d","updated":"2015-10-21 13:18:36.000000000","message":"Oh yes! :)","commit_id":"c207c56dd83b15e3d29f5fab6278e2f081929761"},{"author":{"_account_id":11748,"name":"Chris St. Pierre","email":"cstpierr@cisco.com","username":"stpierre"},"change_message_id":"95371938e1940fd02f970cd3c0893aba29b4a88b","unresolved":false,"context_lines":[{"line_number":61,"context_line":"                         that is itself a dict including the \"id\" key."},{"line_number":62,"context_line":"        :param kwargs: The keyword arg dict that the user supplied,"},{"line_number":63,"context_line":"                       which will be modified in-place."},{"line_number":64,"context_line":"        :returns: None; kwargs is modified in situ."},{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        if \"name\" in kwargs:"},{"line_number":67,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s %(id)s explicitly; \""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_045a4d2a","line":64,"updated":"2015-10-21 21:50:26.000000000","message":"Docstrings need to be updated, since kwargs is no longer modified in situ.","commit_id":"9e364c3fec19fdf2701c56c982bde8c9d263752d"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"4688a980256da37cab9420240d06b1ab1c41eea5","unresolved":false,"context_lines":[{"line_number":61,"context_line":"                         that is itself a dict including the \"id\" key."},{"line_number":62,"context_line":"        :param kwargs: The keyword arg dict that the user supplied,"},{"line_number":63,"context_line":"                       which will be modified in-place."},{"line_number":64,"context_line":"        :returns: None; kwargs is modified in situ."},{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        if \"name\" in kwargs:"},{"line_number":67,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s %(id)s explicitly; \""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_75649b48","line":64,"in_reply_to":"3a29b11f_045a4d2a","updated":"2015-10-26 10:15:24.000000000","message":"Done","commit_id":"9e364c3fec19fdf2701c56c982bde8c9d263752d"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"40bbc78b3448afd42c714827544cc22080bbaa8b","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                          \"Hence setting to random string\") %"},{"line_number":69,"context_line":"                        {\"type\": list(resource.keys())[0],"},{"line_number":70,"context_line":"                         \"id\": list(resource.values())[0][\"id\"]})"},{"line_number":71,"context_line":"        kwargs[\"name\"] \u003d self._generate_random_name("},{"line_number":72,"context_line":"            \"rally_%s_updated_\" % resource_name)"},{"line_number":73,"context_line":"        return kwargs"},{"line_number":74,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_c370d9a6","line":71,"updated":"2015-10-21 16:18:07.000000000","message":"This change looks good, however we are switching to new approach for random names generation - take a look at https://github.com/openstack/rally/blob/master/rally/common/utils.py#L381\n\nAlso patch https://review.openstack.org/#/c/226385/ is on its way to remove method _generate_random_name().\n\nSo I recommend to use our new generate_random_name() here, even without prefix (so you do not need `resource_name\u0027).\n\nJust put here:\n\n  kwargs[\"name\"] \u003d self.generate_random_name()","commit_id":"9e364c3fec19fdf2701c56c982bde8c9d263752d"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"4688a980256da37cab9420240d06b1ab1c41eea5","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                          \"Hence setting to random string\") %"},{"line_number":69,"context_line":"                        {\"type\": list(resource.keys())[0],"},{"line_number":70,"context_line":"                         \"id\": list(resource.values())[0][\"id\"]})"},{"line_number":71,"context_line":"        kwargs[\"name\"] \u003d self._generate_random_name("},{"line_number":72,"context_line":"            \"rally_%s_updated_\" % resource_name)"},{"line_number":73,"context_line":"        return kwargs"},{"line_number":74,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_1559a78e","line":71,"in_reply_to":"3a29b11f_c370d9a6","updated":"2015-10-26 10:15:24.000000000","message":"Done","commit_id":"9e364c3fec19fdf2701c56c982bde8c9d263752d"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"87f16906091b0fd01300d31b48d6158351bf834a","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s %(id)s explicitly; \""},{"line_number":63,"context_line":"                          \"Hence setting to random string\") %"},{"line_number":64,"context_line":"                        {\"type\": list(resource.keys())[0],"},{"line_number":65,"context_line":"                         \"id\": list(resource.values())[0][\"id\"]})"},{"line_number":66,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":67,"context_line":"        return kwargs"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3a29b11f_984ace54","line":65,"updated":"2015-10-26 10:27:24.000000000","message":"In most (actually in all) cases resources are auto-generated, so ID does not important for us - after scenario is finished, these resources will be removed, so just remove this part of message at all (`type\u0027 is enough)","commit_id":"3e4ab44ee52d458e39428f56173d74bb57aa702b"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"893f0db0d4b5d65538259c20dfd701f1f2d0436f","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s %(id)s explicitly; \""},{"line_number":63,"context_line":"                          \"Hence setting to random string\") %"},{"line_number":64,"context_line":"                        {\"type\": list(resource.keys())[0],"},{"line_number":65,"context_line":"                         \"id\": list(resource.values())[0][\"id\"]})"},{"line_number":66,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":67,"context_line":"        return kwargs"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3a29b11f_b3800b8d","line":65,"in_reply_to":"3a29b11f_984ace54","updated":"2015-10-26 11:38:59.000000000","message":"Agree. Done.","commit_id":"3e4ab44ee52d458e39428f56173d74bb57aa702b"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"1d25377fcde931cc7ae46917e18818e295700f46","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    HM_DELAY \u003d 20"},{"line_number":37,"context_line":"    HM_TIMEOUT \u003d 10"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def _warn_about_deprecated_name_kwarg(self, resource, **kwargs):"},{"line_number":40,"context_line":"        \"\"\"Warn about use of a deprecated \u0027name\u0027 kwarg and replace it."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        Many of the functions in this class previously accepted a"}],"source_content_type":"text/x-python","patch_set":6,"id":"1a26ad4f_0c144742","line":39,"updated":"2015-10-28 09:30:40.000000000","message":"This is not the best name for this method. It not just warn_about_... but it set \u0027name\u0027 argument in any case.","commit_id":"97bf3eb78e0dd24166f907ae7c8e4cdb28dd3d1d"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"a7887493930dc66f7b5892f388afaae867c157f1","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    HM_DELAY \u003d 20"},{"line_number":37,"context_line":"    HM_TIMEOUT \u003d 10"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def _warn_about_deprecated_name_kwarg(self, resource, **kwargs):"},{"line_number":40,"context_line":"        \"\"\"Warn about use of a deprecated \u0027name\u0027 kwarg and replace it."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        Many of the functions in this class previously accepted a"}],"source_content_type":"text/x-python","patch_set":6,"id":"1a26ad4f_347ce571","line":39,"in_reply_to":"1a26ad4f_0c144742","updated":"2015-10-28 12:27:21.000000000","message":"Done","commit_id":"97bf3eb78e0dd24166f907ae7c8e4cdb28dd3d1d"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"1d25377fcde931cc7ae46917e18818e295700f46","unresolved":false,"context_lines":[{"line_number":56,"context_line":"                         that is itself a dict including the \"id\" key."},{"line_number":57,"context_line":"        :param kwargs: The keyword arg dict that the user supplied,"},{"line_number":58,"context_line":"                       which will be modified in-place."},{"line_number":59,"context_line":"        :returns: Modified kwargs."},{"line_number":60,"context_line":"        \"\"\""},{"line_number":61,"context_line":"        if \"name\" in kwargs:"},{"line_number":62,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s explicitly; \""}],"source_content_type":"text/x-python","patch_set":6,"id":"1a26ad4f_4c20ff9b","line":59,"updated":"2015-10-28 09:30:40.000000000","message":"Why not just leave it as is? (modify kwargs dict without returning)","commit_id":"97bf3eb78e0dd24166f907ae7c8e4cdb28dd3d1d"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"db50aff50c88805a1a24d230f5d4ff4b0ecd4312","unresolved":false,"context_lines":[{"line_number":56,"context_line":"                         that is itself a dict including the \"id\" key."},{"line_number":57,"context_line":"        :param kwargs: The keyword arg dict that the user supplied,"},{"line_number":58,"context_line":"                       which will be modified in-place."},{"line_number":59,"context_line":"        :returns: Modified kwargs."},{"line_number":60,"context_line":"        \"\"\""},{"line_number":61,"context_line":"        if \"name\" in kwargs:"},{"line_number":62,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s explicitly; \""}],"source_content_type":"text/x-python","patch_set":6,"id":"1a26ad4f_6fbcc86c","line":59,"in_reply_to":"1a26ad4f_4c20ff9b","updated":"2015-10-28 13:25:13.000000000","message":"@Sergey, let\u0027s avoid implicit changes","commit_id":"97bf3eb78e0dd24166f907ae7c8e4cdb28dd3d1d"},{"author":{"_account_id":14884,"name":"Kiran Ranganath","email":"kiran7193@gmail.com","username":"kiran"},"change_message_id":"a7887493930dc66f7b5892f388afaae867c157f1","unresolved":false,"context_lines":[{"line_number":56,"context_line":"                         that is itself a dict including the \"id\" key."},{"line_number":57,"context_line":"        :param kwargs: The keyword arg dict that the user supplied,"},{"line_number":58,"context_line":"                       which will be modified in-place."},{"line_number":59,"context_line":"        :returns: Modified kwargs."},{"line_number":60,"context_line":"        \"\"\""},{"line_number":61,"context_line":"        if \"name\" in kwargs:"},{"line_number":62,"context_line":"            LOG.warning(_(\"Cannot set name of %(type)s explicitly; \""}],"source_content_type":"text/x-python","patch_set":6,"id":"1a26ad4f_9487f960","line":59,"in_reply_to":"1a26ad4f_4c20ff9b","updated":"2015-10-28 12:27:21.000000000","message":"Making explicit changes is better. Isn\u0027t it??","commit_id":"97bf3eb78e0dd24166f907ae7c8e4cdb28dd3d1d"}]}
