On 2/21/23 19:04, Daniel P. Berrangé wrote: > AFAIK, libnbd/nbdkit haven't made a statement about what platforms > they aim to target. In my response I'm more or less assuming though > that you would only care about similar modern platforms to QEMU/libvirt, > and thus POSIX conformance would not be needed in all areas. Maybe > libnbd/nbdkit want to be more explicit about what they target as > platforms to make the portability requirements clear to contributors ?
libnbd's README.md requires * Linux, FreeBSD or OpenBSD. Other OSes may also work but we have only tested these three. * GCC or Clang * GNU make * bash * [...] nbdkit's requires * Linux, macOS, Windows, FreeBSD, OpenBSD or Haiku * GCC or Clang * bash * GNU make * [...] To me, anything beyond Linux on those OS lists is entirely untestable *locally*, hence my reliance on POSIX. CI is a horrible way (compared to a published technical standard) to figure out whether each individual interface works as needed everywhere, even just across this small set of OSes. Having to look at multiple OS manual pages is just slightly less horrible (and I consider those less trustworthy than POSIX; see again the conflict between the linux man pages and the glibc documentation from GNU). The POSIX people have done *huge work* to save us that effort. Sticking with POSIX might make us work more (as in, write technically superfluous code), but I've always felt fewer nasty surprises are waiting to ambush us that way. I don't think we have documentation that describes the broadest intersection of these OSes specifically. (We don't even have conflict-free documentation just for Linux!) Laszlo _______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://listman.redhat.com/mailman/listinfo/libguestfs