@shrub/queue-bullmq 0.5.53 → 0.5.56
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/dist/module.js +89 -58
- package/package.json +5 -5
package/dist/module.js
CHANGED
|
@@ -9,6 +9,7 @@ const bullmq_1 = require("bullmq");
|
|
|
9
9
|
function convertJob(job) {
|
|
10
10
|
return {
|
|
11
11
|
id: job.id || "",
|
|
12
|
+
name: job.name,
|
|
12
13
|
data: job.data,
|
|
13
14
|
get progress() {
|
|
14
15
|
return job.progress;
|
|
@@ -48,72 +49,102 @@ class BullMQQueueAdapter extends queue_1.QueueAdapter {
|
|
|
48
49
|
this.initializeSchedulers(queueSchedulers || []);
|
|
49
50
|
}
|
|
50
51
|
getQueueInstance(name) {
|
|
51
|
-
|
|
52
|
-
const jobCompleted = new QueueEventEmitter();
|
|
53
|
-
const jobFailed = new QueueEventEmitter();
|
|
54
|
-
const jobProgress = new QueueEventEmitter();
|
|
55
|
-
let instance;
|
|
56
|
-
return {
|
|
57
|
-
get onJobActive() {
|
|
58
|
-
return jobActive.event;
|
|
59
|
-
},
|
|
60
|
-
get onJobCompleted() {
|
|
61
|
-
return jobCompleted.event;
|
|
62
|
-
},
|
|
63
|
-
get onJobFailed() {
|
|
64
|
-
return jobFailed.event;
|
|
65
|
-
},
|
|
66
|
-
get onJobProgress() {
|
|
67
|
-
return jobProgress.event;
|
|
68
|
-
},
|
|
69
|
-
add: options => {
|
|
70
|
-
const jobOptions = {
|
|
71
|
-
delay: options.delay,
|
|
72
|
-
repeat: options.repeat && {
|
|
73
|
-
cron: options.repeat.cron,
|
|
74
|
-
immediately: options.repeat.immediate
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
instance = instance || new bullmq_1.Queue(name, { connection: this.connection });
|
|
78
|
-
return instance.add(options.name || "", options.data || {}, jobOptions).then(job => convertJob(job));
|
|
79
|
-
},
|
|
80
|
-
process: optionsOrCallback => {
|
|
81
|
-
const options = this.getProcessOptions(optionsOrCallback);
|
|
82
|
-
const worker = new bullmq_1.Worker(name, job => options.callback(convertJob(job)), {
|
|
83
|
-
concurrency: options.concurrency,
|
|
84
|
-
connection: this.connection
|
|
85
|
-
});
|
|
86
|
-
// BullMQ recommends attaching to 'error' and since we don't get job info pass the error to the logger
|
|
87
|
-
// https://docs.bullmq.io/guide/workers
|
|
88
|
-
worker.on("error", error => this.logger.logError(error));
|
|
89
|
-
worker.on("active", job => {
|
|
90
|
-
this.logger.logDebug({ name: "BullMQ - job active", queueName: job.queueName, job: job.id });
|
|
91
|
-
jobActive.tryEmit(() => ({ job: convertJob(job) }));
|
|
92
|
-
});
|
|
93
|
-
worker.on("completed", (job, returnValue) => {
|
|
94
|
-
this.logger.logDebug({ name: "BullMQ - job completed", queueName: job.queueName, job: job.id });
|
|
95
|
-
jobCompleted.tryEmit(() => ({ job: convertJob(job), returnValue }));
|
|
96
|
-
});
|
|
97
|
-
worker.on("failed", (job, error) => {
|
|
98
|
-
this.logger.logWarn({ name: "BullMQ - job failed", queueName: job.queueName, job: job.id, message: error.message, stack: error.stack });
|
|
99
|
-
jobFailed.tryEmit(() => ({ job: convertJob(job), error }));
|
|
100
|
-
});
|
|
101
|
-
worker.on("progress", (job, progress) => {
|
|
102
|
-
this.logger.logDebug({ name: "BullMQ - job progress", queueName: job.queueName, job: job.id, progress: typeof progress === "number" ? progress : JSON.stringify(progress) });
|
|
103
|
-
jobProgress.tryEmit(() => ({ job: convertJob(job), progress }));
|
|
104
|
-
});
|
|
105
|
-
return worker;
|
|
106
|
-
}
|
|
107
|
-
};
|
|
52
|
+
return new BullMQWrapper(this.logger, name, this.connection);
|
|
108
53
|
}
|
|
109
54
|
initializeSchedulers(queueSchedulers) {
|
|
110
55
|
// TODO: is support needed to close the schedulers?
|
|
111
56
|
queueSchedulers.forEach(name => new bullmq_1.QueueScheduler(name, { connection: this.connection }));
|
|
112
57
|
}
|
|
113
58
|
}
|
|
59
|
+
class BullMQWrapper {
|
|
60
|
+
constructor(logger, queueName, connection) {
|
|
61
|
+
this.logger = logger;
|
|
62
|
+
this.queueName = queueName;
|
|
63
|
+
this.connection = connection;
|
|
64
|
+
this.jobActive = new QueueEventEmitter();
|
|
65
|
+
this.jobCompleted = new QueueEventEmitter();
|
|
66
|
+
this.jobFailed = new QueueEventEmitter();
|
|
67
|
+
this.jobProgress = new QueueEventEmitter();
|
|
68
|
+
this.workers = new Map();
|
|
69
|
+
this.workerId = 1;
|
|
70
|
+
}
|
|
71
|
+
get onJobActive() {
|
|
72
|
+
return this.jobActive.event;
|
|
73
|
+
}
|
|
74
|
+
get onJobCompleted() {
|
|
75
|
+
return this.jobCompleted.event;
|
|
76
|
+
}
|
|
77
|
+
get onJobFailed() {
|
|
78
|
+
return this.jobFailed.event;
|
|
79
|
+
}
|
|
80
|
+
get onJobProgress() {
|
|
81
|
+
return this.jobProgress.event;
|
|
82
|
+
}
|
|
83
|
+
add(options) {
|
|
84
|
+
const jobOptions = {
|
|
85
|
+
delay: options.delay,
|
|
86
|
+
repeat: options.repeat && {
|
|
87
|
+
cron: options.repeat.cron,
|
|
88
|
+
immediately: options.repeat.immediate
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
this.instance = this.instance || new bullmq_1.Queue(this.queueName, { connection: this.connection });
|
|
92
|
+
return this.instance.add(options.name || "", options.data || {}, jobOptions).then(job => convertJob(job));
|
|
93
|
+
}
|
|
94
|
+
async close() {
|
|
95
|
+
const promises = Array.from(this.workers.values()).map(worker => worker.close());
|
|
96
|
+
this.workers.clear();
|
|
97
|
+
if (this.instance) {
|
|
98
|
+
promises.push(this.instance.close());
|
|
99
|
+
this.instance = undefined;
|
|
100
|
+
}
|
|
101
|
+
await Promise.all(promises);
|
|
102
|
+
}
|
|
103
|
+
createWorker(optionsOrCallback) {
|
|
104
|
+
const options = this.getWorkerOptions(optionsOrCallback);
|
|
105
|
+
const worker = new bullmq_1.Worker(this.queueName, job => options.callback(convertJob(job)), {
|
|
106
|
+
concurrency: options.concurrency,
|
|
107
|
+
connection: this.connection
|
|
108
|
+
});
|
|
109
|
+
// BullMQ recommends attaching to 'error' and since we don't get job info pass the error to the logger
|
|
110
|
+
// https://docs.bullmq.io/guide/workers
|
|
111
|
+
worker.on("error", error => this.logger.logError(error));
|
|
112
|
+
worker.on("active", job => {
|
|
113
|
+
this.logger.logDebug({ name: "BullMQ - job active", queueName: job.queueName, job: job.id });
|
|
114
|
+
this.jobActive.tryEmit(() => ({ job: convertJob(job) }));
|
|
115
|
+
});
|
|
116
|
+
worker.on("completed", (job, returnValue) => {
|
|
117
|
+
this.logger.logDebug({ name: "BullMQ - job completed", queueName: job.queueName, job: job.id });
|
|
118
|
+
this.jobCompleted.tryEmit(() => ({ job: convertJob(job), returnValue }));
|
|
119
|
+
});
|
|
120
|
+
worker.on("failed", (job, error) => {
|
|
121
|
+
this.logger.logWarn({ name: "BullMQ - job failed", queueName: job.queueName, job: job.id, message: error.message, stack: error.stack });
|
|
122
|
+
this.jobFailed.tryEmit(() => ({ job: convertJob(job), error }));
|
|
123
|
+
});
|
|
124
|
+
worker.on("progress", (job, progress) => {
|
|
125
|
+
this.logger.logDebug({ name: "BullMQ - job progress", queueName: job.queueName, job: job.id, progress: typeof progress === "number" ? progress : JSON.stringify(progress) });
|
|
126
|
+
this.jobProgress.tryEmit(() => ({ job: convertJob(job), progress }));
|
|
127
|
+
});
|
|
128
|
+
const id = this.workerId++;
|
|
129
|
+
this.workers.set(id, worker);
|
|
130
|
+
return {
|
|
131
|
+
close: () => {
|
|
132
|
+
const worker = this.workers.get(id);
|
|
133
|
+
if (worker) {
|
|
134
|
+
this.workers.delete(id);
|
|
135
|
+
return worker.close();
|
|
136
|
+
}
|
|
137
|
+
return Promise.resolve();
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
getWorkerOptions(optionsOrCallback) {
|
|
142
|
+
return typeof optionsOrCallback === "function" ? { callback: optionsOrCallback } : optionsOrCallback;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
114
145
|
class QueueEventEmitter extends event_emitter_1.EventEmitter {
|
|
115
146
|
tryEmit(getArgs) {
|
|
116
147
|
return this.count ? super.emit(getArgs()) : Promise.resolve();
|
|
117
148
|
}
|
|
118
149
|
}
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzQ0FBNkY7QUFDN0YsNENBQXdEO0FBQ3hELHdDQUVzQjtBQUN0Qix3REFBNEQ7QUFDNUQsbUNBQTRGO0FBbUI1RixTQUFTLFVBQVUsQ0FBQyxHQUFRO0lBQ3hCLE9BQU87UUFDSCxFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFO1FBQ2hCLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLElBQUksUUFBUTtZQUNSLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUN4QixDQUFDO1FBQ0QsY0FBYyxDQUFDLFFBQVE7WUFDbkIsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQUVZLFFBQUEseUJBQXlCLEdBQUcsbUJBQVksRUFBNkIsQ0FBQztBQUVuRixNQUFhLGlCQUFpQjtJQUE5QjtRQUNxQixhQUFRLEdBQXlCLEVBQUUsQ0FBQztRQUU1QyxTQUFJLEdBQUcsY0FBYyxDQUFDO1FBQ3RCLGlCQUFZLEdBQUc7WUFDcEIsdUJBQWE7WUFDYixtQkFBVztTQUNkLENBQUM7SUFpQk4sQ0FBQztJQWZHLFVBQVUsQ0FBQyxJQUF3QjtRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLGlDQUF5QixDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMvRCxRQUFRLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLGtCQUFrQixDQUMxRCxRQUFRLENBQUMsR0FBRyxDQUFDLGlCQUFPLENBQUMsRUFDckIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQzdCLE9BQU8sSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQ3BDLE9BQU8sSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDM0MsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQXVCO1FBQ2pELE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDYixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDJCQUFtQixDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUNKO0FBeEJELDhDQXdCQztBQUVELE1BQU0sa0JBQW1CLFNBQVEsb0JBQVk7SUFDekMsWUFDcUIsTUFBZSxFQUNmLFVBQThCLEVBQy9DLGlCQUE0QixFQUM1QixlQUEwQjtRQUN0QixLQUFLLENBQUMsaUJBQWlCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBSnJCLFdBQU0sR0FBTixNQUFNLENBQVM7UUFDZixlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQUkzQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFUyxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ25DLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxlQUF5QjtRQUNsRCxtREFBbUQ7UUFDbkQsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksdUJBQWMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvRixDQUFDO0NBQ0o7QUFFRCxNQUFNLGFBQWE7SUFVZixZQUNxQixNQUFlLEVBQ2YsU0FBaUIsRUFDakIsVUFBOEI7UUFGOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUNmLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsZUFBVSxHQUFWLFVBQVUsQ0FBb0I7UUFabEMsY0FBUyxHQUFHLElBQUksaUJBQWlCLEVBQXVCLENBQUM7UUFDekQsaUJBQVksR0FBRyxJQUFJLGlCQUFpQixFQUEwQixDQUFDO1FBQy9ELGNBQVMsR0FBRyxJQUFJLGlCQUFpQixFQUF1QixDQUFDO1FBQ3pELGdCQUFXLEdBQUcsSUFBSSxpQkFBaUIsRUFBeUIsQ0FBQztRQUM3RCxZQUFPLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7UUFHN0MsYUFBUSxHQUFHLENBQUMsQ0FBQztJQU1yQixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQsR0FBRyxDQUFDLE9BQW9CO1FBQ3BCLE1BQU0sVUFBVSxHQUFnQjtZQUM1QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7WUFDcEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLElBQUk7Z0JBQ3RCLElBQUksRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUk7Z0JBQ3pCLFdBQVcsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVM7YUFDeEM7U0FDSixDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksY0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDNUYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5RyxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUs7UUFDUCxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRXJCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1NBQzdCO1FBRUQsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUFZLENBQUMsaUJBQWtEO1FBQzNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sTUFBTSxHQUFHLElBQUksZUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2hGLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztZQUNoQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDOUIsQ0FBQyxDQUFDO1FBRUgsc0dBQXNHO1FBQ3RHLHVDQUF1QztRQUN2QyxNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdGLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3RSxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN4SSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdLLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6RSxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFN0IsT0FBTztZQUNILEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBQ1IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3BDLElBQUksTUFBTSxFQUFFO29CQUNSLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUN4QixPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDekI7Z0JBRUQsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDN0IsQ0FBQztTQUNKLENBQUM7SUFDTixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsaUJBQWtEO1FBQ3ZFLE9BQU8sT0FBTyxpQkFBaUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO0lBQ3pHLENBQUM7Q0FDSjtBQUVELE1BQU0saUJBQXlCLFNBQVEsNEJBQW1CO0lBQ3RELE9BQU8sQ0FBQyxPQUFvQjtRQUN4QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2xFLENBQUM7Q0FDSiJ9
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shrub/queue-bullmq",
|
|
3
3
|
"description": "Provides a job/worker queue using BullMQ.",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.56",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -24,14 +24,14 @@
|
|
|
24
24
|
"clean": "rimraf ./dist && rimraf tsconfig.tsbuildinfo"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@shrub/core": "0.5.
|
|
28
|
-
"@shrub/logging": "0.5.
|
|
29
|
-
"@shrub/queue": "0.5.
|
|
27
|
+
"@shrub/core": "0.5.56",
|
|
28
|
+
"@shrub/logging": "0.5.56",
|
|
29
|
+
"@shrub/queue": "0.5.56",
|
|
30
30
|
"@sprig/event-emitter": "^0.2.0",
|
|
31
31
|
"bullmq": "^1.80.6"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/ioredis": "^4.28.2"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "22c75fe24dace30cd85b72e34a4509069e6f0526"
|
|
37
37
|
}
|