
Util-linux 2.24 Release Notes
=============================

This is the last release where the old non-libmount mount(8) implementation
is supported and maintained.

Release highlights
------------------

fdisk(8):
 - the code has been completely refactored and moved to libfdisk
   (the library does not have a stable API yet)
 - user interface has been unified for all label types and it supports colors
 - GPT disk UUID, partition UUID and partition name modification is supported now

pylibmount:
 - this new library provides PYTHON BINDINGS for libmount;
   use --with-python[=2|3] to enable the bindings

last(1) and lastb(1):
 - the NEW IMPLEMENTATION has been merged from sysvinit to util-linux and
   extended; now it supports command line options --present, --since, and
   --time-format
 - use --enable-deprecated-last to enable the old util-linux last(1) implementation

swapon(8):
 - the option --discard= and fstab mount option discard= allow to explicitly
   specify 'pages' or 'once' discard policy. If no policy is selected, the
   default behavior is to enable both. See swapon.8 man page for more details.

libblkid and blkid(8):
 - supports LOGUUID= for external logs (e.g. extN and XFS)
 - generates a pseudo PARTUUID= for MBR partitions (based on MBR Id, Linux kernel
   supports the same concept for root= command line option)

agetty(8):
 - supportes new issue file \S escape code to read information from /etc/os-release
 - the option -L allows to completely control CLOCAL flag

dmesg(1):
 - supports new command line option --time-format to specify time format
 - supports new iso-8601 time format

hexdump(1):
 - supports long options now

wall(1):
 - the command is compatible with sysvinit implementation now

logger(1):
 - supports new command line option --prio-prefix when logging stdin

lscpu(1):
 - allows to detect more hypervisor types and provides info about Max
   and Min CPU Mhz

unshare(8):
 - supports new command line options --fork and --mount-proc for
   pid namespaces

wipefs(8):
  - now wipes superblocks with incorrect checksums too
  - supports new command line option --backup to backup erased data to
    $HOME/wipefs-<devname>-<offset>.bak

nologin(8):
  - this command has been merged into util-linux, the command politely
    refuses a login.


Stable maintenance releases between v2.23 and v2.24
---------------------------------------------------

util-linux 2.22.1 [Jun 31 2013]

 * ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23.1-ReleaseNotes
   ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23.1-ChangeLog

util-linux 2.23.2 [May 28 2013]

 * ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23.2-ReleaseNotes
   ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23.2-ChangeLog


Changes between v2.23 and v2.24
-------------------------------

 For more details see ChangeLog files at:
 ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.24/

agetty:
   - -L accepts optional argument  [Karel Zak]
   - add \S to output /etc/os-release data  [Karel Zak]
   - add baud rates available from glibc that are not already supported  [James Buren]
   - allow full control on CLOCAL flag  [Karel Zak]
   - check writing to a file was successful  [Sami Kerola]
   - cleanup debug ifdefs  [Karel Zak]
   - don't remove ECHOCTL from c_lflag  [Karel Zak]
   - fix a kill/erase error in man page and improve clarity  [Benno Schulenberg]
   - fix memory leak [clang-analyzer]  [Sami Kerola]
   - improve wording, grammar and some formatting in man page  [Benno Schulenberg]
   - only use EXTA/EXTB macros if B19200/B38400 macros are not present  [James Buren]
   - update man page and usage()  [Karel Zak]
   - use O_NONBLOCK only for serial lines with CLOCAL  [Karel Zak]
   - use standard angular brackets in usage message  [Benno Schulenberg]
   - unrecognized option '--loginpause'"  [kernc]
bash-completion:
   - add mount and umount  [Sami Kerola]
   - fix typos in mkfs.bfs logic  [Mike Frysinger]
   - use '\n' as IFS when ask for filenames  [Karel Zak]
blkdiscard:
   - use fstat() rather than stat() [coverity scan]  [Karel Zak]
blkid:
   - export ID_PART_TABLE_UUID  [Karel Zak]
   - fix typo in ID_FS_AMBIVALEN=  [Karel Zak]
blkid, hwclock, ldattach:
   - use program_invocation_short_name  [Sami Kerola]
blockdev:
   - Remove the --setbsz (set blocksize) option which has never worked.  [Richard W.M. Jones]
   - add note about --setbsz usability  [Karel Zak]
build-sys:
   - Check for type sighandler_t and use if present  [Michael Forney]
   - Fix check for __GNU_LIBRARY__  [Michael Forney]
   - Use _POSIX_VERSION to determine support for %m  [Michael Forney]
   - add *vim and clang_complete to gitignore  [Karel Zak]
   - add --disable-setterm  [Karel Zak]
   - add CFLAGS and LDFLAGS for daemons and shared libs  [Karel Zak]
   - add pylibmount  [Karel Zak]
   - add pylibmount __init__.py EXTRA_DIST  [Karel Zak]
   - always check for setns() and unshare() libs functions  [Karel Zak]
   - complete elvtune removal  [Sami Kerola]
   - enable mesg(1) by default  [Karel Zak]
   - fix ${prefix} usage, be more verbose about py paths  [Karel Zak]
   - fix include Makemodule.am  [Karel Zak]
   - fix last stuff  [Karel Zak]
   - fix lastb symlink  [Karel Zak]
   - fix static builds  [Karel Zak]
   - fix tinfo congitional  [Karel Zak]
   - fix {lib,sbin}dir paths  [Karel Zak]
   - improbe UL_CONFLICT_BUILD macro  [Karel Zak]
   - install pylibmount into  [Karel Zak]
   - install to the correct python dirs  [Karel Zak]
   - move getopt examples to docdir  [Karel Zak]
   - one install dir for all pylibmount stuff  [Karel Zak]
   - prefer AS_CASE rather than shell 'case'  [Sami Kerola]
   - prefer AS_IF rather than shell 'if'  [Sami Kerola]
   - pylibmount will not work when python3 is present  [Sami Kerola]
   - release++ (v2.24-rc1)  [Karel Zak]
   - release++ (v2.24-rc2)  [Karel Zak]
   - remove deprecated elvtune command  [Karel Zak]
   - remove unnecessary environment variable  [Sami Kerola]
   - simplify python detection  [Sami Kerola]
   - support --with-python[={2,3}]  [Karel Zak]
   - use -Wno-clobbered for some BSD crap  [Karel Zak]
   - use backticks rather than $() for commands in configure  [Sami Kerola]
   - use m4 quoting consistently  [Sami Kerola]
   - use tinfo *or* ncurses for more(1), ul(1) and setterm(1)  [Karel Zak]
