diff --git a/.ansible/group_vars/all/work.yml b/.ansible/group_vars/all/work.yml index 670ef9aa..85483406 100644 --- a/.ansible/group_vars/all/work.yml +++ b/.ansible/group_vars/all/work.yml @@ -44,6 +44,7 @@ tools_enabled: - webpack-cli - wkhtmltopdf - wp-cli + - wscat - yamllint - yq - zsh @@ -691,6 +692,18 @@ tools_available: 5.3: type: custom pre: WPCLI_URL="https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.phar" + wscat: + disabled: [] + check: wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) + all: + type: npm + package: wscat + binary: wscat + version: + build_dep: [] + run_dep: [] + pre: + post: yamllint: disabled: [] check: yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) diff --git a/CHANGELOG.md b/CHANGELOG.md index ac9783d6..f0577015 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ ## Unreleased +## Release 0.148 + +### Added +- Added `wscat` to work with websockets + + ## Release 0.147 ### Fixed diff --git a/Dockerfiles/work/Dockerfile-5.2 b/Dockerfiles/work/Dockerfile-5.2 index aaa6951c..4890d1f0 100644 --- a/Dockerfiles/work/Dockerfile-5.2 +++ b/Dockerfiles/work/Dockerfile-5.2 @@ -461,6 +461,13 @@ RUN set -eux \ && webpack-cli --version | grep -E '[0-9][.0-9]+' || (webpack-cli --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -724,6 +731,11 @@ RUN set -eux \ && webpack-cli --version | grep -E '[0-9][.0-9]+' || (webpack-cli --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-5.3 b/Dockerfiles/work/Dockerfile-5.3 index f2130501..95e5daba 100644 --- a/Dockerfiles/work/Dockerfile-5.3 +++ b/Dockerfiles/work/Dockerfile-5.3 @@ -533,6 +533,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -817,6 +824,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-5.4 b/Dockerfiles/work/Dockerfile-5.4 index 64345673..996bbb97 100644 --- a/Dockerfiles/work/Dockerfile-5.4 +++ b/Dockerfiles/work/Dockerfile-5.4 @@ -556,6 +556,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -855,6 +862,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-5.5 b/Dockerfiles/work/Dockerfile-5.5 index 5fe0713e..97b50f2f 100644 --- a/Dockerfiles/work/Dockerfile-5.5 +++ b/Dockerfiles/work/Dockerfile-5.5 @@ -611,6 +611,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -942,6 +949,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-5.6 b/Dockerfiles/work/Dockerfile-5.6 index 3f67cb8c..ec122afe 100644 --- a/Dockerfiles/work/Dockerfile-5.6 +++ b/Dockerfiles/work/Dockerfile-5.6 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-7.0 b/Dockerfiles/work/Dockerfile-7.0 index 3473d7c7..6fd267a2 100644 --- a/Dockerfiles/work/Dockerfile-7.0 +++ b/Dockerfiles/work/Dockerfile-7.0 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-7.1 b/Dockerfiles/work/Dockerfile-7.1 index 7f99afb3..40e9f10a 100644 --- a/Dockerfiles/work/Dockerfile-7.1 +++ b/Dockerfiles/work/Dockerfile-7.1 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-7.2 b/Dockerfiles/work/Dockerfile-7.2 index 61391f9f..68fb9710 100644 --- a/Dockerfiles/work/Dockerfile-7.2 +++ b/Dockerfiles/work/Dockerfile-7.2 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-7.3 b/Dockerfiles/work/Dockerfile-7.3 index 0072052d..98f0bbbb 100644 --- a/Dockerfiles/work/Dockerfile-7.3 +++ b/Dockerfiles/work/Dockerfile-7.3 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-7.4 b/Dockerfiles/work/Dockerfile-7.4 index 8f2c0885..3341f2c1 100644 --- a/Dockerfiles/work/Dockerfile-7.4 +++ b/Dockerfiles/work/Dockerfile-7.4 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-8.0 b/Dockerfiles/work/Dockerfile-8.0 index cf606fff..779705b7 100644 --- a/Dockerfiles/work/Dockerfile-8.0 +++ b/Dockerfiles/work/Dockerfile-8.0 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-8.1 b/Dockerfiles/work/Dockerfile-8.1 index ce0efded..30f6b6c0 100644 --- a/Dockerfiles/work/Dockerfile-8.1 +++ b/Dockerfiles/work/Dockerfile-8.1 @@ -636,6 +636,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -980,6 +987,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/Dockerfiles/work/Dockerfile-8.2 b/Dockerfiles/work/Dockerfile-8.2 index e308ace5..ddf05aa7 100644 --- a/Dockerfiles/work/Dockerfile-8.2 +++ b/Dockerfiles/work/Dockerfile-8.2 @@ -589,6 +589,13 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \ + && ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && pip install --no-cache-dir --no-compile --force-reinstall yamllint \ @@ -906,6 +913,11 @@ RUN set -eux \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \ && true +# -------------------- (npm) wscat -------------------- +RUN set -eux \ + && wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \ + && true + # -------------------- (pip) yamllint -------------------- RUN set -eux \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \ diff --git a/doc/available-tools.md b/doc/available-tools.md index d3490ec7..b8508823 100644 --- a/doc/available-tools.md +++ b/doc/available-tools.md @@ -416,6 +416,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools | [webpack-cli][lnk_webpack-cli] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [wkhtmltopdf][lnk_wkhtmltopdf] | | | | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [wp-cli][lnk_wp-cli] | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | +| [wscat][lnk_wscat] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [yamllint][lnk_yamllint] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [**yarn**][lnk_**yarn**] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | [yq][lnk_yq] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | @@ -467,6 +468,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools [lnk_webpack-cli]: ../php_tools/webpack-cli [lnk_wkhtmltopdf]: ../php_tools/wkhtmltopdf [lnk_wp-cli]: ../php_tools/wp-cli +[lnk_wscat]: ../php_tools/wscat [lnk_yamllint]: ../php_tools/yamllint [lnk_**yarn**]: https://yarnpkg.com/cli/install [lnk_yq]: ../php_tools/yq diff --git a/php_tools/wscat/README.md b/php_tools/wscat/README.md new file mode 100644 index 00000000..18df738e --- /dev/null +++ b/php_tools/wscat/README.md @@ -0,0 +1,8 @@ +# wscat + +WebSocket cat + +| Platform | Url | +|----------|------------------------------------------------------------------| +| NPM | https://www.npmjs.com/package/wscat | +| GitHub | https://github.com/websockets/wscat | diff --git a/php_tools/wscat/install.yml b/php_tools/wscat/install.yml new file mode 100644 index 00000000..2ea7be47 --- /dev/null +++ b/php_tools/wscat/install.yml @@ -0,0 +1,13 @@ +--- + +check: wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) + +all: + type: npm + package: wscat + binary: wscat + version: + build_dep: [] + run_dep: [] + pre: + post: diff --git a/php_tools/wscat/options.yml b/php_tools/wscat/options.yml new file mode 100644 index 00000000..1e1cd6d9 --- /dev/null +++ b/php_tools/wscat/options.yml @@ -0,0 +1,11 @@ +--- + +# The name of the module +name: wscat + +# Exclude module build/installation for the following PHP versions +exclude: [] + +# In order for this tool to build/install correctly, +# the following tools must have been installed first. +depends: []