{"id":44713,"library":"deps_safe_kue","title":"Kue (deps_safe_kue fork)","description":"A priority job queue backed by Redis, originally built by Automattic and now unmaintained. This fork (deps_safe_kue v0.12.0) fixes legacy dependency issues without adding new features. It supports delayed jobs, parallel work distribution, job events, TTL, retries with backoff, graceful shutdown, full-text search, a RESTful JSON API, and a rich UI. The package is ESM-only in recent versions (if following upstream) though the 0.x series is mostly CJS. Known to be in maintenance mode; users should consider alternatives like Bull or Bee-Queue for active development.","status":"maintenance","version":"0.12.0","language":"javascript","source_language":"en","source_url":"https://github.com/o5r/deps_safe_kue","tags":["javascript","job","queue","worker","redis"],"install":[{"cmd":"npm install deps_safe_kue","lang":"bash","label":"npm"},{"cmd":"yarn add deps_safe_kue","lang":"bash","label":"yarn"},{"cmd":"pnpm add deps_safe_kue","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Kue requires a Redis server to function; it uses the node_redis client.","package":"redis","optional":false}],"imports":[{"note":"Although CJS require works in 0.x, future versions may drop it. ESM named import not available for createQueue.","wrong":"const kue = require('kue'); const queue = kue.createQueue();","symbol":"createQueue","correct":"import kue from 'kue'; const queue = kue.createQueue();"},{"note":"Named export Job available in ESM. CJS equivalent is kue.Job.","wrong":"const Job = require('kue').Job;","symbol":"Job","correct":"import { Job } from 'kue';"},{"note":"Queue is an interface, not a runtime value; use type import in TypeScript.","wrong":"import { Queue } from 'kue';","symbol":"Queue (type)","correct":"import type { Queue } from 'kue';"}],"quickstart":{"code":"import kue from 'kue';\nimport redis from 'redis';\n\nconst client = redis.createClient();\nconst queue = kue.createQueue({ redis: { host: '127.0.0.1', port: 6379 } });\n\nqueue.process('email', (job, done) => {\n  console.log(`Processing job ${job.id}`);\n  done();\n});\n\nconst job = queue.create('email', {\n  title: 'welcome email',\n  to: 'user@example.com',\n}).save(err => {\n  if (err) console.error(err);\n  else console.log(`Job ${job.id} created`);\n});\n\nsetTimeout(() => process.exit(0), 1000);","lang":"typescript","description":"Creates a Kue queue, processes email jobs, and enqueues a sample job."},"warnings":[{"fix":"Migrate to Bull or Bee-Queue for active support and modern features.","message":"Kue is no longer maintained upstream; this fork only fixes dependencies.","severity":"deprecated","affected_versions":">=0.9.0"},{"fix":"Use { redis: { host, port, auth } } instead of passing a client directly.","message":"Redis connection options changed significantly in 0.10.x.","severity":"breaking","affected_versions":">=0.10.0"},{"fix":"Update progress handlers to accept two arguments.","message":"Job progress callback signature changed; (progress) => was replaced by (progress, data) =>.","severity":"breaking","affected_versions":">=0.9.0"},{"fix":"Set job.removeOnComplete(true) if you don't need completed jobs persisted.","message":"Jobs with TTL may appear stuck if 'removeOnComplete' is not set.","severity":"gotcha","affected_versions":">=0.8.0"},{"fix":"Consider using a dedicated monitoring tool instead of the built-in API.","message":"The RESTful JSON API is incomplete and not actively maintained.","severity":"deprecated","affected_versions":">=0.10.0"}],"env_vars":null,"search_vec":"'0':75 'activ':98 'ad':31 'altern':90 'api':56 'automatt':16 'back':10 'backoff':46 'bee':95 'bee-queu':94 'built':14 'bull':92 'cjs':80 'consid':89 'delay':36 'dep':2,22 'depend':28 'develop':99 'distribut':40 'esm':65 'esm-on':64 'event':42 'featur':33 'fix':26 'follow':71 'fork':5,21 'full':50 'full-text':49 'grace':47 'issu':29 'javascript':100 'job':8,37,41,101 'json':55 'known':81 'kue':1,4,24 'legaci':27 'like':91 'mainten':85 'mode':86 'most':79 'new':32 'origin':13 'packag':62 'parallel':38 'prioriti':7 'queue':9,96,102 'recent':68 'redi':12,104 'rest':54 'retri':44 'rich':59 'safe':3,23 'search':52 'seri':77 'shutdown':48 'support':35 'text':51 'though':73 'ttl':43 'ui':60 'unmaintain':19 'upstream':72 'user':87 'v0.12.0':25 'version':69 'without':30 'work':39 'worker':103 'x':76","created_at":"2026-06-07T12:51:28.765580+00:00","updated_at":"2026-06-07T12:51:28.765580+00:00","problems":[{"fix":"Start Redis with 'redis-server', or configure connection via kue.createQueue({ redis: { host: 'your_host', port: 6379 } }).","cause":"Redis server is not running or is unreachable on localhost:6379.","error":"Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED"},{"fix":"Use import kue from 'kue' or switch to CommonJS: const kue = require('kue').default; if needed.","cause":"Using CJS require on an ESM-only build or missing default export.","error":"TypeError: kue.createQueue is not a function"},{"fix":"Always provide a job type, e.g., queue.create('email', data).","cause":"Calling queue.create() without a first argument (job type string).","error":"Error: Job type is required"},{"fix":"Ensure you pass a function: job.save(err => { ... }).","cause":"Passing a non-function or no callback to job.save().","error":"Error: job.save() callback not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"http://o5r.github.io/deps_safe_kue/","github":"https://github.com/o5r/deps_safe_kue","docs":null,"changelog":null,"pypi":null,"npm":"deps_safe_kue","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}