cal:
   - add --color to usage()  [Sami Kerola]
   - clean up use of constants  [Sami Kerola]
   - convert function like definitions to functions  [Sami Kerola]
   - de-duplicate julian specific functions  [Sami Kerola]
   - fix -y output for UTF8  [Karel Zak]
   - fix compiler warning on systems without term libs  [Karel Zak]
   - fix few type mismatches  [Sami Kerola]
   - fix gettext warning  [Karel Zak]
   - fix preprocessor directive indendation  [Sami Kerola]
   - fix warning when compiled --without-ncurses  [Karel Zak]
   - improve coding style  [Karel Zak]
   - improve the help text and man page  [Pádraig Brady]
   - mark all functions static  [Sami Kerola]
   - remove arbitrary limit of maxium year being 9999  [Sami Kerola]
   - remove unnecessary initializations  [Sami Kerola]
   - set statically defined data read-only  [Sami Kerola]
   - simplify calendar reformat calculations  [Sami Kerola]
   - simplify colormode parsing  [Karel Zak]
   - simplify day_in_week() calculation  [Sami Kerola]
   - stop trimming whitespaces  [Sami Kerola]
   - support --color[={auto,always,never}]  [Sami Kerola]
   - use Claus Tøndering's day of the week algorithm  [Sami Kerola]
cfdisk:
   - add long options to the command  [Sami Kerola]
   - check writing to a file descriptor was successful  [Sami Kerola]
   - check writing to a file was successful  [Sami Kerola]
   - fix ambiguous code  [Karel Zak]
chcpu:
   - clean up error messages  [Karel Zak]
chfn:
   - assigned value is never read [clang-analyzer]  [Sami Kerola]
column:
   - dereference of null pointer [clang-analyzer]  [Sami Kerola]
   - use variable length printf field width to wprint blanks  [Sami Kerola]
cytune:
   - fix glush typo in cytune  [Rafael Ferreira]
dmesg:
   - add --time-format option  [Sami Kerola]
   - add iso-8601 time format  [Sami Kerola]
   - convert time format bitfield to enum  [Sami Kerola]
   - define is_timefmt() macro only once  [Karel Zak]
   - don't use pager for --follow  [Karel Zak]
   - fix --human color initialization  [Karel Zak]
   - fix usage() typo  [Sami Kerola]
   - inform user --show-delta and iso8601 time format does not mix  [Sami Kerola]
   - make time stamps to be printed consistently  [Sami Kerola]
   - regroup time related options close to each other  [Sami Kerola]
   - support --color[={auto,always,never}]  [Karel Zak]
docs:
   - add --present to last(1) manual page  [Sami Kerola]
   - add --since and time option formats to last(1) manual  [Sami Kerola]
   - add --time-format option and ISO-8601 format to manual  [Sami Kerola]
   - add --time-format to last(1) manual page  [Sami Kerola]
   - add long options to last.1 manual page  [Sami Kerola]
   - add lscpu max mhz to manual and bash completion  [Sami Kerola]
   - add missing options to sfdisk manual  [Sami Kerola]
   - add note to wall(1) about sessions which will not get message  [Sami Kerola]
   - add v2.24-ReleaseNotes  [Karel Zak]
   - be clear which last(1) is deprecated  [Sami Kerola]
   - cal  add --color option description to manual page  [Sami Kerola]
   - cal  stop telling year 9999 is upper limit  [Sami Kerola]
   - correct sfdisk --activate instructions  [Sami Kerola]
   - fix wording and formatting of man page for dmesg  [Benno Schulenberg]
   - format, grammarize, and standardize the wall man page  [Benno Schulenberg]
   - improve a bit the wording on the logger man page  [Benno Schulenberg]
   - improve formatting and wording of man pages for fdisk and cfdisk  [Benno Schulenberg]
   - improve formatting and wording of the getopt man page  [Benno Schulenberg]
   - improve grammar and consistency of comments in login.c  [Benno Schulenberg]
   - improve grammar and wording of the release-schedule text  [Benno Schulenberg]
   - improve grammar, wording and formatting of su man page  [Benno Schulenberg]
   - make description of --activate clearer on man page of sfdisk  [Benno Schulenberg]
   - mention in ReleaseNotes only PO files that were actually updated  [Benno Schulenberg]
   - normalize the formatting of man pages for nsenter and unshare  [Benno Schulenberg]
   - note ddate removal  [Mike Frysinger]
   - slightly correct the man page of column  [Benno Schulenberg]
   - sort options in last man page alphabetically  [Benno Schulenberg]
   - sort the options in the logger man page alphabetically  [Benno Schulenberg]
   - standardize the phrases for --help and --version in all man pages  [Benno Schulenberg]
   - tweak formatting and grammar of the ipcrm man page  [Benno Schulenberg]
   - tweak the grammar of an agetty man-page fragment  [Benno Schulenberg]
   - tweak wording and formatting of last man page  [Benno Schulenberg]
   - tweak wording and formatting of unshare and nsenter man pages  [Benno Schulenberg]
   - tweak wording, grammar and formatting of fdisk man page  [Benno Schulenberg]
   - update AUTHORS file  [Karel Zak]
   - update TODO  [Karel Zak]
   - update TODO  [Sami Kerola]
   - update v2.24-ReleaseNotes  [Karel Zak]
eject:
   - Check host_status and driver_status when using SG_IO.  [Karel Zak]
   - assigned value is never read [clang-analyzer]  [Sami Kerola]
   - unlock door before issuing CDROMEJECT command  [Aaron Lu]
exec_shell:
   - add a license and touch up func def  [Mike Frysinger]
fallocate:
   - check writing to a file descriptor was successful  [Sami Kerola]
fdformat:
   - check writing to a file descriptor was successful  [Sami Kerola]
