)]}'
{"nova/compute/api.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bfd7717ce501aa2141b882879a80954198d90336","unresolved":false,"context_lines":[{"line_number":341,"context_line":"            # NOTE(sdague): default is handled special"},{"line_number":342,"context_line":"            if secgroup \u003d\u003d \"default\":"},{"line_number":343,"context_line":"                continue"},{"line_number":344,"context_line":"            if not self.db.security_group_exists(context,"},{"line_number":345,"context_line":"                                                   context.project_id,"},{"line_number":346,"context_line":"                                                   secgroup):"},{"line_number":347,"context_line":"                raise exception.SecurityGroupNotFoundForProject("}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAANH%2F%2F%2BY8%3D","line":344,"updated":"2013-02-28 21:34:36.000000000","message":"I think this should be using self.security_group_api like everything else here, instead of going to the database directly, no?","commit_id":"c455c110028d5498bd39245de9181b1979257ce8"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bfd7717ce501aa2141b882879a80954198d90336","unresolved":false,"context_lines":[{"line_number":343,"context_line":"                continue"},{"line_number":344,"context_line":"            if not self.db.security_group_exists(context,"},{"line_number":345,"context_line":"                                                   context.project_id,"},{"line_number":346,"context_line":"                                                   secgroup):"},{"line_number":347,"context_line":"                raise exception.SecurityGroupNotFoundForProject("},{"line_number":348,"context_line":"                    project_id\u003dcontext.project_id, security_group_id\u003dsecgroup)"},{"line_number":349,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAANH%2F%2F%2BZU%3D","line":346,"updated":"2013-02-28 21:34:36.000000000","message":"Bad indents here.","commit_id":"c455c110028d5498bd39245de9181b1979257ce8"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bfd7717ce501aa2141b882879a80954198d90336","unresolved":false,"context_lines":[{"line_number":476,"context_line":"        if not metadata:"},{"line_number":477,"context_line":"            metadata \u003d {}"},{"line_number":478,"context_line":"        if not security_groups:"},{"line_number":479,"context_line":"            security_groups \u003d [\u0027default\u0027]"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        if not instance_type:"},{"line_number":482,"context_line":"            instance_type \u003d instance_types.get_default_instance_type()"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAANH%2F%2F%2BYs%3D","line":479,"updated":"2013-02-28 21:34:36.000000000","message":"This certainly seems like a necessary change. However, if this actually needs to change, why isn\u0027t this blowing up everywhere we don\u0027t specify a security group? Did you find something that explains it?","commit_id":"c455c110028d5498bd39245de9181b1979257ce8"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ad5e5c4704fd2eb67d04d79e60b4fa6186406020","unresolved":false,"context_lines":[{"line_number":474,"context_line":"        if not metadata:"},{"line_number":475,"context_line":"            metadata \u003d {}"},{"line_number":476,"context_line":"        if not security_groups:"},{"line_number":477,"context_line":"            security_groups \u003d [\u0027default\u0027]"},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"        if not instance_type:"},{"line_number":480,"context_line":"            instance_type \u003d instance_types.get_default_instance_type()"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAANH%2F%2F9Ok%3D","line":477,"updated":"2013-03-01 16:28:11.000000000","message":"I really think this ought to have a test to verify this new behavior, in test_compute, near the ones like \"test_create_instance_defaults_display_name()\"","commit_id":"954bed135e3be9d746d8b586245b12b8e60da630"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"e81271a14314cc375cf93e1052c087c945beef6f","unresolved":false,"context_lines":[{"line_number":641,"context_line":"            \u0027instance_type\u0027: instance_type,"},{"line_number":642,"context_line":"            \u0027instance_uuids\u0027: instance_uuids,"},{"line_number":643,"context_line":"            \u0027block_device_mapping\u0027: block_device_mapping,"},{"line_number":644,"context_line":"            \u0027security_group\u0027: security_groups,"},{"line_number":645,"context_line":"        }"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":"        return (instances, request_spec, filter_properties)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAANH%2F%2F9Ww%3D","line":644,"updated":"2013-03-01 15:24:54.000000000","message":"Any reason for not updating the key to be plural as well, or just a big rabbit hole?","commit_id":"954bed135e3be9d746d8b586245b12b8e60da630"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"48dbf4e51db4eaee92171e71f87fcd44b19596ad","unresolved":false,"context_lines":[{"line_number":641,"context_line":"            \u0027instance_type\u0027: instance_type,"},{"line_number":642,"context_line":"            \u0027instance_uuids\u0027: instance_uuids,"},{"line_number":643,"context_line":"            \u0027block_device_mapping\u0027: block_device_mapping,"},{"line_number":644,"context_line":"            \u0027security_group\u0027: security_groups,"},{"line_number":645,"context_line":"        }"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":"        return (instances, request_spec, filter_properties)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAANH%2F%2F9QU%3D","line":644,"in_reply_to":"AAAANH%2F%2F9UU%3D","updated":"2013-03-01 16:11:14.000000000","message":"Fair enough.  Might be worth having a low hanging fruit bug for someone to tackle.","commit_id":"954bed135e3be9d746d8b586245b12b8e60da630"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"45b2fc1c1264c73ad53eeaba196e05fbd8c8aaf2","unresolved":false,"context_lines":[{"line_number":641,"context_line":"            \u0027instance_type\u0027: instance_type,"},{"line_number":642,"context_line":"            \u0027instance_uuids\u0027: instance_uuids,"},{"line_number":643,"context_line":"            \u0027block_device_mapping\u0027: block_device_mapping,"},{"line_number":644,"context_line":"            \u0027security_group\u0027: security_groups,"},{"line_number":645,"context_line":"        }"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":"        return (instances, request_spec, filter_properties)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAANH%2F%2F9UU%3D","line":644,"in_reply_to":"AAAANH%2F%2F9Ww%3D","updated":"2013-03-01 15:47:00.000000000","message":"rabbit hole. It would require updating it through a whole lot of plumbing.","commit_id":"954bed135e3be9d746d8b586245b12b8e60da630"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"b6344f6cf5f3c08172d86d2c204e98c94bdbf3d4","unresolved":false,"context_lines":[{"line_number":872,"context_line":"            base_image_ref \u003d base_options[\u0027image_ref\u0027]"},{"line_number":873,"context_line":""},{"line_number":874,"context_line":"        instance[\u0027system_metadata\u0027][\u0027image_base_image_ref\u0027] \u003d base_image_ref"},{"line_number":875,"context_line":"        instance[\u0027security_groups\u0027] \u003d security_groups"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        return instance"},{"line_number":878,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"AAAANH%2F%2F8wE%3D","line":875,"updated":"2013-03-01 20:37:03.000000000","message":"So why not still use the API since we have one?","commit_id":"11d654f4894f0311eece35f27249f763872b9332"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"c20a6ec2c40683666413788087abac61c489d69e","unresolved":false,"context_lines":[{"line_number":872,"context_line":"            base_image_ref \u003d base_options[\u0027image_ref\u0027]"},{"line_number":873,"context_line":""},{"line_number":874,"context_line":"        instance[\u0027system_metadata\u0027][\u0027image_base_image_ref\u0027] \u003d base_image_ref"},{"line_number":875,"context_line":"        instance[\u0027security_groups\u0027] \u003d security_groups"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        return instance"},{"line_number":878,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"AAAANH%2F%2F8vc%3D","line":875,"in_reply_to":"AAAANH%2F%2F8wE%3D","updated":"2013-03-01 20:39:11.000000000","message":"Nevermind, the API was removed too.  oops.","commit_id":"11d654f4894f0311eece35f27249f763872b9332"}],"nova/tests/api/openstack/compute/test_servers.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ad5e5c4704fd2eb67d04d79e60b4fa6186406020","unresolved":false,"context_lines":[{"line_number":2134,"context_line":"            return old_create(*args, **kwargs)"},{"line_number":2135,"context_line":""},{"line_number":2136,"context_line":"        self.stubs.Set(compute_api.API, \u0027_check_requested_secgroups\u0027,"},{"line_number":2137,"context_line":"                       _check_requested_secgroups)"},{"line_number":2138,"context_line":"        self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":2139,"context_line":"        self._test_create_extra(params)"},{"line_number":2140,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAANH%2F%2F9PM%3D","line":2137,"updated":"2013-03-01 16:28:11.000000000","message":"Stubbing this out doesn\u0027t actually test the new code you added, but if you stubbed out security_group_api.get() it would. Better, yes?","commit_id":"954bed135e3be9d746d8b586245b12b8e60da630"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"e6f9ad0c11d5a57126408332290490f9dce7b49d","unresolved":false,"context_lines":[{"line_number":2134,"context_line":"            return old_create(*args, **kwargs)"},{"line_number":2135,"context_line":""},{"line_number":2136,"context_line":"        self.stubs.Set(compute_api.API, \u0027_check_requested_secgroups\u0027,"},{"line_number":2137,"context_line":"                       _check_requested_secgroups)"},{"line_number":2138,"context_line":"        self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":2139,"context_line":"        self._test_create_extra(params)"},{"line_number":2140,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAANH%2F%2F83E%3D","line":2137,"updated":"2013-03-01 19:20:10.000000000","message":"I\u0027m not +2 on this until you test the new code that you added :)","commit_id":"9c7e4de705fe1e9e42fb8ec3a15f453c64f30793"}]}
