Skip to content

Latest commit

 

History

History
329 lines (235 loc) · 30 KB

CHANGELOG.md

File metadata and controls

329 lines (235 loc) · 30 KB

Changelog

1.2.0 (2024-07-22)

Features

  • 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)

Improvements

  • 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)

Bugfixes

  • 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)

Miscellaneous

  • 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)

Bugfixes

  • lib: require option should not fail on get system info (a01299a)

Miscellaneous

  • 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)

Bugfixes

  • 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)

⚠ BREAKING CHANGES

  • lib: migrate commands to use new APIs and change function kcs_commands_load to kcs_commands_find

Features

  • lib: add templates for parsing template directory using eval (375a61e)

Improvements

  • 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)

Bugfixes

  • 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)

Miscellaneous

  • release v1.1.0 (6cc2160)
  • test: add test of template library (74991af)

1.0.0 (2023-10-14)

Features

  • update test to use internal v1.1 (231b1ba)

Improvements

  • cmd: update all default commands with new internal code v1.1 (0296da5)
  • script: replace internal file if exist when setup same directory (24455de)

Bugfixes

  • private: add missing clean up variable (6ae41bb)
  • script: update setup script when run without local git (ac6abdf)

Miscellaneous

  • doc: add how to setup script automatically (0723363)
  • update version (100b5e5)

1.0.0-beta.6 (2023-10-02)

Features

  • script: rewrite setup.sh script to support latest version (0319efe)

Improvements

  • command: add new _example.sh command for showcase how to create command script (b89cc09)

Bugfixes

  • 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)

Miscellaneous

  • 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)

⚠ BREAKING CHANGES

  • 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

Features

  • 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)

Improvements

  • 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)

Bugfixes

  • 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)

Miscellaneous

  • 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)

Features

  • 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)

Improvements

  • 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)

Bugfixes

  • 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)

Miscellaneous

  • add release-please action to release new version (3cf3084)
  • add testing on macos as well (7800422)
  • change config temp namespace to temp-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)

Release notes