fdisk:
   - (bsd) *OSF --> *BSD  [Karel Zak]
   - (bsd) add bsd_get_partition_status()  [Karel Zak]
   - (bsd) clean up BSD_LABEL* macros  [Karel Zak]
   - (bsd) clean up header file  [Karel Zak]
   - (bsd) cleanup bootstrap install code  [Karel Zak]
   - (bsd) cleanup driver initialization  [Karel Zak]
   - (bsd) cleanup label initialization  [Karel Zak]
   - (bsd) coding style, remove unnecessary #ifdef  [Karel Zak]
   - (bsd) final code clean up  [Karel Zak]
   - (bsd) fix add/link partition  [Karel Zak]
   - (bsd) implement regular bsd menu callback  [Karel Zak]
   - (bsd) minor code clean up  [Karel Zak]
   - (bsd) move bsdbuffer to fdisk_bsd_label struct  [Karel Zak]
   - (bsd) move global label variables to fdisk_bsd_label struct  [Karel Zak]
   - (bsd) remove dead code  [Karel Zak]
   - (bsd) remove generic actions from bsd_command_prompt()  [Karel Zak]
   - (bsd) remove printf() from the driver code  [Karel Zak]
   - (bsd) remove xbsd_ prefix  [Karel Zak]
   - (bsd) rewrite list disklabel function  [Karel Zak]
   - (bsd) use ask API for add partition dialog  [Karel Zak]
   - (bsd) use libfdisk for partition number dialog  [Karel Zak]
   - (bsd) use libfdisk to ask for label setting  [Karel Zak]
   - (bsd) use macros from pt-mbr.h  [Karel Zak]
   - (bsd) use pt-bsd.h  [Karel Zak]
   - (bsd) write/read PT code cleanup  [Karel Zak]
   - (dos) add dos menu callback  [Karel Zak]
   - (dos) clean up list PT functions  [Karel Zak]
   - (dos) cleanup public function names  [Karel Zak]
   - (dos) don't check for CHS in move-begin command  [Karel Zak]
   - (dos) fix offset dialog unit  [Karel Zak]
   - (dos) fix possible mem-leaks  [Karel Zak]
   - (dos) move macro is_dos_compatible()  [Karel Zak]
   - (dos) move pte specific function to dos.c  [Karel Zak]
   - (dos) remove global ptes[]  [Karel Zak]
   - (dos) remove global variables for extended partitions  [Karel Zak]
   - (dos) remove inline function from header file  [Karel Zak]
   - (dos) remove remaining global variables  [Karel Zak]
   - (dos) remove remaining printf() usage  [Karel Zak]
   - (dos) remove remaining read_{int,char}() functions  [Karel Zak]
   - (dos) remove unnecessary function  [Karel Zak]
   - (dos) remove unnecessary header file stuff  [Karel Zak]
   - (dos) rename members in struct pte  [Karel Zak]
   - (dos) rename struct partition to dos_partition  [Karel Zak]
   - (dos) use ask API for new partition dialog  [Karel Zak]
   - (dos) use ask API to change disk ID  [Karel Zak]
   - (dos) use libfdisk to ask for partition type  [Karel Zak]
   - (dos) use pt-mbr.h  [Karel Zak]
   - (gpt) add t, v and x to menu  [Karel Zak]
   - (gpt) enlarge columns in list output  [Karel Zak]
   - (gpt, sun) use fdisk_partname()  [Karel Zak]
   - (sgi) cleanu sgi_info stuff  [Karel Zak]
   - (sgi) cleanup boot file name code  [Karel Zak]
   - (sgi) cleanup devparams flags  [Karel Zak]
   - (sgi) cleanup disk label struct usage  [Karel Zak]
   - (sgi) don't try to convert MBR to SGI  [Karel Zak]
   - (sgi) fix checksum calculation  [Karel Zak]
   - (sgi) rdon't use read_chars() to ask yes/no question  [Karel Zak]
   - (sgi) remove dead code  [Karel Zak]
   - (sgi) remove global freelist  [Karel Zak]
   - (sgi) remove magic strings  [Karel Zak]
   - (sgi) remove printf from code  [Karel Zak]
   - (sgi) remove unnecessary code  [Karel Zak]
   - (sgi) rewrite sgi_list_table()  [Karel Zak]
   - (sgi) share disk label definition with libblkid  [Karel Zak]
   - (sgi) small coding style changes  [Karel Zak]
   - (sgi) use ask API for first/last dialogs  [Karel Zak]
   - (sgi) use cpu_to_beXX() and beXX_to_cpu()  [Karel Zak]
   - (sgi) use stuff ffrom pt-mbr.h and libfdisk  [Karel Zak]
   - (sun) consolidate 'p'rint output  [Karel Zak]
   - (sun) remove dead code  [Karel Zak]
   - (sun) use tt.c to list disk label  [Karel Zak]
   - -l refactoring  [Karel Zak]
   - add -L to colorize output  [Karel Zak]
   - add -t <type> to enable only specified type  [Karel Zak]
   - add GPT specific callback to menu  [Karel Zak]
   - add asktype "string" and support UUID partition change  [Karel Zak]
   - add bsd, dos and sgi menus  [Karel Zak]
   - add debug message, use colors for -l  [Karel Zak]
   - add functions to geometry menu  [Karel Zak]
   - add mbr_get_partition()  [Karel Zak]
   - add new stuff to display menus  [Karel Zak]
   - add sun menu  [Karel Zak]
   - add support for the MicroBlaze architecture  [Nathan Rossi]
   - allow to exchange context pointer in menu callbacks  [Karel Zak]
   - always allow 'p'rint command in expert menu  [Karel Zak]
   - ask for partition in chars  [Karel Zak]
   - bloody revolution in the man page  [Karel Zak]
   - cleanup SGI verify disklabel function  [Karel Zak]
   - cleanup header file  [Karel Zak]
   - cleanup sgi menu callbackswq  [Karel Zak]
   - cleanup usage()  [Karel Zak]
   - cleanup warning messages  [Karel Zak]
   - cleanup warnings  [Karel Zak]
   - cleanup write table code  [Karel Zak]
   - consolidate code in fdisk.c  [Karel Zak]
   - detect menu entries collisions in debug mode  [Karel Zak]
   - don't use ptes[] in generic code  [Karel Zak]
   - fix 'r' in BSD menu  [Karel Zak]
   - fix -l  [Karel Zak]
   - fix man warning  [Karel Zak]
   - fix possible memleak [coverity scan]  [Karel Zak]
   - fix printf stuff  [Karel Zak]
   - improve info output  [Karel Zak]
   - improve menus to make it more usable for BSD label  [Karel Zak]
   - main() refactoring  [Karel Zak]
   - make internal command line case sensitive  [Karel Zak]
   - mark -s option as deprecated  [Karel Zak]
   - move "create label" actions to menu callback  [Karel Zak]
   - move dos specific code  [Karel Zak]
   - move expect actions to menu callback  [Karel Zak]
   - move geometry commands to separate menu  [Karel Zak]
   - move get_nr_sects() fdisk.h  [Karel Zak]
   - move remaining actions to menu callbacks  [Karel Zak]
   - move remaining ptes[] code to fdiskdoslabel.c  [Karel Zak]
   - move sun commands to sun menu callback  [Karel Zak]
   - print geometry for dos-compatible mode too  [Karel Zak]
   - remove Mac code  [Karel Zak]
   - remove common.h  [Karel Zak]
   - remove dead code  [Karel Zak]
   - remove nowarn global variable  [Karel Zak]
   - remove old code to ask user  [Karel Zak]
   - remove ugly fatal() function  [Karel Zak]
   - remove unnecessary test  [Karel Zak]
   - remove unused code, coding style changes  [Karel Zak]
   - rename CHS dos_partition struct members  [Karel Zak]
   - revert add 'G' to create SGI label to the main menu  [Karel Zak]
   - rewrite dump first sector add dump disklabel command  [Karel Zak]
   - separate disks by \n in -l output  [Karel Zak]
   - use  libfdisk to ask for partition type  [Karel Zak]
   - use fdisk_info() to print geometry  [Karel Zak]
   - use fdisk_{info,warn} on more places  [Karel Zak]
   - use functions from pt-mbr.h  [Karel Zak]
   - use new menu infrastructure to verify keys  [Karel Zak]
   - use new menus  [Karel Zak]
   - use remove read_int() usage from fdisk.c  [Karel Zak]
   - use xalloc stuff  [Karel Zak]
