pg-boss 10.4.1 → 10.4.2

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.
Files changed (46) hide show
  1. package/package.json +1 -1
  2. package/dist/attorney.d.ts +0 -19
  3. package/dist/attorney.d.ts.map +0 -1
  4. package/dist/attorney.js +0 -227
  5. package/dist/bam.d.ts +0 -14
  6. package/dist/bam.d.ts.map +0 -1
  7. package/dist/bam.js +0 -114
  8. package/dist/boss.d.ts +0 -16
  9. package/dist/boss.d.ts.map +0 -1
  10. package/dist/boss.js +0 -163
  11. package/dist/cli.d.ts +0 -3
  12. package/dist/cli.d.ts.map +0 -1
  13. package/dist/cli.js +0 -333
  14. package/dist/contractor.d.ts +0 -22
  15. package/dist/contractor.d.ts.map +0 -1
  16. package/dist/contractor.js +0 -81
  17. package/dist/db.d.ts +0 -16
  18. package/dist/db.d.ts.map +0 -1
  19. package/dist/db.js +0 -46
  20. package/dist/index.d.ts +0 -72
  21. package/dist/index.d.ts.map +0 -1
  22. package/dist/index.js +0 -266
  23. package/dist/manager.d.ts +0 -93
  24. package/dist/manager.d.ts.map +0 -1
  25. package/dist/manager.js +0 -746
  26. package/dist/migrationStore.d.ts +0 -7
  27. package/dist/migrationStore.d.ts.map +0 -1
  28. package/dist/migrationStore.js +0 -425
  29. package/dist/plans.d.ts +0 -102
  30. package/dist/plans.d.ts.map +0 -1
  31. package/dist/plans.js +0 -1220
  32. package/dist/spy.d.ts +0 -23
  33. package/dist/spy.d.ts.map +0 -1
  34. package/dist/spy.js +0 -73
  35. package/dist/timekeeper.d.ts +0 -34
  36. package/dist/timekeeper.d.ts.map +0 -1
  37. package/dist/timekeeper.js +0 -158
  38. package/dist/tools.d.ts +0 -18
  39. package/dist/tools.d.ts.map +0 -1
  40. package/dist/tools.js +0 -45
  41. package/dist/types.d.ts +0 -301
  42. package/dist/types.d.ts.map +0 -1
  43. package/dist/types.js +0 -1
  44. package/dist/worker.d.ts +0 -43
  45. package/dist/worker.d.ts.map +0 -1
  46. package/dist/worker.js +0 -113
