@nest-native/jobs 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -5
- package/dist/dialects/mysql/index.d.ts +1 -0
- package/dist/dialects/mysql/index.js +1 -0
- package/dist/dialects/mysql/index.js.map +1 -1
- package/dist/dialects/mysql/schedule-store.d.ts +36 -0
- package/dist/dialects/mysql/schedule-store.js +185 -0
- package/dist/dialects/mysql/schedule-store.js.map +1 -0
- package/dist/dialects/mysql/schema.d.ts +274 -0
- package/dist/dialects/mysql/schema.js +31 -1
- package/dist/dialects/mysql/schema.js.map +1 -1
- package/dist/dialects/postgres/index.d.ts +1 -0
- package/dist/dialects/postgres/index.js +1 -0
- package/dist/dialects/postgres/index.js.map +1 -1
- package/dist/dialects/postgres/schedule-store.d.ts +22 -0
- package/dist/dialects/postgres/schedule-store.js +143 -0
- package/dist/dialects/postgres/schedule-store.js.map +1 -0
- package/dist/dialects/postgres/schema.d.ts +273 -0
- package/dist/dialects/postgres/schema.js +30 -1
- package/dist/dialects/postgres/schema.js.map +1 -1
- package/dist/dialects/sqlite/index.d.ts +1 -0
- package/dist/dialects/sqlite/index.js +2 -1
- package/dist/dialects/sqlite/index.js.map +1 -1
- package/dist/dialects/sqlite/schedule-store.d.ts +23 -0
- package/dist/dialects/sqlite/schedule-store.js +153 -0
- package/dist/dialects/sqlite/schedule-store.js.map +1 -0
- package/dist/dialects/sqlite/schema.d.ts +295 -0
- package/dist/dialects/sqlite/schema.js +32 -1
- package/dist/dialects/sqlite/schema.js.map +1 -1
- package/dist/errors.d.ts +10 -0
- package/dist/errors.js +15 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +137 -0
- package/dist/job-schedules.service.d.ts +44 -0
- package/dist/job-schedules.service.js +125 -0
- package/dist/job-schedules.service.js.map +1 -0
- package/dist/jobs-claimer.service.d.ts +16 -2
- package/dist/jobs-claimer.service.js +71 -2
- package/dist/jobs-claimer.service.js.map +1 -1
- package/dist/jobs.module.d.ts +3 -1
- package/dist/jobs.module.js +17 -2
- package/dist/jobs.module.js.map +1 -1
- package/dist/schedule-planner.d.ts +30 -0
- package/dist/schedule-planner.js +58 -0
- package/dist/schedule-planner.js.map +1 -0
- package/dist/testing/harness.js +2 -1
- package/dist/testing/harness.js.map +1 -1
- package/dist/tokens.d.ts +5 -0
- package/dist/tokens.js +6 -1
- package/dist/tokens.js.map +1 -1
- package/package.json +6 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-planner.js","sourceRoot":"","sources":["../schedule-planner.ts"],"names":[],"mappings":";;AAyBA,wCAOC;AASD,kCAYC;AArDD,mCAA8B;AAC9B,qCAAgD;AAEhD;;;;;;GAMG;AAEH;;;;;;;;;;;;;GAaG;AACH,SAAgB,cAAc,CAC5B,IAAY,EACZ,QAAuB,EACvB,KAAW;IAEX,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,aAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3F,OAAO,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,WAAW,CACzB,IAAY,EACZ,QAAuB,EACvB,KAAW;IAEX,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,6BAAoB,CAC5B,0BAA0B,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,+BAA+B,CACpF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,IAAI,CAAI,IAAY,EAAE,QAAuB,EAAE,GAAY;IAClE,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,yEAAyE;QACzE,MAAM,IAAI,6BAAoB,CAC5B,0BAA0B,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAM,KAAe,CAAC,OAAO,EAAE,CACpF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,QAAuB;IACvC,OAAO,QAAQ,CAAC,CAAC,CAAC,eAAe,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACrD,CAAC"}
|
package/dist/testing/harness.js
CHANGED
|
@@ -17,9 +17,10 @@ exports.drainJobs = drainJobs;
|
|
|
17
17
|
*/
|
|
18
18
|
async function drainJobs(claimer, options = {}) {
|
|
19
19
|
const maxTicks = options.maxTicks ?? 100;
|
|
20
|
-
const total = { claimed: 0, completed: 0, retried: 0, failed: 0 };
|
|
20
|
+
const total = { scheduled: 0, claimed: 0, completed: 0, retried: 0, failed: 0 };
|
|
21
21
|
for (let tick = 0; tick < maxTicks; tick += 1) {
|
|
22
22
|
const report = await claimer.tick(options.runner);
|
|
23
|
+
total.scheduled += report.scheduled;
|
|
23
24
|
total.claimed += report.claimed;
|
|
24
25
|
total.completed += report.completed;
|
|
25
26
|
total.retried += report.retried;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../testing/harness.ts"],"names":[],"mappings":";;;AA+BA,
|
|
1
|
+
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../testing/harness.ts"],"names":[],"mappings":";;;AA+BA,8BAqBC;AAlCD;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,SAAS,CAC7B,OAAoB,EACpB,UAA4B,EAAE;IAE9B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC;IACzC,MAAM,KAAK,GAAe,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAC5F,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;QACpC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;QAChC,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;QACpC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;QAChC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;QAC9B,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CACb,kCAAkC,QAAQ,iCAAiC;QACzE,2DAA2D,CAC9D,CAAC;AACJ,CAAC;AAQD;;;;;;;;;;;;GAYG;AACH,MAAa,mBAAmB;IAAhC;QACmB,YAAO,GAA2B,EAAE,CAAC;QACrC,oBAAe,GAAY,EAAE,CAAC;IAwCjD,CAAC;IArCC,MAAM,CAAC,OAAgC,EAAE,GAAe;QACtD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,CAAC;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,YAAY,CAAC,KAAY;QACvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,mEAAmE;IACnE,QAAQ,CAAC,KAAY;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,yDAAyD;IACzD,YAAY;QACV,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,wCAAwC;IACxC,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,wDAAwD;IACxD,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;CACF;AA1CD,kDA0CC"}
|
package/dist/tokens.d.ts
CHANGED
|
@@ -8,3 +8,8 @@ export declare const JOBS_STORE: unique symbol;
|
|
|
8
8
|
export declare const JOBS_DRIZZLE: unique symbol;
|
|
9
9
|
/** The resolved {@link JobsModuleOptions}. */
|
|
10
10
|
export declare const JOBS_OPTIONS: unique symbol;
|
|
11
|
+
/**
|
|
12
|
+
* The dialect-specific {@link ScheduleStore}, or `null` when the module was
|
|
13
|
+
* configured without one (schedules are opt-in).
|
|
14
|
+
*/
|
|
15
|
+
export declare const JOBS_SCHEDULE_STORE: unique symbol;
|
package/dist/tokens.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// DI tokens for the jobs engine.
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.JOBS_OPTIONS = exports.JOBS_DRIZZLE = exports.JOBS_STORE = void 0;
|
|
4
|
+
exports.JOBS_SCHEDULE_STORE = exports.JOBS_OPTIONS = exports.JOBS_DRIZZLE = exports.JOBS_STORE = void 0;
|
|
5
5
|
/** The dialect-specific {@link JobStore} provided to `JobsModule`. */
|
|
6
6
|
exports.JOBS_STORE = Symbol.for('@nest-native/jobs:store');
|
|
7
7
|
/**
|
|
@@ -12,4 +12,9 @@ exports.JOBS_STORE = Symbol.for('@nest-native/jobs:store');
|
|
|
12
12
|
exports.JOBS_DRIZZLE = Symbol.for('@nest-native/jobs:drizzle');
|
|
13
13
|
/** The resolved {@link JobsModuleOptions}. */
|
|
14
14
|
exports.JOBS_OPTIONS = Symbol.for('@nest-native/jobs:options');
|
|
15
|
+
/**
|
|
16
|
+
* The dialect-specific {@link ScheduleStore}, or `null` when the module was
|
|
17
|
+
* configured without one (schedules are opt-in).
|
|
18
|
+
*/
|
|
19
|
+
exports.JOBS_SCHEDULE_STORE = Symbol.for('@nest-native/jobs:schedule-store');
|
|
15
20
|
//# sourceMappingURL=tokens.js.map
|
package/dist/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../tokens.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;AAEjC,sEAAsE;AACzD,QAAA,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAEhE;;;;GAIG;AACU,QAAA,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEpE,8CAA8C;AACjC,QAAA,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../tokens.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;AAEjC,sEAAsE;AACzD,QAAA,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAEhE;;;;GAIG;AACU,QAAA,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEpE,8CAA8C;AACjC,QAAA,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEpE;;;GAGG;AACU,QAAA,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nest-native/jobs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Background jobs for NestJS without Redis — a Drizzle-backed job queue (SQLite, Postgres + MySQL) with transactional enqueue, retries, delayed and unique jobs",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"nestjs",
|
|
@@ -74,7 +74,9 @@
|
|
|
74
74
|
"build": "npm run clean && tsc -p tsconfig.build.json",
|
|
75
75
|
"typecheck": "tsc --noEmit -p tsconfig.json"
|
|
76
76
|
},
|
|
77
|
-
"dependencies": {
|
|
77
|
+
"dependencies": {
|
|
78
|
+
"croner": "^10.0.1"
|
|
79
|
+
},
|
|
78
80
|
"peerDependencies": {
|
|
79
81
|
"@nestjs-cls/transactional": "^3.0.0",
|
|
80
82
|
"@nestjs/common": "^11.0.0",
|
|
@@ -98,8 +100,8 @@
|
|
|
98
100
|
}
|
|
99
101
|
},
|
|
100
102
|
"devDependencies": {
|
|
101
|
-
"@nestjs/common": "^11.1.
|
|
102
|
-
"@nestjs/core": "^11.1.
|
|
103
|
+
"@nestjs/common": "^11.1.28",
|
|
104
|
+
"@nestjs/core": "^11.1.28",
|
|
103
105
|
"reflect-metadata": "^0.2.2",
|
|
104
106
|
"rxjs": "^7.8.1",
|
|
105
107
|
"typescript": "^6.0.3"
|