findmnt:
   - always allocate memory for cell value  [Dave Reisner]
   - avoid unused parameter warning  [Karel Zak]
   - make udev usage more robust  [Karel Zak]
   - test for fstype/options/maj min before source and target  [Karel Zak]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
fsck:
   - don't print warning if there is no /etc/fstab at all  [Karel Zak]
   - use libmount fs reference counter  [Karel Zak]
fsck.cramfs:
   - add LC_CTYPE  [Karel Zak]
   - check writing to a file descriptor was successful  [Sami Kerola]
fsck.minix:
   - check writing to a file descriptor was successful  [Sami Kerola]
getopt:
   - add reference to /usr/share/docs to man page  [Karel Zak]
hexdump:
   - add long options to the command  [Sami Kerola]
   - remove unnecessary global variables  [Sami Kerola]
   - revert global exitval variable change  [Sami Kerola]
hexsyntax:
   - in help text, wrap argument of option -e in angular brackets  [Benno Schulenberg]
hwclock:
   - remove references to adjtimex from man page  [Karel Zak]
   - use warn() to print cmos errors  [Karel Zak]
include:
   - Add missing includes  [Michael Forney]
   - add close_fd() for noticing write errors before close()  [Sami Kerola]
   - carefulput  print determined char when unprintable char is found  [Sami Kerola]
include/pt-mbr:
   - add functio to store le  [Karel Zak]
include/xalloc:
   - add warn_unused_result to allocation functions  [Karel Zak]
ipcs:
   - assigned values are never read [clang-analyzer]  [Sami Kerola]
last:
   - --fulltime and --time-format are mutually exclusive  [Karel Zak]
   - add --present option  [Sami Kerola]
   - add --since time spec option  [Sami Kerola]
   - add --time-format with iso-8601 format  [Sami Kerola]
   - add link to util-linux to last.1  [Karel Zak]
   - add long options, improve usage()  [Karel Zak]
   - allow --file to be defined multiple times  [Sami Kerola]
   - check expected numeric user input is number  [Sami Kerola]
   - check fstat() return [coverity scan]  [Karel Zak]
   - clean up the begin of the file  [Karel Zak]
   - coding style clean up  [Karel Zak]
   - consolidate btmp/wtmp file paths  [Karel Zak]
   - consolidate time formatting to one struct  [Karel Zak]
   - fix --present option logic error  [Sami Kerola]
   - fix man page groff warning  [Karel Zak]
   - fix memory leak  [Sami Kerola]
   - fix typo  [Sami Kerola]
   - global variables are initialize automatically to zero  [Sami Kerola]
   - make switch cases complete, and inform if impossible occurs  [Sami Kerola]
   - mention optional arguments in usage  [Karel Zak]
   - merge sysvinit last/lastb  [Ondrej Oprala]
   - never restrict session time  [Sami Kerola]
   - parse easy to use time formats  [Sami Kerola]
   - prefer enum rather than #definition list  [Sami Kerola]
   - remove broken code  [Sami Kerola]
   - remove mistaken -F, --fullnames entry from the man page  [Benno Schulenberg]
   - tell verbally system is still running  [Sami Kerola]
   - trim trailing white spaces  [Sami Kerola]
   - use as narrow variable scoping as possible  [Sami Kerola]
   - use bit array  [Karel Zak]
   - use carefulput() for printable character output  [Sami Kerola]
   - use configuration struct  [Sami Kerola]
   - use xalloc.h, err.h, nls.h and EXIT_ macros  [Karel Zak]
last, utmpdump, agetty, wall, write:
   - avoid compatibility hacks  [Sami Kerola]
lib:
   - add crc64()  [Karel Zak]
   - remove unused code  [Sami Kerola]
   - rename time-util.c to timeutils.c, fix headers  [Karel Zak]
lib/canonical:
   - use realpath() from libc  [Karel Zak]
lib/colors:
   - add colormode_or_err()  [Karel Zak]
   - add support for auto, always and never modes  [Karel Zak]
lib/loopdev:
   - assigned value is never read [clang-analyzer]  [Sami Kerola]
   - fix loopcxt_check_size() to work with blkdevs  [Karel Zak]
