aedes-cached-persistence
Advanced tools
Comparing version
16
index.js
const QlobberSub = require('qlobber/aedes/qlobber-sub') | ||
const { Packet } = require('aedes-persistence') | ||
const MultiStream = require('multistream') | ||
const { Readable } = require('node:stream') | ||
const parallel = require('fastparallel') | ||
@@ -16,2 +16,10 @@ const { EventEmitter } = require('node:events') | ||
async function * multiStream (streams) { | ||
for (const stream of streams) { | ||
for await (const chunk of stream) { | ||
yield chunk | ||
} | ||
} | ||
} | ||
class CachedPersistence extends EventEmitter { | ||
@@ -171,6 +179,4 @@ constructor (opts) { | ||
createRetainedStreamCombi (patterns) { | ||
const streams = patterns.map((p) => { | ||
return this.createRetainedStream(p) | ||
}) | ||
return MultiStream.obj(streams) | ||
const streams = patterns.map(p => this.createRetainedStream(p)) | ||
return Readable.from(multiStream(streams), { objectMode: true }) | ||
} | ||
@@ -177,0 +183,0 @@ |
{ | ||
"name": "aedes-cached-persistence", | ||
"version": "10.0.1", | ||
"version": "10.1.0", | ||
"description": "Abstract class to write an Aedes persistence with in-process caching of subscriptions", | ||
@@ -10,6 +10,7 @@ "main": "index.js", | ||
"lint:fix": "eslint --fix", | ||
"unit": "node --test test.js", | ||
"unit": "node --test test/*.js", | ||
"test": "npm run lint && npm run unit && tsd", | ||
"test:typescript": "tsd", | ||
"coverage": "c8 --reporter=lcov node --test test.js", | ||
"coverage": "c8 --reporter=lcov npm run unit", | ||
"coverage:report": "c8 report", | ||
"test:ci": "npm run lint && npm run coverage && npm run test:typescript", | ||
@@ -67,7 +68,6 @@ "license-checker": "license-checker --production --onlyAllow='MIT;ISC;BSD-3-Clause;BSD-2-Clause'", | ||
"dependencies": { | ||
"aedes-persistence": "^10.0.2", | ||
"aedes-persistence": "^10.1.0", | ||
"fastparallel": "^2.4.1", | ||
"multistream": "^4.1.0", | ||
"qlobber": "^8.0.1" | ||
} | ||
} |
@@ -76,5 +76,5 @@ # aedes-cached-persistence | ||
```js | ||
var test = require('node:test') | ||
var myperst = require('./') | ||
var abs = require('aedes-cached-persistence/abstract') | ||
const test = require('node:test') | ||
const myperst = require('./') | ||
const abs = require('aedes-cached-persistence/abstract') | ||
@@ -91,6 +91,6 @@ abs({ | ||
```js | ||
var test = require('node:test') | ||
var myperst = require('./') | ||
var abs = require('aedes-persistence/abstract') | ||
var clean = require('./clean') // invented module | ||
const test = require('node:test') | ||
const myperst = require('./') | ||
const abs = require('aedes-persistence/abstract') | ||
const clean = require('./clean') // invented module | ||
@@ -112,3 +112,3 @@ abs({ | ||
[aedes]: http://npm.im/aedes | ||
[aedes-persistence]: http://npm.im/aedes-persistence | ||
[aedes]: http://npmjs.com/package/aedes | ||
[aedes-persistence]: http://npmjs.com/package/aedes-persistence |
30272
39.91%3
-25%16
45.45%656
71.28%- Removed
- Removed
- Removed
- Removed
Updated