head 1.5; access; symbols pkgsrc-2026Q1:1.5.0.74 pkgsrc-2026Q1-base:1.5 pkgsrc-2025Q4:1.5.0.72 pkgsrc-2025Q4-base:1.5 pkgsrc-2025Q3:1.5.0.70 pkgsrc-2025Q3-base:1.5 pkgsrc-2025Q2:1.5.0.68 pkgsrc-2025Q2-base:1.5 pkgsrc-2025Q1:1.5.0.66 pkgsrc-2025Q1-base:1.5 pkgsrc-2024Q4:1.5.0.64 pkgsrc-2024Q4-base:1.5 pkgsrc-2024Q3:1.5.0.62 pkgsrc-2024Q3-base:1.5 pkgsrc-2024Q2:1.5.0.60 pkgsrc-2024Q2-base:1.5 pkgsrc-2024Q1:1.5.0.58 pkgsrc-2024Q1-base:1.5 pkgsrc-2023Q4:1.5.0.56 pkgsrc-2023Q4-base:1.5 pkgsrc-2023Q3:1.5.0.54 pkgsrc-2023Q3-base:1.5 pkgsrc-2023Q2:1.5.0.52 pkgsrc-2023Q2-base:1.5 pkgsrc-2023Q1:1.5.0.50 pkgsrc-2023Q1-base:1.5 pkgsrc-2022Q4:1.5.0.48 pkgsrc-2022Q4-base:1.5 pkgsrc-2022Q3:1.5.0.46 pkgsrc-2022Q3-base:1.5 pkgsrc-2022Q2:1.5.0.44 pkgsrc-2022Q2-base:1.5 pkgsrc-2022Q1:1.5.0.42 pkgsrc-2022Q1-base:1.5 pkgsrc-2021Q4:1.5.0.40 pkgsrc-2021Q4-base:1.5 pkgsrc-2021Q3:1.5.0.38 pkgsrc-2021Q3-base:1.5 pkgsrc-2021Q2:1.5.0.36 pkgsrc-2021Q2-base:1.5 pkgsrc-2021Q1:1.5.0.34 pkgsrc-2021Q1-base:1.5 pkgsrc-2020Q4:1.5.0.32 pkgsrc-2020Q4-base:1.5 pkgsrc-2020Q3:1.5.0.30 pkgsrc-2020Q3-base:1.5 pkgsrc-2020Q2:1.5.0.26 pkgsrc-2020Q2-base:1.5 pkgsrc-2020Q1:1.5.0.6 pkgsrc-2020Q1-base:1.5 pkgsrc-2019Q4:1.5.0.28 pkgsrc-2019Q4-base:1.5 pkgsrc-2019Q3:1.5.0.24 pkgsrc-2019Q3-base:1.5 pkgsrc-2019Q2:1.5.0.22 pkgsrc-2019Q2-base:1.5 pkgsrc-2019Q1:1.5.0.20 pkgsrc-2019Q1-base:1.5 pkgsrc-2018Q4:1.5.0.18 pkgsrc-2018Q4-base:1.5 pkgsrc-2018Q3:1.5.0.16 pkgsrc-2018Q3-base:1.5 pkgsrc-2018Q2:1.5.0.14 pkgsrc-2018Q2-base:1.5 pkgsrc-2018Q1:1.5.0.12 pkgsrc-2018Q1-base:1.5 pkgsrc-2017Q4:1.5.0.10 pkgsrc-2017Q4-base:1.5 pkgsrc-2017Q3:1.5.0.8 pkgsrc-2017Q3-base:1.5 pkgsrc-2017Q2:1.5.0.4 pkgsrc-2017Q2-base:1.5 pkgsrc-2017Q1:1.5.0.2 pkgsrc-2017Q1-base:1.5 pkgsrc-2016Q4:1.4.0.18 pkgsrc-2016Q4-base:1.4 pkgsrc-2016Q3:1.4.0.16 pkgsrc-2016Q3-base:1.4 pkgsrc-2016Q2:1.4.0.14 pkgsrc-2016Q2-base:1.4 pkgsrc-2016Q1:1.4.0.12 pkgsrc-2016Q1-base:1.4 pkgsrc-2015Q4:1.4.0.10 pkgsrc-2015Q4-base:1.4 pkgsrc-2015Q3:1.4.0.8 pkgsrc-2015Q3-base:1.4 pkgsrc-2015Q2:1.4.0.6 pkgsrc-2015Q2-base:1.4 pkgsrc-2015Q1:1.4.0.4 pkgsrc-2015Q1-base:1.4 pkgsrc-2014Q4:1.4.0.2 pkgsrc-2014Q4-base:1.4 pkgsrc-2014Q3:1.3.0.2 pkgsrc-2014Q3-base:1.3 pkgsrc-2014Q2:1.2.0.8 pkgsrc-2014Q2-base:1.2 pkgsrc-2014Q1:1.2.0.6 pkgsrc-2014Q1-base:1.2 pkgsrc-2013Q4:1.2.0.4 pkgsrc-2013Q4-base:1.2 pkgsrc-2013Q3:1.2.0.2 pkgsrc-2013Q3-base:1.2 pkgsrc-2013Q2:1.1.0.8 pkgsrc-2013Q2-base:1.1 pkgsrc-2013Q1:1.1.0.6 pkgsrc-2013Q1-base:1.1 pkgsrc-2012Q4:1.1.0.4 pkgsrc-2012Q4-base:1.1 pkgsrc-2012Q3:1.1.0.2 pkgsrc-2012Q3-base:1.1; locks; strict; comment @# @; 1.5 date 2017.02.17.21.20.07; author jmmv; state Exp; branches; next 1.4; commitid NXEbpTk980KiLlGz; 1.4 date 2014.11.17.19.55.53; author jmmv; state Exp; branches; next 1.3; commitid MyEVGraIXP3gKzYx; 1.3 date 2014.08.14.13.48.21; author jmmv; state Exp; branches; next 1.2; commitid d3yqJ5xQOARNLkMx; 1.2 date 2013.07.28.23.30.44; author jmmv; state Exp; branches; next 1.1; commitid XD37D4tNEdfOgiZw; 1.1 date 2012.08.15.21.18.13; author jmmv; state Exp; branches; next ; desc @@ 1.5 log @Update shtk to 1.7: **Released on 2017-02-17.** * This is the first release with fixes for and confirmed to work with all of bash, dash, pdksh, and zsh. We now have continuous integration runs for all these interpreters to ensure that this holds true in future releases. * Added the `shtk_abort` function to terminate a script on fatal internal errors. * Added the `shtk_cli_debug` function to log debug-level messages. * Added the `shtk_cli_log_level` and `shtk_cli_set_log_level` functions to query and set the maximum log level. * Added the `shtk_fs` module with the `shtk_fs_join_paths` and `shtk_fs_normalize_path` functions. * Added the `shtk_hw` module with the `shtk_hw_ncpus` function. * Fixed option parsing to detect missing arguments to options. * Fixed pattern matching in `shtk_list_filter` so that it supports alternative branches. @ text @@@comment $NetBSD: PLIST,v 1.4 2014/11/17 19:55:53 jmmv Exp $ bin/shtk lib/pkgconfig/shtk.pc man/man1/shtk.1 man/man3/shtk.3 man/man3/shtk_abort.3 man/man3/shtk_bool.3 man/man3/shtk_bool_check.3 man/man3/shtk_cleanup.3 man/man3/shtk_cleanup_register.3 man/man3/shtk_cli.3 man/man3/shtk_cli_debug.3 man/man3/shtk_cli_dirname.3 man/man3/shtk_cli_error.3 man/man3/shtk_cli_info.3 man/man3/shtk_cli_log_level.3 man/man3/shtk_cli_progname.3 man/man3/shtk_cli_set_log_level.3 man/man3/shtk_cli_usage_error.3 man/man3/shtk_cli_warning.3 man/man3/shtk_config.3 man/man3/shtk_config_get.3 man/man3/shtk_config_get_bool.3 man/man3/shtk_config_get_default.3 man/man3/shtk_config_has.3 man/man3/shtk_config_include.3 man/man3/shtk_config_init.3 man/man3/shtk_config_load.3 man/man3/shtk_config_override.3 man/man3/shtk_config_run_hook.3 man/man3/shtk_config_set.3 man/man3/shtk_config_unset.3 man/man3/shtk_cvs.3 man/man3/shtk_cvs_checkout.3 man/man3/shtk_cvs_fetch.3 man/man3/shtk_cvs_update.3 man/man3/shtk_fs.3 man/man3/shtk_fs_join_paths.3 man/man3/shtk_fs_normalize_path.3 man/man3/shtk_hw.3 man/man3/shtk_hw_ncpus.3 man/man3/shtk_import.3 man/man3/shtk_list.3 man/man3/shtk_list_contains.3 man/man3/shtk_list_filter.3 man/man3/shtk_process.3 man/man3/shtk_process_run.3 man/man3/shtk_unittest.3 man/man3/shtk_unittest_add_fixture.3 man/man3/shtk_unittest_add_test.3 man/man3/shtk_unittest_assert_command.3 man/man3/shtk_unittest_assert_equal.3 man/man3/shtk_unittest_assert_file.3 man/man3/shtk_unittest_assert_not_equal.3 man/man3/shtk_unittest_delayed_fail.3 man/man3/shtk_unittest_expect_command.3 man/man3/shtk_unittest_expect_equal.3 man/man3/shtk_unittest_expect_file.3 man/man3/shtk_unittest_expect_not_equal.3 man/man3/shtk_unittest_fail.3 man/man3/shtk_unittest_main.3 man/man3/shtk_unittest_set_expected_failure.3 man/man3/shtk_unittest_skip.3 man/man3/shtk_version.3 man/man3/shtk_version_at_least.3 man/man3/shtk_version_at_most.3 man/man3/shtk_version_is.3 share/aclocal/shtk.m4 share/doc/shtk/AUTHORS share/doc/shtk/COPYING share/doc/shtk/NEWS.md share/doc/shtk/README.md share/shtk/base.subr share/shtk/bool.subr share/shtk/bootstrap.subr share/shtk/cleanup.subr share/shtk/cli.subr share/shtk/config.subr share/shtk/cvs.subr share/shtk/fs.subr share/shtk/hw.subr share/shtk/list.subr share/shtk/process.subr share/shtk/unittest.subr share/shtk/unittest/commands.subr share/shtk/unittest/files.subr share/shtk/unittest/operators.subr share/shtk/version.subr tests/shtk/Kyuafile tests/shtk/base_test tests/shtk/bool_test tests/shtk/cleanup_test tests/shtk/cli_test tests/shtk/config_test tests/shtk/cvs_test tests/shtk/fs_test tests/shtk/hw_test tests/shtk/list_test tests/shtk/process_test tests/shtk/shtk_test tests/shtk/unittest/Kyuafile tests/shtk/unittest/commands_test tests/shtk/unittest/files_test tests/shtk/unittest/operators_test tests/shtk/unittest_inttest tests/shtk/unittest_test tests/shtk/version_test @ 1.4 log @Update shtk to 1.6: Released on 2014-11-17. * Added the unittest module, a framework with which to implement robust test programs purely in shell. This new module supports defining test programs as a collection of standalone test cases or test fixtures; supports assert-syle vs. expect-style checks; and provides advanced checks to simplify the implementation of tests cases for command-line utilities. unittest-based test programs can be trivially plugged into the Kyua testing framework. * Added manual pages for all public API functions. See shtk(3) for an introduction and follow all linked pages for details. All docstrings have been removed from the code in favor of the manual pages. * Added the shtk_config_include function so that configuration files can source other files using relative (or absolute) paths. * Removed 'set -e' calls from shtk and from any generated scripts. It is the user who should be enabling this feature if he chooses to because 'set -e' may have suprising and inconsistent behavior in large scripts (and shtk can be defined as large). @ text @d1 1 a1 1 @@comment $NetBSD: PLIST,v 1.3 2014/08/14 13:48:21 jmmv Exp $ d6 1 d12 1 d16 1 d18 1 d37 5 d71 2 a72 2 share/doc/shtk/NEWS share/doc/shtk/README d80 2 d96 2 @ 1.3 log @Update shtk to 1.4: Released on 2013-12-30. * Added support for a user-defined SHTK_MODULESPATH variable. This colon-separated, user-tunable variable lists the directories that contain modules. * Added a modulesdir variable to shtk.pc so that third-party packages can install shtk-compliant modules into the shared directory. This variable is also exposed by the SHTK_CHECK macro of shtk.m4 as SHTK_MODULESDIR. * Added a new bool module with a shtk_bool_check function to convert a string to a boolean. * Added a new cleanup module to simplify the installation and automatic execution of termination handlers. * Fixed the config module in Mac OS X 10.9 to respect default values of configuration variables. @ text @d1 1 a1 1 @@comment $NetBSD: PLIST,v 1.2 2013/07/28 23:30:44 jmmv Exp $ d5 54 d73 22 a94 10 ${TESTS}tests/shtk/Kyuafile ${TESTS}tests/shtk/base_test ${TESTS}tests/shtk/bool_test ${TESTS}tests/shtk/cleanup_test ${TESTS}tests/shtk/cli_test ${TESTS}tests/shtk/config_test ${TESTS}tests/shtk/cvs_test ${TESTS}tests/shtk/list_test ${TESTS}tests/shtk/process_test ${TESTS}tests/shtk/shtk_test @ 1.2 log @Update to 1.3: Released on 2013-07-28. * Sources migrated to a GitHub project from the previous copy in the pkgsrc repository. shtk is now a first-class package and includes a traditional build system based on automake and autoconf and also provides a pkg-config file and autoconf macros to ease the integration with other packages. @ text @d1 1 a1 1 @@comment $NetBSD: PLIST,v 1.1 2012/08/15 21:18:13 jmmv Exp $ d11 1 d13 1 d21 2 @ 1.1 log @Initial addition of shtk 1.0. Despite its pretentious name, this package is just an attempt to generalize a bunch of code that I keep reusing every time I implement shell scripts. In particular, this is about to remove tons of duplicate stuff from both sysbuild and sysupgrade in subsequent commits and I'll probably use it again for some other stuff I have in mind. Description follows: The Shell Toolkit, or shtk for short, is a collection of modules written in sh(1) that provide common functionality to simplify the implementation of complex shell scripts. These modules provide things like utilities to manipulate data types, helpers to expose a common CLI, or higher-level abstractions such as the processing of configuration files. The included shtk(1) utility exposes convenience functionality to let the user "build" shell scripts that use shtk. Build, in this case, just means adding common boilerplate code to the initialization of the script to load the shtk common code. @ text @d1 1 a1 1 @@comment $NetBSD$ d3 1 d5 5 @