Thanks, I have reviewed the updated patch. It mostly looked good, but there were still some issues which I have fixed myself:
1. responseCls attribute belongs to the Connection class and NOT driver class.
2. DNS_PARAMS_HOSTVIRTUAL = ('key') - missing a comma, comma makes a tuple.
3. You have used the same response class (HostVirtualResponse) in the compute and DNS driver and referenced DNS API specific exceptions inside the compute driver. This is a bad practice in many way (code reuse, APIs shouldn't be tighly coupled, etc.).
I have moved common functionality into a separate module (libcloud.common.hostvirtual.
) and created a HostVirtualDNSResponse sub-class inside libcloud.dns.drivers.hostvirtual which throws DNS related exceptions.
I have also merged patch into trunk now. Please have a look at the diff and the changes I made - http://svn.apache.org/viewvc?view=revision&revision=r1421073