nbdkit-release-notes-1.36(1)

πŸ¦‹ nbdkit-release-notes-1.36 πŸ’–

okay bestie, welcome to the NBDKIT release notes page for nbdkit 1.36 β€” yes, the manual is literally called nbdkit-release-notes-1.36, and yes, it's exactly as iconic as it sounds. sit down, grab a lil snack, we're going through everything. πŸ“


✨ NAME ✨

nbdkit-release-notes-1.36 β€” the release notes for nbdkit 1.36. that's it, that's the name, slay. πŸ’…


🌸 DESCRIPTION 🌸

These are the release notes for the nbdkit stable release 1.36, and they're describing the major changes since 1.34. glow-up era fr fr. 🫢

nbdkit 1.36.0 was released on 27 September 2023. mark your calendars, it's giving birthday energy. πŸŽ‚


πŸ”’ Security πŸ”’

No security issues were identified in this release. we love a clean vibe check. ✨

All past security issues, plus the info on how to report new ones, live in nbdkit-security(1). iykyk. πŸ›‘οΈ


🧩 Plugins 🧩

  • New nbdkit-ones-plugin(1) β€” makes a fully allocated disk containing all 0xff (all ones), or honestly any other byte of your choice. pick your fighter. πŸ‘‘
  • nbdkit-curl-plugin(1) now uses a curl "multi" interface. this enables much better performance, and also lets the curl plugin handle requests in parallel. multitasking queen behavior. πŸ’… the curl plugin now falls back to making a "GET" request to get the size of the remote file for certain servers which do not support "HEAD" requests. and it adds new options: "ipresolve" (force IPv4 or IPv6), "resolve" (force a particular IP address), -D curl.times=1 (print detailed timing stats), and -D curl.verbose.ids=1 (display connection and transfer IDs). so many lil treats. πŸŽ€
  • nbdkit-memory-plugin(1) now uses a read-write lock to protect internal structures, which results in improved performance for mostly read workloads. lowkey a glow-up. 🌈
  • nbdkit-data-plugin(1) now has more optimizations. more. optimizations. periodt. πŸ”₯
  • nbdkit-file-plugin(1) now supports 4k sector sizes on Windows (Brian Carnes). πŸͺŸ

🧚 Filters 🧚

  • New nbdkit-evil-filter(1) β€” adds random but consistent data corruption to the underlying plugin. chaotic but make it reproducible, honestly iconic. 😈
  • New nbdkit-qcow2dec-filter(1) β€” can decode qcow2 files (but not write to them). read-only girly. πŸ™ˆ
  • nbdkit-ip-filter(1) can now filter by client SELinux label.
  • nbdkit-partition-filter(1) now supports 4k sector sizes (Brian Carnes).
  • nbdkit-retry-request-filter(1) allows the "get_size" operation to be retried. second chances are a love language. πŸ’œ
  • nbdkit-tar-filter(1) adds a new "tar-limit" parameter, which can be used to make sure the filter does not read indefinite amounts of input when opening the tar file. boundaries, bestie. 🚧
  • Filters can now append their own output to nbdkit --dump-plugin output. main character filters fr. πŸ‘‘

πŸ¦€ Language bindings πŸ¦€

  • Rust bindings add support for "after_fork", "block_size", "nbdkit_debug", "nbdkit_is_tls", "nbdkit_parse_size", "nbdkit_parse_bool" and "nbdkit_parse_probability". the "open" method can now return an error β€” and heads up, this is not backwards compatible and requires a small source code change to Rust plugins. (Thanks Alan Somers) 🫢
  • nbdkit-ocaml-plugin(3) now supports OCaml 5.
  • OCaml bindings add support for "nbdkit_stdio_safe", "nbdkit_is_tls", "nbdkit_peer_name" and "nbdkit_peer_security_context".
  • nbdkit-perl-plugin(3) now supports Perl 5.38.
  • Shell script plugins (nbdkit-sh-plugin(3)) may now ignore stdin in their "pwrite" method, whereas previously it was required to read and discard stdin along error paths (thanks Eric Blake). growth. 🌱

πŸ–₯️ Server πŸ–₯️

  • When using the --run option, the default is now to use a private Unix domain socket (as if -U - was specified), whereas in nbdkit ≀ 1.34 the default was to open a TCP port. the new default reflects the most common and safest way to use the --run option. you can find out if nbdkit has the new behaviour by checking nbdkit --dump-config and looking for run_default_socket=Unix in the output. okay but the safest option being the default?? we love character development. πŸ’–
  • Debug strings containing control codes and other non-printable characters are now escaped properly. no more unhinged terminal chaos. πŸ’€
  • New flag -D nbdkit.environ=1 can be used to dump the server environment in debug output. spill the env, queen. β˜•

πŸ› οΈ API πŸ› οΈ

  • New "nbdkit_parse_probability" function β€” can be used to parse probabilities in various formats, like "10%" or "1:10". math girlies rise. πŸ“Š
  • New "nbdkit_peer_security_context" function β€” returns the security context (usually SELinux label) of the client. know your audience fr. πŸ‘€

πŸ› Bug fixes πŸ›

  • Fixed a long-standing double-free in nbdkit-file-plugin(1) when the client closes the connection during negotiation (thanks Eric Blake). that bug was lowkey ancient, rest in peace bestie. ⚰️
  • nbdkit-file-plugin now has improved error messages when you try to open a file with an empty name (""). no more cryptic nonsense. πŸ’…

πŸ“š Documentation πŸ“š

  • Miscellaneous documentation improvements for Windows (Brian Carnes).
  • Fuzzing instructions updated for Clang 17, AFL++ 4.08c.

πŸ§ͺ Tests πŸ§ͺ

  • Ongoing CI maintenance and fixes (Laszlo Ersek, Eric Blake). the grind never stops. β˜•
  • Many fixes in the test suite for MinGW and Wine.
  • Several internal consistency checks were added to the test suite, to ensure, for example, that we always use "requires_run" when the test uses the nbdkit --run option. accountability era. ✨

πŸ—οΈ Build πŸ—οΈ

  • Optionally "zlib-ng" can be used (instead of "zlib") for faster decompression in various places. speed. 🏎️
  • No longer link with msvcrt on Windows.
  • "awk" is a build requirement. it was implicitly required before (because it is needed by the "./configure" script generated by autoconf), but now the dependency is explicit (Eric Blake). making it official. πŸ’

πŸ”§ Internals πŸ”§

  • "podwrapper" has a new --replace parameter which makes it easier to use "AC_SUBST"-substitutions in documentation. quality of life upgrade, we stan. πŸŽ€

πŸ‘€ SEE ALSO πŸ‘€

nbdkit(1).


πŸ‘‘ AUTHORS πŸ‘‘

Authors of nbdkit 1.36 β€” the it-girls and it-thems of this release:

  • Alan Somers
  • Brian Carnes
  • Eric Blake
  • Laszlo Ersek
  • Richard W.M. Jones

Copyright Red Hat


πŸ“œ LICENSE πŸ“œ

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of Red Hat nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

and that's the whole thing bestie!! this page came from nbdkit 1.48.1 and is dated 2026-08-29 β€” go forth, read the notes, be the most informed girlie in the group chat. mwah. πŸ’‹βœ¨πŸŽ€

πŸ“¦ where this page comes from