
On Fri, Nov 27, 2020 at 15:53:16 +0000, Daniel Berrange wrote:
On Fri, Nov 27, 2020 at 01:18:09PM +0100, Peter Krempa wrote:
On Fri, Nov 27, 2020 at 14:45:12 +0300, Roman Bolshakov wrote:
[...]
IIUC, this all relies on us importing a dump of the latest QEMU capabilities into the libvirt test suite.
Most of the capabilities we import are the release version, but we also periodically import the git snapshot capabilities and will refresh them until GA of QEMU.
Could we arrange it so that libvirt only reports an error for use of deprecated interfaces when testing against the GA capabilities dump. If testing against QEMU git snapshot capabilities, we can emit a warning only.
That way, we'll have a grace period in which libvirt can see the warning from tests, and we would only need to add an override to silence it once we import the GA capabilities, at which time it is safe to implement the new solution too.
As I've noted in my reply to Markus, in many cases we develop features on top of unreleased qemu features. I don't really want to throw a spanner into that process. While deprecating old interfaces which are changed would lead to regression in behaviour rather than releasing a broken feature if changes are done in the API of a new feature the situation is slightly worse, but it's also a very rare occurence. I want to basically just an agreement that after such a thing is done libvirt will be notified. We'll still try to develop replacements sooner which can actually catch problems in the new features sooner than they are released in qemu.