introspection: format property values with g_variant_print()

The main case where this helps is byte strings. GVariant has a special
case for values of type 'ay' which end with a NUL byte and otherwise
contain only printable ASCII characters: it prints them in the form
b'asciistring'. UDisks and Flatpak (among others) use bytestrings of
this form extensively for file paths, which are not guaranteed to be
UTF-8 so cannot be represented as D-Bus type 's'.

This does have the downside that b'foo' is also valid Python but means
something different:

In [2]: GLib.Variant('ay', b'abc')
Out[2]: GLib.Variant('ay', [0x61, 0x62, 0x63])

In [3]: GLib.Variant('ay', b'abc\0')
Out[3]: GLib.Variant('ay', b'abc')
4 jobs for wjt/pretty-print-byte-strings in 3 minutes and 27 seconds (queued for 1 second)
latest
Status Job ID Name Coverage
  Test
failed #130688
fedora

00:02:52

passed #130689
flatpak

00:03:26

 
  Review
skipped #130690
review
skipped #130691
allowed to fail manual
stop_review
 
Name Stage Failure
failed
fedora Test
make[2]: *** [Makefile:686: check-am] Error 2
make[2]: Leaving directory '/builds/GNOME/d-feet/src/tests'
make[1]: *** [Makefile:435: check-recursive] Error 1
make[1]: Leaving directory '/builds/GNOME/d-feet/src'
make: *** [Makefile:381: check-recursive] Error 1
Uploading artifacts...
/builds/GNOME/d-feet/src/tests/test-suite.log: found 1 matching files
Uploading artifacts to coordinator... ok
id=130688 responseStatus=201 Created token=RPG3tybf
ERROR: Job failed: exit code 1