lib/mbsalign:
   - initializations values are never read [clang-analyzer]  [Sami Kerola]
lib/strutils:
   - move *swith() functions to private library  [Sami Kerola]
   - optimalize {starts,ends}with()  [Karel Zak]
lib/time-util:
   - copy time parsing functions from systemd  [Sami Kerola]
   - move YYYYMMDDHHMMSS to common parser  [Sami Kerola]
lib/tt:
   - add TT_FL_FREEDATA  [Karel Zak]
lib/tty:
   - don't hardcode terminal fd in get_terminal_name()  [Karel Zak]
   - fix get_terminal_name() usage, cleanup code  [Karel Zak]
libblkid:
   - Add bcache support  [Rolf Fokkens]
   - Detect external XFS log device  [Eric Sandeen]
   - Get rid of an unnecessary check  [Karel Zak]
   - add ReFS magic string  [Karel Zak]
   - add functions to set PTUUID  [Karel Zak]
   - check writing to a file was successful  [Sami Kerola]
   - diffs between errors and failed probing in silicon raid  [Karel Zak]
   - diffs between errors and failed probing in via raid  [Karel Zak]
   - don't interpret regual XFS as external xfs log  [Karel Zak]
   - don't use UUID= for xfs external log  [Karel Zak]
   - export info about bad csum  [Karel Zak]
   - fix blkid_parse_tag_string() to ignore incomplete tags  [Karel Zak]
   - fix kboff usage in BSD prober  [Karel Zak]
   - make uuid_is_empty() usable for whole library  [Karel Zak]
   - move MBR definitions to include/pt-mbr.h  [Karel Zak]
   - move MBR partition types to include/  [Karel Zak]
   - move SGI disklabel definitions to include/  [Karel Zak]
   - move bsd definitions to pt-bsd.h  [Karel Zak]
   - populate jbd LOGUUID in addition to UUID  [Karel Zak]
   - rename UUID_LOG to LOGUUID  [Karel Zak]
   - rename sys_type to sys_ind  [Karel Zak]
   - set PTUUID for GPT and DOS  [Karel Zak]
   - split blkid_parttable_set_id()  [Karel Zak]
   - support pseudo PARTUUID= for MBR  [Karel Zak]
   - update docs  [Karel Zak]
   - use proper type in xfs log checker [coverity scan]  [Karel Zak]
   - use separate function to verify checksums  [Karel Zak]
libfdisk:
   - (bds) cleanup includes  [Karel Zak]
   - (bsd) leave context if new disklabel unwanted  [Karel Zak]
   - (dos) all disklabel locate function  [Karel Zak]
   - (dos) correct the grammar of the disk-identifier prompt  [Benno Schulenberg]
   - (dos) cosmetic changes  [Karel Zak]
   - (dos) improve the grammar of an error message  [Benno Schulenberg]
   - (gpt) %ld -> %ju in verify function  [Karel Zak]
   - (gpt) cleanup structs members names  [Karel Zak]
   - (gpt) fix warning  [Karel Zak]
   - (gpt) more robust PMBR partition size check  [Karel Zak]
   - (gpt) print UUID and NAME in expert mode only  [Karel Zak]
   - (gpt) support for disklabel dump  [Karel Zak]
   - (gpt) use consistent final period in status messages  [Benno Schulenberg]
   - (gpt) use generic 'created partition' message  [Karel Zak]
   - (gpt) use lib/tt.c to list partitions  [Karel Zak]
   - (sgi) add driver  [Karel Zak]
   - (sun) make it more obvious why the first sector moved  [Karel Zak]
   - (sun) move driver from fdisk to library  [Karel Zak]
   - (sun) remove duplicate code  [Karel Zak]
   - add API to disable specified label  [Karel Zak]
   - add FDISK_DEBUG_FRONTEND  [Karel Zak]
   - add FDISK_LABEL_FL_REQUIRE_GEOMETRY  [Karel Zak]
   - add Intel Rapid Start Technology GUID  [Karel Zak]
   - add asktype "string" and support UUID partition change  [Karel Zak]
   - add bsd driver  [Karel Zak]
   - add fdisk_context_enable_details()  [Karel Zak]
   - add fdisk_has_user_device_properties()  [Karel Zak]
   - add fdisk_locate_disklabel()  [Karel Zak]
   - add fdisk_partname()  [Karel Zak]
   - add fdisk_scround()  [Karel Zak]
   - add generic function to get disklabel ID  [Karel Zak]
   - add generic function to set disklabel ID  [Karel Zak]
   - add list() label operation  [Karel Zak]
   - add new 'ask' type TABLE  [Karel Zak]
   - allow to address partition by chars  [Karel Zak]
   - clean up sun geometry stuff  [Karel Zak]
   - cleanup SGI functions names  [Karel Zak]
   - cleanup warning messages  [Karel Zak]
   - copy ask callback from parental context  [Karel Zak]
   - do not use va_list in the Ask API  [Karel Zak]
   - don't re-allocate range string in Ask API  [Karel Zak]
   - explicitly add COPYING file  [Karel Zak]
   - extend fdisk_info() functionality  [Karel Zak]
   - fix cylinders and sector buffer usage  [Karel Zak]
   - fix possible floating point exception  [Karel Zak]
   - fix sectorbuffer usage in dos driver  [Karel Zak]
   - gpt  avoid unnecessary pmbr check  [Davidlohr Bueso]
   - gpt  loosen check fot pmbr size in lba  [Davidlohr Bueso]
   - improve fdisk_save_user_geometry()  [Karel Zak]
   - improve nested context initialization  [Karel Zak]
   - improve spelling of two comments  [Benno Schulenberg]
   - make default geom usage more robust  [Karel Zak]
   - make it possible to reset device properties  [Karel Zak]
   - make the library usable with tests  [Karel Zak]
   - mark label modified for PMBR mismatch  [Karel Zak]
   - move mbr code to the library  [Karel Zak]
   - move sync() and reread PT code from fdisk to libfdisk  [Karel Zak]
   - provide more details about GPT  [Karel Zak]
   - remove "gpt support is new" warning  [Karel Zak]
   - remove unnecessary code from test_fdisk_ask  [Karel Zak]
   - support GPT partition name (label) change  [Karel Zak]
   - treat size mismatch as a warning, not an error  [Karel Zak]
   - update test_ranges() code  [Karel Zak]
   - use context geometry in SGI and SUN  [Karel Zak]
   - use fdisk_colon() and fdisk_sinfo()  [Karel Zak]
   - use fdisk_warnx() in fdisk_ask_partnum()  [Karel Zak]
