[ANNOUNCE] nvmetcli v0.9

Daniel Wagner dwagner at suse.de
Wed Aug 19 04:57:43 PDT 2026


A new release of nvmetcli v0.9 is available.

 New features
  - NVMe passthru target support

    Configure passthru targets via configshell (Nilay Shroff)
 
  - Reservation configuration support

    Persistent reservation settings can be saved/restored (Guixin Liu)

  - DHCHAP attribute persistence

    Host DHCHAP authentication values (dhchap_*) are now correctly
    saved and restored under hosts/ (Hannes Reinecke)
    
  - discovery_nqn configfs attribute

    read/modify the persistent discovery NQN (Hannes Reinecke)

  - Non-interactive command execution

    nvmetcli can now run an arbitrary shell command directly from the
    command line instead of requiring the interactive shell
    (Maurizio Lombardi)

  Build & packaging
  - Migrated from setup.py to PEP 517/518 packaging (pyproject.toml)

  - Removed the python-kmod dependency; falls back to invoking the kmod
    binary directly when kmodpy is unavailable

  - Removed use of the six compatibility package (Python 2 support fully
    dropped) (Ales Novak)

  - Added a GitHub Actions CI workflow for build/test, plus linting
    (flake8, pylint) and mypy type-checking gates

  Code quality / maintenance
  - Added type annotations across nvmet/nvmetcli

  - Converted %-style string formatting to f-strings (Ales Novak)

  - Added docstrings to modules, classes, and methods (Ales Novak)

  - Tightened exception handling (narrower except clauses, proper raise
     ... from)
     
  - Reorganized imports and kernel-module loading logic (Ales Novak)
  
  - Tests now fall back to temporary sparse files as backing devices
    when real block devices aren't available
    
Naturally, right after cutting the release, I discovered a bug in the
Makefile for running tests on Debian. The fix is already in the tree if
you need it.

Daniel



More information about the Linux-nvme mailing list