This changelog includes all notable changes to the which.sh project.
- The oversight in cleanup script. By design if the script fails to change the working directory to dev before starting the cleanup routine, it should abort with the statement "Fatal: unable to change current working directory to dev" on
/dev/stderr
, but this could never happen due to the missing directiveexit 1
next to the above report - A number of grammar typos in readme
- Broken
404
link at the first sentense of Preamble. The link has been pointing to src/which.sh instead of src/which.classic.sh ʼcause it has been initially added to the readme upon the old project tree structure which turned obsolete on which on steroids arrival
2.0.0 - 2024-07-09
- Extended edition of which function. Implemented as kinda successor of the classic edition which delivers the extra feature to locate command(s) among shell builtins, functions and aliases
- Option
-i
to ignore shell builtins, functions and aliases on lookup for extended edition ofwhich
function - Test suite for thorough testing of both editions against the bunch of 23 shell interpretters which meet
POSIX
specification and are available forLinux
andDarwin
(macOS) platforms nowadays - Dedicated tests runner to rule test suite
- Cleanup script for optional use when the tests are over
- Detailed readme covering each nuance of both editions
- MIT license
- Special shortcut links juliyvchirkov.dev/get/which.sh to get the latest release of classic edition of
which
function and juliyvchirkov.dev/get/which.sh?ed=ext to get the latest release of extended one
- Initial function has been totally revised and redesigned from scratch to mimic the external classic
which
command as close as possible - A number of commands to locate at arguments has been increased from the one and only to the unlimited (one can get the actual limits of a system with GNU xargs thru
xargs -r --show-limits </dev/null
) - Each report line for a located command is now ended with line feed
\n
- Option
-a
has been implemented to report all matches for located command(s) instead of the default first one - Option
-s
has been implemented to locate command(s) silently with no report(s) to/dev/stdout
- Extra exit status code
2
has been added to indicate an invalid option - The corresponding detailed help is provided when the function is launched with no arguments or an invalid option is specified
- The oversight at PATH parsing subroutine due to which the function has been unable to locate a command if a path of that command contains space(s)
1.0.0 - 2018-04-23
- First public release of
which
function (initially published as gist)
The project adheres to Semantic Versioning. The format of this changelog meets the guidelines of Keep a Changelog.