)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"da86d52c_06032bb9","updated":"2015-01-31 05:08:23.000000000","message":"suggest keeping each line to \u003c60 characters","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"}],"doc/source/command-objects/flavor.rst":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":89,"context_line":".. code:: bash"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    os flavor list"},{"line_number":92,"context_line":"        [--extra-specs]"},{"line_number":93,"context_line":"        [--all-flavors]"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":".. option:: --extra-specs"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da86d52c_465e03eb","line":92,"updated":"2015-01-31 05:08:23.000000000","message":"suggest using --property","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":94,"context_line":""},{"line_number":95,"context_line":".. option:: --extra-specs"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    Get extra-specs of each flavor"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":".. option:: --all-flavors"},{"line_number":100,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"da86d52c_666307b2","line":97,"updated":"2015-01-31 05:08:23.000000000","message":"List also returns properties for flavor","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":".. option:: --all-flavors"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    Include all flavors (admin only)"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"flavor show"},{"line_number":104,"context_line":"-----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da86d52c_a65dffeb","line":101,"updated":"2015-01-31 05:08:23.000000000","message":"Include all flavor, whether public or private","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"}],"openstackclient/compute/v2/flavor.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":155,"context_line":"    def get_parser(self, prog_name):"},{"line_number":156,"context_line":"        parser \u003d super(ListFlavor, self).get_parser(prog_name)"},{"line_number":157,"context_line":"        parser.add_argument("},{"line_number":158,"context_line":"            \u0027--extra-specs\u0027,"},{"line_number":159,"context_line":"            action\u003d\u0027store_true\u0027,"},{"line_number":160,"context_line":"            default\u003dFalse,"},{"line_number":161,"context_line":"            help\u003d\u0027Get extra-specs of each flavor\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_06becbff","line":158,"updated":"2015-01-31 05:08:23.000000000","message":"can you change this to --property","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":180,"context_line":"            \"RXTX Factor\","},{"line_number":181,"context_line":"            \"Is Public\""},{"line_number":182,"context_line":"        )"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"        is_public \u003d True"},{"line_number":185,"context_line":"        if parsed_args.all_flavors:"},{"line_number":186,"context_line":"            is_public \u003d None"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_663ce794","line":183,"updated":"2015-01-31 05:08:23.000000000","message":"create a variable here called column_headers\n\n  column_headers \u003d columns","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        if parsed_args.all_flavors:"},{"line_number":186,"context_line":"            is_public \u003d None"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"        data \u003d compute_client.flavors.list(is_public\u003dis_public)"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"        if parsed_args.extra_specs:"},{"line_number":191,"context_line":"            columns \u003d columns + (\"Extra Specs\",)"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_e6f537cc","line":188,"updated":"2015-01-31 05:08:23.000000000","message":"jeez this flag is messed up: https://github.com/openstack/python-novaclient/blob/master/novaclient/v1_1/flavors.py#L100\n\nCan you make a comment here about what to expect if is_public is False/True/None?","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":188,"context_line":"        data \u003d compute_client.flavors.list(is_public\u003dis_public)"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"        if parsed_args.extra_specs:"},{"line_number":191,"context_line":"            columns \u003d columns + (\"Extra Specs\",)"},{"line_number":192,"context_line":"            for f in data:"},{"line_number":193,"context_line":"                f.extra_specs \u003d f.get_keys()"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_a646df21","line":191,"updated":"2015-01-31 05:08:23.000000000","message":"if parsed_args.property:\n    columns \u003d columns + (\"Extra Specs\",)\n    column_headers \u003d column_headers + (\u0027Properties\u0027)","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":192,"context_line":"            for f in data:"},{"line_number":193,"context_line":"                f.extra_specs \u003d f.get_keys()"},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        return (columns,"},{"line_number":196,"context_line":"                (utils.get_item_properties("},{"line_number":197,"context_line":"                    s, columns,"},{"line_number":198,"context_line":"                ) for s in data))"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_8641db0d","line":195,"updated":"2015-01-31 05:08:23.000000000","message":"always pass in column_headers here","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e17dfc42e8764581739e2c52b80e15a5efb18908","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        return (columns,"},{"line_number":196,"context_line":"                (utils.get_item_properties("},{"line_number":197,"context_line":"                    s, columns,"},{"line_number":198,"context_line":"                ) for s in data))"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_0655ebc5","line":197,"updated":"2015-01-31 05:08:23.000000000","message":"also, there is a helper function that formats properties,\n\n        return (column_headers,\n                (utils.get_item_properties(\n                    s, columns,\n                    formatters\u003d{\u0027Extra Specs\u0027: utils.format_dict},\n                ) for s in data))\n\nexample here: https://github.com/openstack/python-openstackclient/blob/31e4f7f14362d970077a2343e25af790e9a14607/openstackclient/volume/v1/type.py#L113","commit_id":"53d81cbb46f0046c52486419473ddd3ea67a4621"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"c97e01b78db5dd89a05406ee77257fd446b45c84","unresolved":false,"context_lines":[{"line_number":161,"context_line":"            \"RAM\","},{"line_number":162,"context_line":"            \"Disk\","},{"line_number":163,"context_line":"            \"Ephemeral\","},{"line_number":164,"context_line":"            \"Swap\","},{"line_number":165,"context_line":"            \"VCPUs\","},{"line_number":166,"context_line":"            \"RXTX Factor\","},{"line_number":167,"context_line":"            \"Is Public\","}],"source_content_type":"text/x-python","patch_set":5,"id":"da86d52c_ea4a4826","side":"PARENT","line":164,"updated":"2015-02-02 01:49:29.000000000","message":"I\u0027d suggest moving this to --long output only","commit_id":"6fd5fc2d27fdcc95e6aeac61ea89f83ce3477822"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"c97e01b78db5dd89a05406ee77257fd446b45c84","unresolved":false,"context_lines":[{"line_number":163,"context_line":"            \"Ephemeral\","},{"line_number":164,"context_line":"            \"Swap\","},{"line_number":165,"context_line":"            \"VCPUs\","},{"line_number":166,"context_line":"            \"RXTX Factor\","},{"line_number":167,"context_line":"            \"Is Public\","},{"line_number":168,"context_line":"            \"Extra Specs\""},{"line_number":169,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":5,"id":"da86d52c_8a3c6c95","side":"PARENT","line":166,"updated":"2015-02-02 01:49:29.000000000","message":"I\u0027d suggest moving this to --long output only","commit_id":"6fd5fc2d27fdcc95e6aeac61ea89f83ce3477822"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"c97e01b78db5dd89a05406ee77257fd446b45c84","unresolved":false,"context_lines":[{"line_number":164,"context_line":"            \"Swap\","},{"line_number":165,"context_line":"            \"VCPUs\","},{"line_number":166,"context_line":"            \"RXTX Factor\","},{"line_number":167,"context_line":"            \"Is Public\","},{"line_number":168,"context_line":"            \"Extra Specs\""},{"line_number":169,"context_line":"        )"},{"line_number":170,"context_line":"        data \u003d compute_client.flavors.list()"}],"source_content_type":"text/x-python","patch_set":5,"id":"da86d52c_ca73c4af","side":"PARENT","line":167,"updated":"2015-02-02 01:49:29.000000000","message":"FWIW, the reason for leaving a trailing comma here is to avoid unnecessary changes like this one","commit_id":"6fd5fc2d27fdcc95e6aeac61ea89f83ce3477822"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"c97e01b78db5dd89a05406ee77257fd446b45c84","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            default\u003dFalse,"},{"line_number":161,"context_line":"            help\u003d\u0027List additional fields in output\u0027)"},{"line_number":162,"context_line":"        parser.add_argument("},{"line_number":163,"context_line":"            \u0027--all-flavors\u0027,"},{"line_number":164,"context_line":"            action\u003d\u0027store_true\u0027,"},{"line_number":165,"context_line":"            default\u003dFalse,"},{"line_number":166,"context_line":"            help\u003d\u0027Include all flavors, whether public or private (admin only)\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"da86d52c_8aa0ecf5","line":163,"updated":"2015-02-02 01:49:29.000000000","message":"As list commands are growing filtering capabilities this needs to be more specific.  --all-flavors gives the user no indication what the filter is otherwise.\n\nFor this use, --public and --private should be used; the lack of either of them indicates all, which is admin only but needs to be handled as gracefully as possibly for non-admin users.","commit_id":"905059458134ea52379c2229051a01608da12157"},{"author":{"_account_id":14485,"name":"Igor Bolotin","email":"igor_bolotin@symantec.com","username":"ibolotin"},"change_message_id":"97713c655f1683e9bcf2e73df1436f3653857df0","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            default\u003dFalse,"},{"line_number":161,"context_line":"            help\u003d\u0027List additional fields in output\u0027)"},{"line_number":162,"context_line":"        parser.add_argument("},{"line_number":163,"context_line":"            \u0027--all-flavors\u0027,"},{"line_number":164,"context_line":"            action\u003d\u0027store_true\u0027,"},{"line_number":165,"context_line":"            default\u003dFalse,"},{"line_number":166,"context_line":"            help\u003d\u0027Include all flavors, whether public or private (admin only)\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"da86d52c_2aad4089","line":163,"in_reply_to":"da86d52c_8aa0ecf5","updated":"2015-02-02 02:07:54.000000000","message":"One concern I have is that it would change current default behavior - which is equivalent to using --public. What do you think about adding --public | --private | --all mutually-exclusive group and use/document --public as default?","commit_id":"905059458134ea52379c2229051a01608da12157"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"bf4fa6dcce79edd3fefe8f466dcf2d61a0936692","unresolved":false,"context_lines":[{"line_number":211,"context_line":"                \"RXTX Factor\","},{"line_number":212,"context_line":"                \"Extra Specs\","},{"line_number":213,"context_line":"            )"},{"line_number":214,"context_line":"            column_headers \u003d column_headers + ("},{"line_number":215,"context_line":"                \"Swap\","},{"line_number":216,"context_line":"                \"RXTX Factor\","},{"line_number":217,"context_line":"                \"Properties\","}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_feb9f22e","line":214,"updated":"2015-02-03 07:45:47.000000000","message":"NIT: code duplication, columns and column_headers are always the same.  We don\u0027t need this extra operations here.\n\nCould either:\n*  just pass the \"columns\" instead of \"column_headers\" in the return\n* do the assignment \"column_headers \u003d columns\" just before return","commit_id":"f417ecbbe358ec7193195f47874ae9cf3e2fe4c8"}]}
