New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

rethinkdb-job-queue

Package Overview
Dependencies
Maintainers
1
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rethinkdb-job-queue - npm Package Compare versions

Comparing version 0.0.4 to 0.0.5

8

CHANGELOG.md
# `rethinkdb-job-queue` Change log
## v0.0.5 / 2016-08-21
* Changed return values of Queue.removeJob to job ids.
* Removed the Queue.connection alias property.
* Added the 'pausing' Queue event.
* Updated examples to work with the next() Promise.
* Fixed a require path in queue-add-job.
## v0.0.4 / 2016-08-18

@@ -4,0 +12,0 @@

1

dist/enums.js

@@ -26,2 +26,3 @@ 'use strict';

progress: 'progress',
pausing: 'pausing',
paused: 'paused',

@@ -28,0 +29,0 @@ resumed: 'resumed',

@@ -19,2 +19,3 @@ 'use strict';

}).then(function (updateResult) {
job.log.push(log);
logger('Event: log [' + job.id + ']', updateResult);

@@ -21,0 +22,0 @@ job.q.emit(enums.status.log, job.id);

2

dist/job-failed.js

@@ -49,3 +49,3 @@ 'use strict';

logger('Event: failed [' + jobIds[0] + ']');
job.q.emit(enums.status.failed, jobIds[0], job.dateRetry);
job.q.emit(enums.status.failed, jobIds[0]);
} else {

@@ -52,0 +52,0 @@ logger('Event: terminated [' + jobIds[0] + ']');

@@ -8,3 +8,3 @@ 'use strict';

var dbResult = require('./db-result');
var jobParse = require('../src/job-parse');
var jobParse = require('./job-parse');

@@ -11,0 +11,0 @@ // skipStatusCheck is for ease of adding jobs during tests

@@ -12,2 +12,4 @@ 'use strict';

q._paused = true;
logger('Event: pausing [' + q.id + ']');
q.emit(enums.status.pausing, q.id);
if (q.running < 1) {

@@ -14,0 +16,0 @@ return resolve();

@@ -50,4 +50,4 @@ 'use strict';

return dbResult.status(result.removeResult, enums.dbResult.deleted);
return result.jobIds;
});
};

