=====================================================================
Excited to bring V5 to life. This includes some BREAKING CHANGES to
several aspects of ZSH-type scwrypts. Please refer to the readme
for upgrade details (specifically docs/upgrade/v4-to-v5.md)
--- New Features -------------------------
- ZSH testing library with basic mock capabilities
- new scwrypts environment file format includes metadata and more
advanced features like optional parent env overrides, selection
inheritence, and improved structurual flexibility
- speedup cache for non-CI runs of ZSH-type scwrypts
- ${scwryptsmodule} syntax now allows a consistent unique-naming
scheme for functions in ZSH-type scwrypts while providing better
insight into origin of API calls in other modules
- reusable, case-statement-driven argument parsers in ZSH-type scwrypts
--- Changes ------------------------------
- several utility function renames in ZSH-type scwrypts to improve
consistency
- documentation comments included in ZSH libraries
- ZSH-type scwrypts now allow library modules to live alongside
executables
(zsh/lib still supported; autodetection determines default)
--- Bug Fixes ----------------------------
- hardened environment checking for REQUIRED_ENV variables; this removes
the ability to overwrite variables in local function contexts
25 lines
447 B
Bash
25 lines
447 B
Bash
#####################################################################
|
|
|
|
utils.os.is-macos() { uname -s | grep -q 'Darwin'; }
|
|
|
|
#####################################################################
|
|
|
|
utils.open() {
|
|
local OPEN
|
|
for OPEN in \
|
|
xdg-open \
|
|
open \
|
|
;
|
|
do
|
|
command -v ${OPEN} &>/dev/null && break
|
|
OPEN=
|
|
done
|
|
|
|
[ ${OPEN} ] \
|
|
|| echo.error 'unable to detect default open command (e.g. xdg-open)' \
|
|
|| return 1 \
|
|
;
|
|
|
|
$OPEN $@
|
|
}
|