# Changelog ## 2025-08-26 - 3.1.10 - fix(task) Implement core Task execution flow, buffering and lifecycle; update README with generics and buffer docs - Implement Task.runTask including preTask/afterTask chaining, touched-task cycle prevention and error handling. - Add Task helpers: extractTask, isTask, isTaskTouched and emptyTaskFunction (resolved promise). - Introduce task lifecycle coordination: finished promise, resolveFinished, and blockingTasks to await dependent tasks. - Support taskSetup/setupValue, execDelay handling, and wait-for-blocking-tasks before execution. - Wire up trigger() to choose buffered vs unbuffered execution (triggerBuffered / triggerUnBuffered) and integrate BufferRunner. - Improve logging and safer promise handling (caught errors are logged). - Update README with extended TypeScript generics examples and expanded buffer behavior and strategies documentation. ## 2025-08-26 - 3.1.9 - fix(tests) Update CI workflows, fix tests and refresh README/package metadata - CI: switch Docker image to code.foss.global/host.today/ht-docker-node:npmci and adjust NPMCI_COMPUTED_REPOURL; replace npmci installer package name from @shipzone/npmci to @ship.zone/npmci in Gitea workflows - Tests: update test imports to use @git.zone/tstest/tapbundle and apply small formatting fixes to test files - Package metadata: update bugs URL and homepage to code.foss.global, add a pnpm.overrides placeholder in package.json - .gitignore: add AI/tooling directories (.claude, .serena) and reorganize custom section - Code style/TS fixes: minor formatting changes across ts sources (trailing commas, line breaks, consistent object/argument commas) and small API surface formatting fixes - Documentation: whitespace/formatting cleanups in README and add changelog entry for 3.1.8 ## 2025-08-26 - 3.1.8 - fix(tests) Update test runner and imports, refresh README and package metadata, add project tooling/config files - Replaced test imports from '@push.rocks/tapbundle' to '@git.zone/tstest/tapbundle' across test files - Updated test script in package.json to run tstest with --verbose --logfile --timeout 120 - Bumped devDependency @git.zone/tstest to ^2.3.5 and adjusted package.json fields (typings, packageManager) - Expanded and rewrote README with detailed examples, API reference, and usage guidance - Refactored TaskManager tests (removed duplicate both-file and added consolidated test/test.4.taskmanager.ts) - Added development/project tooling and metadata files (.claude settings, .serena project/memories) to aid local development and CI ## 2024-05-29 - 3.1.7 - maintenance/config Updated package metadata and build configuration. - Updated package description. - Multiple TypeScript configuration updates (tsconfig). - Updated npmextra.json githost entries (changes across 2024-03-30, 2024-04-01, 2024-04-14). ## 2023-08-04 - 3.0.15 - feat(Task) Tasks can now be blocked by other tasks. - Introduced task blocking support in the Task implementation. - Release contains related maintenance and patch fixes. ## 2023-01-07 to 2023-10-20 - 3.0.4..3.1.6 - maintenance Series of patch releases focused on core fixes and stability. - Numerous core fixes and small adjustments across many patch versions. - General maintenance: bug fixes, internal updates and stability improvements. ## 2022-03-25 - 2.1.17 - BREAKING(core) Switched module format to ESM (breaking). - BREAKING CHANGE: project now uses ESM module format. - Release includes the version bump and migration to ESM. ## 2019-11-28 - 2.0.16 - feat(taskrunner) Introduce a working task runner. - Added/activated a working taskrunner implementation. - Improvements to task execution and orchestration. ## 2019-09-05 to 2022-11-14 - 2.0.3..2.1.16 - maintenance Ongoing maintenance and incremental fixes between 2.0.x and 2.1.x series. - Multiple fixes labeled as core maintenance updates. - CI, packaging and small doc/test fixes rolled out across these releases. ## 2018-08-04 - 2.0.0 - major Major release and scope change with CI/test updates. - Released 2.0.0 with updated docs. - BREAKING CHANGE: package scope switched to @pushrocks (scope migration). - CI and testing updates (moved to new tstest), package.json adjustments. ## 2017-07-12 - 1.0.21 - enhancements Feature additions around task utilities and manager. - Introduced TaskOnce. - Implemented TaskManager (added TaskManager class and improvements across 1.0.10–1.0.16). - Implemented execDelay for tasks. - Documentation and test improvements. ## 2016-08-03 - 1.0.6 - types Type and promise improvements. - Now returns correct Promise types. - Dependency and typings updates. ## 2016-08-01 - 1.0.0 - stable First stable 1.0.0 release. - Exported public interfaces. - Base API stabilized for 1.x line. ## 2016-05-15 to 2016-05-06 - 0.1.0..0.0.5 - initial features Initial implementation of core task primitives and utilities. - Added Taskparallel class to execute tasks in parallel. - Introduced basic Task class and working taskchain. - Added logging and initial task buffering behavior. - Improvements to README, typings and packaging. - Early CI and build setup (Travis/GitLab CI).