libfdisk/gpt:
   - partly pluralize one message  [Benno Schulenberg]
libfdisk/sgi:
   - properly pluralize three messages  [Benno Schulenberg]
   - tweak and harmonize some comments  [Benno Schulenberg]
   - tweak and harmonize some message strings  [Benno Schulenberg]
libmount:
   - (docs) make it obvious how we call mount.<type> helpers  [Karel Zak]
   - (test) check writing to a file was successful  [Sami Kerola]
   - Fix typo in comment  [Namhyung Kim]
   - Free splitted optstr's when error occurred  [Namhyung Kim]
   - Get rid of an unnecessary check  [Namhyung Kim]
   - Remove stale comment on mnt_context_mount()  [Namhyung Kim]
   - Save errno if mkostemp() failed  [Namhyung Kim]
   - Set each optstr's to NULL if failed  [Namhyung Kim]
   - add a generic append_string() function  [Karel Zak]
   - add function for context userdata  [Karel Zak]
   - add functions to handle comments in fs tables  [Ondrej Oprala, Karel Zak]
   - add functions to safely replace a fs table  [Ondrej Oprala]
   - add missing declarations to libmount.h.in and documentation  [Ondrej Oprala]
   - add mnt_table_is_empty(), improve table list usage  [Karel Zak]
   - add mnt_table_with_comments()  [Karel Zak]
   - add mnt_table_{first,last}_fs()  [Karel Zak]
   - add mnt_table_{set,get}_userdata()  [Karel Zak]
   - add new function to docs  [Karel Zak]
   - add reference counter to libmnt_table  [Karel Zak]
   - add reference counting to libmnt_cache  [Karel Zak]
   - add reference counting to libmount_fs  [Karel Zak]
   - be more restrictive about valid tag names  [Karel Zak]
   - be robust for empty target/source strings  [Karel Zak]
   - be robust when work with loopdev backing file paths  [Karel Zak]
   - canonicalize for conversion from loopdev backing file  [Karel Zak]
   - change tailing to trailing in *_tailing_comments functions  [Ondrej Oprala]
   - cleanup libmnt_fs list after mnt_table_remove_fs()  [Karel Zak]
   - compose mount.<type> helpers paths more carefully  [Karel Zak]
   - don't ignore root fs on umount -a  [Karel Zak]
   - fix memory leak [clang-analyzer]  [Karel Zak]
   - fix mnt_context_is_child() comment  [Karel Zak]
   - fix typos  [Ondrej Oprala]
   - free username after check  [Dave Reisner]
   - make mnt_fs_{ap,pre}pend_options() more robust  [Karel Zak]
   - make mnt_table_replace_file() more robust [coverity scan]  [Karel Zak]
   - more robust options string parsing  [Karel Zak]
   - remove dead code [coverity scan]  [Karel Zak]
   - small cleanup in umount code  [Karel Zak]
   - update docs  [Karel Zak]
   - use MS_SILENT for /{proc,etc}/filesystems  [Karel Zak]
   - use err.h in test  [Karel Zak]
   - use memmove when overlap possible  [Dave Reisner]
logger:
   - add support for --prio-prefix when logging stdin  [Dennis H Jensen]
   - cleanup usage()  [Karel Zak]
   - small coding style changes  [Karel Zak]
login:
   - use TCSANOW to remove HUPCL  [Karel Zak]
losetup:
   - add --raw and --noheadings  [Karel Zak]
   - cut the remaining little block of help text into slices too  [Benno Schulenberg]
   - don't require 512-byte aligned offsets  [Karel Zak]
   - fix loop device name usage  [Karel Zak]
   - make -j <path> more robust  [Karel Zak]
   - set errno for misaligned offsets  [Karel Zak]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
   - use loop-control to explicitly ask for device  [Karel Zak]
   - use warn_size() for regular files only  [Karel Zak]
lsblk:
   - add SERIAL column  [Karel Zak]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
   - use devno to check if the filesystem is mounted  [Karel Zak]
   - use devno to get mountpoint  [Karel Zak]
lscpu:
   - add max MHz value to make cpu governor effects more visible  [Sami Kerola]
   - add virtualization types  [Karel Zak]
   - check strchr() result [coverity scan]  [Karel Zak]
   - cleanup DMI code [coverity scan]  [Karel Zak]
   - detect more hypervisor vendors  [Ondrej Oprala]
   - don't pass null pointer to string functions [coverity scan]  [Karel Zak]
   - fix memory leak [clang-analyzer]  [Sami Kerola]
   - fix shadow declaration [smatch scan]  [Sami Kerola]
   - report cpu min mhz  [Davidlohr Bueso]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
lslocks:
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
mcookie:
   - pluralize two messages  [Benno Schulenberg]
mesg:
   - sync usage() with howto-usage-function.txt  [Sami Kerola]
misc:
   - use libmnt_cache reference counting  [Karel Zak]
   - use libmnt_table reference counter  [Karel Zak]
mkfs.bfs:
   - check writing to a file descriptor was successful  [Sami Kerola]
   - fix 64-Bit and endian problems  [ihno]
mkfs.cramfs:
   - argument to free() is a constant address [clang-analyzer]  [Sami Kerola]
   - unify write check to a file descriptor  [Sami Kerola]
   - use standard error message  [Karel Zak]
mkfs.minix:
   - check writing to a file descriptor was successful  [Sami Kerola]
   - properly pluralize four messages  [Benno Schulenberg]
mkswap:
   - add note about swap header limit to the man page  [Karel Zak]
   - unify write check to a file descriptor  [Sami Kerola]
more:
   - assigned value is never read [clang-analyzer]  [Sami Kerola]
   - check for buffer size when write multibyte char  [Karel Zak]
   - fix buffer overflow  [Karel Zak]
   - fix warning when compiled --without-ncurses  [Karel Zak]
   - guarantee space for multibyte  [Karel Zak]
   - make output redirection more efficient  [Sami Kerola]
   - use variable length printf field width to print blanks  [Sami Kerola]
