TODO 6.79 KiB
 Note that items with (!) have high priority.
libsmartcols
------------
   - (!) add libscols_column->json_type and scols_column_set_jsontype()
     to generate proper JSON output. Now the library uses quotes (= all is
     string) for everything. See for example SIZE in "lsblk --json --bytes"
     output.
column
------
   - add option to NOT ignore empty lines
     https://github.com/karelzak/util-linux/issues/593
script
------
   - (!) add terminal type ($TERM), columns and lines to the header line, something like:
		Script started on 2018-03-05 13:02:08+0100 [term="xterm-256color", lines=53, columns=190]
     see https://github.com/karelzak/util-linux/issues/583
   - think about optional "event" records in timing file to save information
     about non-data changes like signals (SIGWINCH, SIGSTOP, SIGCONT, etc.)
     in format:
             <time> 0 <name>[: var=data, ...]
     for example:
	     0.001296 256
	     0.001297   0 SIGWINCH: columns=50, lines=20
	     0.000010 275
lsblk
-----
   The problem is NVMe-multipath driver where in /sys/.../slaves/ are nodes
   that should be probably hidden for userspace. Note that kernel developers
   promised to fix this issue in kernel *** so hold off from that for now***
   [Mar 1, 2018].
   Anyway, possible userspace solution is:
   - verify that slave/holder nodes points to the real block devices
     (/sys/dev/block/<maj:min> for the node exists), otherwise silently ignore
     the slave/holder node -- see set_cxt().
   - the same verification we necessary for nodes in /sys/block/<name>. It means
     verify result from sysfs_devname_to_devno() in set_cxt().
cleanup lib/path.c: [Karel Zak for v2.33]
------------------
   - always return rc from all functions
   - introduce control struct and use openat() from top-level path 
     (e.g. top-level is /proc, etc)
   - use lib/path.c as low-level API for lib/sysfs.c
   - now we duplicate code in functions like {path,sysfs}_read_u32, etc. 
   - it would be also nice to have a way how to redirect sysfs.c functions 
     to /sys snapshots (e.g. lsblk regression tests)
lscpu
-----
  - read cpuid and uname information from file if --sysroot is specified, then
    we can prepare regression tests completely independent on hw and architecture.
lsblk