Compare commits

...

4 Commits

5 changed files with 4402 additions and 1302 deletions

View File

@ -1,5 +1,17 @@
# Changelog # Changelog
## 2025-01-23 - 4.2.1 - fix(devDependencies)
Update development dependencies to latest versions
- Updated @git.zone/tstest to version ^1.0.91
- Updated @push.rocks/tapbundle to version ^5.5.6
- Updated @types/node to version ^22.10.9
## 2025-01-19 - 4.2.0 - feat(cumulativedeferred)
Added subDefer method to CumulativeDeferred
- Introduced `subDefer` method in CumulativeDeferred class to allow creating and adding new Deferreds easily.
## 2025-01-07 - 4.1.0 - feat(core) ## 2025-01-07 - 4.1.0 - feat(core)
Add fromCallback utility function for promisifying Node.js-style callback functions Add fromCallback utility function for promisifying Node.js-style callback functions

View File

@ -1,7 +1,7 @@
{ {
"name": "@push.rocks/smartpromise", "name": "@push.rocks/smartpromise",
"private": false, "private": false,
"version": "4.1.0", "version": "4.2.1",
"description": "A TypeScript library for managing promises and Deferred constructs, simplifying asynchronous programming.", "description": "A TypeScript library for managing promises and Deferred constructs, simplifying asynchronous programming.",
"main": "dist_ts/index.js", "main": "dist_ts/index.js",
"typings": "dist_ts/index.d.ts", "typings": "dist_ts/index.d.ts",
@ -21,11 +21,11 @@
}, },
"homepage": "https://code.foss.global/push.rocks/smartpromise", "homepage": "https://code.foss.global/push.rocks/smartpromise",
"devDependencies": { "devDependencies": {
"@git.zone/tsbuild": "^2.1.66", "@git.zone/tsbuild": "^2.2.0",
"@git.zone/tsrun": "^1.2.44", "@git.zone/tsrun": "^1.3.3",
"@git.zone/tstest": "^1.0.77", "@git.zone/tstest": "^1.0.91",
"@push.rocks/tapbundle": "^5.0.8", "@push.rocks/tapbundle": "^5.5.6",
"@types/node": "^20.14.8" "@types/node": "^22.10.9"
}, },
"files": [ "files": [
"ts/**/*", "ts/**/*",

5672
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@push.rocks/smartpromise', name: '@push.rocks/smartpromise',
version: '4.1.0', version: '4.2.1',
description: 'A TypeScript library for managing promises and Deferred constructs, simplifying asynchronous programming.' description: 'A TypeScript library for managing promises and Deferred constructs, simplifying asynchronous programming.'
} }

View File

@ -15,6 +15,12 @@ export class CumulativeDeferred {
}, 0); }, 0);
} }
public subDefer() {
const done = defer();
this.addPromise(done.promise);
return done;
}
public addPromise(promiseArg: Promise<any>) { public addPromise(promiseArg: Promise<any>) {
this.accumulatedPromises.push(promiseArg); this.accumulatedPromises.push(promiseArg);
} }