* ✅🎨 follow Bats coding style for tests
- [x] renamed working directory variable to `HAS_TMPDIR`
- [x] explicitly calling has binary
- [x] Only using `[[ ]]` for regex matches
* ✨ add coreutils and archiving utilities to known commands
- [x] command mapping `*coreutils` to `gnu_coreutils`
- [x] ✅ add test for gnu_coreutils
- [x] 💚 add archiving packages to travis
- [x] ✅ add test for archiving commands
* ✨ add utilities `hub` and `zip`
- [x] add custom processing for `hub` and `zip`
- [x] ✅ add tests for `hub` and `zip`
* adding restyled.io 🔧 config
* ✨ add dynamic `-V` check
- [x] 👌 update 'ab' to use dynamic `-V`
- [x] 👌 update 'go' to use dynamic `arg version`
- [x] 🚨 general whitespace and whitespace in command subsitution
- [x] [SC2004] 🚨 `$`/`${}` is unnecessary on arithmetic variables.
- [x] ✅ make `hub` test conditional on command found
* [SC2196] Use grep -Eegrep is non-standard and deprecated.
* [SC2086] Double quoting
Double quote to prevent globbing and word splitting.
* [SC2059] printf syntax
Don't use variables in the printf format string.
Use printf "..%s.." "$foo".
Update matching test to not assume whitespace is <space>
* [SC2002] Useless cat.
Consider 'cmd < file | ..' or 'cmd file | ..' instead.
* Update Unicode PASS/FAIL output
- [x] NEW variables for 'checkmark' and 'fancy x' and tput colours
- [x] eg: `checkmark` = `\342\234\223`
- [x] eg: `PASS=${txtbold}${txtgreen}${checkmark}${txtreset}`
- [x] update `printf` statements to use `%b` for unicode variables.
- [x] Using readonly variables for
- [x] $BINARY_NAME and $VERSION
- [x] $PASS and $FAIL
- [x] refactor `.hasrc` file reading
- [x] [SC2002] Useless cat
- [x] Add new BATS tests for Unicode output
* Repo scaffolding - shellscript filetype
- [x] Add shellscripts to `.editorconfig`
- [x] Add shellscripts to `.gitattributes`
* Refactored tests to use consistent unicode glyphs.
Details:
* Freshen Makefile and update README.md
- [x] Add `sudo` to revelvant commands
- [x] Use named languages (bash) in fenced codeblocks
- [x] Use `console` in fenced codeblocks for command output
- [x] Use `install` with permission mode
The permissions on `has` were 777 from `git clone`.
- [x] Add option to use $PREFIX
What if I don't want to install to /usr/local/bin?
`make PREFIX=$HOME/.local install` now works.
- [x] Add `update` target for `git pull`
- [x] Include .PHONY targets
* Freshen Makefile and update README.md
- [x] Add `sudo` to revelvant commands
- [x] Use named languages (bash) in fenced codeblocks
- [x] Use `console` in fenced codeblocks for command output
- [x] Use `install` with permissions set
The permissions on `has` were 777 from `git clone`.
- [x] Add option to use $PREFIX
What if I don't want to install to /usr/local/bin?
`make PREFIX=$HOME/.local install` now works.
- [x] Add `update` target for `git pull`
- [x] Include .PHONY targets
- [x] Add tests for Makefile changes
- [x] Uses `bats` variables for directories
- ✓ make install creates a valid installation
- ✓ ..even if has is missing from directory
- ✓ make update runs git pull
* Update .hastest.bats
temp remove "git pull" check.
* Update travis to use bats-core 1.10
Do not be concerned about dirty working tree when running make update.
* Change version output to non-blinking.
* Update travis to use bats-core 1.10
Do not be concerned about dirty working tree when running make update.
* Working makefile
* Use `[[` and `@` for the $lines match.
* `make install` MacOS friendly again
Support Colors #12
* added: colors
No more echo with variables in them. Think of it like the Holocaust... Never. Again.
* update: removed color codes from tests
No need to install anything, no need to hit any url. all you need is bash. Many rough edges, many commands missing. there are potential unsafe operations like eval. but still feels much simpler than previous edition.