mount:
   - (deprecated) fix typo tailed->failed  [Yuri Chornoivan]
   - add notes about UUIDs to the man page  [Karel Zak]
   - fix mistaken word and some grammar in man page of mount  [Benno Schulenberg]
   - fix repeating words in the man page  [Karel Zak]
   - update xfs docs  [Karel Zak]
nologin:
   - add new command  [Karel Zak]
nsenter:
   - Allow selecting the uid and gid to be used in the entered userns  [Richard Weinberger]
   - unshare  use LC_ALL  [Karel Zak]
partx:
   - check writing to a file descriptor was successful  [Sami Kerola]
   - correct three messages  [Benno Schulenberg]
   - pluralize one message  [Benno Schulenberg]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
pg:
   - check writing to a file was successful  [Sami Kerola]
   - use LC_ALL  [Karel Zak]
pg.c:
   - Add --help and --version  [Jari Aalto]
po:
   - merge changes  [Karel Zak]
   - update ca.po (from translationproject.org)  [Josep Puigdemont]
   - update cs.po (from translationproject.org)  [Petr Písař]
   - update da.po (from translationproject.org)  [Joe Hansen]
   - update de.po (from translationproject.org)  [Arun Persaud]
   - update es.po (from translationproject.org)  [Santiago Vila Doncel]
   - update et.po (from translationproject.org)  [Meelis Roos]
   - update eu.po (from translationproject.org)  [Mikel Olasagasti Uranga]
   - update fi.po (from translationproject.org)  [Lauri Nurmi]
   - update fr.po (from translationproject.org)  [David Prévot]
   - update gl.po (from translationproject.org)  [Fran Diéguez]
   - update hr.po (from translationproject.org)  [Tomislav Krznar]
   - update hu.po (from translationproject.org)  [Gabor Kelemen]
   - update id.po (from translationproject.org)  [Arif E. Nugroho]
   - update it.po (from translationproject.org)  [Marco Colombo]
   - update ja.po (from translationproject.org)  [Takeshi Hamasaki]
   - update nl.po (from translationproject.org)  [Benno Schulenberg]
   - update pl.po (from translationproject.org)  [Jakub Bogusz]
   - update pt_BR.po (from translationproject.org)  [Rafael Ferreira]
   - update pt_BR.po (from translationproject.org)  [Rodrigo Stulzer Lopes]
   - update ru.po (from translationproject.org)  [Pavel Maryanov]
   - update sl.po (from translationproject.org)  [Simon Mihevc]
   - update sv.po (from translationproject.org)  [Daniel Nylander]
   - update tr.po (from translationproject.org)  [Nilgün Belma Bugüner]
   - update uk.po (from translationproject.org)  [Yuri Chornoivan]
   - update util-linux.pot (from translationproject.org)  [FULL NAME]
   - update vi.po (from translationproject.org)  [Trần Ngọc Quân]
   - update zh_CN.po (from translationproject.org)  [Wylmer Wang]
   - update zh_TW.po (from translationproject.org)  [Wei-Lun Chao]
prlimit:
   - delete rem_prlim prototype  [Davidlohr Bueso]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
pylibmount:
   - add __init__.py  [Ondrej Oprala]
   - add debug messages  [Karel Zak]
   - add regression tests  [Ondrej Oprala]
   - basic code  [Ondrej Oprala]
   - check for mnt_fs_get_tag() return value [coverity scan]  [Karel Zak]
   - cleanup *_HELP strings formatting  [Karel Zak]
   - cleanup cxt usage  [Karel Zak]
   - cleanup object names  [Karel Zak]
   - coding style changes in context.c  [Karel Zak]
   - coding style changes in fs.c  [Karel Zak]
   - coding style changes in tab.c  [Karel Zak]
   - coding style changes, don't touch Context() status  [Karel Zak]
   - fs.c - cleanup, remove libmount private stuff  [Karel Zak]
   - improve helps strings formatting  [Karel Zak]
   - make tab parsers more robust [coverity scan]  [Karel Zak]
   - remove Context_get_table()  [Karel Zak]
   - remove bindsrc from fs API  [Karel Zak]
   - remove unnecessary code  [Karel Zak]
   - rewrite to be py2/py3 universal  [Ondrej Oprala]
   - use libmount reference counting  [Karel Zak]
   - use mnt_fs_set_userdata() rather than ->userdata  [Karel Zak]
   - use only public libmount API in tab.c  [Karel Zak]
raw:
   - use LC_ALL  [Karel Zak]
renice:
   - exit with non-zero value when arguments cause warnings  [Sami Kerola]
resizepart:
   - check writing to a file descriptor was successful  [Sami Kerola]
rev:
   - fix new line regression  [Sami Kerola]
   - reduce stream checking when closing read-only file descriptor  [Sami Kerola]
   - simplify new line detection and impossible test  [Sami Kerola]
   - stop adding new line at the end when input does not have it  [Sami Kerola]
   - use string printing rather than character output  [Sami Kerola]
runuser:
   - update man page, add note about -l vs. -p  [Karel Zak]
sd-daemon:
   - update files taken from systemd project  [Sami Kerola]
setarch:
   - prefer preprocessor rather than autotools check  [Sami Kerola]
setpriv:
   - allow login and group name option arguments  [Sami Kerola]
   - check writing to a file descriptor was successful  [Sami Kerola]
   - check writing to a file was successful  [Sami Kerola]
   - use LC_ALL  [Karel Zak]
setsid:
   - add an option to wait child return value  [Daniel Kahn Gillmor]
   - exit when control terminal cannot be set  [Sami Kerola]
setterm:
   - fix term.h/ncurses.h include ordering  [Mike Frysinger]
sfdisk:
   - assigned value is never read [clang-analyzer]  [Sami Kerola]
   - check writing to a file descriptor was successful  [Sami Kerola]
   - clean up unhide code  [Karel Zak]
   - clean up usage() functions  [Sami Kerola]
   - don't call BLKRRPART for non-block devices  [Karel Zak]
   - don't use word 'disk'.  [Karel Zak]
   - fix typo  [Karel Zak]
   - fix y/n mismatch  [Karel Zak]
   - make unhiding as complete as possible  [Sami Kerola]
   - replace my_warn() with warnx()  [Sami Kerola]
   - use libc error printing function, and symbolic exit values  [Sami Kerola]
   - use program_invocation_short_name to determine program name  [Sami Kerola]
