)]}'
{"nova/compute/instance_types.py":[{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"89f8464ae2bda585aa5637a4c794cafe50ea5453","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        kwargs[\u0027flavorid\u0027] \u003d unicode(flavorid)"},{"line_number":130,"context_line":"        assert len(kwargs[\u0027flavorid\u0027]) \u003e 0"},{"line_number":131,"context_line":"    except AssertionError:"},{"line_number":132,"context_line":"        msg \u003d _(\"flavorid argument must not be empty\")"},{"line_number":133,"context_line":"        raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    # ensure is_public attribute is boolean"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F30Q%3D","line":132,"updated":"2013-03-08 01:43:31.000000000","message":"how about, \u0027flavorid required\u0027","commit_id":"9389db5e2a78822ac58cad8d5eb11c999f8436d6"}],"nova/tests/test_instance_types.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"bd2652d6d4fe41d812b2d036d8a552120bd19f95","unresolved":false,"context_lines":[{"line_number":275,"context_line":"        name \u003d \u0027Empty String ID Flavor\u0027"},{"line_number":276,"context_line":"        flavorid \u003d \u0027\u0027"},{"line_number":277,"context_line":"        self.assertRaises(exception.InvalidInput, instance_types.create,"},{"line_number":278,"context_line":"                name, 256, 1, 120, 100, flavorid)"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"    def test_will_not_destroy_with_no_name(self):"},{"line_number":281,"context_line":"        # Ensure destroy said path of no name raises error."}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F5Mk%3D","line":278,"updated":"2013-03-07 10:21:02.000000000","message":"Would auto assigning the flavour *id* be better? It seems like that would be nicer to use. Perhaps we do that already and \u0027\u0027 is treated as an override rather than \u0027please autoselect\u0027 ? \n\nMy suggestion is to treat an empty string as not supplied and autogenerate an ID.","commit_id":"9389db5e2a78822ac58cad8d5eb11c999f8436d6"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"89f8464ae2bda585aa5637a4c794cafe50ea5453","unresolved":false,"context_lines":[{"line_number":275,"context_line":"        name \u003d \u0027Empty String ID Flavor\u0027"},{"line_number":276,"context_line":"        flavorid \u003d \u0027\u0027"},{"line_number":277,"context_line":"        self.assertRaises(exception.InvalidInput, instance_types.create,"},{"line_number":278,"context_line":"                name, 256, 1, 120, 100, flavorid)"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"    def test_will_not_destroy_with_no_name(self):"},{"line_number":281,"context_line":"        # Ensure destroy said path of no name raises error."}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F30g%3D","line":278,"in_reply_to":"AAAAN3%2F%2F4%2BY%3D","updated":"2013-03-08 01:43:31.000000000","message":"I agree with lifeless, about auto-generating the flavorid.  flavor names can also be used, so a user may not care about the flavor-id at all.","commit_id":"9389db5e2a78822ac58cad8d5eb11c999f8436d6"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"56c743b82ef3cee9a041611a3b89427ade3a1833","unresolved":false,"context_lines":[{"line_number":275,"context_line":"        name \u003d \u0027Empty String ID Flavor\u0027"},{"line_number":276,"context_line":"        flavorid \u003d \u0027\u0027"},{"line_number":277,"context_line":"        self.assertRaises(exception.InvalidInput, instance_types.create,"},{"line_number":278,"context_line":"                name, 256, 1, 120, 100, flavorid)"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"    def test_will_not_destroy_with_no_name(self):"},{"line_number":281,"context_line":"        # Ensure destroy said path of no name raises error."}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F4%2BY%3D","line":278,"in_reply_to":"AAAAN3%2F%2F5Mk%3D","updated":"2013-03-07 14:34:49.000000000","message":"since we use flavor_id to refer to the flavor, I don\u0027t like the idea, even though we get a response that information.","commit_id":"9389db5e2a78822ac58cad8d5eb11c999f8436d6"},{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"12ef288c4a805111c86f4c255ac1890a3c0abc7a","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        name \u003d \u0027Empty String ID Flavor\u0027"},{"line_number":128,"context_line":"        flavorid \u003d \u0027\u0027"},{"line_number":129,"context_line":"        inst_type \u003d instance_types.create(name, 256, 1, 120, 100, flavorid)"},{"line_number":130,"context_line":"        self.assertNotEqual(inst_type[\u0027flavorid\u0027], \u0027\u0027)"},{"line_number":131,"context_line":"        self.assertEqual(inst_type[\u0027name\u0027], name)"},{"line_number":132,"context_line":"        self.assertEqual(inst_type[\u0027memory_mb\u0027], 256)"},{"line_number":133,"context_line":"        self.assertEqual(inst_type[\u0027vcpus\u0027], 1)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F3Pk%3D","line":130,"updated":"2013-03-08 11:55:52.000000000","message":"Can you please check the size of the string here instead of comparing it to empty? (if inst_type[\u0027flavorid\u0027] is set to None, the test still passes)","commit_id":"f9c942716f9a0ce78feb18fdf9a64ed2d772f21d"}]}