@@ -283,7 +283,2 @@ 'use strict';

}, {
key: 'connection',
get: function get() {
return this.r;
}
}, {
key: 'changeFeed',

@@ -290,0 +285,0 @@ get: function get() {

{
"name": "rethinkdb-job-queue",
"version": "0.0.4",
"version": "0.0.5",
"description": "A persistent job or task queue backed by RethinkDB.",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -27,2 +27,4 @@ # Introduction

Note: You will need to install [RethinkDB][rethinkdb-url] before you can use `rethinkdb-job-queue`
```sh

@@ -52,6 +54,10 @@ npm install rethinkdb-job-queue --save

// Do something with your result
next(null, result)
return next(null, result).catch((err) => {
console.error(err)
})
} catch (err) {
console.error(err)
next(err)
return next(err).catch((err) => {
console.error(err)
})
}

@@ -125,7 +131,13 @@ })

mailOptions.to = job.recipient
transporter.sendMail(mailOptions).then((info) => {
return transporter.sendMail(mailOptions).then((info) => {
console.dir(info)
next(null, info)
return next(null, info)
}).catch((err) => {
next(err)
// This catch if for nodemailer sendMail errors.
return next(err).catch((err) => {
// This second catch is for the next(err) Promise.
// Calling next() updates the job in the database.
// This catch allows you to log update errors.
console.error(err)
})
})

@@ -132,0 +144,0 @@ })

@@ -17,3 +17,3 @@ const test = require('tape')

t.equal(Object.keys(enums.priority).length, 6, 'Enums priority has has correct number of keys')
t.equal(Object.keys(enums.status).length, 22, 'Enums status has correct number of keys')
t.equal(Object.keys(enums.status).length, 23, 'Enums status has correct number of keys')
t.equal(Object.keys(enums.options).length, 11, 'Enums options has correct number of keys')

@@ -20,0 +20,0 @@ t.equal(Object.keys(enums.index).length, 3, 'Enums index has has correct number of keys')

@@ -15,3 +15,3 @@ const test = require('tape')

test('job-failed', (t) => {
t.plan(79)
t.plan(76)

@@ -22,8 +22,6 @@ const q = new Queue(testOptions.default())

let testEvents = false
function failedEventHandler (jobId, dateRetry) {
function failedEventHandler (jobId) {
if (testEvents) {
t.equal(jobId, job.id,
`Event: Job failed [${jobId}]`)
t.ok(is.date(dateRetry),
`Event: Job failed dateRetry is a date [${dateRetry}]`)
}

@@ -30,0 +28,0 @@ }

@@ -15,3 +15,3 @@ const test = require('tape')

test('queue-interruption', (t) => {
t.plan(9)
t.plan(10)

@@ -25,2 +25,7 @@ const q = new Queue(testOptions.default())

let testEvents = false
function pausingEventHandler (qId) {
if (testEvents) {
t.equal(qId, q.id, `Event: pausing [${qId}]`)
}
}
function pausedEventHandler (qId) {

@@ -38,2 +43,3 @@ if (testEvents) {

testEvents = true
q.on(enums.status.paused, pausingEventHandler)
q.on(enums.status.paused, pausedEventHandler)

@@ -44,2 +50,3 @@ q.on(enums.status.resumed, resumedEventHandler)

testEvents = false
q.removeListener(enums.status.pausing, pausedEventHandler)
q.removeListener(enums.status.paused, pausedEventHandler)

@@ -46,0 +53,0 @@ q.removeListener(enums.status.resumed, resumedEventHandler)

@@ -17,3 +17,3 @@ const test = require('tape')

const q = new Queue(testOptions.default())
let jobs = q.createJob(3).map(j => j)
let jobs = q.createJob(3)

@@ -46,3 +46,3 @@ let testEvents = false

}).then((removeResult) => {
t.equal(removeResult, 3, 'Jobs removed successfully')
t.equal(removeResult.length, 3, 'Jobs removed successfully')
return q.getJob(jobs.map(j => j.id))

@@ -60,3 +60,3 @@ }).then((getResult) => {

}).then((removeIdResult) => {
t.equal(removeIdResult, 3, 'Jobs removed by id successfully')
t.equal(removeIdResult.length, 3, 'Jobs removed by id successfully')
return q.getJob(jobs.map(j => j.id))

@@ -74,3 +74,3 @@ }).then((getResult2) => {

}).then((removeSingleResult) => {
t.equal(removeSingleResult, 1, 'Single job removed successfully')
t.equal(removeSingleResult.length, 1, 'Single job removed successfully')
return q.getJob(jobs.id)

@@ -88,3 +88,3 @@ }).then((getResult3) => {

}).then((removeSingleResult2) => {
t.equal(removeSingleResult2, 1, 'Single job removed by id successfully')
t.equal(removeSingleResult2.length, 1, 'Single job removed by id successfully')
return q.getJob(jobs.id)

@@ -98,3 +98,3 @@ }).then((getResult4) => {

}).then((undefinedResult) => {
t.equal(undefinedResult, 0, 'Remove undefined job returns 0 result')
t.equal(undefinedResult.length, 0, 'Remove undefined job returns 0 result')

@@ -101,0 +101,0 @@ // ---------- Remove Invalid Job Tests ----------

@@ -13,3 +13,3 @@ const test = require('tape')

test('queue', (t) => {
t.plan(107)
t.plan(106)

@@ -150,3 +150,2 @@ let q = new Queue(testOptions.queueNameOnly())

t.ok(is.function(q.r), 'Queue r valid')
t.ok(is.function(q.connection), 'Queue connection valid')
t.ok(q.changeFeed, 'Queue change feed is enabled')

@@ -237,4 +236,4 @@ t.ok(q.master, 'Queue is master queue')

}).then((removedCount) => {
t.ok(is.integer(removedCount), 'Remove job returns an integer')
t.equal(removedCount, 1, 'Removed count is valid')
t.ok(is.array(removedCount), 'Remove job returns an array')
t.equal(removedCount.length, 1, 'Removed count is valid')
return q.getJob(job.id)

@@ -241,0 +240,0 @@ }).then((noJobs) => {

@@ -21,4 +21,4 @@ // const Promise = require('bluebird')

// const queueGetJob = require('./queue-get-job.spec')
// const queueGetNextJob = require('./queue-get-next-job.spec')
const queueProcess = require('./queue-process.spec')
const queueGetNextJob = require('./queue-get-next-job.spec')
// const queueProcess = require('./queue-process.spec')
// const queueChange = require('./queue-change.spec')

@@ -35,3 +35,3 @@ // const queueInterruption = require('./queue-interruption.spec')

}).then(() => {
return queueProcess()
return queueInterruption()
})

@@ -10,7 +10,7 @@ const Queue = require('../src/queue')

q.addJob(job).then((jobs) => {
return q.getJob(job.id)
}).then((savedJobs) => {
console.dir(savedJobs[0].getCleanCopy(true))
return q.summary()
}).then((result) => {
console.dir(result)
return q.stop()
})
# WORKLOG
Check for invalid priority values for job options.
Queue option parsing.
Check for valid port range 1 to 65535.
Checkout the createIndexInactivePriorityDateCreated index added status.
## Update events in tests to support x of y

@@ -15,16 +11,4 @@

Add error documentation.
Job parsing errors have a custom property err.dbError.
The next() function returns a promise with the number of running jobs.
Jobs can be cancelled by adding properties to the err object in next(err).
dateRetry gets updated on progress updates, use to stop a job timing out.
Queue.ready() returns false if the queue has been detached from the database.
Reviewed event has an object for args that includes reviewed and removed jobs.
if using createJob(number) will need to map `q.createJob(jobsToCreate).map(j => j)`
Write about the different Queue status and Job status values.
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc