)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-04-14 12:14:34 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Microversion 2.42 - Fix tag attribute disappearing"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Co-Authored-By: Andrey Kurilin \u003cakurilin@mirantis.com\u003e"},{"line_number":10,"context_line":"Change-Id: I7492b20b5d2daa0f8391abed07ef861043c3e51e"},{"line_number":11,"context_line":"Implements: blueprint fix-tag-attribute-disappearing"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"7ffa3b31_675fc741","line":8,"updated":"2017-04-15 01:59:01.000000000","message":"This could use more explanation in the commit message.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"}],"novaclient/tests/functional/v2/test_device_tagging.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":44,"context_line":"            server_id \u003d self._get_value_from_the_table(output, \u0027id\u0027)"},{"line_number":45,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":46,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":47,"context_line":"            self.fail(\"Booting a server with device tag is not failed.\")"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"class TestNICDeviceTaggingCLIError(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_3b455bb4","line":47,"range":{"start_line":47,"start_character":23,"end_line":47,"end_character":70},"updated":"2017-04-13 17:42:59.000000000","message":"nit: for clarity I\u0027d change it to \"Version 2.31 is not supposed to support block device role tags\"","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":44,"context_line":"            server_id \u003d self._get_value_from_the_table(output, \u0027id\u0027)"},{"line_number":45,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":46,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":47,"context_line":"            self.fail(\"Booting a server with device tag is not failed.\")"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"class TestNICDeviceTaggingCLIError(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_53aa6685","line":47,"range":{"start_line":47,"start_character":23,"end_line":47,"end_character":70},"in_reply_to":"9ff52f3f_3b455bb4","updated":"2017-04-14 03:16:07.000000000","message":"This message is for test failure.\nI would like to leave it as it is.\nBut if this message will be changed, the following is better.\n\n\"Booting a server with block device tag is not failed although  block device tag is not supported in API Version 2.31\"","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            server_id \u003d self._get_value_from_the_table(output, \u0027id\u0027)"},{"line_number":69,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":70,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":71,"context_line":"            self.fail(\"Booting a server with device tag is not failed.\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"class TestBlockDeviceTaggingCLI(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_9b27c713","line":71,"range":{"start_line":71,"start_character":23,"end_line":71,"end_character":70},"updated":"2017-04-13 17:42:59.000000000","message":"nit: same as above, but with s/block device/network interface/","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            server_id \u003d self._get_value_from_the_table(output, \u0027id\u0027)"},{"line_number":69,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":70,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":71,"context_line":"            self.fail(\"Booting a server with device tag is not failed.\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"class TestBlockDeviceTaggingCLI(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_b373ea4d","line":71,"range":{"start_line":71,"start_character":23,"end_line":71,"end_character":70},"in_reply_to":"9ff52f3f_9b27c713","updated":"2017-04-14 03:16:07.000000000","message":"Done","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    COMPUTE_API_VERSION \u003d \"2.33\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"class TestDeviceTaggingCLIV236(TestBlockDeviceTaggingCLIError,"},{"line_number":119,"context_line":"                               TestNICDeviceTaggingCLI):"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_1b62973f","line":117,"updated":"2017-04-13 17:42:59.000000000","message":"Is there a reason 2.34 and 2.35 got skipped?","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    COMPUTE_API_VERSION \u003d \"2.33\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"class TestDeviceTaggingCLIV236(TestBlockDeviceTaggingCLIError,"},{"line_number":119,"context_line":"                               TestNICDeviceTaggingCLI):"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_5334a64a","line":117,"in_reply_to":"9ff52f3f_1b62973f","updated":"2017-04-14 03:16:07.000000000","message":"In this files, the tests are boundary value tests.\n\n[2.32] Block device tag: available, NIC tag: available\n[2.33]  Block device tag: N/A, NIC tag: available\n[2.34]  Block device tag: N/A, NIC tag: available\n[2.35]  Block device tag: N/A, NIC tag: available\n[2.36]  Block device tag: N/A, NIC tag: available\n[2.37]  Block device tag: N/A, NIC tag: N/A\n\nTherefore 2.32, 2.33, 2.36, 2.37 are checked.","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from novaclient.tests.functional import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class TestBlockDeviceTaggingCLIError(base.ClientTestBase):"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    COMPUTE_API_VERSION \u003d \"2.31\""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_672467c7","line":22,"updated":"2017-04-15 01:59:01.000000000","message":"A docstring on this test would be nice to explain the idea and what it is asserting.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            server_id \u003d self._get_value_from_the_table(output, \u0027id\u0027)"},{"line_number":44,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":45,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":46,"context_line":"            self.fail(\"Booting a server with block device tag is not failed.\")"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class TestNICDeviceTaggingCLIError(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_470a8b26","line":46,"range":{"start_line":46,"start_character":62,"end_line":46,"end_character":75},"updated":"2017-04-15 01:59:01.000000000","message":"nit: did not fail","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":46,"context_line":"            self.fail(\"Booting a server with block device tag is not failed.\")"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class TestNICDeviceTaggingCLIError(base.ClientTestBase):"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    COMPUTE_API_VERSION \u003d \"2.31\""},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_272e5fa5","line":49,"updated":"2017-04-15 01:59:01.000000000","message":"same for docstring","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    COMPUTE_API_VERSION \u003d \"2.31\""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def test_boot_server_with_tagged_nic_devices_with_error(self):"},{"line_number":54,"context_line":"        try:"},{"line_number":55,"context_line":"            output \u003d self.nova(\u0027boot\u0027, params\u003d("},{"line_number":56,"context_line":"                \u0027%(name)s --flavor %(flavor)s --poll \u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_a7138f66","line":53,"updated":"2017-04-15 01:59:01.000000000","message":"Why did you separate the tests such that block device tags and nic tags are now separate tests when before it was a single operation?\n\nOh nevermind, because it\u0027s a different range of microversions where they are broken:\n\n\"In the context of device tagging, bugs have caused the tag attribute\n    to disappear starting with version 2.33 for block_devices and starting\n    with version 2.37 for network interfaces. In other words, block\n    devices could only be tagged in 2.32 and network interfaces between\n    2.32 and 2.36 inclusively.\"\n\nIt would be good to have that in the docstring for each error test class respectively.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            self.client.servers.delete(server_id)"},{"line_number":69,"context_line":"            self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":70,"context_line":"            self.fail(\"Booting a server with network interface tag \""},{"line_number":71,"context_line":"                      \"is not failed.\")"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"class TestBlockDeviceTaggingCLI(base.ClientTestBase):"}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_27077f1f","line":71,"range":{"start_line":71,"start_character":23,"end_line":71,"end_character":36},"updated":"2017-04-15 01:59:01.000000000","message":"nit: did not fail","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":109,"context_line":"        self.wait_for_resource_delete(server_id, self.client.servers)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"class TestDeviceTaggingCLIV233(TestBlockDeviceTaggingCLIError,"},{"line_number":113,"context_line":"                               TestNICDeviceTaggingCLI):"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    COMPUTE_API_VERSION \u003d \"2.33\""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_423839d2","line":112,"updated":"2017-04-15 01:59:01.000000000","message":"docstring saying that bdm tags didn\u0027t work after 2.32 but nic tags did.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":115,"context_line":"    COMPUTE_API_VERSION \u003d \"2.33\""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"class TestDeviceTaggingCLIV236(TestBlockDeviceTaggingCLIError,"},{"line_number":119,"context_line":"                               TestNICDeviceTaggingCLI):"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"    COMPUTE_API_VERSION \u003d \"2.36\""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_623b35d1","line":118,"updated":"2017-04-15 01:59:01.000000000","message":"docstring saying that bdm tags didn\u0027t work in 2.36 but nic tags did.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    COMPUTE_API_VERSION \u003d \"2.36\""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"class TestDeviceTaggingCLIV237(TestBlockDeviceTaggingCLIError,"},{"line_number":125,"context_line":"                               TestNICDeviceTaggingCLIError):"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    COMPUTE_API_VERSION \u003d \"2.37\""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_02191178","line":124,"updated":"2017-04-15 01:59:01.000000000","message":"Add a docstring explaining that 2.37 broke nic tagging.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    COMPUTE_API_VERSION \u003d \"2.41\""},{"line_number":134,"context_line":""},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"class TestDeviceTaggingCLIV242(TestBlockDeviceTaggingCLI,"},{"line_number":137,"context_line":"                               TestNICDeviceTaggingCLI):"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    COMPUTE_API_VERSION \u003d \"2.42\""}],"source_content_type":"text/x-python","patch_set":10,"id":"7ffa3b31_e22745b6","line":136,"updated":"2017-04-15 01:59:01.000000000","message":"Add a docstring that both bdm and nic tagging were fixed in 2.42.","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"}],"novaclient/v2/shell.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    return images_matched"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def _is_support_block_device_tag(cs):"},{"line_number":110,"context_line":"    if (cs.api_version \u003d\u003d api_versions.APIVersion(\u00272.32\u0027) or"},{"line_number":111,"context_line":"            cs.api_version \u003e\u003d api_versions.APIVersion(\u00272.42\u0027)):"},{"line_number":112,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_dbd0afcc","line":109,"updated":"2017-04-13 17:42:59.000000000","message":"nit: \"is support\" is awkward, and we should probably make tag plural, so \"_supports_block_device_tags\"","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    return images_matched"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def _is_support_block_device_tag(cs):"},{"line_number":110,"context_line":"    if (cs.api_version \u003d\u003d api_versions.APIVersion(\u00272.32\u0027) or"},{"line_number":111,"context_line":"            cs.api_version \u003e\u003d api_versions.APIVersion(\u00272.42\u0027)):"},{"line_number":112,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_9378eef8","line":109,"in_reply_to":"9ff52f3f_dbd0afcc","updated":"2017-04-14 03:16:07.000000000","message":"Done","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"        if (\u0027tag\u0027 in spec_dict and not _is_support_block_device_tag(cs)):"},{"line_number":137,"context_line":"            raise exceptions.CommandError("},{"line_number":138,"context_line":"                _(\"The \u0027tag\u0027 in block device mapping is not supported \""},{"line_number":139,"context_line":"                  \"in API version %(version)s.\")"},{"line_number":140,"context_line":"                % {\u0027version\u0027: cs.api_version.get_string()})"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_fe9fe1b1","line":138,"range":{"start_line":138,"start_character":19,"end_line":138,"end_character":22},"updated":"2017-04-13 17:42:59.000000000","message":"nit: less awkward to lose the \u0027the\u0027","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"        if (\u0027tag\u0027 in spec_dict and not _is_support_block_device_tag(cs)):"},{"line_number":137,"context_line":"            raise exceptions.CommandError("},{"line_number":138,"context_line":"                _(\"The \u0027tag\u0027 in block device mapping is not supported \""},{"line_number":139,"context_line":"                  \"in API version %(version)s.\")"},{"line_number":140,"context_line":"                % {\u0027version\u0027: cs.api_version.get_string()})"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_f3685222","line":138,"range":{"start_line":138,"start_character":19,"end_line":138,"end_character":22},"in_reply_to":"9ff52f3f_fe9fe1b1","updated":"2017-04-14 03:16:07.000000000","message":"Done","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"40cc0cbd9f6a4801f1d8024fe3dc1b393ecd681c","unresolved":false,"context_lines":[{"line_number":242,"context_line":"                     \"with only one of net-id, net-name or port-id \""},{"line_number":243,"context_line":"                     \"specified.\"))"},{"line_number":244,"context_line":"    else:"},{"line_number":245,"context_line":"        # API version \u003c\u003d 2.31"},{"line_number":246,"context_line":"        err_msg \u003d (_(\"Invalid nic argument \u0027%s\u0027. Nic arguments must be of \""},{"line_number":247,"context_line":"                     \"the form --nic \u003cnet-id\u003dnet-uuid,\""},{"line_number":248,"context_line":"                     \"net-name\u003dnetwork-name,v4-fixed-ip\u003dip-addr,\""}],"source_content_type":"text/x-python","patch_set":9,"id":"9ff52f3f_3ebc2904","line":245,"updated":"2017-04-13 17:42:59.000000000","message":"What I don\u0027t like about this whole business is that it mixes numerical API version numbers with \"conceptual\" checks like supports_auto_alloc. Wouldn\u0027t it be better to have a supports_nic_tags method that does the API version checks, and then adjust the err_msg based on the result of supports_auto_alloc and supports_nic_tags?","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6664ea44354a8ed4c5f171da0c0133909c55fe79","unresolved":false,"context_lines":[{"line_number":242,"context_line":"                     \"with only one of net-id, net-name or port-id \""},{"line_number":243,"context_line":"                     \"specified.\"))"},{"line_number":244,"context_line":"    else:"},{"line_number":245,"context_line":"        # API version \u003c\u003d 2.31"},{"line_number":246,"context_line":"        err_msg \u003d (_(\"Invalid nic argument \u0027%s\u0027. Nic arguments must be of \""},{"line_number":247,"context_line":"                     \"the form --nic \u003cnet-id\u003dnet-uuid,\""},{"line_number":248,"context_line":"                     \"net-name\u003dnetwork-name,v4-fixed-ip\u003dip-addr,\""}],"source_content_type":"text/x-python","patch_set":9,"id":"7ffa3b31_e5be45fe","line":245,"in_reply_to":"9ff52f3f_3ebc2904","updated":"2017-04-14 03:16:07.000000000","message":"Done","commit_id":"85cdb04f7a7ccefe66851c8ccbd41172cacd3e1b"}],"releasenotes/notes/fix-tag-attribute-disappearing-25483a80f548ef35.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b8270344924ce832e90ffcd82e972514f0343f4f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":"    But there are no version-wrapped shell method changes for this."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"fa31d9ce_55137d0d","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":8},"updated":"2017-02-16 17:31:45.000000000","message":"This should be \"fixes\" or \"other\" or something that\u0027s not \u0027features\u0027 since this isn\u0027t really a feature, it\u0027s a bug fix.","commit_id":"2c471b64c2bd7a94cc31923ebad425e5f3780dee"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"9b74d39d250f868ef72831ca4a2d0c2765e405ac","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":"    But there are no version-wrapped shell method changes for this."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"fa31d9ce_0fd8091d","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":8},"in_reply_to":"fa31d9ce_55137d0d","updated":"2017-02-16 22:01:59.000000000","message":"Done","commit_id":"2c471b64c2bd7a94cc31923ebad425e5f3780dee"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b8270344924ce832e90ffcd82e972514f0343f4f","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":"    But there are no version-wrapped shell method changes for this."},{"line_number":6,"context_line":"    So just the microversion has been bumped up."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    * https://bugs.launchpad.net/nova/+bug/1658571"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"fa31d9ce_d5684d8a","line":5,"range":{"start_line":5,"start_character":4,"end_line":5,"end_character":67},"updated":"2017-02-16 17:31:45.000000000","message":"A user reading the release notes has no idea what this means, it\u0027s an internal implementation detail that we can omit.","commit_id":"2c471b64c2bd7a94cc31923ebad425e5f3780dee"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"9b74d39d250f868ef72831ca4a2d0c2765e405ac","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":"    But there are no version-wrapped shell method changes for this."},{"line_number":6,"context_line":"    So just the microversion has been bumped up."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    * https://bugs.launchpad.net/nova/+bug/1658571"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"fa31d9ce_2f030d78","line":5,"range":{"start_line":5,"start_character":4,"end_line":5,"end_character":67},"in_reply_to":"fa31d9ce_d5684d8a","updated":"2017-02-16 22:01:59.000000000","message":"Done","commit_id":"2c471b64c2bd7a94cc31923ebad425e5f3780dee"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40c845c6317833f7812c76751223528cab37c997","unresolved":false,"context_lines":[{"line_number":5,"context_line":""},{"line_number":6,"context_line":"    * https://bugs.launchpad.net/nova/+bug/1658571"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    The following options has been changed as of Microversion 2.42."},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    * Remove ``tag`` attribute in ``--block-device`` option"},{"line_number":11,"context_line":"      on the server boot (nova boot) between microversion 2.33 and 2.41."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"7ffa3b31_c26449bc","line":8,"range":{"start_line":8,"start_character":26,"end_line":8,"end_character":29},"updated":"2017-04-15 01:59:01.000000000","message":"have","commit_id":"f6844173c5f2f3d562c59cad9d2d0909194a1b69"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"c2d3c11687344c3308b2137b14f4a3ef97f4d862","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"    * https://bugs.launchpad.net/nova/+bug/1658571"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"7ffa3b31_a79c24c0","line":4,"range":{"start_line":4,"start_character":33,"end_line":4,"end_character":37},"updated":"2017-04-20 14:26:05.000000000","message":"nit: related to the following","commit_id":"4c1449d7d6571ff8e6d3b945650684b34f2fe572"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6353bd2f9109390c393318f86737f939723742e7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Microversion 2.42 is related with the following bug."},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"    * https://bugs.launchpad.net/nova/+bug/1658571"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":12,"id":"7ffa3b31_797a44f1","line":4,"range":{"start_line":4,"start_character":33,"end_line":4,"end_character":37},"in_reply_to":"7ffa3b31_a79c24c0","updated":"2017-04-20 15:05:08.000000000","message":"I personally wouldn\u0027t -1 for this.","commit_id":"4c1449d7d6571ff8e6d3b945650684b34f2fe572"}]}
