[Libguestfs] Plan for nbdkit 1.12

Richard W.M. Jones rjones at redhat.com
Tue Apr 2 13:32:35 UTC 2019


I've just uploaded the development version 1.11.12:
http://download.libguestfs.org/nbdkit/1.11-development/

Please try it out because it's hopefully close to the next stable
release, 1.12.

Below are some preliminary release notes.  If there's anything else
that I've missed and should go into this version then let me know.

Rich.

======================================================================

New linuxdisk plugin lets you create complete ext2, ext3 or ext4
filesystems in a GPT partitioned disk image, from a local directory.
This can be attached to existing Linux VMs or used to create new ones
from scratch.

New ssh plugin which lets you turn any disk image on a remote Unix
server accessible by ssh into an NBD source.

New rate filter for bandwidth-limiting connections.  Either single
connections or the whole server can be bandwidth-limited, and the
limit can be dynamically changed at runtime.

New readahead filter improves performance when reading sequentially
from plugins with a high request overhead like curl.

Plugins can now be written in the Rust programming language.

The old xz plugin has been removed.  Use ‘nbdkit --filter=xz file file.xz’
as a replacement.

NBD_CMD_BLOCK_STATUS has been implemented allowing clients to query
which parts of the disk are allocated, holes or zeroes.  Plugins and
filters have been extended to supply this information in many cases.
This required adding minimal support for NBD protocol Structured
Replies, NBD_CMD_FLAG_REQ_ONE and NBD_CMD_FLAG_DF.  (Thanks to Eric
Blake for extensive help with this one.)

The line "All rights reserved." was removed from the license with
agreement from all contributors.  Note this does not change the
license.

nbdkit_error errors are printed in red when writing to the terminal,
making them much easier to see.

nbdkit_parse_size rejects negative values, eg. ‘nbdkit memory size=-100’
(Nikolay Ivanets).

The curl plugin now supports cookies, making it broadly feature
equivalent to the qemu curl block driver.

The partitioning plugin can now create MBR logical partitions.
Previously it only supported 4 MBR primary partitions and if you
wanted more than that you had to use GPT.

The partition filter also supports MBR logical partitions.

The python plugin creates plugins which are compatible with Python >= 3.7.

Tests are now run under MALLOC_CHECK=1 and MALLOC_PERTURB_=<random>.
This causes some tests to crash (silently) because of a shutdown race
which needs to be fixed.

Test shell scripts now have a generic ‘requires’ function to skip
tests if features are not present.

C99 type ‘bool’ is now used in most places where appropriate.

The protocol and connections code in the server has been split up
because the single file had grown very large.




-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines.  Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top




More information about the Libguestfs mailing list