=====================================================================
--- Bug Fixes ----------------------------
- fixed a bug which emerged from the latest version of github's
actions/runner-images
=====================================================================
Increased non-scwrypts-runtime compatibility and improved clarity
in user environments after sourcing the scwrypts.plugin.zsh.
--- New Features -------------------------
- added experimental support for --output json
- added 'scwrypts --list-groups' to output the SCWRYPTS_GROUPS value
- added 'scwrypts --config' to be `eval`-ed in non-scwrypts-runtime zsh
--- Changes ------------------------------
- removed config variables which pertained to old scwrypts
- removed deprecated --no-log
- cleaned up environment requirements and improved import saftey for
scwrypts.plugin.zsh; scwrypts is now *required* on $PATH in order to work
- refactored group configuration to match external group configuration
(configuration now in scwrypts.scwrypts.zsh rather than zsh/lib/config.group.zsh)
- plugins/kubectl now forces an unalias of `f` (for fluxcd) on load
- the 'use' command now supports the '-c' short flag for ease of quick
use
- upgraded max supported python version to 3.12; dropped support for
python 3.9 (>3.10 required)
- remove old references to SCWRYPTS_ROOT in favour of SCWRYPTS_ROOT__scwrypts
- SCWRYPTS_LOG_LEVEL setting is now forwarded when using the SCWRYPTS__RUN
meta execution function
=====================================================================
--- Changes ------------------------------
- updated python scwrypts API to use latest pattern established in the
nodejs library
- SCWRYPTS_ROOT__scwrypts is now supports loading with each run and
detects managed installations vs manual installations; this now means
SCWRYPTS_ROOT can no longer be injected to scwrypts (this was a v2
legacy support thing and probably does not apply to you)
--- New Features -------------------------
- pypi/scwrypts )
added 'get_generator' API to testing utilities to provide a nice
way to include default generator options
--- Bug Fixes ----------------------------
- scwrypts groups which use a required environment name regex no longer
load specialized static files outside of the required environments.
=====================================================================
DEPRECATION REMINDER!
The following functions and APIS are no longer available:
- FZF_HEAD : use FZF as a drop-in replacement
- FZF_TAIL : use FZF as a drop-in replacement
- SCWRYPTS__GET_RUNSTRING__zsh_v3 : upgrade to zsh/scwrypts v4
runstrings
--- Bug Fixes ----------------------------
- removed legacy INFO references in plugins/kubectl
- the zsh-builder plugin (CTRL+Y) now show clean helpdocs (no more
visual terminal artifacts)
--- New Features -------------------------
- differentiate manual / managed versions of scwrypts in versioning;
this will prevent 'scwrypts --update' from operating against managed
installations
- created SCWRYPTS__GET_RUNSTRING__zsh__generic to provide an easy way
to write custom runstrings; this will do all the nice things default
zsh/scwrypts v4 do (multiflag separation, help flag injection, USAGE
definitions, and required MAIN() {} wrapper).
=====================================================================
--- Bug Fixes ----------------------------
- removed an error message when using installation through aur
=====================================================================
--- New Features -------------------------
- GitHub Actions now autodetects groups within the "$GITHUB_WORKSPACE"
=====================================================================
--- New Features -------------------------
- adding variables of the format `^SCWRYPTS_GROUP_LOADERS__[a-z_]\+=`
will let those files be explicitly sourced during run (this should
allow custom group usage in CI)
=====================================================================
--- New Features -------------------------
- Github Actions integration from 3.7.0 and up!
```yaml
# try it out in gh actions
- uses: wrynegade/scwrypts@main
with:
version: v3.7.0
scwrypt: --name hello-world --group scwrypts --type py
args: --message "hello from github actions ci <3"
```
--- New Scripts --------------------------
zsh/helm )
smart helm template functions (simply pass a filename)
- get-template
- update-dependencies
--- Changes ------------------------------
- CHECK_ENVIRONMENT now uses proper argument parsing
- scwrypts/plugins loaded by setting in config or environment:
SCWRYPTS_PLUGIN_ENABLED__plugin=1
- SCWRYPTS__GET_PATH_TO_RELATIVE_ARGUMENT was missed in the v2->v3
refactor and has now been reincluded as SCWRYPTS__GET_REALPATH
=====================================================================
--- Changes ------------------------------
- Adjusted USAGE (from zsh/lib/utils/io.zsh) to allow dynamic variable
insertion in help dialogues by setting USAGE__<help-group> and using
the syntax listed
- Various quality-of-life changes and and fixes to experimental kubectl
plugin
--- Bug fixes ----------------------------
- sourcing 'scwrypts.plugin.zsh' no longer sets __SCWRYPT=1 in your
current environment
=====================================================================
--- New Features -------------------------
- Introducing an optional plugin for `kubectl` facilitation! Check out
'plugins/kubectl/README.md' for more details.
--- Changes ------------------------------
- The function which lists all available scwrypts now ignores
directories with a top-level base called "plugins." If this is a name
conflict, you will need to define your own
`SCWRYPTS__LIST_AVAILABLE_SCWRYPTS__<group>` function!
(ref the changes in 'zsh/lib/scwrypts/run.module.zsh')
=====================================================================
Notice the major version change which comes with breaking changes to
2.x! Reconstructs "library" functions for both python and zsh scwrypts,
with changes to virtualenv naming conventions (you'll need to refresh
all virtualenv with the appropriate scwrypt).
--- Changes ------------------------------
- changed a naming convention across zsh scripts, particularly
removing underscores where there is no need to avoid naming clash
(e.g. 'zsh/lib/utils/io.zsh' renames '__STATUS' to 'STATUS')
- moved clients reliant on py.lib.http to the py.lib.http module
- python scripts now rely on py.lib.scwrypts.execute
- updated package.json in zx scripts to include `type = module`
- 'scwrypts --list' commandline argument now includes additional
relevant data for each scwrypt
- environment variables no longer add themselves to be staged in the
'.env.template'
--- New Features -------------------------
- new 'use' syntax for disjoint import within zsh scripts; took me
a very long time to convince myself this would be necessary
- introduced scwrypt "groups" to allow portable module creation;
(i.e. ability add your own scripts from another repo!)
- py.lib.scwrypts.io provides a combined IO stream for quick, hybrid
use of input/output files and stdin/stdout
- py.lib.fzf provides a wrapper to provide similar functionality to
zsh/utils/io.zsh including fzf_(head|tail)
- improved efficiency of various scwrypts; notably reducing runtime
of scwrypts/environment sync
- improved scwrypts CLI by adding new options for exact scwrypt
matching, better filtering, and prettier/more-detailed interfaces
--- New Scripts --------------------------
- py/twilio )
basic SMS integration with twilio
- send-sms
- py/directus )
interactive directus GET query
- get-items
- py/discord )
post message to discord channel or webhook
- post-message