[libvirt] [libvirt-go PATCH 0/3] Introduce recent DomainSnapshotXML and DomainSaveImageXML flags

Erik Skultety eskultet at redhat.com
Mon Feb 25 11:09:41 UTC 2019


On Fri, Feb 22, 2019 at 04:43:25PM +0000, Daniel P. Berrangé wrote:
> On Fri, Feb 22, 2019 at 04:32:27PM +0100, Erik Skultety wrote:
> > Unfortunately, in order to support the new flags, the last patch introduces an
> > API breakage as the convention we use for the bindings is to also enforce types
> > for flags.
>
> Yes, unfortunately this need to break ABI is fallout resulting from
> my decision to make the Go bindings do stricter enum validation that
> we have had at the C level.

How would this affect the ABI? Both the old and the new enum have the same int
value 0x01, with the only difference that you could have fed a few more enums
into the API even though we documented that they were unsupported for that
usage.

>
> On balance I think that is still the right tradeoff to have stronger
> type checking as it catches real errors in app code.
>
> Due to the widespread use of "vendoring" in the Go community where
> apps fixate on specific git commit hashes of their dependandancies,
> the fallout is more limited and will mostly only impact devs at the
> time they decide to explicitly sync to newer git.
>
> So for all three
>
> Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>

Pushed.

Thanks,
Erik




More information about the libvir-list mailing list