1.2.0 (2024-07-22)
- add test for aliases commands (9da7a2b)
- apis: add new kcs_func_lookup for lookup functions list and execute first valid function (2673b5c)
- cmd: add example code for main hook (65f135c)
- lib: add options config "minimal" for enabled only --help options (a5ab8ec)
- loader: add --regex and --action-* for custom action based on second extension (1c59389)
- priv: enabled trust mode on development mode (08cac36)
- lib: add new kcs_commands_alias on commands for alias current command to another (80685ad)
- lib: support kc.tmpl template using kc-tpr parser (10a4f3b)
- lib: update template prompt for trust and test mode (58f4023)
- log: kcs_log_printf will log to console same as printf with nicer format (e31cfbc)
- log: move dev mode logs to use logger instead (2fb4777)
- priv: kcs_exit() will return input code as result on grateful exit (dd1714b)
- test: add exitcode to compare on tests as well (4603c12)
- core: _KCS_CMD_ARGS is missing when user didn't load options lib (6715e1e)
- lib: loading config should warn if config not found (3a339e6)
- libs: options throw error when argument is optional and no value were send (afb18a5)
- loader: on ext action (--action-*) if action is missing, fallback to --action (c08d40c)
- priv: script failed if KCS_DEV is enabled with KCS_TMPDIR (c7d70ec)
- doc: add more docs (b537c53)
- doc: describe path variable available on script (bd80b5f)
- doc: improve code docs (7ff5793)
- docs: update documents for libs (d422795)
- lib: add more debug log on template (7b0658a)
- lib: clean up unused options (13aef47)
- move docs to correct readme (20e0b30)
- script: update setup.sh to use date as version on local development (f68d926)
- test: add more tests on command alias didn't resolve command correctly (1def019)
- test: add more tests on templates and update snapshots (c843092)
- test: add template duplication cases (6bc5450)
- test: add test on command alias to invalid command (38afaef)
- test: move use-template snapshot to templates/default (187e389)
- test: the printf logs move from stdlog to stdout (76386ef)
- test: update snapshots (b36962d)
- test: update snapshots (4041b80)
- test: update snapshots (0a344fc)
- update some documents for end-users (ff05e15)
1.1.2 (2023-10-15)
- lib: require option should not fail on get system info (a01299a)
- test: add test if user pass --help on requires options should not fail (b522135)
- test: update old snapshots with correct name (5d717cb)
1.1.1 (2023-10-15)
- lib: missing require option should result error on runtime (60a25cf)
- lib: option didn't clean variable after each argument, cause shared state (79dec94)
- test: update tests for new option require logic (a5f4007)
1.1.0 (2023-10-15)
- lib: migrate commands to use new APIs and change function kcs_commands_load to kcs_commands_find
- lib: add templates for parsing template directory using eval (375a61e)
- lib: add new kcs_env_get for getting environment from named (d3b610a)
- lib: migrate commands to use new APIs and change function kcs_commands_load to kcs_commands_find (f4795f9)
- lib: move environment loader from private loader to environment lib (8242da7)
- private: migrate loader to using new APIs (28ebae4)
- script: auto resolve latest version on setup script (99b08c4)
- script: auto snap output if no snapshot found (9f6db1a)
- lib: add missing local variable defined on options (84622bf)
- script: setup script didn't get latest version correctly (116bcf7)
- test: update test snapshots for logs namespace changed (a7cf737)
- test: update tests from last changes (95002b7)
1.0.0 (2023-10-14)
- update test to use internal v1.1 (231b1ba)
- cmd: update all default commands with new internal code v1.1 (0296da5)
- script: replace internal file if exist when setup same directory (24455de)
- private: add missing clean up variable (6ae41bb)
- script: update setup script when run without local git (ac6abdf)
1.0.0-beta.6 (2023-10-02)
- script: rewrite setup.sh script to support latest version (0319efe)
- command: add new _example.sh command for showcase how to create command script (b89cc09)
- command: hello command should not print warning about duplicated options (6396366)
- env: LOGFMT cannot set using default env file (810bb27)
- lib: information didn't list command correctly from other command directory (c5f7e20)
- lib: options didn't clean up variable correctly (d6f47f9)
- clean up unused test commands (12e8648)
- prepare for v1.0.0-beta.6 (5cf7b5b)
- test: update test snapshots (dba305b)
1.0.0-beta.5 (2023-10-02)
- libs: change hook name and sequence of hooks running
- env: move configs to envs instead and refer this as environment instead of config
- core: change KCS_CMD_ARGS to _KCS_CMD_ARGS as read-only type
- add colors and initiate information&options libs (723caf6)
- add kcs_tmp command as private library (cd27b7a)
- add several features (aee950c)
- core: add new dev mode (17a3940)
- env: move configs to envs instead and refer this as environment instead of config (dac9e5c)
- libs: add config as a libraries settings (a5493bc)
- libs: add new hook tag @rawargs for add raw argument (9a91fab)
- libs: final design of option lib (a05098c)
- libs: update loader to support lifecycle function after loaded (1cd97df)
- private: logging namespace are filter from left to right instead (34b8600)
- separate internal lib to private directory (356ea98)
- config: support window, linux and mac with 4 indent on markdown (1071093)
- core: change KCS_CMD_ARGS to _KCS_CMD_ARGS as read-only type (5cd4246)
- core: improve kcs_exit to support no log and success exit (a4c9ccb)
- enabled color by default (42ab826)
- env: support load default env and custom env separately (e7d8e98)
- libs: add help function using cmd desc (40e379f)
- libs: change hook name and sequence of hooks running (6f770ff)
- libs: commands resolver from args will ignore options arguments for resolving path (d3d754b)
- libs: move environment to lib instead of private (c63057f)
- libs: remove argument requirement on option lib loader, add skip duplicate options, and add default --help, --version, and --full-version (71087f0)
- libs: support commands and options in help options (49c7fb2)
- libs: support error when user provide optional argument without argument (10a8332)
- libs: support grateful exit when loader fail (b390906)
- libs: support kcs version in full version info (a4e5af1)
- libs: update kcs_argument callback syntax (0092d31)
- loader: add warning message if loading loaded module (4c15df9)
- loader: separate env loader to default and non-default; ignore empty line (a321817)
- logger: enabled normalize mode only on test (55fc543)
- logger: filtering namespace now use glob resolver (764290b)
- logger: improve logging message and typo (4691836)
- logging: remove logging about create timestamp file (d28da28)
- private: add new logs when initiate command (aca1df4)
- private: disable pre_main and main if exit as marked (d5cdc0f)
- scripts: update setup with new design (56de706)
- test: add test on optional argument without default value (3c34d0c)
- tests: add support wring command to file for debugging later (040591f)
- test: test will summary the result on the end instead (ea2a1db)
- color: color should not always enable (c98370e)
- lib: info didn't parse command correctly (1cfd41f)
- lib: no arg option might resolve definition wrong and default might use desc instead (189ec73)
- lib: option accidently delete argument (0b6e181)
- lib: option parser didn't configure regex correctly (b19438f)
- libs: create default option value before parsing input to ensure variable always exist (6ca148f)
- libs: environment will use env default loader instead (7aa3c24)
- libs: improve logging and fix config not found errors on lib:configs (c84bed2)
- libs: options description is missing (a43f11c)
- logger: now logging can contains '=' (equal sign) (3b5dfde)
- logger: warn and error log should always log to console even KCS_LOGOUT exist (7a34d47)
- private: command argument should not include command name (947105f)
- test: update test snapshots (f6a2e14)
- tmp logs should not happen on testing (45c3bcf)
- tmp: all temp relate logs will be disabled on test (9dba855)
- docs: add how to simulate test on linux using docker (fdeda13)
- docs: initiate contributing guide (0159486)
- docs: update function syntax for private and auto resolver function (f213588)
- refactor loader to follow new design of function name (93406ce)
- release 1.0.0-beta.5 (e19a980)
- remove test scripts on main src (97ac072)
- save progress (6c3b801)
- save progress of options parser (e642e77)
- take tests snapshot (ef03a51)
- test: add more tests for new command override setting (c0c1573)
- test: add new features tests and update test name (de5ac59)
- test: add test cmd key transformer (9f44168)
- test: remove custom log format and fix debug namespace (3b3bde0)
- test: save latest snapshot (de7f787)
- test: update snapshot (7a74471)
- test: update snapshot all options (d6d3e97)
- test: update snapshot for new logs format (46edf13)
- update commands for new hook name (071bd7f)
- update other components to support new functions syntax and hook name (d157f2b)
1.0.0-beta.4 (2023-07-31)
- add command testing (26024c1)
- add raw to __kcs_default_setup callback (7a6625f)
- initiate new version for 0.2.x (605d1bd)
- internal: now utils will automatically load it's dependencies (5ea223f)
- test: reworks testing (5b3bc96)
- tests: add test autodiscovery (ad7383d)
- try setup script (a7515b1)
- utils: add builtin/fs utils and tests (e443b5a)
- utils: change name kcs_lazy_copy to kcs_copy_lazy (460a910)
- utils: copier will support cp and rsync and new config (8dc3a8b)
- hook: add default init and default setup same as main (38276cb)
- hook: pass raw arguments to main_setup callback as well (b7074e9)
- internal: add debug log when register new errors code (79eee30)
- internal: kcs_exit will return input error code (660fbe1)
- internal: loaded utils should not return error (439a023)
- move main clean to pre_clean instead (32f6795)
- set default log-level and fix error typo (926eeb7)
- test: refactor test and snapshots (9e5b7a9)
- tests: add more tests (cd11fad)
- tests: support test minimal mode in CI (ea49e11)
- utils: add more logs on ssh and fix missing DEBUG_ONLY on ssh command (7956ed9)
- utils: add new apis on builtin/arguments (968a2e2)
- utils: new builtin/arguments to modify/override user argument (7f41718)
- utils: separate builting/debug to 2 hooks (5800b9d)
- utils: use redirect command in lazy-copy instead of write to file (961e8cd)
- internal: raw arguments doesn't pass to hook correct when override on same hook name (f2719b2)
- logger: debug disabled and only not works correctly (4bb747e)
- tests: remove root directory with constant name (b6634e3)
- utils: add copier configs and fix fs decode fail (de0640e)
- utils: argument override not works when override with empty array (0c88eb8)
- utils: copy to function in builtin/ssh will return correct error code (c3585fe)
- utils: is_option in builtin/arguments not check correctly (569a0ee)
- utils: rsync not handle directory correctly (99ff8d5)
- add release-please action to release new version (3cf3084)
- add testing on macos as well (7800422)
- change
config temp
namespace totemp-configure
(0780318) - ci: add github action (a4218d0)
- cleanup (55f2143)
- docs: update internal comment (4df1f29)
- internal: add more debug logs (c8d6b33)
- move commands to scripts/commands (e0716f8)
- move kcs internal command from example/commands to commands directory (0013a1d)
- release v1.0.0-beta.4 (624cd68)
- remove example function in copier utils (73e956e)
- tests: add function tests when call is-options in builtin/arguments utils (83a6ce8)
- tests: add test when main method is missing (3a1450b)
- tests: add tests to check raw arguments when override (e1fabf5)
- update fail result for debugging (27b43d8)
- utils: reduce duplicate logs in builtin/ssh utils (e85e1a7)