)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"db5d1619f0b39f626d37b404d91f2164d68f05f0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Microversion 2.61 - support extra_specs in flavor API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Starting from microversion 2.61, the responses of the \u0027Flavor\u0027 APIs"},{"line_number":10,"context_line":"include the \u0027extra_spec\u0027 parameter. Therefore \u0027Flavors extra-specs\u0027"},{"line_number":11,"context_line":"(os-extra_specs) API calls have been removed in the following commands"},{"line_number":12,"context_line":"since microversion 2.61."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9f6a8fd7_6dbc5d05","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":23},"updated":"2018-04-17 04:15:59.000000000","message":"extra_specs","commit_id":"46cabbe1ea3996159e3a48efa1cc08969fdde403"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"512cb634429b4ce6e0ba52a12b30cd6b5f1e371d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Microversion 2.61 - support extra_specs in flavor API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Starting from microversion 2.61, the responses of the \u0027Flavor\u0027 APIs"},{"line_number":10,"context_line":"include the \u0027extra_spec\u0027 parameter. Therefore \u0027Flavors extra-specs\u0027"},{"line_number":11,"context_line":"(os-extra_specs) API calls have been removed in the following commands"},{"line_number":12,"context_line":"since microversion 2.61."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9f6a8fd7_9021c1b7","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":23},"in_reply_to":"9f6a8fd7_6dbc5d05","updated":"2018-04-17 09:50:42.000000000","message":"Done","commit_id":"46cabbe1ea3996159e3a48efa1cc08969fdde403"}],"novaclient/tests/unit/fakes.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"252b012d9ec97fd883059a6b31d7528c57b9d392","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        not_expected \u003d (method, url, body)"},{"line_number":143,"context_line":"        for entry in self.client.callstack:"},{"line_number":144,"context_line":"            assert not_expected !\u003d entry[0:3], ("},{"line_number":145,"context_line":"                \u0027Call %s %s body\u003d%s was called.\u0027 % not_expected)"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def clear_callstack(self):"},{"line_number":148,"context_line":"        self.client.callstack \u003d []"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f6a8fd7_8bfd0f3c","line":145,"range":{"start_line":145,"start_character":17,"end_line":145,"end_character":21},"updated":"2018-04-17 13:33:45.000000000","message":"nit: s/Call/API/?","commit_id":"d6b4918c42064c44eb46b913c6fae83ff85823d0"}],"novaclient/v2/shell.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bb00229aa83a27c850a4eb109d3772964006cf07","unresolved":false,"context_lines":[{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"    formatters \u003d {}"},{"line_number":1020,"context_line":"    if show_extra_specs:"},{"line_number":1021,"context_line":"        if cs.api_version \u003c api_versions.APIVersion(\u00272.61\u0027):"},{"line_number":1022,"context_line":"            formatters \u003d {\u0027extra_specs\u0027: _print_flavor_extra_specs}"},{"line_number":1023,"context_line":"        headers.append(\u0027extra_specs\u0027)"},{"line_number":1024,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_9dd25134","line":1021,"updated":"2018-04-16 14:10:27.000000000","message":"A comment here might be nice, something like:\n\n# Starting with microversion 2.61, extra specs are included in the flavor details response.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6e68b0ffaffc292f770adae7d96247fe125c3a28","unresolved":false,"context_lines":[{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"    formatters \u003d {}"},{"line_number":1020,"context_line":"    if show_extra_specs:"},{"line_number":1021,"context_line":"        if cs.api_version \u003c api_versions.APIVersion(\u00272.61\u0027):"},{"line_number":1022,"context_line":"            formatters \u003d {\u0027extra_specs\u0027: _print_flavor_extra_specs}"},{"line_number":1023,"context_line":"        headers.append(\u0027extra_specs\u0027)"},{"line_number":1024,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_f9627316","line":1021,"in_reply_to":"9f6a8fd7_9dd25134","updated":"2018-04-17 01:06:45.000000000","message":"Done","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bb00229aa83a27c850a4eb109d3772964006cf07","unresolved":false,"context_lines":[{"line_number":1034,"context_line":"    action\u003d\u0027store_true\u0027,"},{"line_number":1035,"context_line":"    default\u003dFalse,"},{"line_number":1036,"context_line":"    help\u003d_(\u0027Get extra-specs of each flavor.\u0027),"},{"line_number":1037,"context_line":"    start_version\u003d\"2.0\", end_version\u003d\u00272.60\u0027)"},{"line_number":1038,"context_line":"@utils.arg("},{"line_number":1039,"context_line":"    \u0027--all\u0027,"},{"line_number":1040,"context_line":"    dest\u003d\u0027all\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_fdc58d5c","line":1037,"updated":"2018-04-16 14:10:27.000000000","message":"This is a behavior change correct? Before this if I\u0027m talking to an older cloud, I won\u0027t get extra specs in the output by default, but if I\u0027m talking to a new cloud I will get extra specs by default and there is no way to opt out of showing extra specs now. It seems we shouldn\u0027t change the behavior of this option. The only thing we need to account for is in _print_flavor_list where we can determine if we already have the extra specs or not so we don\u0027t need to make another API call per flavor.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6e68b0ffaffc292f770adae7d96247fe125c3a28","unresolved":false,"context_lines":[{"line_number":1034,"context_line":"    action\u003d\u0027store_true\u0027,"},{"line_number":1035,"context_line":"    default\u003dFalse,"},{"line_number":1036,"context_line":"    help\u003d_(\u0027Get extra-specs of each flavor.\u0027),"},{"line_number":1037,"context_line":"    start_version\u003d\"2.0\", end_version\u003d\u00272.60\u0027)"},{"line_number":1038,"context_line":"@utils.arg("},{"line_number":1039,"context_line":"    \u0027--all\u0027,"},{"line_number":1040,"context_line":"    dest\u003d\u0027all\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_597d9faf","line":1037,"in_reply_to":"9f6a8fd7_fdc58d5c","updated":"2018-04-17 01:06:45.000000000","message":"Done","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bb00229aa83a27c850a4eb109d3772964006cf07","unresolved":false,"context_lines":[{"line_number":1109,"context_line":"    cs.flavors.delete(flavorid)"},{"line_number":1110,"context_line":"    _print_flavor_list("},{"line_number":1111,"context_line":"        cs, [flavorid],"},{"line_number":1112,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1113,"context_line":""},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"@utils.arg("}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_1da2c19b","line":1112,"updated":"2018-04-16 14:10:27.000000000","message":"This is another behavior change, I don\u0027t think we need to toggle showing extra specs when listing flavors after deleting one. Just leave this how it worked before.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1b7b3da21a89ffbab925ce0548cdd2237c9106ec","unresolved":false,"context_lines":[{"line_number":1109,"context_line":"    cs.flavors.delete(flavorid)"},{"line_number":1110,"context_line":"    _print_flavor_list("},{"line_number":1111,"context_line":"        cs, [flavorid],"},{"line_number":1112,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1113,"context_line":""},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"@utils.arg("}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_d876973f","line":1112,"in_reply_to":"9f6a8fd7_1d5f2142","updated":"2018-04-16 14:39:12.000000000","message":"I\u0027ve proposed a change to stop printing the flavor output for the flavor we just deleted:\n\nhttps://review.openstack.org/#/c/561634/\n\nIf you agree, you can rebase on top of that change.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"da6862a68e33104d0dead330288e386fabf1b117","unresolved":false,"context_lines":[{"line_number":1109,"context_line":"    cs.flavors.delete(flavorid)"},{"line_number":1110,"context_line":"    _print_flavor_list("},{"line_number":1111,"context_line":"        cs, [flavorid],"},{"line_number":1112,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1113,"context_line":""},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"@utils.arg("}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_3d24650d","line":1112,"in_reply_to":"9f6a8fd7_1da2c19b","updated":"2018-04-16 14:13:11.000000000","message":"\u003e This is another behavior change, I don\u0027t think we need to toggle\n \u003e showing extra specs when listing flavors after deleting one. Just\n \u003e leave this how it worked before.\n\nAlthough if we are going to show extra specs in flavor-update then we should be consistent, however, does this even print out the full flavor we just deleted or just the ID since it\u0027s passing in only the ID:\n\n[flavorid]","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"76a62e5fe9bcb48ead0523f41d223cd166a2790a","unresolved":false,"context_lines":[{"line_number":1109,"context_line":"    cs.flavors.delete(flavorid)"},{"line_number":1110,"context_line":"    _print_flavor_list("},{"line_number":1111,"context_line":"        cs, [flavorid],"},{"line_number":1112,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1113,"context_line":""},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"@utils.arg("}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_1d5f2142","line":1112,"in_reply_to":"9f6a8fd7_3d24650d","updated":"2018-04-16 14:19:52.000000000","message":"I tested the flavor-delete behavior, it looks like \"flavorid\" is not a flavorid at all, it\u0027s the actual flavor, so can you also rename that variable while you\u0027re in here?\n\nstack@rocky:~$ nova flavor-show flavor-with-specs\n+----------------------------+---------------------+\n| Property                   | Value               |\n+----------------------------+---------------------+\n| OS-FLV-DISABLED:disabled   | False               |\n| OS-FLV-EXT-DATA:ephemeral  | 0                   |\n| description                | -                   |\n| disk                       | 64                  |\n| extra_specs                | {\"hw:key\": \"value\"} |\n| id                         | flavor-with-specs   |\n| name                       | flavor-with-specs   |\n| os-flavor-access:is_public | True                |\n| ram                        | 2048                |\n| rxtx_factor                | 1.0                 |\n| swap                       |                     |\n| vcpus                      | 4                   |\n+----------------------------+---------------------+\nstack@rocky:~$ nova flavor-delete flavor-with-specs\n+-------------------+-------------------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\n| ID                | Name              | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |\n+-------------------+-------------------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\n| flavor-with-specs | flavor-with-specs | 2048      | 64   | 0         |      | 4     | 1.0         | True      | -           |\n+-------------------+-------------------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\nstack@rocky:~$ nova flavor-list\n+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\n| ID | Name      | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |\n+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\n| 1  | m1.tiny   | 512       | 1    | 0         |      | 1     | 1.0         | True      | -           |\n| 2  | m1.small  | 2048      | 20   | 0         |      | 1     | 1.0         | True      | -           |\n| 3  | m1.medium | 4096      | 40   | 0         |      | 2     | 1.0         | True      | -           |\n| 4  | m1.large  | 8192      | 80   | 0         |      | 4     | 1.0         | True      | -           |\n| 5  | m1.xlarge | 16384     | 160  | 0         |      | 8     | 1.0         | True      | -           |\n| c1 | cirros256 | 256       | 0    | 0         |      | 1     | 1.0         | True      | -           |\n| d1 | ds512M    | 512       | 5    | 0         |      | 1     | 1.0         | True      | -           |\n| d2 | ds1G      | 1024      | 10   | 0         |      | 1     | 1.0         | True      | -           |\n| d3 | ds2G      | 2048      | 10   | 0         |      | 2     | 1.0         | True      | -           |\n| d4 | ds4G      | 4096      | 20   | 0         |      | 4     | 1.0         | True      | -           |\n+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+-------------+\nstack@rocky:~$ \n\n\nI think it\u0027s weird that flavor-delete shows the flavor that the user asked to delete without any confirmation that it was actually deleted. I think we should probably just remove the flavor-delete output if we successfully deleted the flavor, but that\u0027s arguably a separate change.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6e68b0ffaffc292f770adae7d96247fe125c3a28","unresolved":false,"context_lines":[{"line_number":1109,"context_line":"    cs.flavors.delete(flavorid)"},{"line_number":1110,"context_line":"    _print_flavor_list("},{"line_number":1111,"context_line":"        cs, [flavorid],"},{"line_number":1112,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1113,"context_line":""},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"@utils.arg("}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_19364705","line":1112,"in_reply_to":"9f6a8fd7_d876973f","updated":"2018-04-17 01:06:45.000000000","message":"Done","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bb00229aa83a27c850a4eb109d3772964006cf07","unresolved":false,"context_lines":[{"line_number":1182,"context_line":"    f \u003d cs.flavors.create(args.name, args.ram, args.vcpus, args.disk, args.id,"},{"line_number":1183,"context_line":"                          args.ephemeral, args.swap, args.rxtx_factor,"},{"line_number":1184,"context_line":"                          args.is_public, description)"},{"line_number":1185,"context_line":"    _print_flavor_list("},{"line_number":1186,"context_line":"        cs, [f],"},{"line_number":1187,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1188,"context_line":""},{"line_number":1189,"context_line":""},{"line_number":1190,"context_line":"@api_versions.wraps(\u00272.55\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_fdd6edf1","line":1187,"range":{"start_line":1185,"start_character":4,"end_line":1187,"end_character":75},"updated":"2018-04-16 14:10:27.000000000","message":"I would leave this the same as before, especially since you can\u0027t create a flavor with extra specs in a single call, so nothing new gets shown here anyway.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6e68b0ffaffc292f770adae7d96247fe125c3a28","unresolved":false,"context_lines":[{"line_number":1182,"context_line":"    f \u003d cs.flavors.create(args.name, args.ram, args.vcpus, args.disk, args.id,"},{"line_number":1183,"context_line":"                          args.ephemeral, args.swap, args.rxtx_factor,"},{"line_number":1184,"context_line":"                          args.is_public, description)"},{"line_number":1185,"context_line":"    _print_flavor_list("},{"line_number":1186,"context_line":"        cs, [f],"},{"line_number":1187,"context_line":"        show_extra_specs\u003dcs.api_version \u003e\u003d api_versions.APIVersion(\u00272.61\u0027))"},{"line_number":1188,"context_line":""},{"line_number":1189,"context_line":""},{"line_number":1190,"context_line":"@api_versions.wraps(\u00272.55\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_b93abbe4","line":1187,"range":{"start_line":1185,"start_character":4,"end_line":1187,"end_character":75},"in_reply_to":"9f6a8fd7_fdd6edf1","updated":"2018-04-17 01:06:45.000000000","message":"Done","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bb00229aa83a27c850a4eb109d3772964006cf07","unresolved":false,"context_lines":[{"line_number":1332,"context_line":"    info \u003d flavor.to_dict()"},{"line_number":1333,"context_line":"    # ignore links, we don\u0027t need to present those"},{"line_number":1334,"context_line":"    info.pop(\u0027links\u0027)"},{"line_number":1335,"context_line":"    if not include_extra_specs:"},{"line_number":1336,"context_line":"        info.update({\"extra_specs\": _print_flavor_extra_specs(flavor)})"},{"line_number":1337,"context_line":"    utils.print_dict(info)"},{"line_number":1338,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_fdc10d30","line":1335,"range":{"start_line":1335,"start_character":4,"end_line":1335,"end_character":31},"updated":"2018-04-16 14:10:27.000000000","message":"This is really confusing. I read this as, \"don\u0027t show flavor extra specs\" but then it\u0027s still showing them.\n\nWhy not just check if the flavor parameter, which is also a dict, has the \u0027extra_specs\u0027 key in it and leave a comment about 2.61.","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"6e68b0ffaffc292f770adae7d96247fe125c3a28","unresolved":false,"context_lines":[{"line_number":1332,"context_line":"    info \u003d flavor.to_dict()"},{"line_number":1333,"context_line":"    # ignore links, we don\u0027t need to present those"},{"line_number":1334,"context_line":"    info.pop(\u0027links\u0027)"},{"line_number":1335,"context_line":"    if not include_extra_specs:"},{"line_number":1336,"context_line":"        info.update({\"extra_specs\": _print_flavor_extra_specs(flavor)})"},{"line_number":1337,"context_line":"    utils.print_dict(info)"},{"line_number":1338,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f6a8fd7_dc0d1d38","line":1335,"range":{"start_line":1335,"start_character":4,"end_line":1335,"end_character":31},"in_reply_to":"9f6a8fd7_fdc10d30","updated":"2018-04-17 01:06:45.000000000","message":"Done","commit_id":"57a532296bfa8ffcaa2db2b3be12277c9ba355e6"}],"releasenotes/notes/microversion-v2_61-9a8faa02fddf9ed6.yaml":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"db5d1619f0b39f626d37b404d91f2164d68f05f0","unresolved":false,"context_lines":[{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Starting from microversion 2.61, the responses of the \u0027Flavor\u0027 APIs"},{"line_number":5,"context_line":"    include the \u0027extra_spec\u0027 parameter. Therefore \u0027Flavors extra-specs\u0027"},{"line_number":6,"context_line":"    (os-extra_specs) API calls have been removed in the following commands"},{"line_number":7,"context_line":"    since microversion 2.61."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9f6a8fd7_eda94ddf","line":5,"range":{"start_line":5,"start_character":17,"end_line":5,"end_character":27},"updated":"2018-04-17 04:15:59.000000000","message":"extra_specs","commit_id":"46cabbe1ea3996159e3a48efa1cc08969fdde403"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"512cb634429b4ce6e0ba52a12b30cd6b5f1e371d","unresolved":false,"context_lines":[{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Starting from microversion 2.61, the responses of the \u0027Flavor\u0027 APIs"},{"line_number":5,"context_line":"    include the \u0027extra_spec\u0027 parameter. Therefore \u0027Flavors extra-specs\u0027"},{"line_number":6,"context_line":"    (os-extra_specs) API calls have been removed in the following commands"},{"line_number":7,"context_line":"    since microversion 2.61."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9f6a8fd7_302eb5a5","line":5,"range":{"start_line":5,"start_character":17,"end_line":5,"end_character":27},"in_reply_to":"9f6a8fd7_eda94ddf","updated":"2018-04-17 09:50:42.000000000","message":"Done","commit_id":"46cabbe1ea3996159e3a48efa1cc08969fdde403"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"252b012d9ec97fd883059a6b31d7528c57b9d392","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9f6a8fd7_0e226da5","line":11,"updated":"2018-04-17 13:33:45.000000000","message":"nit: I might also say something like this to avoid confusion:\n\n\"There are no behavior changes in the CLI. This is just a performance optimization.\"","commit_id":"d6b4918c42064c44eb46b913c6fae83ff85823d0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"d7695982b3e86b2148550cfa200c9ea0f91a95a6","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    * ``nova flavor-show``"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"    There are no behavior changes in the CLI. This is just a performance"},{"line_number":13,"context_line":"    optimization."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f6a8fd7_a7d03ff9","line":13,"updated":"2018-04-17 18:17:00.000000000","message":"Appreciate this note.","commit_id":"229d0df752702700dd30ddbe6d94d5efd5477318"}]}
