On Tue, Oct 31, 2023 at 09:42:10AM -0700, Andrea Bolognani wrote: > On Fri, Oct 27, 2023 at 07:33:30PM +0200, Victor Toso wrote: > > Hi, > > > > Daniel & Andrea, it would be great to have your take on the Go > > side of this series. If we can agree with an acceptable > > 'unstable' version of Go modules, we can start building on top of > > this: > > - libraries/tools in Go to interact with QEMU > > - qapi specs to fix limitations (e.g: Data type names) > > - scripts/qapi library wrt to generating interfaces in other > > languages other than C > > > > I would love to have this prior to 8.2 feature freeze if the > > idea and current code meet your expectations. > > Apologies for not providing any feedback so far. I'll do my best to > get around to it by the end of the week.
Layering apologies on top of apologies: I started looking into this, but I have since realized that I need some more time to page all the months-old context back in and digest the whole thing. I'll continue next week. As an appetizer, one thing that I've noticed: you seem to ignore it when gen:false is included in a command definition, so we get type DeviceAddCommand struct { MessageId string `json:"-"` Driver string `json:"driver"` Bus *string `json:"bus,omitempty"` Id *string `json:"id,omitempty"` } which I don't think will work as it can't handle even the example used to document the command { "execute": "device_add", "arguments": { "driver": "e1000", "id": "net1", "bus": "pci.0", "mac": "52:54:00:12:34:56" } } This command will probably require an ad-hoc implementation. -- Andrea Bolognani / Red Hat / Virtualization