Working in Public: The Making and Maintenance of Open Source Software Audible Audiobook
Free with Audible trial
This is to announce datamash-1.8, a new release.
Datamash is a command-line program which performs basic numeric, textual and
statistical operations on input textual data.
This is the first release for new maintainer Tim Rice, with much appreciation
to Shawn Wagner and Erik Auerswald for their help. See the AUTHORS and THANKS
files for additional credits and acknowledgements.
GNU Datamash home page:
Please report any problem you may experience to the firstname.lastname@example.org
– Tim Rice
Here are the compressed sources and a GPG detached signature[*]:
Use a mirror for higher download bandwidth:
[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact. For instructions about how to do this, please
refer to https://ftp.gnu.org/README. (In particular you will need to
retrieve the GNU keyring rather than using any keyservers.)
The checksums of the archive are:
$ sha1sum datamash-1.8.tar.gz
$ sha256sum datamash-1.8.tar.gz
$ b2sum datamash-1.8.tar.gz
- Noteworthy changes in release 1.8 (2022-07-23) [stable]
- Changes in Behavior
Schedule -f/–full combined with non-linewise operations for deprecation.
In a future release, -f/–full will only be usable with operations where
it makes sense. For now, we print a warning to stderr when -f/–full is
used with non-linewise operations, and such usage will no longer be
The bin operation now uses more intuitive bins. Previously, a command
such as `datamash bin 1 <<< -0` would output -100; and -100 did not fall
in its own bin. We now require all bins to take the form `[nx,(n+1)x)`
with integer n and bin width x. We discard the sign on -0 and gate such
inputs into the [0,x) bin.
Operations taking more than one argument now provide more complete output
with –header-out. Previously, an operation such as `pcov x:y` would
produce an output header like `pcov(y)`, discarding the `x`. The new
behavior will output header `pcov(x,y)`.
datamash(1) no longer ignores –output-delimiter with the rmdup operation.
- New Features
New datamash option –sort-cmd argument to specify the program used
by the -s option to sort input, plus enhancements to the security and
portability of building sort command lines.
New datamash option -c/–collapse-delimiter=X argument uses character
X instead of comma between values in collapse and unique lists.
New datamash operations: mean square (ms) and root mean square (rms).
Decorate now supports sorting IP addresses of both versions 4 and 6
together. IPv4 addresses are logically converted to IPv6 addresses,
either as IPv4-Mapped (ipv6v4map) or IPv4-Compatible (ipv6v4comp)
Add two command aliases:
‘echo’ may now be used instead of ‘cut’.
‘uniq’ may now be used instead of ‘unique’.
Updated the bash completion script to reflect recent additions.
- Bug Fixes
Datamash now passes the -z/–zero-terminated flag to the sort(1) child
process when used with “–sort –zero-terminated”. Additionally,
if the system’s sort(1) does not support -z, datamash reports the error
and exits. Previously it would omit the “-z” when running sort(1),
resulting in incorrect results.
Documentation fixes and spelling corrections.
Incorrect format in a decorate(1) error breaking compilation on some
datamash(1), decorate(1): Fix some minor memory leaks.
datamash(1) no longer crashes when the unique or countunique operations
are used with input data containing NUL bytes. The problem was reported
by Catalin Patulea.
datamash(1) no longer crashes when crosstab with –header-in is called
by field name instead of index. I.e. `datamash –header-in ct x,y` now
works as expected.