I can imagine that someone would find a program like this to be useful, and depends on the presently common behavior of zcat
, so I expect this is an important part of a system used by a corporation I interact with (and probably many more than I’d expect):
if
zcat ./file.txt.gz >/dev/null
then
process_file ./file.txt.gz
else
printf '%s\n' "There was a decimal exit status of ${?}"
fi
A failure to understand whether something is useful is not a good reason to change it.
I had some thoughts about the concept of a “Contributor License Agreement”.
If you are the sole author of a program, you have a special position in that you can distribute the program with any license you choose. People that are not the sole author that copy the source code are not able to do that. If the original sole author of a program incorporates changes from someone that did not sign a Contributor License Agreement, they lose that special position, since distributing the program with a new license would require consent from all the authors, which is surely harder if there are more authors.
Because of this, it might be worth supporting some “community fork” more than an “original” repository, since that makes it clear that the program is likely to only be distributed using a specific license. However, if I’m interacting with an “original” repository, I will expect to have to interact with a Contributor License Agreement in order to have my changes used, since the original authors will want to preserve some flexibility regarding what licenses they can use with their software.