package/dist/worker.d.ts DELETED
@@ -1,43 +0,0 @@
1
- import type * as types from './types.ts';
2
- interface WorkerOptions<T> {
3
- id: string;
4
- name: string;
5
- options: types.WorkOptions;
6
- interval: number;
7
- fetch: () => Promise<types.Job<T>[]>;
8
- onFetch: (jobs: types.Job<T>[]) => Promise<void>;
9
- onError: (err: any) => void;
10
- }
11
- declare class Worker<T = unknown> {
12
- readonly id: string;
13
- readonly name: string;
14
- readonly options: types.WorkOptions;
15
- readonly fetch: () => Promise<types.Job<T>[]>;
16
- readonly onFetch: (jobs: types.Job<T>[]) => Promise<void>;
17
- readonly onError: (err: any) => void;
18
- readonly interval: number;
19
- jobs: types.Job<T>[];
20
- createdOn: number;
21
- state: types.WorkerState;
22
- lastFetchedOn: number | null;
23
- lastJobStartedOn: number | null;
24
- lastJobEndedOn: number | null;
25
- lastJobDuration: number | null;
26
- lastError: any;
27
- lastErrorOn: number | null;
28
- stopping: boolean;
29
- stopped: boolean;
30
- abortController: AbortController | null;
31
- private loopDelayPromise;
32
- private beenNotified;
33
- private runPromise;
34
- constructor({ id, name, options, interval, fetch, onFetch, onError }: WorkerOptions<T>);
35
- start(): void;
36
- private run;
37
- notify(): void;
38
- stop(): Promise<void>;
39
- abort(): void;
40
- toWipData(): types.WipData;
41
- }
42
- export default Worker;
43
- //# sourceMappingURL=worker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AASxC,UAAU,aAAa,CAAC,CAAC;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,KAAK,CAAC,WAAW,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACpC,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;CAC5B;AAED,cAAM,MAAM,CAAC,CAAC,GAAG,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEzB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAK;IACzB,SAAS,SAAa;IACtB,KAAK,EAAE,KAAK,CAAC,WAAW,CAAwB;IAChD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAO;IACnC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAO;IACtC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAO;IACpC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAO;IACrC,SAAS,EAAE,GAAG,CAAO;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAO;IACjC,QAAQ,UAAQ;IAChB,OAAO,UAAQ;IACf,eAAe,EAAE,eAAe,GAAG,IAAI,CAAO;IAC9C,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,UAAU,CAA6B;gBAElC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;IAUvF,KAAK;YAIS,GAAG;IAgDjB,MAAM;IAQA,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAW5B,KAAK,IAAK,IAAI;IAMd,SAAS,IAAK,KAAK,CAAC,OAAO;CAgB5B;AAED,eAAe,MAAM,CAAA"}
package/dist/worker.js DELETED
@@ -1,113 +0,0 @@
1
- import { delay } from "./tools.js";
2
- const WORKER_STATES = {
3
- created: 'created',
4
- active: 'active',
5
- stopping: 'stopping',
6
- stopped: 'stopped'
7
- };
8
- class Worker {
9
- id;
10
- name;
11
- options;
12
- fetch;
13
- onFetch;
14
- onError;
15
- interval;
16
- jobs = [];
17
- createdOn = Date.now();
18
- state = WORKER_STATES.created;
19
- lastFetchedOn = null;
20
- lastJobStartedOn = null;
21
- lastJobEndedOn = null;
22
- lastJobDuration = null;
23
- lastError = null;
24
- lastErrorOn = null;
25
- stopping = false;
26
- stopped = false;
27
- abortController = null;
28
- loopDelayPromise = null;
29
- beenNotified = false;
30
- runPromise = null;
31
- constructor({ id, name, options, interval, fetch, onFetch, onError }) {
32
- this.id = id;
33
- this.name = name;
34
- this.options = options;
35
- this.fetch = fetch;
36
- this.onFetch = onFetch;
37
- this.onError = onError;
38
- this.interval = interval;
39
- }
40
- start() {
41
- this.runPromise = this.run();
42
- }
43
- async run() {
44
- this.state = WORKER_STATES.active;
45
- while (!this.stopping) {
46
- const started = Date.now();
47
- try {
48
- this.beenNotified = false;
49
- const jobs = await this.fetch();
50
- this.lastFetchedOn = Date.now();
51
- if (jobs) {
52
- this.jobs = jobs;
53
- this.lastJobStartedOn = this.lastFetchedOn;
54
- await this.onFetch(jobs);
55
- this.lastJobEndedOn = Date.now();
56
- this.jobs = [];
57
- }
58
- }
59
- catch (err) {
60
- this.lastErrorOn = Date.now();
61
- this.lastError = err;
62
- err.message = `${err.message} (Queue: ${this.name}, Worker: ${this.id})`;
63
- this.onError(err);
64
- }
65
- const duration = Date.now() - started;
66
- this.lastJobDuration = duration;
67
- if (!this.stopping && !this.beenNotified && (this.interval - duration) > 100) {
68
- this.loopDelayPromise = delay(this.interval - duration);
69
- await this.loopDelayPromise;
70
- this.loopDelayPromise = null;
71
- }
72
- }
73
- this.stopping = false;
74
- this.stopped = true;
75
- this.state = WORKER_STATES.stopped;
76
- }
77
- notify() {
78
- this.beenNotified = true;
79
- if (this.loopDelayPromise) {
80
- this.loopDelayPromise.abort();
81
- }
82
- }
83
- async stop() {
84
- this.stopping = true;
85
- this.state = WORKER_STATES.stopping;
86
- if (this.loopDelayPromise) {
87
- this.loopDelayPromise.abort();
88
- }
89
- await this.runPromise;
90
- }
91
- abort() {
92
- if (this.abortController && !this.abortController.signal.aborted) {
93
- this.abortController.abort();
94
- }
95
- }
96
- toWipData() {
97
- return {
98
- id: this.id,
99
- name: this.name,
100
- options: this.options,
101
- state: this.state,
102
- count: this.jobs.length,
103
- createdOn: this.createdOn,
104
- lastFetchedOn: this.lastFetchedOn,
105
- lastJobStartedOn: this.lastJobStartedOn,
106
- lastJobEndedOn: this.lastJobEndedOn,
107
- lastError: this.lastError,
108
- lastErrorOn: this.lastErrorOn,
109
- lastJobDuration: this.lastJobDuration
110
- };
111
- }
112
- }
113
- export default Worker;