diff --git a/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc b/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc index 8766c87..a0510ce 100644 --- a/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc +++ b/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc @@ -48,41 +48,54 @@ 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 -0u7l6fVcw67qTNi+ReIhqbBkZNajg60dPlLw -=oNyI +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 +Zw== +=yjSo -----END PGP PUBLIC KEY BLOCK----- diff --git a/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc.sig b/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc.sig index cc52d00..12c5e36 100644 Binary files a/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc.sig and b/.gt/remotes/tegonal-scripts/public-keys/signing-key.public.asc.sig differ diff --git a/.gt/remotes/tegonal-scripts/pulled.tsv b/.gt/remotes/tegonal-scripts/pulled.tsv index fc07d33..9b16728 100644 --- a/.gt/remotes/tegonal-scripts/pulled.tsv +++ b/.gt/remotes/tegonal-scripts/pulled.tsv @@ -1,36 +1,36 @@ -#@ Version: 1.1.0 -tag file relativeTarget tagFilter sha512 -v4.8.0 src/releasing/sneak-peek-banner.sh ../lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh .* 4fdf8062c425eeb5535ee5af2f18843b772054b7bd05fd1b2d0af6a4f5716280c0528168a7ede5952f6bde5f4bf94ae16d4948f5afbc4d7be5ca15da90354b0a -v4.8.0 src/releasing/prepare-files-next-dev-cycle.sh ../lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh .* 2dbedf1635b613090fededd2c748af8d333472bd83fa37aa37a335eb70eb4f19bb9f99679e5ac5a09e7319f165a23edff6bb7b1657828152296fcd71094ddcca -v4.8.0 src/releasing/update-version-issue-templates.sh ../lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh .* a5afe580f7708b6489d32d5588d7b1efae7dd4aced70090f3dd646dd9460f3f6e9cdf980adc3d1d376182fb4cf09ef47737d782e72c8d93709c1f0585b25f028 -v4.8.0 src/releasing/pre-release-checks-git.sh ../lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh .* 73ae77317c88e29c36a8aab6aab597d40c0142b86cbb281f9f79751b0b70f48b2e0aed28edd309e0eb05807730a60ad9993ba2173f4fb06e8a8987e214770408 -v4.8.0 src/releasing/toggle-sections.sh ../lib/tegonal-scripts/src/releasing/toggle-sections.sh .* d31bae053eb3903492c8958b058187715e7464bc297eff9dbe26ae0ad4083447297384eaf8e38ab922f40b4da33acd7c92fea69a2b8711c298855f2d5e75238e -v4.8.0 src/releasing/release-template.sh ../lib/tegonal-scripts/src/releasing/release-template.sh .* 5ea8a51cdb056f799a643c27500c696c7b68824509daed1e3ceda40d909f0f64e75b383fc00f1b9ffd59b00850da96ea5d1dc374a33acb1749f1feb59dca023b -v4.8.0 src/releasing/deduce-next-version.source.sh ../lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh .* 40c4239dc0d89d89f2ff5a0fabc75a13b05533d08274eee1d5f05ec314d902ba5765dd120207ecd14baa57708089cb5ba6fc39f977e27d61d81fce691f5223cb -v4.8.0 src/releasing/update-version-common-steps.sh ../lib/tegonal-scripts/src/releasing/update-version-common-steps.sh .* 2f1a993a590347e1299f76f1cf67886e8b460f16ca67aaa16848a55d5eff372eea7796f6082d668ceba6188bf03de7642281f67ff8b48e9d0515a671f82244b2 -v4.8.0 src/releasing/update-version-README.sh ../lib/tegonal-scripts/src/releasing/update-version-README.sh .* 25870cf547d45ada9514da58b1a788f25b6f5ae66b393b79277511ee80c1a2c5bb6f62a5625bead12c1e44eb2eaa90bf28a4568ed09427deb8414c6d580c1a40 -v4.8.0 src/releasing/update-version-scripts.sh ../lib/tegonal-scripts/src/releasing/update-version-scripts.sh .* d4a500c7a3a158e9fd3cb8e376f4899f447c5e7fab37a722892cf87bdb28ebb902e9845a803818309913624dcb4e3d3c324bf4ce3eb2cb88b746b67e234f89ad -v4.8.0 src/releasing/common-constants.source.sh ../lib/tegonal-scripts/src/releasing/common-constants.source.sh .* 0bae7fe71022290510d3b1b93473ff1274146056982a9a21260fccdcadecbe886a7bff887ae83f419048b2e18e136e54b7f164a9e9dc837d090e3a83f77237eb -v4.8.0 src/releasing/prepare-next-dev-cycle-template.sh ../lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh .* 22e9f977ea0b016b50169a852ae39ada5427f31590e5c1b8d5820098d9ef7183a9d1a31b286051d333b066bccff326d5c21c1447241b724f900e2a918c51ff71 -v4.8.0 src/releasing/release-files.sh ../lib/tegonal-scripts/src/releasing/release-files.sh .* 74695b1b7832de7e5332a50a553a3ddf1dd6389cb5bdf6124c73bfc94505bc7552f246449d8d88f4d8f3b53bcaafa20635197e8b0b3e3ae91db29b39d457d983 -v4.8.0 src/utility/io.sh ../lib/tegonal-scripts/src/utility/io.sh .* f9e64984e5c3d89afe95d4839299907840a0c0b8422011156afed0d65de251c16038ad065cf81d6077125bf8e5c27f15f8458f02231b32b97f843cffd67b2cd3 -v4.8.0 src/utility/array-utils.sh ../lib/tegonal-scripts/src/utility/array-utils.sh .* 6acc472b1394ebf25dc8a3e985a5b3fcca8f50c7521758a0bd0246687a4dc37919d4935848ae782ad7b9929587bcd1027d33a901e73cecc917c3dccc15c56f76 -v4.8.0 src/utility/parse-utils.sh ../lib/tegonal-scripts/src/utility/parse-utils.sh .* cab7c45b76e3b62af0ade16d191f13f5114cd7a317cdeb3bc492c8737853ebf576a07b913ebfa5a0bf46264de7e57438d6a67b9756924a012b61ee43a2ac87c9 -v4.8.0 src/utility/http.sh ../lib/tegonal-scripts/src/utility/http.sh .* 97094389363aa948037162306d7c14addfe267edb536b4e5c4e6ac59ae4793593672ee5ab05a442e808345b163b9797d533a979fbc426da64df32a8c12bba9be -v4.8.0 src/utility/execute-if-defined.sh ../lib/tegonal-scripts/src/utility/execute-if-defined.sh .* 21e02956ae6408729d9a6fd84688986e33722f5a8104c8e62ea3f8af1bd50507088b7052a8c828a9078f8b05823f41a5ff55c9db247f9b6f52477d413faaea22 -v4.8.0 src/utility/git-utils.sh ../lib/tegonal-scripts/src/utility/git-utils.sh .* b80573c011d9efab5ceec099af871ffc6850769e49b249fd3a1b0d0de1697313f36f2f6fe9222aa777d0b53a9ebcb476a551c644d895537c918a68e9b865bf1d -v4.8.0 src/utility/gpg-utils.sh ../lib/tegonal-scripts/src/utility/gpg-utils.sh .* 31f56c36cf86b81fdf5a9b533a97b1b1a2419654fcbef4b66a76523567e2846ba9f275d1add0f44bd40ec2adc54269aec86f0a79705591f79a95cfb763fde2d9 -v4.8.0 src/utility/log.sh ../lib/tegonal-scripts/src/utility/log.sh .* 994fde5d5c8118b2220b800a42a44548fe03a7aa0e228b8b1004ce2aec4488d78f33ffebfbf45733cddebf5abb454ce41814990381a76838d72d52946ee8e2ff -v4.8.0 src/utility/parse-fn-args.sh ../lib/tegonal-scripts/src/utility/parse-fn-args.sh .* 559325cb7b5be3d82366176f2d8a6c874d4ac8d751f98cb09d49a4726df23df019f68648ed2c385e3328314b14c44c4f9e423121c18b1f711b3946dd834fb93a -v4.8.0 src/utility/update-bash-docu.sh ../lib/tegonal-scripts/src/utility/update-bash-docu.sh .* 3c59103d1f3806f06051f0899ac41add7f30ccb6a16cdb9e95678c05f0bc65e43ef77b896117a55c73f82486abc75e0cc953a7afb00d863b4fb91c6bd08315ee -v4.8.0 src/utility/parse-args.sh ../lib/tegonal-scripts/src/utility/parse-args.sh .* d9aac8818f924215579799273c0c36ab49df6256fdc12e12487af35cbda60f383fc945b644101b892c39aad4f91d8ffe71e72f4d19657ff3974c42d8234cfdf2 -v4.8.0 src/utility/checks.sh ../lib/tegonal-scripts/src/utility/checks.sh .* f97f93108c2ef6d34983bb505c6bb02ad211443d04f7e78a95f51d003884907bbd9f65a317c23317e6d9807b55a1e30a226c9a4c3694761cf0055a7437b70138 -v4.8.0 src/utility/parse-commands.sh ../lib/tegonal-scripts/src/utility/parse-commands.sh .* 578c49443762fb07a0b5fc274f3efb36cc744e3ff0e26b77aa2da4e60d383796aafa9e61562e5f8ec44b59cd767473e228e4d58f05c6584f82a5373970443c9c -v4.8.0 src/utility/replace-snippet.sh ../lib/tegonal-scripts/src/utility/replace-snippet.sh .* a5daf840fd8ab8616113f37317ae7dbe3f149611d2e49065a978f9507935a5fde31cf55ac75e6073a134d5ae778f5379ff92c41ccbc5e08920669c1ec71f2404 -v4.8.0 src/utility/ask.sh ../lib/tegonal-scripts/src/utility/ask.sh .* ab4f226743edbdc461cc410a5efec8262e8f3d218852fbad25adfa6d12fc1b2d8ca4634ea2d0161de9cb551596882ac951f7eed7581e54eeb1d5573dfd0d55a4 -v4.8.0 src/utility/replace-help-snippet.sh ../lib/tegonal-scripts/src/utility/replace-help-snippet.sh .* 6a16803aab40da4a471c1faf9b47acc2d0f813333c9e16a60c6a000fb9100b8f384ff2e6c65c9579a3527a741d2b557e89b5cef2c6483c6329833239598e4c72 -v4.8.0 src/utility/source-once.sh ../lib/tegonal-scripts/src/utility/source-once.sh .* 2f2b91c5a0fc6175ef483461ce006405fc39a84bc52b912540ff64c960961af0b5c223994aa458a1c31f8bf7119f40f23c2b6078d83a10812d77fb883506fce4 -v4.8.0 src/utility/recursive-declare-p.sh ../lib/tegonal-scripts/src/utility/recursive-declare-p.sh .* bb6478e5d554f8333beb2c5d0bd54d3b00937db4c3711e92de799992b1eed4f81aa1670aec546f2532eb75842cdbcd630ad4f4b5bcb22360398fad114f553d55 -v4.8.0 src/setup.sh ../lib/tegonal-scripts/src/setup.sh .* 7174791445a8d10132352b6a3e110bce9f22d4dde3a4c0a60ad3d2ec5e9ae5209fb8e6c385c361dd700ce6f1d038e48c19d71fc286d2c1f34e39ae24c7cc73f1 -v4.8.0 src/ci/install-shellcheck.sh ../lib/tegonal-scripts/src/ci/install-shellcheck.sh .* 6d746c1ed8057bfa3e619c6ef7ef6ab583bb2950548d41bbfa945d7ec8deb8d4615f567b2291a6a83f9036b2017bb8ae7ee98d391e0e3d1099eedaada86a83df -v4.8.0 src/qa/run-shellcheck.sh ../lib/tegonal-scripts/src/qa/run-shellcheck.sh .* 6b21f333fbabf959b163abb380b41d594a1ec49efb73a999cb986f7706711256dd37d5ee2a3a73d1e7fd219b410e7a1ef1a9571d0b36fa72fca4b7c0cf4a2a86 +#@ Version: 1.2.0 +tag file relativeTarget tagFilter hasPlaceholder sha512 +v4.11.0 src/releasing/sneak-peek-banner.sh ../lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh .* false 4fec1d3fc4bc3f7f1f4afd69a29cedacd88b7ce9d4f5a58f0ce9649b010c69b61fa65cd25832025e989a5cb3a288a3ebce86c81640ed4fb4b7cd5b2ac94b6fe5 +v4.11.0 src/releasing/prepare-files-next-dev-cycle.sh ../lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh .* false 7777a4d93a1ecc187d899151a3a3317d46327642cc2be1a7289d0bb1fc363f0a02e22170e5ee07b25013f632f2f8f56397be50c440496d11abb823d0d77bc726 +v4.11.0 src/releasing/update-version-issue-templates.sh ../lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh .* false f4a5bd5f8ef55cc00a764628fe4ffeee978a372d83820ca4b122861e0ad3039cef0addf9f6a1650d54f6c691ef6ba3ca056dbde3ee3f38cfb8dec1c96c392641 +v4.11.0 src/releasing/pre-release-checks-git.sh ../lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh .* false 40fad4272796aa1d2bd17d554af9a17c75ee9a1c93c8db9b46848acdbc8b577dd7d6dd123d7450cb6793d08ddd06bd0e92ee144f28c119fc5c438f124ecbe2df +v4.11.0 src/releasing/toggle-sections.sh ../lib/tegonal-scripts/src/releasing/toggle-sections.sh .* false 73355bafc009cdd7744676ec8e785e4dcc7460dac6923ad349fbbc908b1c0be9bc4d2393b80dff0ae89abf40a13da824a9ec073f8a0ec69483db8b890fbee9f2 +v4.11.0 src/releasing/release-template.sh ../lib/tegonal-scripts/src/releasing/release-template.sh .* false 8b168cb6db18afef4a60739456ae6e859da017829310ff7d58bba416e5ae2dbabe91bacaaee4d623dca610e661465a9f53bd2f94f17bf67ea0d3ffc2c1a9ce79 +v4.11.0 src/releasing/deduce-next-version.source.sh ../lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh .* false 307724984b4139ea7a507ad3e1136a2e322e90ef86b86bfc45ea9e286c054e0dc53fe242e24ba9d6936190baa68b1349b677e419203b2300752ae0a77d0dfa5c +v4.11.0 src/releasing/update-version-common-steps.sh ../lib/tegonal-scripts/src/releasing/update-version-common-steps.sh .* false ec647b7fd97053afa7f2452df81c7f4159c1c7990d0ade1d46bbf690f8dbf6c68b2768b209abd602e03b493a590c196ccd2fe0831ff232d39663e8716adb89df +v4.11.0 src/releasing/update-version-README.sh ../lib/tegonal-scripts/src/releasing/update-version-README.sh .* false 2ca26295a6f735c872fb2f466f7af35ab1bfff389b93025d6f0eb5f535d2be769c53fe46100504a80ed85b8129b4326c2373531927fe04218aec2ccff8bad8da +v4.11.0 src/releasing/update-version-scripts.sh ../lib/tegonal-scripts/src/releasing/update-version-scripts.sh .* false 91d21ded1587945983a82a777100e929545e2ea7cd29e2bfbd6488303d6a5ee904e59f640ee9a815e3ef8938182473c315eec258103bdee402bc53351fd1c57f +v4.11.0 src/releasing/common-constants.source.sh ../lib/tegonal-scripts/src/releasing/common-constants.source.sh .* false f9fc85247868b31544725a06d68783058329192b90a7f970d7d59acbb137fbf0694fdb094e4b18cb6de36de174ca42bf30c55dfb16283fcd4ac0345e35fd5b55 +v4.11.0 src/releasing/prepare-next-dev-cycle-template.sh ../lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh .* false 729ec5ea12b93225a06c5ba09e5ae4e4a61ff5ccd72d716c02b7d5115a7de12cd5189bf49d84dab4bf6f970361dedb37e65a9a3c0ed4ec0bcd1593c61de82cd0 +v4.11.0 src/releasing/release-files.sh ../lib/tegonal-scripts/src/releasing/release-files.sh .* false 65ed9c3bfd92e3250db41090a2bee9861d678750c5d215d6c73932e0ed92cb79300e242eeb53bc6fd81782358f7cc6f4d5b46c59271c8ba34950ceab315da8b2 +v4.11.0 src/utility/io.sh ../lib/tegonal-scripts/src/utility/io.sh .* false feb7b71939f4278d999fd0367489724644e89291f13a4d66e75350e19b18cafafcd2d64027ee46b125ea34e9deae1a0d1261899bca37d1134c7c1028417c4196 +v4.11.0 src/utility/array-utils.sh ../lib/tegonal-scripts/src/utility/array-utils.sh .* false 638528571b35f2a5d545a5b722a09be65ebd79dd8195adf30e31279167c19e4d8f8cbdda3d4fb388a3df3f00e2e5143b01146d5b43d64b9dc351807946317470 +v4.11.0 src/utility/parse-utils.sh ../lib/tegonal-scripts/src/utility/parse-utils.sh .* false 1bca82bd4e26b115f6fc97e3875829fa7dacb2e9600ac1454cab89a8c54dc0a0f7d4cfc9cf8ad73c61a758a41830f125c79341b9b4cca454be62102ba8092945 +v4.11.0 src/utility/http.sh ../lib/tegonal-scripts/src/utility/http.sh .* false 03612323995fc1868a4c71e829bee0a5d870ad9404a6f5318ddf31710d71aeae38b84b08a52af51b605acefdae405714f06613be8e71956e1fbf707a5969ef49 +v4.11.0 src/utility/execute-if-defined.sh ../lib/tegonal-scripts/src/utility/execute-if-defined.sh .* false af3211110d4c4477b6ec23b934c2a677b591711d79411547f5f2013a8960ddc021750c16a410bd9990c11c3faa47ec00134304e49b658ec50323baaffd53a888 +v4.11.0 src/utility/git-utils.sh ../lib/tegonal-scripts/src/utility/git-utils.sh .* false 3c9481c78de9be1d214f5052325c88b4ff29e32e42c7c5857f73fe4fa6b96b09e44c50cb53082db9bdab27b302782cc0dcff6b9615b982b9a38feeaa064679e1 +v4.11.0 src/utility/gpg-utils.sh ../lib/tegonal-scripts/src/utility/gpg-utils.sh .* false 9f03d8101701642f4d34f0b51aeb6cf149723b9c34f4e77b4c5d3f2f1c58bff52439df93652c923edab3ec9f3e3381a56e782caecb0636a438c28b078742830f +v4.11.0 src/utility/log.sh ../lib/tegonal-scripts/src/utility/log.sh .* false ce9e961e70e1d39ce7706c8cbe652c88e7e65808c324dd83d2f605c5622ca6ebbc766d5ddfc8c8f775bfbb6b408c214c298d0c255d493d9ee11e466798438c36 +v4.11.0 src/utility/parse-fn-args.sh ../lib/tegonal-scripts/src/utility/parse-fn-args.sh .* false 2e1ac93067cf7f03b37050cea74c804c72738e5a0e577d8a6b45f2a0cca9d2e7dbd1b70ba11977aebeee8dcaa1246e7e9d5900fe1135951f587005158fc6687a +v4.11.0 src/utility/update-bash-docu.sh ../lib/tegonal-scripts/src/utility/update-bash-docu.sh .* false 1ef711fc3050b614815973d7c64e3fcb259f4a57794ed72f0a98f4d2c8f44d9461100c086937846bbfbd820df03b95de58b7703580ff205eb3c5b42da4021280 +v4.11.0 src/utility/parse-args.sh ../lib/tegonal-scripts/src/utility/parse-args.sh .* false 4153da10909d157717649b7812cde6abb5fa0b24fb2393110c972ff5f7bd390befe9e63888b40caabd6c4db443770d3e574189f98c56cdf425c9a6840a656994 +v4.11.0 src/utility/checks.sh ../lib/tegonal-scripts/src/utility/checks.sh .* false e15b73e0f5e8debcf26f2dc2e0ca8c482449824bff08d6e4a30e131122a0f5c8019e9f2b4363b18f7d72644b5e1a8f19cf00ec08ec72a4ff16b5e0bea84ec2fe +v4.11.0 src/utility/parse-commands.sh ../lib/tegonal-scripts/src/utility/parse-commands.sh .* false 148fa6afaa77236258545b33912011a0001ca31c9b7699c99ad8ca13e4db992487bb0171ec482fecbb6c6e75ed6c19f7a31328b2f1e8c9dcfa8f826adfa5504b +v4.11.0 src/utility/replace-snippet.sh ../lib/tegonal-scripts/src/utility/replace-snippet.sh .* false 4a2d1fb7577d50187f12ceee5400d7e379fda5d72c20a65b0774a573e8985572e8540a8c373ff47eb82b846c986d68b1f02bb4d1758d3c8721ad448586849c94 +v4.11.0 src/utility/ask.sh ../lib/tegonal-scripts/src/utility/ask.sh .* false a89d4ff74367ea9bbd3fd62ca918e69556ab69d527fb03cd03b028cae7556f5e7d0b09369721514aff2ad01099dfad9ceaab987a497b060be3897929bce3bf50 +v4.11.0 src/utility/replace-help-snippet.sh ../lib/tegonal-scripts/src/utility/replace-help-snippet.sh .* false 8d6ec8356eee2f049caeab11df08971f96297f3f4ebd362537d7478616efa0c3adc6f525a25acd88f8933c97821230c7749065d2f9c7981185cae726090d6afd +v4.11.0 src/utility/source-once.sh ../lib/tegonal-scripts/src/utility/source-once.sh .* false 15ccc27799d882d796c9214ee991b115680e3487407224c84afef5158c5b83b05e2a709e2317e43db8344ff3806e4a1a81aec6d741fda4115e9a5c4248a50f80 +v4.11.0 src/utility/recursive-declare-p.sh ../lib/tegonal-scripts/src/utility/recursive-declare-p.sh .* false 140d2f5bfcb64f3f07bb772293dbc1a0fd4a89fc4c07e2bcacd6ff3aa00cab3c7fd7b77b38cf69e35025d48ae5b1ca2d4dc3f82955c0bf84db743093c974e3d1 +v4.11.0 src/setup.sh ../lib/tegonal-scripts/src/setup.sh .* false 259c46ea62afe5284a6e39fbd77343b32f98579584506d519c47fedee471adcaf91addaab10cc2804de2a4bfe119a6682a0d7952a456e4a617b2727ba541e8b0 +v4.11.0 src/ci/install-shellcheck.sh ../lib/tegonal-scripts/src/ci/install-shellcheck.sh .* false 3c66d1658280b93564749ee715f87c8e9ffba62168c3de79bd70f6ecfb9427a84bccd4d085e9cf50588724a7b8c5a1671bb769162f427a677011a02750d5b223 +v4.11.0 src/qa/run-shellcheck.sh ../lib/tegonal-scripts/src/qa/run-shellcheck.sh .* false 05a51cf6a9b9b51b8d99c234cbfa6525549d8dceaca8f6a1ac24b8ad14d0eea0552a3d91637b3011bb1008ee4f3499994b36dd080416b0d5c2333ddc647565e0 diff --git a/lib/tegonal-scripts/src/ci/install-shellcheck.sh b/lib/tegonal-scripts/src/ci/install-shellcheck.sh index ab96939..a030240 100755 --- a/lib/tegonal-scripts/src/ci/install-shellcheck.sh +++ b/lib/tegonal-scripts/src/ci/install-shellcheck.sh @@ -6,10 +6,10 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # -# installs shellcheck v0.10.0 into $HOME/.local/lib +# installs shellcheck v0.11.0 into $HOME/.local/lib and sets up a symlink in $HOME/.local/bin # ####### Usage ################### # @@ -42,26 +42,27 @@ function die() { exit 1 } -declare currentDir currentDir=$(pwd) tmpDir=$(mktemp -d -t download-shellcheck-XXXXXXXXXX) || die "could not create a temp directory" cd "$tmpDir" -shellcheckVersion="v0.10.0" +shellcheckVersion="v0.11.0" tarFile="shellcheck-$shellcheckVersion.linux.x86_64.tar.xz" -expectedSha="6c881ab0698e4e6ea235245f22832860544f17ba386442fe7e9d629f8cbedf87 $tarFile" +expectedSha="8c3be12b05d5c177a04c29e3c78ce89ac86f1595681cab149b65b97c4e227198 $tarFile" echo "$expectedSha" >"$tarFile.sha256" +url="https://github.com/koalaman/shellcheck/releases/download/$shellcheckVersion/$tarFile" +echo "going to download shellcheck $shellcheckVersion from: $url" if command -v curl >/dev/null; then - curl -L -O "https://github.com/koalaman/shellcheck/releases/download/$shellcheckVersion/$tarFile" + curl --fail -L -O "$url" || die "could not download shellcheck" else # if curl does not exist, then we try it with wget - wget --no-verbose "https://github.com/koalaman/shellcheck/releases/download/$shellcheckVersion/$tarFile" + wget --no-verbose "$url" fi sha256sum -c "$tarFile.sha256" || { actualSha="$(sha256sum "$tarFile")" die "checksum did not match, aborting\nexpected:\n%s\ngiven :\n%s" "$expectedSha" "$actualSha" } -tar -xf "./shellcheck-$shellcheckVersion.linux.x86_64.tar.xz" +tar -xf "./$tarFile" chmod +x "./shellcheck-$shellcheckVersion/shellcheck" || die "could not make shellcheck executable" shellcheckInTmp="$tmpDir/shellcheck-$shellcheckVersion" @@ -85,4 +86,12 @@ fi ln -s "$shellcheckInHomeLocalLib/shellcheck" "$shellcheckBin" cd "$currentDir" -shellcheck --version + +shellcheckPath=$(command -v shellcheck) +if [[ $shellcheckPath != "$shellcheckBin" ]]; then + shellcheckCurrentVersion=$(shellcheck --version) + logError "was able to install shellcheck in %s but \`command -v shellcheck\` returns another path:\n%s\nFollowing the output of \`shellcheck --version\`:\n%s" "$shellcheckBin" "$shellcheckPath" "$shellcheckCurrentVersion" +else + shellcheck --version + printf "\033[0;32mSUCCESS\033[0m: installed shellcheck %s in %s\n" "$shellcheckVersion" "$homeLocalLib" +fi diff --git a/lib/tegonal-scripts/src/qa/run-shellcheck.sh b/lib/tegonal-scripts/src/qa/run-shellcheck.sh index f242d0a..31ae472 100755 --- a/lib/tegonal-scripts/src/qa/run-shellcheck.sh +++ b/lib/tegonal-scripts/src/qa/run-shellcheck.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # function which searches for *.sh files within defined paths (directories or a single *.sh) and @@ -19,7 +19,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/qa/run-shellcheck.sh" # @@ -43,7 +43,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" sourceOnce "$dir_of_tegonal_scripts/utility/recursive-declare-p.sh" @@ -53,9 +53,9 @@ function runShellcheck() { exitIfCommandDoesNotExist "shellcheck" "execute $dir_of_tegonal_scripts/ci/install-shellcheck.sh (if pulled) or see https://github.com/koalaman/shellcheck#installing" if (($# < 2)); then - logError "At least two parameters need to be passed to runShellcheck, given \033[0;36m%s\033[0m\nFollowing a description of the parameters:" "$#" - echo >&2 '1: dirs name of array which contains paths in which *.sh files are searched' - echo >&2 '2: sourcePath equivalent to shellcheck'"'"'s -P, path to search for sourced files, separated by :' + logError "At least two arguments need to be passed to runShellcheck, given \033[0;36m%s\033[0m\nFollowing a description of the parameters:" "$#" + echo >&2 '1: paths name of array which contains paths in which *.sh files are searched' + echo >&2 "2: sourcePath equivalent to shellcheck's -P, path to search for sourced files, separated by :" echo >&2 '3... args additional args which are passed to the find command' printStackTrace exit 9 diff --git a/lib/tegonal-scripts/src/releasing/common-constants.source.sh b/lib/tegonal-scripts/src/releasing/common-constants.source.sh index 9473b7b..89e78d1 100644 --- a/lib/tegonal-scripts/src/releasing/common-constants.source.sh +++ b/lib/tegonal-scripts/src/releasing/common-constants.source.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under European Union Public License 1.2 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # constants intended to be sourced into a function diff --git a/lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh b/lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh index 4ea88c3..0a14e90 100644 --- a/lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh +++ b/lib/tegonal-scripts/src/releasing/deduce-next-version.source.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # intended to be sourced into a function which expects params version and nextVersion diff --git a/lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh b/lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh index a689877..a0ea6f0 100755 --- a/lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh +++ b/lib/tegonal-scripts/src/releasing/pre-release-checks-git.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Checks that releasing a certain version (creating a corresponding git tag) makes sense: We check: @@ -22,7 +22,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # # checks releasing v0.1.0 makes sense and the current branch is main # "$dir_of_tegonal_scripts/releasing/pre-release-checks-git.sh" -v v0.1.0 @@ -34,18 +34,18 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/ask.sh" sourceOnce "$dir_of_tegonal_scripts/utility/git-utils.sh" sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" function preReleaseCheckGit() { - local versionRegex versionParamPatternLong + local versionParamPatternLong source "$dir_of_tegonal_scripts/releasing/common-constants.source.sh" || traceAndDie "could not source common-constants.source.sh" local version branch @@ -64,7 +64,7 @@ function preReleaseCheckGit() { local tags tags=$(git tag) || die "The following command failed (see above): git tag" - if grep -q --fixed-strings "$version" <<< "$tags"; then + if grep -q --fixed-strings "$version" <<<"$tags"; then logError "tag %s already exists locally, adjust version or delete it with git tag -d %s" "$version" "$version" if hasRemoteTag "$version"; then printf >&2 "Note, it also exists on the remote which means you also need to delete it there -- e.g. via git push origin :%s\n" "$version" diff --git a/lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh b/lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh index 5f7ac2c..0a55ba0 100755 --- a/lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh +++ b/lib/tegonal-scripts/src/releasing/prepare-files-next-dev-cycle.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Prepare the next dev cycle for files based on conventions: @@ -20,7 +20,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # scriptsDir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)" # sourceOnce "$scriptsDir/before-pr.sh" @@ -28,7 +28,7 @@ # # prepare dev cycle for version v0.2.0, assumes a function beforePr is in scope which we sourced above # "$dir_of_tegonal_scripts/releasing/prepare-files-next-dev-cycle.sh" -v v0.2.0 # -# function specialBeforePr(){ +# function specialBeforePr() { # beforePr && echo "imagine some additional work" # } # # make the function visible to release-files.sh / not necessary if you source prepare-files-next-dev-cycle.sh, see further below @@ -60,11 +60,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/execute-if-defined.sh" sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" diff --git a/lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh b/lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh index 278fce2..36b1ba9 100755 --- a/lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh +++ b/lib/tegonal-scripts/src/releasing/prepare-next-dev-cycle-template.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Prepares the next dev cycle based on conventions: @@ -26,46 +26,45 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" -# +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # function prepareNextAfterVersionUpdateHook() { # # some additional version bumps e.g. using perl # perl -0777 -i #... # } -# # make the function visible to release-templates.sh / not necessary if you source release-templates.sh, see further below -# declare -fx releaseScalaLib +# # make the function visible to prepare-next-dev-cycle-templates.sh / not necessary if you source it, see further below +# declare -fx prepareNextAfterVersionUpdateHook # -# # releases version v0.1.0 using releaseScalaLib as hook -# "$dir_of_tegonal_scripts/releasing/release-template.sh" \ -# -v v0.1.0 -k "0x945FE615904E5C85" --release-hook releaseScalaLib +# # prepare version 0.1.0 dev cycle +# "$dir_of_tegonal_scripts/releasing/prepare-next-dev-cycle-templates.sh" \ +# -v v0.1.0 -k "0x945FE615904E5C85" --after-version-update-hook prepareNextAfterVersionUpdateHook # -# # releases version v0.1.0 using releaseScalaLib as hook and +# # prepare version 0.1.0 dev cycle # # searches for additional occurrences where the version should be replaced via the specified pattern in: # # - script files in ./src and ./scripts # # - ./README.md # "$dir_of_tegonal_scripts/releasing/release-files.sh" \ -# -v v0.1.0 -k "0x945FE615904E5C85" --release-hook releaseScalaLib \ +# -v v0.1.0 -k "0x945FE615904E5C85" --after-version-update-hook prepareNextAfterVersionUpdateHook \ # -p "(TEGONAL_SCRIPTS_VERSION=['\"])[^'\"]+(['\"])" # -# # in case you want to provide your own release.sh and only want to do some pre-configuration -# # (such as specify the release-hook) then you might want to source it instead -# sourceOnce "$dir_of_tegonal_scripts/releasing/release-template.sh" +# # in case you want to provide your own prepare-next-dev-cycle.sh and only want to do some pre-configuration +# # (such as specify the after-version-hook) then you might want to source it instead +# sourceOnce "$dir_of_tegonal_scripts/releasing/prepare-next-dev-cycle-templates.sh.sh" # # # and then call the function with your pre-configuration settings: -# # here we define the function which shall be used as release-hook after "$@" this way one cannot override it. -# # put --release-hook before "$@" if you want to define only a default -# releaseTemplates "$@" --release-hook releaseScalaLib +# # here we define the function which shall be used as after-version-update-hook after "$@", this way one cannot +# # override it. put --after-version-update-hook before "$@" if you want to define only a default +# prepareNextDevCycleTemplate "$@" --after-version-update-hook prepareNextAfterVersionUpdateHook # ################################### set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/execute-if-defined.sh" sourceOnce "$dir_of_tegonal_scripts/utility/git-utils.sh" diff --git a/lib/tegonal-scripts/src/releasing/release-files.sh b/lib/tegonal-scripts/src/releasing/release-files.sh index daae71c..6f3b7b3 100755 --- a/lib/tegonal-scripts/src/releasing/release-files.sh +++ b/lib/tegonal-scripts/src/releasing/release-files.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Releasing files based on conventions: @@ -24,7 +24,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # scriptsDir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)" # sourceOnce "$scriptsDir/before-pr.sh" @@ -40,13 +40,13 @@ # "$dir_of_tegonal_scripts/releasing/release-files.sh" -v v0.1.0 -k "0x945FE615904E5C85" --sign-fn findScripts # # # releases version v0.1.0 using the key 0x945FE615904E5C85 for signing and function findScripts to find the files which -# ## should be signed (and thus released). Moreover, searches for additional occurrences where the version should be +# # should be signed (and thus released). Moreover, searches for additional occurrences where the version should be # # replaced via the specified pattern # "$dir_of_tegonal_scripts/releasing/release-files.sh" \ # -v v0.1.0 -k "0x945FE615904E5C85" --sign-fn findScripts \ # -p "(TEGONAL_SCRIPTS_VERSION=['\"])[^'\"]+(['\"])" # -# function specialBeforePr(){ +# function specialBeforePr() { # beforePr && echo "imagine some additional work" # } # # make the function visible to release-files.sh / not necessary if you source prepare-files-next-dev-cycle.sh @@ -58,7 +58,6 @@ # -v v0.1.0 -k "0x945FE615904E5C85" --sign-fn findScripts \ # --before-pr-fn specialBeforePr # -# # # in case you want to provide your own release.sh and only want to do some pre-configuration # # then you might want to source it instead # sourceOnce "$dir_of_tegonal_scripts/releasing/release-files.sh" @@ -76,11 +75,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/execute-if-defined.sh" sourceOnce "$dir_of_tegonal_scripts/utility/gpg-utils.sh" diff --git a/lib/tegonal-scripts/src/releasing/release-template.sh b/lib/tegonal-scripts/src/releasing/release-template.sh index 08ff584..746a552 100755 --- a/lib/tegonal-scripts/src/releasing/release-template.sh +++ b/lib/tegonal-scripts/src/releasing/release-template.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Defines a release process template where some conventions are defined: @@ -33,7 +33,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # function releaseScalaLib() { # sbt publishSigned @@ -60,7 +60,7 @@ # sourceOnce "$dir_of_tegonal_scripts/releasing/release-template.sh" # # # and then call the function with your pre-configuration settings: -# # here we define the function which shall be used as release-hook after "$@" this way one cannot override it. +# # here we define the function which shall be used as release-hook after "$@", this way one cannot override it. # # put --release-hook before "$@" if you want to define only a default # releaseTemplates "$@" --release-hook releaseScalaLib # @@ -80,11 +80,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/execute-if-defined.sh" sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" @@ -133,7 +133,7 @@ function releaseTemplate() { preReleaseCheckGit \ "$versionParamPatternLong" "$version" \ - "$branchParamPatternLong" "$branch" + "$branchParamPatternLong" "$branch" || return $? # make sure everything is up-to-date and works as it should "$beforePrFn" || return $? @@ -158,11 +158,11 @@ function releaseTemplate() { git add "$projectsRootDir" || return $? git commit --edit -m "$version " || return $? local signsTags - signsTags=$(git config --get tag.gpgSign) + signsTags=$(git config --get tag.gpgSign || echo "false") if [[ $signsTags == true ]]; then - git tag -a "$version" -m "$version" || return $? + git tag -a "$version" -m "$version" || die "could not create tag $version" else - git tag "$version" || return $? + git tag "$version" || die "could not create tag $version" fi "$prepareNextDevCycleFn" \ @@ -173,6 +173,8 @@ function releaseTemplate() { git push origin "$version" || die "could not push tag %s to origin" "$version" git push || die "could not push commits" + + logSuccess "tag pushed and next dev cycle prepared and pushed" else printf "\033[1;33mskipping commit, creating tag and prepare-next-dev-cycle due to %s\033[0m\n" "$prepareOnlyParamPatternLong" fi diff --git a/lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh b/lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh index c4c13fd..6a3ad82 100755 --- a/lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh +++ b/lib/tegonal-scripts/src/releasing/sneak-peek-banner.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Shows or hides the sneak peek banner @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # "$dir_of_tegonal_scripts/releasing/sneak-peek-banner.sh" -c hide # @@ -32,11 +32,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" diff --git a/lib/tegonal-scripts/src/releasing/toggle-sections.sh b/lib/tegonal-scripts/src/releasing/toggle-sections.sh index dfc3b11..ce6ef54 100755 --- a/lib/tegonal-scripts/src/releasing/toggle-sections.sh +++ b/lib/tegonal-scripts/src/releasing/toggle-sections.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Searches for ... as well as for @@ -22,7 +22,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # "$dir_of_tegonal_scripts/releasing/toggle-sections.sh" -c main # @@ -36,11 +36,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" diff --git a/lib/tegonal-scripts/src/releasing/update-version-README.sh b/lib/tegonal-scripts/src/releasing/update-version-README.sh index 5102c48..de0f710 100755 --- a/lib/tegonal-scripts/src/releasing/update-version-README.sh +++ b/lib/tegonal-scripts/src/releasing/update-version-README.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Replaces the version used in download badge(s) and in the sneak peek banner @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # "$dir_of_tegonal_scripts/releasing/update-version-README.sh" -v 0.1.0 # @@ -32,11 +32,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" @@ -75,8 +75,8 @@ function updateVersionReadme() { local -r versionWithoutLeadingV="${version:1}" perl -0777 -i \ - -pe "s@(\[!\[Download\]\(https://img.shields.io/badge/Download-).*(-%23[0-9a-f]+\)\]\([^\)]+(?:=|/))v[^\)]+\)@\${1}$version\${2}$version\)@g;" \ - -pe "s@(\[!\[Download\]\(https://img.shields.io/badge/Download-).*(-%23[0-9a-f]+\)\]\([^\)]+(?:=|/))[0-9][^\)]+\)@\${1}$version\${2}$versionWithoutLeadingV\)@g;" \ + -pe "s@(\[!\[Download\]\(https://img.shields.io/badge/Download-).*(-%23[0-9a-f]+\)\]\([^\)]+(?:=|/))v[^\)]+\)@\${1}${version//-//--}\${2}$version\)@g;" \ + -pe "s@(\[!\[Download\]\(https://img.shields.io/badge/Download-).*(-%23[0-9a-f]+\)\]\([^\)]+(?:=|/))[0-9][^\)]+\)@\${1}${version//-//--}\${2}$versionWithoutLeadingV\)@g;" \ -pe "s@(\[README of )[^\]]+(\].*/tree/)[^/]+/@\${1}$version\${2}$version/@;" \ "$file" || returnDying "was not able to update the version in download badges and in the sneak peek banner" || return $? diff --git a/lib/tegonal-scripts/src/releasing/update-version-common-steps.sh b/lib/tegonal-scripts/src/releasing/update-version-common-steps.sh index 54904cc..aa74800 100755 --- a/lib/tegonal-scripts/src/releasing/update-version-common-steps.sh +++ b/lib/tegonal-scripts/src/releasing/update-version-common-steps.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Carry out some common update version steps either during releasing or in preparing the next dev cycle (indicated via @@ -25,7 +25,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # # updates the version in headers of different files, hides the sneak-peek banner and # # toggles sections in README.md for release @@ -56,11 +56,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" sourceOnce "$dir_of_tegonal_scripts/releasing/sneak-peek-banner.sh" diff --git a/lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh b/lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh index 40d0fd3..2a2386d 100755 --- a/lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh +++ b/lib/tegonal-scripts/src/releasing/update-version-issue-templates.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Updates the placeholder of all labels named `Affected Version` in issue templates. @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # "$dir_of_tegonal_scripts/releasing/update-issue-templates.sh" -v 0.1.0 # @@ -32,11 +32,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" diff --git a/lib/tegonal-scripts/src/releasing/update-version-scripts.sh b/lib/tegonal-scripts/src/releasing/update-version-scripts.sh index 3166677..30e7bfe 100755 --- a/lib/tegonal-scripts/src/releasing/update-version-scripts.sh +++ b/lib/tegonal-scripts/src/releasing/update-version-scripts.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Updates the version which is placed before the `Description` section in bash files (line 8 in this file). @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # "$dir_of_tegonal_scripts/releasing/update-version-scripts.sh" -v 0.1.0 # @@ -32,11 +32,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" diff --git a/lib/tegonal-scripts/src/setup.sh b/lib/tegonal-scripts/src/setup.sh index bf0d206..d96559b 100644 --- a/lib/tegonal-scripts/src/setup.sh +++ b/lib/tegonal-scripts/src/setup.sh @@ -6,10 +6,10 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # -# script which should be sourced and sets up variables and functions for the scripts +# Deprecated: script which sets up variables and functions for tegonal's scripts -> use setup_tegonal_scripts.sh instead # ####### Usage ################### # @@ -33,10 +33,8 @@ unset CDPATH # shellcheck disable=SC2034 # global var used in log.sh declare -A TEGONAL_SCRIPTS_SUPPRESSED_DEPRECATION=() -# shellcheck disable=SC2034 # global var used in log.sh -declare TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION=true -#TODO 5.0.0 rename file to setup_tegonal_scripts.sh -- this way consumers will not run into shellcheck issues when they name a file setup.sh as well +#TODO 5.0.0 rename file to setup_tegonal_scripts.sh -- this way consumers will not run into shellcheck issues when they name a file setup_tegonal_scripts.sh as well if (($# != 1)); then printf >&2 "\033[0;31mERROR\033[0m: You need to pass the path to the tegonal scripts directory as first argument. Following an example\n" @@ -51,3 +49,8 @@ if ! dir_of_tegonal_scripts=$(realpath "$1"); then fi readonly dir_of_tegonal_scripts source "$dir_of_tegonal_scripts/utility/source-once.sh" + +logDeprecation SETUP_SH "please switch to source \"\$dir_of_tegonal_scripts/setup_tegonal_scripts.sh\" -- setup.sh will be removed with v5.0.0" + +# shellcheck disable=SC2034 # global var used in log.sh +declare TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION=true diff --git a/lib/tegonal-scripts/src/utility/array-utils.sh b/lib/tegonal-scripts/src/utility/array-utils.sh index d9df4b0..047b7d4 100644 --- a/lib/tegonal-scripts/src/utility/array-utils.sh +++ b/lib/tegonal-scripts/src/utility/array-utils.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # utility functions for dealing with arrays @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/array-utils.sh" # @@ -57,7 +57,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" @@ -69,7 +69,7 @@ joinByChar() { joinByString() { if (($# < 1)); then - logError "At least one arguments need to be passed to joinByString, given \033[0;36m%s\033[0m\n" "$#" + logError "At least one argument needs to be passed to joinByString, given \033[0;36m%s\033[0m\n" "$#" echo >&2 '1: separator separator used to separate the args' echo >&2 '2... args... args as such' printStackTrace @@ -89,7 +89,7 @@ function arrFilter() { logError "Three arguments need to be passed to arrFilter, given \033[0;36m%s\033[0m\n" "$#" echo >&2 '1: arrayIn name of the array to filter' echo >&2 '2: arrayOut name of the array which will contain the result' - echo >&2 '3: predicate function which what argument do we check (used in error message)' + echo >&2 '3: predicate name of the function which serves as predicate, passing the entry and index as arguments' printStackTrace exit 9 fi @@ -118,7 +118,7 @@ function arrTakeEveryX() { echo >&2 '1: arrayIn name of the array to filter' echo >&2 '2: arrayOut name of the array which will contain the result' echo >&2 '3: everyXEntry e.g. 2, every second entry' - echo >&2 '3: offset e.g. 0, starting by entry 0 (in combination with everyXEntry 2 would mean entry 0, 2, 4...' + echo >&2 '4: offset e.g. 0, starting by entry 0 (in combination with everyXEntry 2 would mean entry 0, 2, 4...' printStackTrace exit 9 fi @@ -130,7 +130,7 @@ function arrTakeEveryX() { local -ri offset=$4 shift 4 || traceAndDie "could not shift by 4" - # shellcheck disable=SC2317 # is passed by name to arrFilter + # shellcheck disable=SC2329 # is passed by name to arrFilter function arrFilterMod_fn() { local -r index=$2 (((index - offset) % modulo == 0)) diff --git a/lib/tegonal-scripts/src/utility/ask.sh b/lib/tegonal-scripts/src/utility/ask.sh index 43d093a..133ee0b 100644 --- a/lib/tegonal-scripts/src/utility/ask.sh +++ b/lib/tegonal-scripts/src/utility/ask.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Utility functions to ask the user something via input. @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/ask.sh" # @@ -42,7 +42,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-utils.sh" @@ -60,7 +60,7 @@ function askYesOrNo() { local -r askYesOrNo_timeout=20 local answer='n' - # shellcheck disable=SC2317 # called by name + # shellcheck disable=SC2329 # called by name function askYesOrNo_noAnswerCallback() { printf "\n" logInfo "no user interaction after %s seconds, going to interpret that as a 'no'." "$askYesOrNo_timeout" @@ -82,19 +82,17 @@ function askYesOrNo() { function askWithTimeout() { if (($# < 5)); then logError "At least five arguments need to be passed to askWithTimeout, given \033[0;36m%s\033[0m\n" "$#" - echo >&2 '1: question the question which the user should answer' - echo >&2 '2: timeout timeout in seconds after which we will call noAnswerFn' - echo >&2 '3: noAnswerFn callback used in case we did not get an answer from the user' - echo >&2 '4: outVarName name of output variable used to pass back the result' - echo >&2 '5: readArgs additional args passed to read' - echo >&2 '6... args... arguments for the question (question is printed with printf)' + echo >&2 '1: question the question which the user should answer' + echo >&2 '2: timeout timeout in seconds after which we will call noAnswerFn' + echo >&2 '3: noAnswerFn callback used in case we did not get an answer from the user' + echo >&2 '4: outVarName name of output variable used to pass back the result' + echo >&2 '5: readArgs additional args passed to read' + echo >&2 '6... args... arguments for the question (question is printed with printf)' printStackTrace exit 9 fi - # prefixing all variables here as plan to write the answer to an variable which is not in scope of this function - # i.e. if we don't prefix and one using the same name for outVarName as a variable local to this function, then we - # would just assign a value to the local function instead of the variable defined outside this function. The prefix - # prevents such a clash in most likely all cases -- otherwise the user is to blame ;) + # prefixing all variables here as we plan to assignToVariableInOuterScope which only works if there is no local + # variable with the same name. The prefix should prevent a clash -- otherwise the user is to blame ;) local -r askWithTimeout_question=$1 local -r askWithTimeout_timeout=$2 local -r askWithTimeout_noAnswerFn=$3 diff --git a/lib/tegonal-scripts/src/utility/checks.sh b/lib/tegonal-scripts/src/utility/checks.sh index 43f82e0..0716325 100644 --- a/lib/tegonal-scripts/src/utility/checks.sh +++ b/lib/tegonal-scripts/src/utility/checks.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Functions to check declarations @@ -19,7 +19,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" # @@ -31,12 +31,12 @@ # local -r version=$4 # # # resolves arr recursively via recursiveDeclareP and check that is a non-associative array -# checkArgIsArray arr 1 # same as exitIfArgIsNotArray if set -e has an effect on this line -# checkArgIsFunction "$fn" 2 # same as exitIfArgIsNotFunction if set -e has an effect on this line -# checkArgIsBoolean "$bool" 3 # same as exitIfArgIsNotBoolean if set -e has an effect on this line -# checkArgIsVersion "$version" 4 # same as exitIfArgIsNotVersion if set -e has an effect on this line +# checkArgIsArray arr 1 # same as exitIfArgIsNotArray if set -e has an effect on this line +# checkArgIsFunction "$fn" 2 # same as exitIfArgIsNotFunction if set -e has an effect on this line +# checkArgIsBoolean "$bool" 3 # same as exitIfArgIsNotBoolean if set -e has an effect on this line +# checkArgIsVersion "$version" 4 # same as exitIfArgIsNotVersion if set -e has an effect on this line # -# # shellcheck disable=SC2317 # is passed by name to checkArgIsArrayWithTuples +# # shellcheck disable=SC2329 # is passed by name to checkArgIsArrayWithTuples # function describeTriple() { # echo >&2 "array contains 3-tuples with names where the first value is the first-, the second the middle- and the third the lastname" # } @@ -50,7 +50,7 @@ # exitIfArgIsNotBoolean "$bool" 3 # exitIfArgIsNotVersion "$version" 4 # -# # shellcheck disable=SC2317 # is passed by name to exitIfArgIsNotArrayWithTuples +# # shellcheck disable=SC2329 # is passed by name to exitIfArgIsNotArrayWithTuples # function describePair() { # echo >&2 "array contains 2-tuples with names where the first value is the first-, and the second the last name" # } @@ -90,7 +90,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" sourceOnce "$dir_of_tegonal_scripts/utility/recursive-declare-p.sh" @@ -126,14 +126,12 @@ function checkArgIsArray() { } function exitIfArgIsNotArray() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkArgIsArray checkArgIsArray "$@" || exit $? } function exitIfArgIsNotArrayOrIsEmpty() { exitIfArgIsNotArray "$@" local -rn exitIfArgIsNotArrayOrIsEmpty_arr=$1 - # shellcheck disable=SC2310 # we are aware of that if and ! will disable set -e for checkIsInitialisedArray if ! checkIsInitialisedArray exitIfArgIsNotArrayOrIsEmpty_arr; then traceAndDie "the passed argument \033[0;36m%s\033[0m is an uninitialised array" "${!exitIfArgIsNotArrayOrIsEmpty_arr}" elif [[ ${#exitIfArgIsNotArrayOrIsEmpty_arr[@]} -lt 1 ]]; then @@ -144,7 +142,6 @@ function exitIfArgIsNotArrayOrIsEmpty() { function exitIfArgIsNotArrayOrIsNonEmpty() { exitIfArgIsNotArray "$@" local -rn exitIfArgIsNotArrayOrIsNonEmpty_arr=$1 - # shellcheck disable=SC2310 # we are aware of that if and ! will disable set -e for checkIsInitialisedArray if checkIsInitialisedArray exitIfArgIsNotArrayOrIsNonEmpty_arr && [[ ${#exitIfArgIsNotArrayOrIsNonEmpty_arr[@]} -gt 0 ]]; then traceAndDie "the passed argument \033[0;36m%s\033[0m is a non empty array" "${!exitIfArgIsNotArrayOrIsNonEmpty_arr}" fi @@ -233,7 +230,6 @@ function checkArgIsArrayWithTuples() { } function exitIfArgIsNotArrayWithTuples() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkArgIsArrayWithTuples checkArgIsArrayWithTuples "$@" || exit $? } @@ -256,7 +252,6 @@ function checkArgIsFunction() { } function exitIfArgIsNotFunction() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkArgIsFunction checkArgIsFunction "$@" || exit $? } @@ -277,12 +272,10 @@ function checkArgIsBoolean() { } function exitIfArgIsNotBoolean() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkArgIsBoolean checkArgIsBoolean "$@" || exit $? } function exitIfArgIsNotVersion() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkArgIsVersion checkArgIsVersion "$@" || exit $? } @@ -318,7 +311,6 @@ function checkCommandExists() { } function exitIfCommandDoesNotExist() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkCommandExists checkCommandExists "$@" || exit $? } @@ -363,13 +355,11 @@ function checkPathNamedIsInsideOf() { local -ra params=(path name rootDir) parseFnArgs params "$@" || return $? - # shellcheck disable=SC2310 # we are aware of that ! will disable set -e for checkPathIsInsideOf if ! checkPathIsInsideOf "$path" "$rootDir"; then - returnDying "the given \033[0;36m%s\033[0m %s not inside of %s" "$name" "$pathAbsolute" "$rootDir" || return $? + returnDying "the given \033[0;36m%s\033[0m %s is not inside of %s" "$name" "$path" "$rootDir" || return $? fi } function exitIfPathNamedIsOutsideOf() { - # shellcheck disable=SC2310 # we are aware of that || will disable set -e for checkPathNamedIsInsideOf checkPathNamedIsInsideOf "$@" || exit $? } diff --git a/lib/tegonal-scripts/src/utility/execute-if-defined.sh b/lib/tegonal-scripts/src/utility/execute-if-defined.sh index d7ff6a7..4b287c9 100644 --- a/lib/tegonal-scripts/src/utility/execute-if-defined.sh +++ b/lib/tegonal-scripts/src/utility/execute-if-defined.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Utility functions wrapping printf and prefixing the message with a coloured INFO, WARNING or ERROR. @@ -22,7 +22,7 @@ # # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/execute-if-defined.sh" # @@ -51,18 +51,18 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" function executeIfFunctionNameDefined() { - if (($# <= 2)); then + if (($# < 2)); then logError "At least two arguments need to be passed to executeIfFunctionNameDefined, given \033[0;36m%s\033[0m\nFollowing a description of the parameters:" "$#" - echo >&2 '1: functionName the function which shall be executed if defined' - echo >&2 '2: argNumberOrName via which arg (number or name) was the function name defined (used in the error messages)' - echo >&2 '3... args... arguments passed to the function' - printStackTrace - exit 9 + echo >&2 '1: functionName the function which shall be executed if defined' + echo >&2 '2: argNumberOrName via which arg (number or name) was the function name defined (used in the error messages)' + echo >&2 '3... args... arguments passed to the function' + printStackTrace + exit 9 fi local functionName=$1 local argNumberOrName=$2 diff --git a/lib/tegonal-scripts/src/utility/git-utils.sh b/lib/tegonal-scripts/src/utility/git-utils.sh index ea47a4a..ce196e9 100644 --- a/lib/tegonal-scripts/src/utility/git-utils.sh +++ b/lib/tegonal-scripts/src/utility/git-utils.sh @@ -5,7 +5,7 @@ # / __/ -_) _ `/ _ \/ _ \/ _ `/ / It is licensed under Apache License 2.0 # \__/\__/\_, /\___/_//_/\_,_/_/ Please report bugs and contribute back your improvements # /___/ -# Version: v4.8.0 +# Version: v4.11.0 # ####### Description ############# # @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/git-utils.sh" # @@ -70,7 +70,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" sourceOnce "$dir_of_tegonal_scripts/utility/string-utils.sh" @@ -86,7 +86,6 @@ function hasGitChanges() { } function exitIfGitHasChanges() { - # shellcheck disable=SC2310 # we are aware of that `if` will disable set -e for hasGitChanges if hasGitChanges; then logError "you have uncommitted changes, please commit/stash first, following the output of git status:" git status || exit $? @@ -109,7 +108,6 @@ function localGitIsAhead() { local -r branch=$1 local -r remote=${2:-"origin"} local -i count - # shellcheck disable=SC2310 # we know that set -e is disabled for countCommits, that OK count=$(countCommits "$remote/$branch" "$branch") || die "the following command failed (see above): countCommits \"$remote/$branch\" \"$branch\"" ! ((count == 0)) } @@ -121,7 +119,6 @@ function localGitIsBehind() { local -r branch=$1 local -r remote=${2:-"origin"} local -i count - # shellcheck disable=SC2310 # we know that set -e is disabled for countCommits, that OK count=$(countCommits "$branch" "$remote/$branch") || die "the following command failed (see above): countCommits \"$branch\" \"$remote/$branch\"" ! ((count == 0)) } @@ -161,7 +158,6 @@ function latestRemoteTag() { local -r remote=${1:-"origin"} local -r tagFilter=${2:-".*"} local tag - #shellcheck disable=SC2310 # we are aware of that || will disable set -e for remoteTagsSorted tag=$(remoteTagsSorted "$remote" | grep -E "$tagFilter" | tail -n 1) || die "could not get remote tags sorted for remote %s, see above" "$remote" if [[ -z $tag ]]; then die "looks like remote \033[0;36m%s\033[0m does not have a tag yet." "$remote" diff --git a/lib/tegonal-scripts/src/utility/gpg-utils.sh b/lib/tegonal-scripts/src/utility/gpg-utils.sh index 8a6184e..6272454 100644 --- a/lib/tegonal-scripts/src/utility/gpg-utils.sh +++ b/lib/tegonal-scripts/src/utility/gpg-utils.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # utility functions for dealing with gpg @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/gpg-utils.sh" # @@ -83,7 +83,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/ask.sh" sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" @@ -139,7 +139,6 @@ function importGpgKey() { grep pub <<<"$outputKey" | perl -0777 -pe "s#pub\s+[^/]+/([0-9A-Z]+).*#\$1#g" | while read -r keyId; do echo "establishing trust for key $keyId" - # shellcheck disable=SC2310 # we are aware of that set -e has no effect for trustGpgKey that's why we use || return $? trustGpgKey "$maybeSymlinkedGpgDir" "$keyId" || return $? done || { local exitCode=$? diff --git a/lib/tegonal-scripts/src/utility/http.sh b/lib/tegonal-scripts/src/utility/http.sh index 20a252a..62b038d 100644 --- a/lib/tegonal-scripts/src/utility/http.sh +++ b/lib/tegonal-scripts/src/utility/http.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # utility function dealing with fetching files via http @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/http.sh" # @@ -29,11 +29,11 @@ set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } unset CDPATH -export TEGONAL_SCRIPTS_VERSION='v4.8.0' +export TEGONAL_SCRIPTS_VERSION='v4.11.0' if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi function wgetAndVerify() { @@ -49,7 +49,7 @@ function wgetAndVerify() { # shellcheck disable=SC2312 # cat shouldn't fail for a constant string hence fine to ignore exit code cat <<-EOM # downloads https://.../signing-key.public.asc and https://.../signing-key.public.asc.sig and verifies it with gpg - wgetAndVerify "https://github.com/tegonal/gt/.gt/signing-key.public.asc" + wgetAndVerify "https://github.com/tegonal/gt/.gt/signing-key.public.asc" EOM ) parseArguments params "$examples" "$TEGONAL_SCRIPTS_VERSION" "$@" || return $? @@ -62,9 +62,9 @@ function wgetAndVerify() { currentDir=$(pwd) || die "could not determine currentDir via pwd" for name in "$fileName" "$fileName.sig"; do - if [[ -f $name ]]; then - logInfo "there is already a file named %s in %s, going to override" "$name" "$currentDir" - fi + if [[ -f $name ]]; then + logInfo "there is already a file named %s in %s, going to override" "$name" "$currentDir" + fi done wget -O "$url" || die "could not download %s" "$url" diff --git a/lib/tegonal-scripts/src/utility/io.sh b/lib/tegonal-scripts/src/utility/io.sh index b9b6227..2f2fa37 100644 --- a/lib/tegonal-scripts/src/utility/io.sh +++ b/lib/tegonal-scripts/src/utility/io.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # utility function dealing with Input/Output @@ -18,7 +18,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/io.sh" # @@ -35,7 +35,6 @@ # # executes readFile and closes the file descriptors again # withCustomOutputInput 3 4 readFile "my-file.txt" # -# # # First tries to set chmod 777 to the directory and all files within it and then deletes the directory # deleteDirChmod777 ".git" # @@ -46,7 +45,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" diff --git a/lib/tegonal-scripts/src/utility/log.sh b/lib/tegonal-scripts/src/utility/log.sh index f78a400..3bb0de5 100644 --- a/lib/tegonal-scripts/src/utility/log.sh +++ b/lib/tegonal-scripts/src/utility/log.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Utility functions wrapping printf and prefixing the message with a coloured INFO, WARNING or ERROR. @@ -20,7 +20,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/log.sh" # @@ -81,6 +81,13 @@ # # bar @ /opt/bar.sh:10:1 # # main @ /opt/main.sh:4:1 # +# # true per default, set to false if you only want to see warnings but not fail on (new) deprecations +# export TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION=false +# logDeprecation MY_DEPRECATION_ID "deprecation message" +# +# # suppress a particular deprecation +# suppressDeprecation MY_DEPRECATION_ID +# ################################### set -euo pipefail shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } @@ -143,18 +150,18 @@ function logDeprecation() { shift 2 || traceAndDie "could not shift by 2" if ! [[ -v TEGONAL_SCRIPTS_SUPPRESSED_DEPRECATION["$id"] ]]; then - printf >&2 "\033[0;93mDEPRECATION WARNING\033[0m id \033[0;36m%s\033[0m $msg\n" "$id" "$@" + printf >&2 "\033[0;93mDEPRECATION WARNING\033[0m with id \033[0;36m%s\033[0m: $msg\n" "$id" "$@" printStackTrace >&2 2 - if [[ -v TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION && $TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION = "true" ]]; then - die "found a deprecation and TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION=true was specified, dying..." + if [[ -v TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION && $TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION == "true" ]]; then + die "found the deprecation %s (not suppressed via suppressDeprecation '%s') and TEGONAL_SCRIPTS_ERROR_ON_DEPRECATION=true was specified, dying..." "$id" "$id" fi fi } function suppressDeprecation() { local -r id=$1 - # shellcheck disable=SC2034 # global var defined in setup.sh + # shellcheck disable=SC2034 # global var defined in setup_tegonal_scripts.sh TEGONAL_SCRIPTS_SUPPRESSED_DEPRECATION[id]=1 } diff --git a/lib/tegonal-scripts/src/utility/parse-args.sh b/lib/tegonal-scripts/src/utility/parse-args.sh index 90222be..4e3031c 100644 --- a/lib/tegonal-scripts/src/utility/parse-args.sh +++ b/lib/tegonal-scripts/src/utility/parse-args.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Intended to parse command line arguments. Provides a simple way to parse named arguments including a documentation @@ -23,7 +23,7 @@ # # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/parse-args.sh" # @@ -71,7 +71,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/array-utils.sh" sourceOnce "$dir_of_tegonal_scripts/utility/ask.sh" diff --git a/lib/tegonal-scripts/src/utility/parse-commands.sh b/lib/tegonal-scripts/src/utility/parse-commands.sh index c4935a2..44daa55 100644 --- a/lib/tegonal-scripts/src/utility/parse-commands.sh +++ b/lib/tegonal-scripts/src/utility/parse-commands.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Intended to parse command line arguments of a script which uses commands and delegates accordingly. @@ -24,7 +24,7 @@ # # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # sourceOnce "$dir_of_tegonal_scripts/utility/parse-commands.sh" # @@ -68,7 +68,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/array-utils.sh" sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" @@ -101,11 +101,13 @@ function parse_commands_exitIfParameterDefinitionIsNotPair() { } function parseCommands { + # we only check that at least 4 arguments are passed here and not at least 5 because we want to print help if 4 are + # passed, i.e. if the command is missing (see check after shift 4 below) if (($# < 4)); then logError "At least five arguments need to be passed to parseCommands, given \033[0;36m%s\033[0m\nFollowing a description of the parameters:" "$#" echo >&2 '1: commands the name of an array which contains the command definitions' echo >&2 '2: version the version which shall be shown if one uses --version' - echo >&2 '3: sourceFn the function which sources the necessary files for a particular command, the commandName will be passed to this function' + echo >&2 '3: sourceFn the function which sources the necessary files for a particular command, the command will be passed to this function' echo >&2 '4: fnPrefix prefix for the function representing a command' echo >&2 '5: command the command name' echo >&2 '6... args... arguments for the command, typically "$@"' @@ -119,7 +121,7 @@ function parseCommands { local -r fnPrefix=$4 shift 4 || traceAndDie "could not shift by 4" - if (($# < 1 )); then + if (($# < 1)); then logError "no command passed to %s, following the output of --help\n" "$(basename "${BASH_SOURCE[1]}")" >&2 parse_commands_printHelp parseCommands_paramArr "$version" exit 9 @@ -133,7 +135,7 @@ function parseCommands { local -a commandNames=() arrTakeEveryX parseCommands_paramArr commandNames 2 0 || return $? local tmpRegex regex - tmpRegex=$(joinByChar "|" "${commandNames[@]}") || die "could not join commands by |, command names are %s" "${commandNames*}" + tmpRegex=$(joinByChar "|" "${commandNames[@]}") || die "could not join commands by |, command names are %s" "${commandNames[*]}" regex="^($tmpRegex)\$" local -r tmpRegex regex diff --git a/lib/tegonal-scripts/src/utility/parse-fn-args.sh b/lib/tegonal-scripts/src/utility/parse-fn-args.sh index d8e5e56..2ee333d 100644 --- a/lib/tegonal-scripts/src/utility/parse-fn-args.sh +++ b/lib/tegonal-scripts/src/utility/parse-fn-args.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Intended to parse positional function parameters including assignment and check if there are enough arguments @@ -20,7 +20,7 @@ # if ! [[ -v dir_of_tegonal_scripts ]]; then # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # fi # sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" # @@ -45,7 +45,7 @@ # parseFnArgs params "$@" || return $? # # # use varargs in another script -# echo "command: $command, dir: $dir, varargs: ${varargs*}" +# echo "command: $command, dir: $dir, varargs: ${varargs[*]}" # } # ####### Limitations ############# @@ -59,7 +59,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" diff --git a/lib/tegonal-scripts/src/utility/parse-utils.sh b/lib/tegonal-scripts/src/utility/parse-utils.sh index bb68917..bd60caa 100644 --- a/lib/tegonal-scripts/src/utility/parse-utils.sh +++ b/lib/tegonal-scripts/src/utility/parse-utils.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Utility functions for argument parser like function such as parse-args and parse-fn-args @@ -21,7 +21,7 @@ # if ! [[ -v dir_of_tegonal_scripts ]]; then # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # fi # sourceOnce "$dir_of_tegonal_scripts/utility/parse-utils.sh" # @@ -55,7 +55,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" diff --git a/lib/tegonal-scripts/src/utility/recursive-declare-p.sh b/lib/tegonal-scripts/src/utility/recursive-declare-p.sh index e67b1dd..37bac96 100644 --- a/lib/tegonal-scripts/src/utility/recursive-declare-p.sh +++ b/lib/tegonal-scripts/src/utility/recursive-declare-p.sh @@ -7,7 +7,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Utility function which returns the `declare` statement of a variable with given name where it recursively calls @@ -22,7 +22,7 @@ # # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/utility/recursive-declare-p.sh" # @@ -50,7 +50,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi function recursiveDeclareP() { diff --git a/lib/tegonal-scripts/src/utility/replace-help-snippet.sh b/lib/tegonal-scripts/src/utility/replace-help-snippet.sh index 8db057c..92105fb 100644 --- a/lib/tegonal-scripts/src/utility/replace-help-snippet.sh +++ b/lib/tegonal-scripts/src/utility/replace-help-snippet.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Helper script do capture the `--help` output of a script and replace a snippet in HTML based scripts (e.g. in a Markdown script). @@ -19,13 +19,13 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/utility/replace-help-snippet.sh" # # declare file # file=$(mktemp) -# echo "" > "$file" +# echo "" >"$file" # # # replaceHelpSnippet script id dir pattern # replaceHelpSnippet my-script.sh my-script-help "$(dirname "$file")" "$(basename "$file")" @@ -49,7 +49,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/checks.sh" sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" diff --git a/lib/tegonal-scripts/src/utility/replace-snippet.sh b/lib/tegonal-scripts/src/utility/replace-snippet.sh index ddea87e..72050d3 100644 --- a/lib/tegonal-scripts/src/utility/replace-snippet.sh +++ b/lib/tegonal-scripts/src/utility/replace-snippet.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # # Helper script do replace a snippet in HTML based files (e.g. in a Markdown file). @@ -18,13 +18,13 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/utility/replace-snippet.sh" # # declare file # file=$(mktemp) -# echo "" > "$file" +# echo "" >"$file" # # declare dir fileName output # dir=$(dirname "$file") @@ -53,7 +53,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" diff --git a/lib/tegonal-scripts/src/utility/source-once.sh b/lib/tegonal-scripts/src/utility/source-once.sh index c3f70bc..690af20 100644 --- a/lib/tegonal-scripts/src/utility/source-once.sh +++ b/lib/tegonal-scripts/src/utility/source-once.sh @@ -7,11 +7,11 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 ####### Description ############# # -# Utility functions wrapping printf and prefixing the message with a coloured INFO, WARNING or ERROR. -# logError writes to stderr and logWarning and logInfo to stdout +# Utility functions to source files but only if a certain guard is not defined. Sourcing happens inside the functions +# which also means defining global variables are prevented via declare. # ####### Usage ################### # @@ -20,14 +20,14 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/utility/source-once.sh" # -# sourceOnce "foo.sh" # creates a variable named sourceOnceGuard_foo__sh which acts as guard and sources foo.sh -# sourceOnce "foo.sh" # will source nothing as sourceOnceGuard_foo__sh is already defined -# unset sourceOnceGuard_foo__sh # unsets the guard -# sourceOnce "foo.sh" # is sourced again and the guard established +# sourceOnce "foo.sh" # creates a variable named sourceOnceGuard_foo__sh which acts as guard and sources foo.sh +# sourceOnce "foo.sh" # will source nothing as sourceOnceGuard_foo__sh is already defined +# unset sourceOnceGuard_foo__sh # unsets the guard +# sourceOnce "foo.sh" # is sourced again and the guard established # # you can also use sourceAlways instead of unsetting and using sourceOnce. # sourceAlways "foo.sh" # @@ -74,7 +74,6 @@ function sourceOnce() { shift 1 || traceAndDie "could not shift by 1" local sourceOnce_guard - # shellcheck disable=SC2310 # we know that set -e will not have an effect for determineSourceOnceGuard sourceOnce_guard=$(determineSourceOnceGuard "$sourceOnce_file") || die "was not able to determine sourceOnce guard for %s" "$sourceOnce_file" local -r sourceOnce_guard diff --git a/lib/tegonal-scripts/src/utility/update-bash-docu.sh b/lib/tegonal-scripts/src/utility/update-bash-docu.sh index 6d2fc2b..295ef9f 100644 --- a/lib/tegonal-scripts/src/utility/update-bash-docu.sh +++ b/lib/tegonal-scripts/src/utility/update-bash-docu.sh @@ -6,7 +6,7 @@ # \__/\__/\_, /\___/_//_/\_,_/_/ It is licensed under Apache License 2.0 # /___/ Please report bugs and contribute back your improvements # -# Version: v4.8.0 +# Version: v4.11.0 # ####### Description ############# # @@ -24,7 +24,7 @@ # shopt -s inherit_errexit || { echo >&2 "please update to bash 5, see errors above" && exit 1; } # # Assumes tegonal's scripts were fetched with gt - adjust location accordingly # dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/../lib/tegonal-scripts/src" -# source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" +# source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" # # source "$dir_of_tegonal_scripts/utility/update-bash-docu.sh" # @@ -43,7 +43,7 @@ unset CDPATH if ! [[ -v dir_of_tegonal_scripts ]]; then dir_of_tegonal_scripts="$(cd -- "$(dirname -- "${BASH_SOURCE[0]:-$0}")" >/dev/null && pwd 2>/dev/null)/.." - source "$dir_of_tegonal_scripts/setup.sh" "$dir_of_tegonal_scripts" + source "$dir_of_tegonal_scripts/setup_tegonal_scripts.sh" "$dir_of_tegonal_scripts" fi sourceOnce "$dir_of_tegonal_scripts/utility/parse-fn-args.sh" sourceOnce "$dir_of_tegonal_scripts/utility/replace-snippet.sh"