)]}'
{"troveclient/base.py":[{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        cache_dir \u003d os.path.expanduser(os.path.join(base_dir, uniqifier))"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"        try:"},{"line_number":111,"context_line":"            os.makedirs(cache_dir, 0o755)"},{"line_number":112,"context_line":"        except OSError:"},{"line_number":113,"context_line":"            # NOTE(kiall): This is typicaly either permission denied while"},{"line_number":114,"context_line":"            #              attempting to create the directory, or the directory"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FzG0%3D","line":111,"updated":"2013-10-09 18:00:27.000000000","message":"is it typo?","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"}],"troveclient/common.py":[{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":20,"context_line":"import sys"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from troveclient import client"},{"line_number":23,"context_line":"#from troveclient.xml import TroveXmlClient"},{"line_number":24,"context_line":"from troveclient import exceptions"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"from urllib import quote"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FzFI%3D","line":23,"updated":"2013-10-09 18:00:27.000000000","message":"it using at line 219","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"}],"troveclient/v1/client.py":[{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":70,"context_line":"                    setattr(self, extension.name,"},{"line_number":71,"context_line":"                            extension.manager_class(self))"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"        self.client \u003d clientHTTPClient("},{"line_number":74,"context_line":"            username,"},{"line_number":75,"context_line":"            password,"},{"line_number":76,"context_line":"            project_id,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fy6U%3D","line":73,"updated":"2013-10-09 18:00:27.000000000","message":"should be client.HTTPClient","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"}],"troveclient/v1/shell.py":[{"author":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"change_message_id":"6a4785725cfe23e1792977ece6cb186cb628a685","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    return utils.find_resource(cs.backups, backup)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"# Flavor related calls"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"@utils.service_type(\u0027database\u0027)"},{"line_number":70,"context_line":"def do_list_flavors(cs, args):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fy4w%3D","line":67,"updated":"2013-10-09 17:55:51.000000000","message":"Can you make these a lot more visibly exaggerated? Seriously, maybe box it in with stars or caps?","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"},{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":133,"context_line":"           metavar\u003d\u0027\u003cavailability_zone\u003e\u0027,"},{"line_number":134,"context_line":"           default\u003dNone,"},{"line_number":135,"context_line":"           help\u003d\u0027The Zone hint to give to nova\u0027)"},{"line_number":136,"context_line":"@utils.service_type(\u0027database\u0027)"},{"line_number":137,"context_line":"def do_create(cs, args):"},{"line_number":138,"context_line":"    \"\"\"Add a new instance.\"\"\""},{"line_number":139,"context_line":"    volume \u003d None"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fy4M%3D","line":136,"updated":"2013-10-09 18:00:27.000000000","message":"trove create as_new 2 --users moorr --databases moodb44 --size 1\nERROR: Validation error: instance[\u0027databases\u0027] u\u0027moodb44\u0027 is not of type \u0027array\u0027; instance[\u0027users\u0027] u\u0027moorr\u0027 is not of type \u0027array\u0027","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"},{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    del(instance._info[\u0027links\u0027])"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    _print_instance(instance)"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"@utils.arg(\u0027instance\u0027,"},{"line_number":160,"context_line":"           metavar\u003d\u0027\u003cinstance\u003e\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fy4g%3D","line":157,"updated":"2013-10-09 18:00:27.000000000","message":"where is \"do_delete\" ?","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"},{"author":{"_account_id":8259,"name":"Andrey Shestakov","email":"ashestakov@mirantis.com","username":"ashestakov"},"change_message_id":"7d946d2916eed40c804bf069249d18e50ebd34da","unresolved":false,"context_lines":[{"line_number":247,"context_line":"           help\u003d\u0027Optional character set for database\u0027)"},{"line_number":248,"context_line":"@utils.arg(\u0027--collate\u0027, metavar\u003d\u0027\u003ccollate\u003e\u0027, default\u003dNone,"},{"line_number":249,"context_line":"           help\u003d\u0027Optional collation type for database\u0027)"},{"line_number":250,"context_line":"@utils.service_type(\u0027database\u0027)"},{"line_number":251,"context_line":"def do_create_database(cs, args):"},{"line_number":252,"context_line":"    \"\"\"Creates a database on an instance.\"\"\""},{"line_number":253,"context_line":"    database_dict \u003d {\u0027name\u0027: args.name}"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fy50%3D","line":250,"updated":"2013-10-09 18:00:27.000000000","message":"trove create-user --databases moo 86bb7492-d797-4562-b864-851c8fad7216 moo12 moo12\nusage: trove create-user [--host \u003chost\u003e]\n                         [--databases \u003cdatabases\u003e [\u003cdatabases\u003e ...]]\n                         \u003cinstance\u003e \u003cname\u003e \u003cpassword\u003e\nerror: too few arguments\nTry \u0027trove help create-user\u0027 for more information.\ntrove create-user 86bb7492-d797-4562-b864-851c8fad7216 moo12 moo12 --databases moo\nOK\noptional parameter \"databases\" should be after other parameters. maybe need update help info, it confusing","commit_id":"85c030d5d6d1113098a4add38813918a895a44e4"},{"author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"change_message_id":"5aa84168bdcefee7772f98d97ddcb04b096d8b8e","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    for instance in instances:"},{"line_number":92,"context_line":"        setattr(instance, \u0027flavor_id\u0027, instance.flavor[\u0027id\u0027])"},{"line_number":93,"context_line":"        setattr(instance, \u0027size\u0027, instance.volume[\u0027size\u0027])"},{"line_number":94,"context_line":"    utils.print_list(instances, [\u0027id\u0027, \u0027name\u0027, \u0027status\u0027, \u0027flavor_id\u0027, \u0027size\u0027])"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATH%2F%2Fxic%3D","line":93,"updated":"2013-10-10 01:48:06.000000000","message":"Can we check whether instance.volume exists before setting it, since volume support might not be depending on the trove service implementation?","commit_id":"e5b50e7cebaf52338e4c55065cb8dcf51ddfc4fc"},{"author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"change_message_id":"f188e4d914757ff840b197497d5c741ca0ca713a","unresolved":false,"context_lines":[{"line_number":158,"context_line":"                                   restorePoint\u003drestore_point,"},{"line_number":159,"context_line":"                                   availability_zone\u003dargs.availability_zone)"},{"line_number":160,"context_line":"    instance._info[\u0027flavor\u0027] \u003d instance.flavor[\u0027id\u0027]"},{"line_number":161,"context_line":"    instance._info[\u0027volume\u0027] \u003d instance.volume[\u0027size\u0027]"},{"line_number":162,"context_line":"    del(instance._info[\u0027links\u0027])"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    _print_instance(instance)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATH%2F%2Fxg4%3D","line":161,"updated":"2013-10-10 02:01:18.000000000","message":"Same issue here. (Check for instance.volume before using it).","commit_id":"e5b50e7cebaf52338e4c55065cb8dcf51ddfc4fc"}]}
