On Tue, Nov 03, 2015 at 06:40:32AM -0700, Eric Blake wrote: > On 11/03/2015 06:19 AM, Luiz Capitulino wrote: > > On Tue, 03 Nov 2015 08:17:58 +0100 > > Markus Armbruster <arm...@redhat.com> wrote: > > > >>> So at this point, I want to see if lloyd makes any progress towards an > >>> actual yajl release and/or adding a co-maintainer, before even trying to > >>> get formal upstream support for single quoting. We could always create > >>> a git submodule with our own choice of fork (since there are already > >>> forks that do single-quote parsing) - but the mantra of 'upstream first' > >>> has a lot of merit (I'm reluctant to fork without good reason). > >> > >> The value proposition of replacing our flawed JSON parser isn't in > >> saving big on maintenance, it's in not having to find and fix its flaws. > >> > >> If the replacement needs a lot of work to fit our needs, the value > >> proposition becomes negative. > >> > >> A JSON parser shouldn't require much maintenance, as JSON is simple, > >> doesn't change, and parsing has few system dependencies. > > > > Let me suggest this crazy idea: have you guys considered breaking > > compatibility? > > As in, requiring QMP clients to send "quotes" rather than 'quotes'? > It's worth considering (we already guarantee that our output is strict > JSON, and that the 'quotes' on input is merely for convenience). If we > want to go that route, than 2.5 should document loudly that we are > deprecating 'quotes' in QMP, so that 2.6 can actually remove it when > switching to yajl. And as single quotes appears to be the only JSON > extension we have been relying on, I think that would indeed free us > from having to wait for a yajl release or carry our own yajl fork.
FWIW, I think it is not unreasonable to consider dropping support for 'quotes' on the basis that I'd expect the overwhealming majority of apps that talk to QMP are probably using a JSON library rather than home-grown JSON code. As such I'd be surprised if any non-trivial app is actually using 'quotes' instead of "quotes", as JSON libraries will be compliant with the spec rather than using QEMU's extension for this. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|