)]}'
{"keystoneclient/auth/base.py":[{"author":{"_account_id":11333,"name":"David J Hu","email":"david.hu@hpe.com","username":"dhu"},"change_message_id":"b3cfb22942ffb744dce4d8ee548a56a22d04cc6d","unresolved":false,"context_lines":[{"line_number":146,"context_line":"            envs \u003d []"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"            for o in [opt] + opt.deprecated_opts:"},{"line_number":149,"context_line":"                args.append(\u0027--os-%s\u0027 % o.name)"},{"line_number":150,"context_line":"                envs.append(\u0027OS_%s\u0027 % o.name.replace(\u0027-\u0027, \u0027_\u0027).upper())"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"            default \u003d opt.default"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_307e67e4","line":149,"updated":"2014-08-13 17:39:03.000000000","message":"Need to take care of an additional class of args which currently with their help suppressed.  This is needed for backward compatibility until we can officially get rid of them.\n\n--os_username\n\n--os_password\n\n--os_tenant_name\n\n--os_auth_url\n\n--os_region_name\n\nUnrelated, but a good idea to discusst a time line to officially remove all of the deprecated args.","commit_id":"75b8c0b854967163dd0ae98c0197d8a3064358f6"},{"author":{"_account_id":11333,"name":"David J Hu","email":"david.hu@hpe.com","username":"dhu"},"change_message_id":"084a175a8fd26abf9ce3e8ed5c2699d0628298b2","unresolved":false,"context_lines":[{"line_number":146,"context_line":"            envs \u003d []"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"            for o in [opt] + opt.deprecated_opts:"},{"line_number":149,"context_line":"                args.append(\u0027--os-%s\u0027 % o.name)"},{"line_number":150,"context_line":"                envs.append(\u0027OS_%s\u0027 % o.name.replace(\u0027-\u0027, \u0027_\u0027).upper())"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"            default \u003d opt.default"}],"source_content_type":"text/x-python","patch_set":1,"id":"7ac7a964_51ff6c67","line":149,"in_reply_to":"7ac7a964_b053886b","updated":"2014-08-14 20:52:46.000000000","message":"Agreed.  I am getting question on what\u0027s the plan to get rid of all the --os_* args.  That itself is worth a totally different discussion.","commit_id":"75b8c0b854967163dd0ae98c0197d8a3064358f6"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e081031679be99948c1300dd271023203a8a3837","unresolved":false,"context_lines":[{"line_number":146,"context_line":"            envs \u003d []"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"            for o in [opt] + opt.deprecated_opts:"},{"line_number":149,"context_line":"                args.append(\u0027--os-%s\u0027 % o.name)"},{"line_number":150,"context_line":"                envs.append(\u0027OS_%s\u0027 % o.name.replace(\u0027-\u0027, \u0027_\u0027).upper())"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"            default \u003d opt.default"}],"source_content_type":"text/x-python","patch_set":1,"id":"7ac7a964_b053886b","line":149,"in_reply_to":"baada198_307e67e4","updated":"2014-08-14 00:23:27.000000000","message":"This can be handled within the individual clients. \n\nif we do parser.add_argument(\u0027--os_username\u0027, dest\u003d\u0027username\u0027, help\u003dargparse.SUPRESS) in the client code it will store to the same dest and work without us enforcing all these options on the clients that don\u0027t have it.","commit_id":"75b8c0b854967163dd0ae98c0197d8a3064358f6"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"d4637f1d32cd257294a8302bf2375d7319335ff8","unresolved":false,"context_lines":[{"line_number":152,"context_line":"            if default is None:"},{"line_number":153,"context_line":"                # the first ENV that is not None otherwise return None"},{"line_number":154,"context_line":"                env_vars \u003d (os.environ.get(e) for e in envs)"},{"line_number":155,"context_line":"                default \u003d six.next(six.moves.filter(None, env_vars), None)"},{"line_number":156,"context_line":""},{"line_number":157,"context_line":"            parser.add_argument(*args,"},{"line_number":158,"context_line":"                                default\u003ddefault,"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_33a2d6ae","line":155,"updated":"2014-08-19 14:13:38.000000000","message":"filter(None, i) doesn\u0027t work as described in the comment... it removes the falsy elements not the ones that are None (it also removes empty strings)","commit_id":"b368d2d676a8b726e0c22eccf9581e532f2eacca"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"228535098d29ad0bcadd5228ddbfd97643a84384","unresolved":false,"context_lines":[{"line_number":149,"context_line":"                envs.append(\u0027OS_%s\u0027 % o.name.replace(\u0027-\u0027, \u0027_\u0027).upper())"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"            default \u003d opt.default"},{"line_number":152,"context_line":"            if default is None:"},{"line_number":153,"context_line":"                # select the first ENV that is not false-y or return None"},{"line_number":154,"context_line":"                env_vars \u003d (os.environ.get(e) for e in envs)"},{"line_number":155,"context_line":"                default \u003d six.next(six.moves.filter(None, env_vars), None)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1abeadc6_1704cb13","line":152,"updated":"2014-08-20 00:44:40.000000000","message":"no test case for \u0027default\u0027?","commit_id":"c751526ae8192c87d940ab85a1bce198b19fdc9b"}],"keystoneclient/tests/auth/test_cli.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"d4637f1d32cd257294a8302bf2375d7319335ff8","unresolved":false,"context_lines":[{"line_number":29,"context_line":"    @classmethod"},{"line_number":30,"context_line":"    def get_options(cls):"},{"line_number":31,"context_line":"        return ["},{"line_number":32,"context_line":"            cfg.StrOpt(\u0027test1\u0027, help\u003d\u0027tester\u0027, deprecated_name\u003d\u0027test2\u0027)"},{"line_number":33,"context_line":"        ]"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_93b48ad2","line":32,"updated":"2014-08-19 14:13:38.000000000","message":"there should be options with - in the name to test the convertion to _.","commit_id":"b368d2d676a8b726e0c22eccf9581e532f2eacca"}]}