su:
   - add info about pam_lastlog to su.1  [Karel Zak]
   - consistent angular brackets and lowercase in help text of 'su'  [Benno Schulenberg]
   - fix caught_signal logic and initialize oldact [coverity scan]  [Karel Zak]
   - fix exit status if terminated by signal  [Ondrej Oprala]
   - fix lastlog and btmp logging  [Karel Zak]
   - ignore --preserve-environment, it's mutually exclusive to --login  [Karel Zak]
   - suppress PAM info messages for -c or non-login sessions  [Karel Zak]
su-common:
   - pluralize one message  [Benno Schulenberg]
sulogin:
   - clean up error messages  [Karel Zak]
   - fix compiler warning  [Karel Zak]
   - fix memory leak [clang-analyzer]  [Sami Kerola]
swaplabel:
   - check writing to a file descriptor was successful  [Sami Kerola]
swapon:
   - allow a more flexible swap discard policy  [Rafael Aquini]
   - check writing to a file descriptor was successful  [Sami Kerola]
   - cleanup man page  [Karel Zak]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
tests:
   - add XFS log image  [Karel Zak]
   - add bcache images  [Karel Zak]
   - add cal day color corner cases  [Sami Kerola]
   - add calendar reformation check  [Sami Kerola]
   - add last(1) test  [Sami Kerola]
   - add losetup tests  [Karel Zak]
   - add nologin to build tests  [Karel Zak]
   - add partx regression tests  [Ondrej Oprala]
   - check cal works when year is far in future  [Sami Kerola]
   - check last(1) and utmpdump(1) IPv6 functionality  [Sami Kerola]
   - consolidate Py tests initialization  [Karel Zak]
   - improve cal --color test  [Karel Zak]
   - lscpu  add CPU max MHz to test results  [Sami Kerola]
   - minor changes to make tests more portable  [Karel Zak]
   - new warning fix  [Gilles Espinasse]
   - partx tests cleanup  [Karel Zak]
   - refresh fdisk tests  [Karel Zak]
   - refresh jbd blkid test  [Karel Zak]
   - remove remaining set -x  [Karel Zak]
   - update build tests  [Karel Zak]
   - update fdisk outputs  [Karel Zak]
   - update libmount fstab full parse test  [Karel Zak]
   - update lscpu tests  [Karel Zak]
   - update odd output fdisk test  [Karel Zak]
   - update sun label test  [Karel Zak]
   - use 'btrfs' rather than 'btrfsctl'  [Karel Zak]
   - use stable MBR ID  [Karel Zak]
textual:
   - change spelling of "disk label" to the more abundant "disklabel"  [Benno Schulenberg]
   - end both the singular and the plural message with a period  [Benno Schulenberg]
   - equalize four error messages with already existing ones  [Benno Schulenberg]
   - fix misspelled words in -rc1  [Karel Zak]
   - fix several typos and angular brackets in messages  [Benno Schulenberg]
   - fix typo in error message and uniformize their use of period  [Benno Schulenberg]
   - fixing typos in a warning and an error message  [Benno Schulenberg]
   - harmonize some loop-device error messages  [Benno Schulenberg]
   - improve clarity of some error messages  [Benno Schulenberg]
   - make two messages somewhat easier to understand  [Benno Schulenberg]
   - properly use uppercase in certain abbreviations  [Benno Schulenberg]
   - remove duplicate mention of '--help' from lsblk help text  [Benno Schulenberg]
   - standardize some "cannot read" and "seek failed" error messages  [Benno Schulenberg]
   - standardize synopsis for login, and improve an error message  [Benno Schulenberg]
   - standardize the spelling of "superuser"  [Benno Schulenberg]
   - tag a translator comment and put it in proper place  [Benno Schulenberg]
   - tiny alphabetical and grammatical tweak  [Benno Schulenberg]
   - use consistent wording and punctuation in fdisk stuff  [Benno Schulenberg]
   - use the standard angular brackets for non-literal arguments  [Benno Schulenberg]
tools:
   - generate autotools files if missing  [Sami Kerola]
ul:
   - enhance command performance  [Sami Kerola]
   - use correct types  [Sami Kerola]
   - use string printing function  [Sami Kerola]
umount:
   - provide more helpful error message  [Karel Zak]
unshare:
   - add --fork options for pid namespaces  [Mike Frysinger]
   - add --mount-proc for pid namespaces  [Karel Zak]
utmpdump:
   - add option to write to a file  [Sami Kerola]
   - assigned values are never read [clang-analyzer]  [Sami Kerola]
   - make IPv6 addresses work  [Sami Kerola]
   - make analyzers happy  [Karel Zak]
uuidd:
   - add missing initializer [clang-analyzer]  [Karel Zak]
   - clean up error messages  [Karel Zak]
various:
   - fix mixing declarations and code compiler warnings [smatch]  [Sami Kerola]
wall:
   - allow to specify <message> on command line  [Karel Zak]
   - check writing to a file descriptor was successful  [Sami Kerola]
   - line wrap at column 79 also when line has tab chars  [Sami Kerola]
   - make banner sysvinit compatible  [Karel Zak]
   - send message also to sessions opened by user 'sleeper'  [Sami Kerola]
   - sync usage() with howto-usage-function.txt  [Sami Kerola]
wdctl:
   - check writing to a file descriptor was successful  [Sami Kerola]
   - gettextize and pluralize one forgotten message  [Benno Schulenberg]
   - pluralize one thrice-repeated message  [Benno Schulenberg]
   - use TT_FL_FREEDATA for tt table  [Karel Zak]
wipefs:
   - Also wipe superblocks with bad checksums  [Gabriel de Perthuis]
   - add --backup  [Ondrej Oprala]
   - clean up code  [Karel Zak]
   - pluralize one message  [Benno Schulenberg]
write:
   - change determination can user write to a terminal  [Sami Kerola]

- change determination can user write to a terminal  [Sami Kerola]
