From 4de4ea3fb4dc07be90d7ac749db17a55c22529c2 Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sat, 24 Jul 2021 22:04:45 +0200 Subject: [PATCH 01/10] Initial db2 validate2 support --- feed-replication.js | 40 ++++++------- package-lock.json | 132 ++++++++++++++++++++++++++++++++++++++++--- package.json | 2 +- scripts/full-sync.js | 36 ++++-------- 4 files changed, 158 insertions(+), 52 deletions(-) diff --git a/feed-replication.js b/feed-replication.js index 93b9eab..0c3f402 100644 --- a/feed-replication.js +++ b/feed-replication.js @@ -30,30 +30,21 @@ exports.init = function (sbot, config) { function syncMessages(feed, key, rpcCall, cb) { if (!partialState[feed] || !partialState[feed][key]) { - // FIXME: this will be much better with rusty validation - let adder = sbot.db.addOOO // this should be default, but is too slow - if (key == 'syncedMessages') { // false for go! - const oooState = validate.initial() - adder = (msg, cb) => sbot.db.addOOOStrictOrder(msg, oooState, cb) - } else { // hack, FIXME: creates duplicate messages - adder = (msg, cb) => { - const oooState = validate.initial() - sbot.db.addOOOStrictOrder(msg, oooState, cb) - } - } - pull( rpcCall(), - pull.asyncMap(adder), pull.collect((err, msgs) => { if (err) { console.error(err.message) return cb(err) } - var newState = {} - newState[key] = true - partial.updateState(feed, newState, (err) => { cb(err, feed) }) + // FIXME: prune contact and about from latest 25 messages + sbot.db.addOOOBatch(msgs, (err) => { + if (err) return cb(err) + var newState = {} + newState[key] = true + partial.updateState(feed, newState, (err) => { cb(err, feed) }) + }) }) ) } else @@ -61,6 +52,18 @@ exports.init = function (sbot, config) { } let synced = {} + + function getLatestSequence(feed, cb) { + pull( + sbot.db.getAllLatest(), + pull.collect((err, latest) => { + if (err) return cb(err) + + const l = latest.find(l => l.key === feed) + cb(null, l ? l.sequence + 1 : 0) + }) + ) + } function syncFeed(rpc, feed, hops, cb) { // idempotent @@ -73,8 +76,7 @@ exports.init = function (sbot, config) { } else if (hops === 1) { if (!partialState[feed] || !partialState[feed]['full']) { console.log("full replication of", feed) - sbot.db.getAllLatest((err, latest) => { - const latestSeq = latest[feed] ? latest[feed].sequence + 1 : 0 + getLatestSequence(feed, (err, latestSeq) => { pull( rpc.partialReplication.getFeed({ id: feed, seq: latestSeq, keys: false }), pull.asyncMap(sbot.db.add), @@ -89,7 +91,7 @@ exports.init = function (sbot, config) { } else cb() } else { - //console.log("partial replication of", feed) + console.log("partial replication of", feed) pull( pull.values([feed]), pull.asyncMap((feed, cb) => { diff --git a/package-lock.json b/package-lock.json index 5774c11..d2bc18b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "ssb-browser-core", - "version": "11.0.1", + "version": "11.1.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "ssb-browser-core", - "version": "11.0.1", + "version": "11.1.0", "hasInstallScript": true, "license": "Beerware", "dependencies": { @@ -28,7 +28,7 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "^2.1.1", + "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2", "ssb-dht-invite": "^2.0.0", "ssb-ebt": "^7.0.0", "ssb-friends": "^5.0.0", @@ -3257,6 +3257,11 @@ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, + "node_modules/node-bindgen-loader": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/node-bindgen-loader/-/node-bindgen-loader-1.0.1.tgz", + "integrity": "sha512-j6kNHKSGLye9qpR/OQh1BhDqyfHqNUIEGicx4NFZLUtseYagfPLLn2qW7MPssbAuAmGvAqNmAwYcW1O1uvsXZA==" + }, "node_modules/node-gyp-build": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", @@ -5023,8 +5028,8 @@ }, "node_modules/ssb-db2": { "version": "2.1.4", - "resolved": "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.1.4.tgz", - "integrity": "sha512-r70wOz0taaIgpFX/I1DbzT1mucfLSHMmXfNMaenmLcrV6vDZFyFvZVyQTn26xgv7JwDkrdD9B/1Y85AH0qjYow==", + "resolved": "git+ssh://git@github.com/ssb-ngi-pointer/ssb-db2.git#550dca23518448b6c4b955e76ea43c851c333b6c", + "license": "LGPL-3.0", "dependencies": { "async-append-only-log": "^3.0.8", "atomic-file-rw": "^0.2.1", @@ -5050,6 +5055,7 @@ "pull-cont": "^0.1.1", "pull-drain-gently": "^1.1.0", "pull-level": "^2.0.4", + "pull-paramap": "^1.2.2", "pull-stream": "^3.6.14", "push-stream": "^11.0.0", "rimraf": "^3.0.2", @@ -5057,6 +5063,8 @@ "ssb-ref": "^2.14.3", "ssb-sort": "^1.1.3", "ssb-validate": "^4.1.3", + "ssb-validate2": "~0.1.1", + "ssb-validate2-rsjs": "~0.6.0", "too-hot": "^1.0.0", "typedarray-to-buffer": "^4.0.0" } @@ -5309,6 +5317,63 @@ "ssb-ref": "^2.6.2" } }, + "node_modules/ssb-validate2": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ssb-validate2/-/ssb-validate2-0.1.1.tgz", + "integrity": "sha512-EG6CEgx7qX02Ekx8bhkEexs1foaMAt6BAmE91d3BRpim/+i+16jEYf9DzYcifKymxlsM9AUz2P0TyRxbMXreOQ==", + "dependencies": { + "ssb-validate": "^4.1.4" + } + }, + "node_modules/ssb-validate2-rsjs": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs/-/ssb-validate2-rsjs-0.6.0.tgz", + "integrity": "sha512-xl+Roqnyeswc3guXIEyytZLTzi/tTSkSiUwPcC9cQGPLX4J0mp7JeZZvaGkl/87odMxxKLRs5Qti/VnM3tgEaA==", + "dependencies": { + "ssb-validate2-rsjs-node": "~0.6.0", + "ssb-validate2-rsjs-wasm": "~0.6.0" + } + }, + "node_modules/ssb-validate2-rsjs-node": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-0.6.1.tgz", + "integrity": "sha512-xvqjyAVFyelha5Z8acBSMO0gN9/5ynPy1jzc4knqemXKtF5LNyUAbBHWy/6dfyCXeqH7joPVMSP51bPhDL5tXA==", + "hasInstallScript": true, + "dependencies": { + "node-bindgen-loader": "^1.0.1" + } + }, + "node_modules/ssb-validate2-rsjs-wasm": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-wasm/-/ssb-validate2-rsjs-wasm-0.6.2.tgz", + "integrity": "sha512-gS6j92EBs8YQLpPVn/j3hbjRZwT0/YwGyx5+8H2/g6oeWqptiV9vsDpfkwmcsSA8YkIiXDmjdfVrLFblhyk2yQ==", + "dependencies": { + "buffer": "^6.0.3" + } + }, + "node_modules/ssb-validate2-rsjs-wasm/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/ssb-ws": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/ssb-ws/-/ssb-ws-6.2.3.tgz", @@ -9046,6 +9111,11 @@ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, + "node-bindgen-loader": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/node-bindgen-loader/-/node-bindgen-loader-1.0.1.tgz", + "integrity": "sha512-j6kNHKSGLye9qpR/OQh1BhDqyfHqNUIEGicx4NFZLUtseYagfPLLn2qW7MPssbAuAmGvAqNmAwYcW1O1uvsXZA==" + }, "node-gyp-build": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", @@ -10574,9 +10644,8 @@ } }, "ssb-db2": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.1.4.tgz", - "integrity": "sha512-r70wOz0taaIgpFX/I1DbzT1mucfLSHMmXfNMaenmLcrV6vDZFyFvZVyQTn26xgv7JwDkrdD9B/1Y85AH0qjYow==", + "version": "git+ssh://git@github.com/ssb-ngi-pointer/ssb-db2.git#550dca23518448b6c4b955e76ea43c851c333b6c", + "from": "ssb-db2@github:ssb-ngi-pointer/ssb-db2#validate2", "requires": { "async-append-only-log": "^3.0.8", "atomic-file-rw": "^0.2.1", @@ -10602,6 +10671,7 @@ "pull-cont": "^0.1.1", "pull-drain-gently": "^1.1.0", "pull-level": "^2.0.4", + "pull-paramap": "^1.2.2", "pull-stream": "^3.6.14", "push-stream": "^11.0.0", "rimraf": "^3.0.2", @@ -10609,6 +10679,8 @@ "ssb-ref": "^2.14.3", "ssb-sort": "^1.1.3", "ssb-validate": "^4.1.3", + "ssb-validate2": "~0.1.1", + "ssb-validate2-rsjs": "~0.6.0", "too-hot": "^1.0.0", "typedarray-to-buffer": "^4.0.0" }, @@ -10824,6 +10896,50 @@ "ssb-ref": "^2.6.2" } }, + "ssb-validate2": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ssb-validate2/-/ssb-validate2-0.1.1.tgz", + "integrity": "sha512-EG6CEgx7qX02Ekx8bhkEexs1foaMAt6BAmE91d3BRpim/+i+16jEYf9DzYcifKymxlsM9AUz2P0TyRxbMXreOQ==", + "requires": { + "ssb-validate": "^4.1.4" + } + }, + "ssb-validate2-rsjs": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs/-/ssb-validate2-rsjs-0.6.0.tgz", + "integrity": "sha512-xl+Roqnyeswc3guXIEyytZLTzi/tTSkSiUwPcC9cQGPLX4J0mp7JeZZvaGkl/87odMxxKLRs5Qti/VnM3tgEaA==", + "requires": { + "ssb-validate2-rsjs-node": "~0.6.0", + "ssb-validate2-rsjs-wasm": "~0.6.0" + } + }, + "ssb-validate2-rsjs-node": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-0.6.1.tgz", + "integrity": "sha512-xvqjyAVFyelha5Z8acBSMO0gN9/5ynPy1jzc4knqemXKtF5LNyUAbBHWy/6dfyCXeqH7joPVMSP51bPhDL5tXA==", + "requires": { + "node-bindgen-loader": "^1.0.1" + } + }, + "ssb-validate2-rsjs-wasm": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-wasm/-/ssb-validate2-rsjs-wasm-0.6.2.tgz", + "integrity": "sha512-gS6j92EBs8YQLpPVn/j3hbjRZwT0/YwGyx5+8H2/g6oeWqptiV9vsDpfkwmcsSA8YkIiXDmjdfVrLFblhyk2yQ==", + "requires": { + "buffer": "^6.0.3" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + } + } + }, "ssb-ws": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/ssb-ws/-/ssb-ws-6.2.3.tgz", diff --git a/package.json b/package.json index b5382fc..7d31e89 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "^2.1.1", + "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2", "ssb-dht-invite": "^2.0.0", "ssb-ebt": "^7.0.0", "ssb-friends": "^5.0.0", diff --git a/scripts/full-sync.js b/scripts/full-sync.js index b9e0b59..df87938 100644 --- a/scripts/full-sync.js +++ b/scripts/full-sync.js @@ -13,8 +13,6 @@ require('../core.js').init(dir) SSB.events.on('SSB: loaded', function() { - const { where, and, isPublic, type, paginate, descending, toCallback } = SSB.dbOperators - process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0 // wtf // var remoteAddress = 'wss://between-two-worlds.dk:8990~noauth:lbocEWqF2Fg6WMYLgmfYvqJlMfL7hiqVAV6ANjHWNw8=' var remoteAddress = 'wss://between-two-worlds.dk:8989~shs:lbocEWqF2Fg6WMYLgmfYvqJlMfL7hiqVAV6ANjHWNw8=' @@ -22,35 +20,25 @@ SSB.events.on('SSB: loaded', function() { // var remoteAddress = 'ws://localhost:8989~shs:mvYGZ9GhdAHTXP+QSgQmpdu7fZBwzZTRAlpTiIClt1E=' // var remoteAddress = 'ws://localhost:8989~shs:6CAxOI3f+LUOVrbAl0IemqiS7ATpQvr9Mdw9LC4+Uv0=' + console.log(new Date()) + //SSB.net.id = '@VIOn+8a/vaQvv/Ew3+KriCngyUXHxHbjXkj4GafBAY0=.ed25519' SSB.net.conn.connect(remoteAddress, (err, rpc) => { console.time("downloading main profile") if (err) console.error(err) - pull( - rpc.partialReplication.getFeed({ - id: "@VIOn+8a/vaQvv/Ew3+KriCngyUXHxHbjXkj4GafBAY0=.ed25519", - seq: 0, keys: false - }), - pull.asyncMap(SSB.db.add), - pull.collect((err, msgs) => { - if (err) throw err - - console.timeEnd("downloading main profile") - console.log(msgs.length) - - function updateDB() { - setTimeout(() => { - console.log("db", SSB.db.getStatus().value) - console.log("replication", SSB.net.feedReplication.partialStatus()) - updateDB() - //console.log("feed", SSB.feedSyncer.status()) - }, 5 * 1000) - } + // main feed will automatically be downloaded by EBT + function updateDB() { + setTimeout(() => { + console.log("db", SSB.db.getStatus().value) + console.log("replication", SSB.net.feedReplication.partialStatus()) updateDB() - }) - ) + //console.log("feed", SSB.feedSyncer.status()) + }, 5 * 1000) + } + + updateDB() }) }) From 9873eec0e27be5b379a564a972749c86ec1029d0 Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sat, 24 Jul 2021 22:19:56 +0200 Subject: [PATCH 02/10] Faster for some reason --- feed-replication.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/feed-replication.js b/feed-replication.js index 0c3f402..645c0d3 100644 --- a/feed-replication.js +++ b/feed-replication.js @@ -79,19 +79,21 @@ exports.init = function (sbot, config) { getLatestSequence(feed, (err, latestSeq) => { pull( rpc.partialReplication.getFeed({ id: feed, seq: latestSeq, keys: false }), - pull.asyncMap(sbot.db.add), - pull.collect((err) => { + //pull.asyncMap(sbot.db.add), + pull.collect((err, messages) => { if (err) return cb(err) - waitingEBTRequests.set(feed, true) - partial.updateState(feed, { full: true }, cb) + sbot.db.addBatch(messages, () => { + waitingEBTRequests.set(feed, true) + partial.updateState(feed, { full: true }, cb) + }) }) ) }) } else cb() } else { - console.log("partial replication of", feed) + //console.log("partial replication of", feed) pull( pull.values([feed]), pull.asyncMap((feed, cb) => { From b38296751eef3c69a35c38b37b7a9642e2696366 Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 08:00:55 +0200 Subject: [PATCH 03/10] Fix syncing latest messages --- feed-replication.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/feed-replication.js b/feed-replication.js index 645c0d3..825ad86 100644 --- a/feed-replication.js +++ b/feed-replication.js @@ -38,7 +38,10 @@ exports.init = function (sbot, config) { return cb(err) } - // FIXME: prune contact and about from latest 25 messages + if (key === 'syncedMessages') + msgs = msgs.filter(m => m.content.type !== 'contact' && + m.content.type !== 'about') + sbot.db.addOOOBatch(msgs, (err) => { if (err) return cb(err) var newState = {} @@ -79,7 +82,6 @@ exports.init = function (sbot, config) { getLatestSequence(feed, (err, latestSeq) => { pull( rpc.partialReplication.getFeed({ id: feed, seq: latestSeq, keys: false }), - //pull.asyncMap(sbot.db.add), pull.collect((err, messages) => { if (err) return cb(err) From 70544a121eca426dd1155aa3d16a828df0802dc6 Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 13:45:50 +0200 Subject: [PATCH 04/10] Fix setting post state --- feed-replication.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/feed-replication.js b/feed-replication.js index 825ad86..50516e0 100644 --- a/feed-replication.js +++ b/feed-replication.js @@ -38,9 +38,13 @@ exports.init = function (sbot, config) { return cb(err) } - if (key === 'syncedMessages') + if (key === 'syncedMessages') { + const lastMsgValue = msgs[msgs.length - 1] msgs = msgs.filter(m => m.content.type !== 'contact' && m.content.type !== 'about') + const kvt = validate.toKeyValueTimestamp(lastMsgValue) + sbot.db.setPost(kvt) + } sbot.db.addOOOBatch(msgs, (err) => { if (err) return cb(err) @@ -98,10 +102,6 @@ exports.init = function (sbot, config) { //console.log("partial replication of", feed) pull( pull.values([feed]), - pull.asyncMap((feed, cb) => { - syncMessages(feed, 'syncedMessages', - () => rpc.partialReplication.getFeedReverse({ id: feed, keys: false, limit: 25 }), cb) - }), pull.asyncMap((feed, cb) => { syncMessages(feed, 'syncedProfile', () => rpc.partialReplication.getMessagesOfType({ id: feed, type: 'about' }), cb) @@ -110,6 +110,10 @@ exports.init = function (sbot, config) { syncMessages(feed, 'syncedContacts', () => rpc.partialReplication.getMessagesOfType({ id: feed, type: 'contact' }), cb) }), + pull.asyncMap((feed, cb) => { + syncMessages(feed, 'syncedMessages', + () => rpc.partialReplication.getFeedReverse({ id: feed, keys: false, limit: 25 }), cb) + }), pull.collect((err) => { if (err) return cb(err) From 70b959444b133677bc9df59d850b77039855bf6b Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 14:39:28 +0200 Subject: [PATCH 05/10] Update branch --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7d31e89..266429b 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2", + "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", "ssb-dht-invite": "^2.0.0", "ssb-ebt": "^7.0.0", "ssb-friends": "^5.0.0", From 1a852e18353e79651fd7fc606d02268d8c5e4eaa Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 16:58:56 +0200 Subject: [PATCH 06/10] Use forked ssb-ebt for fixed lossy-store --- package-lock.json | 213 ++++++++-------------------------------------- package.json | 2 +- 2 files changed, 38 insertions(+), 177 deletions(-) diff --git a/package-lock.json b/package-lock.json index d2bc18b..93bec94 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,9 +28,9 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2", + "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", "ssb-dht-invite": "^2.0.0", - "ssb-ebt": "^7.0.0", + "ssb-ebt": "github:ssbc/ssb-ebt#lossy-store-upgrade", "ssb-friends": "^5.0.0", "ssb-keys": "^8.0.2", "ssb-no-auth": "^1.0.0", @@ -1082,7 +1082,8 @@ "node_modules/defined": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true }, "node_modules/delay": { "version": "4.4.1", @@ -1214,6 +1215,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/dotignore/-/dotignore-0.1.2.tgz", "integrity": "sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==", + "dev": true, "dependencies": { "minimatch": "^3.0.4" }, @@ -1826,6 +1828,7 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, "dependencies": { "is-callable": "^1.1.3" } @@ -2778,96 +2781,11 @@ }, "node_modules/lossy-store": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lossy-store/-/lossy-store-1.2.4.tgz", - "integrity": "sha512-rvqTCHZxWLvHAJv2w5vdCr5xICAW/FiXQ9wZGaAfBlNGG2FuLX0URNcj/zXC3qr5zQ8lBCbW8EEmDCKi7Dsp1g==", - "dependencies": { - "mkdirp": "^0.5.1", - "tape": "^4.6.3" - } - }, - "node_modules/lossy-store/node_modules/deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dependencies": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/lossy-store/node_modules/is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dependencies": { - "has": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/lossy-store/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/lossy-store/node_modules/object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/lossy-store/node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dependencies": { - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/lossy-store/node_modules/tape": { - "version": "4.13.3", - "resolved": "https://registry.npmjs.org/tape/-/tape-4.13.3.tgz", - "integrity": "sha512-0/Y20PwRIUkQcTCSi4AASs+OANZZwqPKaipGCEwp10dQMipVvSZwUUCi01Y/OklIGyHKFhIcjock+DKnBfLAFw==", + "resolved": "git+ssh://git@github.com/arj03/lossy-store.git#789b4dd719b811e5adb28163e4aa9c4c055550d3", + "license": "MIT", "dependencies": { - "deep-equal": "~1.1.1", - "defined": "~1.0.0", - "dotignore": "~0.1.2", - "for-each": "~0.3.3", - "function-bind": "~1.1.1", - "glob": "~7.1.6", - "has": "~1.0.3", - "inherits": "~2.0.4", - "is-regex": "~1.0.5", - "minimist": "~1.2.5", - "object-inspect": "~1.7.0", - "resolve": "~1.17.0", - "resumer": "~0.0.0", - "string.prototype.trim": "~1.2.1", - "through": "~2.3.8" - }, - "bin": { - "tape": "bin/tape" + "atomic-file-rw": "^0.2.2", + "mkdirp": "^1.0.4" } }, "node_modules/ltgt": { @@ -3598,7 +3516,8 @@ "node_modules/path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true }, "node_modules/path-platform": { "version": "0.11.15", @@ -4364,6 +4283,7 @@ "version": "0.0.0", "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", + "dev": true, "dependencies": { "through": "~2.3.4" } @@ -5177,12 +5097,12 @@ }, "node_modules/ssb-ebt": { "version": "7.0.2", - "resolved": "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-7.0.2.tgz", - "integrity": "sha512-UY9avSEVKvWhQoXFEVA5IWYJD4ldgYIgegGjR4EImWOgwvjH8FqM2BJyIwXN2eY5UKHmfenxMqHMu3Url+KA5w==", + "resolved": "git+ssh://git@github.com/ssbc/ssb-ebt.git#37ce7af7abd03e70459e8b70e8f7986c01f1406e", + "license": "MIT", "dependencies": { "base64-url": "^2.2.0", "epidemic-broadcast-trees": "^8.0.4", - "lossy-store": "^1.2.3", + "lossy-store": "github:arj03/lossy-store", "pull-stream": "^3.6.0", "push-stream-to-pull-stream": "^1.0.4", "ssb-network-errors": "^1.0.0", @@ -5552,6 +5472,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.4.tgz", "integrity": "sha512-hWCk/iqf7lp0/AgTF7/ddO1IWtSNPASjlzCicV5irAVdE1grjsneK26YG6xACMBEdCvO8fUST0UzDMh/2Qy+9Q==", + "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -5803,7 +5724,8 @@ "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true }, "node_modules/through2": { "version": "2.0.5", @@ -7235,7 +7157,8 @@ "defined": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true }, "delay": { "version": "4.4.1", @@ -7344,6 +7267,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/dotignore/-/dotignore-0.1.2.tgz", "integrity": "sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==", + "dev": true, "requires": { "minimatch": "^3.0.4" } @@ -7895,6 +7819,7 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, "requires": { "is-callable": "^1.1.3" } @@ -8694,78 +8619,11 @@ "integrity": "sha1-dwat7VmpntygbmtUu4bI7BnJUVU=" }, "lossy-store": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lossy-store/-/lossy-store-1.2.4.tgz", - "integrity": "sha512-rvqTCHZxWLvHAJv2w5vdCr5xICAW/FiXQ9wZGaAfBlNGG2FuLX0URNcj/zXC3qr5zQ8lBCbW8EEmDCKi7Dsp1g==", + "version": "git+ssh://git@github.com/arj03/lossy-store.git#789b4dd719b811e5adb28163e4aa9c4c055550d3", + "from": "lossy-store@github:arj03/lossy-store", "requires": { - "mkdirp": "^0.5.1", - "tape": "^4.6.3" - }, - "dependencies": { - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "requires": { - "has": "^1.0.3" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "requires": { - "minimist": "^1.2.5" - } - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" - }, - "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "requires": { - "path-parse": "^1.0.6" - } - }, - "tape": { - "version": "4.13.3", - "resolved": "https://registry.npmjs.org/tape/-/tape-4.13.3.tgz", - "integrity": "sha512-0/Y20PwRIUkQcTCSi4AASs+OANZZwqPKaipGCEwp10dQMipVvSZwUUCi01Y/OklIGyHKFhIcjock+DKnBfLAFw==", - "requires": { - "deep-equal": "~1.1.1", - "defined": "~1.0.0", - "dotignore": "~0.1.2", - "for-each": "~0.3.3", - "function-bind": "~1.1.1", - "glob": "~7.1.6", - "has": "~1.0.3", - "inherits": "~2.0.4", - "is-regex": "~1.0.5", - "minimist": "~1.2.5", - "object-inspect": "~1.7.0", - "resolve": "~1.17.0", - "resumer": "~0.0.0", - "string.prototype.trim": "~1.2.1", - "through": "~2.3.8" - } - } + "atomic-file-rw": "^0.2.2", + "mkdirp": "^1.0.4" } }, "ltgt": { @@ -9366,7 +9224,8 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true }, "path-platform": { "version": "0.11.15", @@ -10079,6 +9938,7 @@ "version": "0.0.0", "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", + "dev": true, "requires": { "through": "~2.3.4" } @@ -10645,7 +10505,7 @@ }, "ssb-db2": { "version": "git+ssh://git@github.com/ssb-ngi-pointer/ssb-db2.git#550dca23518448b6c4b955e76ea43c851c333b6c", - "from": "ssb-db2@github:ssb-ngi-pointer/ssb-db2#validate2", + "from": "ssb-db2@github:ssb-ngi-pointer/ssb-db2#validate2-changes", "requires": { "async-append-only-log": "^3.0.8", "atomic-file-rw": "^0.2.1", @@ -10769,13 +10629,12 @@ } }, "ssb-ebt": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-7.0.2.tgz", - "integrity": "sha512-UY9avSEVKvWhQoXFEVA5IWYJD4ldgYIgegGjR4EImWOgwvjH8FqM2BJyIwXN2eY5UKHmfenxMqHMu3Url+KA5w==", + "version": "git+ssh://git@github.com/ssbc/ssb-ebt.git#37ce7af7abd03e70459e8b70e8f7986c01f1406e", + "from": "ssb-ebt@github:ssbc/ssb-ebt#lossy-store-upgrade", "requires": { "base64-url": "^2.2.0", "epidemic-broadcast-trees": "^8.0.4", - "lossy-store": "^1.2.3", + "lossy-store": "github:arj03/lossy-store", "pull-stream": "^3.6.0", "push-stream-to-pull-stream": "^1.0.4", "ssb-network-errors": "^1.0.0", @@ -11114,6 +10973,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.4.tgz", "integrity": "sha512-hWCk/iqf7lp0/AgTF7/ddO1IWtSNPASjlzCicV5irAVdE1grjsneK26YG6xACMBEdCvO8fUST0UzDMh/2Qy+9Q==", + "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -11322,7 +11182,8 @@ "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true }, "through2": { "version": "2.0.5", diff --git a/package.json b/package.json index 266429b..0ebdaaf 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "ssb-conn": "^5.1.0", "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", "ssb-dht-invite": "^2.0.0", - "ssb-ebt": "^7.0.0", + "ssb-ebt": "github:ssbc/ssb-ebt#lossy-store-upgrade", "ssb-friends": "^5.0.0", "ssb-keys": "^8.0.2", "ssb-no-auth": "^1.0.0", From 31dd79f57b7433aaadcd83bfefe637c181525e12 Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 19:08:03 +0200 Subject: [PATCH 07/10] More delay before connecting to anyone to ensure that ebt is properly loaded --- core.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core.js b/core.js index 1b07060..4ab818d 100644 --- a/core.js +++ b/core.js @@ -43,7 +43,7 @@ exports.init = function (dir, config, extraModules) { // Also listen for DHT connections. SSB.net.dhtInvite.start((err, success) => { }) - }, 2000) + }, 5000) } SSB.events.emit("SSB: loaded") From 2a339814c0c6742a78f3a0e6cb1322a03d93c6fc Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Sun, 25 Jul 2021 22:52:30 +0200 Subject: [PATCH 08/10] Simplify --- feed-replication.js | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/feed-replication.js b/feed-replication.js index 50516e0..9ce5f03 100644 --- a/feed-replication.js +++ b/feed-replication.js @@ -61,15 +61,11 @@ exports.init = function (sbot, config) { let synced = {} function getLatestSequence(feed, cb) { - pull( - sbot.db.getAllLatest(), - pull.collect((err, latest) => { - if (err) return cb(err) + sbot.db.getLatest(feed, (err, latest) => { + if (err) return cb(err) - const l = latest.find(l => l.key === feed) - cb(null, l ? l.sequence + 1 : 0) - }) - ) + cb(null, latest ? latest.sequence + 1 : 0) + }) } function syncFeed(rpc, feed, hops, cb) { From 4894073b3c429addab0f71774a71bca8ea945bae Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Mon, 9 Aug 2021 21:14:56 +0200 Subject: [PATCH 09/10] Upgrade ssb-ebt to fix race condition on load --- core.js | 2 +- package-lock.json | 24 ++++++++++++++---------- package.json | 2 +- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/core.js b/core.js index 4ab818d..1f25d53 100644 --- a/core.js +++ b/core.js @@ -43,7 +43,7 @@ exports.init = function (dir, config, extraModules) { // Also listen for DHT connections. SSB.net.dhtInvite.start((err, success) => { }) - }, 5000) + }, 2500) } SSB.events.emit("SSB: loaded") diff --git a/package-lock.json b/package-lock.json index 93bec94..17e8e00 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,7 +5,6 @@ "requires": true, "packages": { "": { - "name": "ssb-browser-core", "version": "11.1.0", "hasInstallScript": true, "license": "Beerware", @@ -30,7 +29,7 @@ "ssb-conn": "^5.1.0", "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", "ssb-dht-invite": "^2.0.0", - "ssb-ebt": "github:ssbc/ssb-ebt#lossy-store-upgrade", + "ssb-ebt": "^7.0.4", "ssb-friends": "^5.0.0", "ssb-keys": "^8.0.2", "ssb-no-auth": "^1.0.0", @@ -5096,13 +5095,15 @@ } }, "node_modules/ssb-ebt": { - "version": "7.0.2", - "resolved": "git+ssh://git@github.com/ssbc/ssb-ebt.git#37ce7af7abd03e70459e8b70e8f7986c01f1406e", - "license": "MIT", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-7.0.4.tgz", + "integrity": "sha512-cXY8WMwZtnJy7KuRRRRQ13PAq3sqxzbkCm6A4QCgLN9jsqyicNaSfYkNdE2u/NiMbxj7y5eEDk7MJw6PCH+vRQ==", "dependencies": { "base64-url": "^2.2.0", "epidemic-broadcast-trees": "^8.0.4", - "lossy-store": "github:arj03/lossy-store", + "lossy-store": "^1.2.3", + "obz": "^1.0.3", + "pull-defer": "^0.2.3", "pull-stream": "^3.6.0", "push-stream-to-pull-stream": "^1.0.4", "ssb-network-errors": "^1.0.0", @@ -8620,7 +8621,7 @@ }, "lossy-store": { "version": "git+ssh://git@github.com/arj03/lossy-store.git#789b4dd719b811e5adb28163e4aa9c4c055550d3", - "from": "lossy-store@github:arj03/lossy-store", + "from": "lossy-store@^1.2.3", "requires": { "atomic-file-rw": "^0.2.2", "mkdirp": "^1.0.4" @@ -10629,12 +10630,15 @@ } }, "ssb-ebt": { - "version": "git+ssh://git@github.com/ssbc/ssb-ebt.git#37ce7af7abd03e70459e8b70e8f7986c01f1406e", - "from": "ssb-ebt@github:ssbc/ssb-ebt#lossy-store-upgrade", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-7.0.4.tgz", + "integrity": "sha512-cXY8WMwZtnJy7KuRRRRQ13PAq3sqxzbkCm6A4QCgLN9jsqyicNaSfYkNdE2u/NiMbxj7y5eEDk7MJw6PCH+vRQ==", "requires": { "base64-url": "^2.2.0", "epidemic-broadcast-trees": "^8.0.4", - "lossy-store": "github:arj03/lossy-store", + "lossy-store": "^1.2.3", + "obz": "^1.0.3", + "pull-defer": "^0.2.3", "pull-stream": "^3.6.0", "push-stream-to-pull-stream": "^1.0.4", "ssb-network-errors": "^1.0.0", diff --git a/package.json b/package.json index 0ebdaaf..8bf8bfa 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "ssb-conn": "^5.1.0", "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", "ssb-dht-invite": "^2.0.0", - "ssb-ebt": "github:ssbc/ssb-ebt#lossy-store-upgrade", + "ssb-ebt": "^7.0.4", "ssb-friends": "^5.0.0", "ssb-keys": "^8.0.2", "ssb-no-auth": "^1.0.0", From 03c46e0c5bb05d98790747c7e6ea6e8368cfc3cf Mon Sep 17 00:00:00 2001 From: Anders Rune Jensen Date: Wed, 18 Aug 2021 18:48:49 +0200 Subject: [PATCH 10/10] Use released version of ssb-db2 --- package-lock.json | 770 +--------------------------------------------- package.json | 2 +- 2 files changed, 16 insertions(+), 756 deletions(-) diff --git a/package-lock.json b/package-lock.json index 17e8e00..3ca5415 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", + "ssb-db2": "^2.2.0", "ssb-dht-invite": "^2.0.0", "ssb-ebt": "^7.0.4", "ssb-friends": "^5.0.0", @@ -147,11 +147,6 @@ "inherits": "^2.0.3" } }, - "node_modules/@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" - }, "node_modules/@types/node": { "version": "10.17.55", "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.55.tgz", @@ -243,30 +238,11 @@ "node": ">=0.10.0" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/append-batch": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/append-batch/-/append-batch-0.0.2.tgz", "integrity": "sha1-1zm0UDiIJF1Hkz1HVisRSf+d+Lc=" }, - "node_modules/array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", - "engines": { - "node": ">=8" - } - }, "node_modules/array-filter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", @@ -278,22 +254,6 @@ "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=" }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "engines": { - "node": ">=8" - } - }, "node_modules/asn1.js": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", @@ -723,18 +683,6 @@ "get-intrinsic": "^1.0.2" } }, - "node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/chloride": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/chloride/-/chloride-2.4.1.tgz", @@ -779,22 +727,6 @@ "resolved": "https://registry.npmjs.org/codecs/-/codecs-2.2.0.tgz", "integrity": "sha512-+xi2ENsvchtUNa8oBUU58gHgmyN6BEEeZ8NIEgeQ0XnC+AoyihivgZYe+OOiNi+fLy/NUowugwV5gP8XWYDm0Q==" }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/combine-source-map": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", @@ -953,19 +885,6 @@ "sha.js": "bin.js" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", @@ -1655,36 +1574,6 @@ "safe-buffer": "^5.1.1" } }, - "node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/execa/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/explain-error": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/explain-error/-/explain-error-1.0.4.tgz", @@ -1748,18 +1637,6 @@ "node": ">=0.10.0" } }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/flumecodec": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/flumecodec/-/flumecodec-0.0.1.tgz", @@ -1879,17 +1756,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -1954,14 +1820,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/has-network2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/has-network2/-/has-network2-0.0.3.tgz", @@ -2072,14 +1930,6 @@ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", "dev": true }, - "node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "engines": { - "node": ">=8.12.0" - } - }, "node_modules/hyperswarm": { "version": "2.15.3", "resolved": "https://registry.npmjs.org/hyperswarm/-/hyperswarm-2.15.3.tgz", @@ -2139,14 +1989,6 @@ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, - "node_modules/ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "engines": { - "node": ">= 4" - } - }, "node_modules/immediate": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", @@ -2362,14 +2204,6 @@ "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", "dev": true }, - "node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "engines": { - "node": ">=8" - } - }, "node_modules/is-string": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", @@ -2432,11 +2266,6 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, "node_modules/isomorphic-ws": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", @@ -2745,17 +2574,6 @@ "libsodium": "0.7.8" } }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -2832,11 +2650,6 @@ "node": ">=0.10.0" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, "node_modules/miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -2867,14 +2680,6 @@ "node": ">=4" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "engines": { - "node": ">=6" - } - }, "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -2971,14 +2776,6 @@ "xor-distance": "^2.0.0" } }, - "node_modules/mri": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.1.6.tgz", - "integrity": "sha512-oi1b3MfbyGa7FJMP9GmLTttni5JoICpYBRlq+x5V16fZbLsnL9N3wFqqIm/nIG43FjUFkFh9Epzp/kzUGUnJxQ==", - "engines": { - "node": ">=4" - } - }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -3012,21 +2809,6 @@ "resolved": "https://registry.npmjs.org/multicb/-/multicb-1.2.2.tgz", "integrity": "sha512-PZM4dhYFmCF6uZGWpEmoPMUqJBywS9IcAgybT2GmSpYI1BvGvoWSdbio+ik+q/YD2vodhvslESWIS3NnkKYdqQ==" }, - "node_modules/multimatch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz", - "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==", - "dependencies": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/multiserver": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/multiserver/-/multiserver-3.7.2.tgz", @@ -3200,17 +2982,6 @@ "non-private-ip": "bin.js" } }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -3369,28 +3140,6 @@ "node": ">=4" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/p-queue": { "version": "6.6.2", "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", @@ -3417,14 +3166,6 @@ "node": ">=8" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "engines": { - "node": ">=6" - } - }, "node_modules/packet-stream": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/packet-stream/-/packet-stream-2.0.6.tgz", @@ -3488,14 +3229,6 @@ "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", "dev": true }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "engines": { - "node": ">=8" - } - }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -3504,14 +3237,6 @@ "node": ">=0.10.0" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "engines": { - "node": ">=8" - } - }, "node_modules/path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", @@ -3587,17 +3312,6 @@ "node": ">= 0.8.0" } }, - "node_modules/prettier": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/pretty-ms": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz", @@ -3612,25 +3326,6 @@ "node": ">=0.10.0" } }, - "node_modules/pretty-quick": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.0.tgz", - "integrity": "sha512-DtxIxksaUWCgPFN7E1ZZk4+Aav3CCuRdhrDSFZENb404sYMtuo9Zka823F+Mgeyt8Zt3bUiCjFzzWYE9LYqkmQ==", - "dependencies": { - "chalk": "^3.0.0", - "execa": "^4.0.0", - "find-up": "^4.1.0", - "ignore": "^5.1.4", - "mri": "^1.1.5", - "multimatch": "^4.0.0" - }, - "bin": { - "pretty-quick": "bin/pretty-quick.js" - }, - "engines": { - "node": ">=10.13" - } - }, "node_modules/private-box": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/private-box/-/private-box-0.3.1.tgz", @@ -3728,22 +3423,6 @@ "resolved": "https://registry.npmjs.org/pull-async/-/pull-async-1.0.0.tgz", "integrity": "sha1-FGs24+BD16ZmtZoUFl/dO+889Ew=" }, - "node_modules/pull-async-filter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pull-async-filter/-/pull-async-filter-1.0.0.tgz", - "integrity": "sha1-68NhfZ3iRjkIyJ/QFnHHJ1ZNaDE=", - "dependencies": { - "pull-stream": "^2.26.0" - } - }, - "node_modules/pull-async-filter/node_modules/pull-stream": { - "version": "2.28.4", - "resolved": "https://registry.npmjs.org/pull-stream/-/pull-stream-2.28.4.tgz", - "integrity": "sha1-fql0E8FhnCC8O9+eEOkTR7AyU+Q=", - "dependencies": { - "pull-core": "~1.1.0" - } - }, "node_modules/pull-awaitable": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/pull-awaitable/-/pull-awaitable-1.0.0.tgz", @@ -3775,11 +3454,6 @@ "resolved": "https://registry.npmjs.org/pull-cont/-/pull-cont-0.1.1.tgz", "integrity": "sha1-3x1YDicXV7qay666IN4kIdZg1hg=" }, - "node_modules/pull-core": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pull-core/-/pull-core-1.1.0.tgz", - "integrity": "sha1-PYEn1trBR1cFyYAJYfWdZsgEbIo=" - }, "node_modules/pull-cursor": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pull-cursor/-/pull-cursor-3.0.0.tgz", @@ -4488,25 +4162,6 @@ "fast-safe-stringify": "^2.0.7" } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "engines": { - "node": ">=8" - } - }, "node_modules/shell-quote": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", @@ -4532,11 +4187,6 @@ "object-inspect": "^1.9.0" } }, - "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, "node_modules/signed-varint": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/signed-varint/-/signed-varint-2.0.1.tgz", @@ -4946,9 +4596,9 @@ } }, "node_modules/ssb-db2": { - "version": "2.1.4", - "resolved": "git+ssh://git@github.com/ssb-ngi-pointer/ssb-db2.git#550dca23518448b6c4b955e76ea43c851c333b6c", - "license": "LGPL-3.0", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.2.0.tgz", + "integrity": "sha512-6ZxzNEUc/kT7wBFJkIblzulbIOn3hL2Al8+vzgJAXZeo+V9xRFftZPIZ3nVkgBwrdE9F2TxR9fWqBnUbVAOmfA==", "dependencies": { "async-append-only-log": "^3.0.8", "atomic-file-rw": "^0.2.1", @@ -4966,10 +4616,7 @@ "mkdirp": "^1.0.4", "obz": "^1.0.3", "p-defer": "^3.0.0", - "prettier": "^2.1.2", - "pretty-quick": "^3.1.0", "promisify-4loc": "1.0.0", - "pull-async-filter": "^1.0.0", "pull-cat": "^1.1.11", "pull-cont": "^0.1.1", "pull-drain-gently": "^1.1.0", @@ -4980,10 +4627,9 @@ "rimraf": "^3.0.2", "ssb-keys": "^8.1.0", "ssb-ref": "^2.14.3", - "ssb-sort": "^1.1.3", "ssb-validate": "^4.1.3", "ssb-validate2": "~0.1.1", - "ssb-validate2-rsjs": "~0.6.0", + "ssb-validate2-rsjs-node": "^1.0.0", "too-hot": "^1.0.0", "typedarray-to-buffer": "^4.0.0" } @@ -5246,55 +4892,15 @@ "ssb-validate": "^4.1.4" } }, - "node_modules/ssb-validate2-rsjs": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs/-/ssb-validate2-rsjs-0.6.0.tgz", - "integrity": "sha512-xl+Roqnyeswc3guXIEyytZLTzi/tTSkSiUwPcC9cQGPLX4J0mp7JeZZvaGkl/87odMxxKLRs5Qti/VnM3tgEaA==", - "dependencies": { - "ssb-validate2-rsjs-node": "~0.6.0", - "ssb-validate2-rsjs-wasm": "~0.6.0" - } - }, "node_modules/ssb-validate2-rsjs-node": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-0.6.1.tgz", - "integrity": "sha512-xvqjyAVFyelha5Z8acBSMO0gN9/5ynPy1jzc4knqemXKtF5LNyUAbBHWy/6dfyCXeqH7joPVMSP51bPhDL5tXA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-1.0.0.tgz", + "integrity": "sha512-kg/4JNzXEgFCRkvbhAuYZwq14n2sgXF03hClL5Hc9XsMWlQeQ/UHUvClMvy2veFUivz7A6PGT8MaL5BDxW0LiQ==", "hasInstallScript": true, "dependencies": { "node-bindgen-loader": "^1.0.1" } }, - "node_modules/ssb-validate2-rsjs-wasm": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-wasm/-/ssb-validate2-rsjs-wasm-0.6.2.tgz", - "integrity": "sha512-gS6j92EBs8YQLpPVn/j3hbjRZwT0/YwGyx5+8H2/g6oeWqptiV9vsDpfkwmcsSA8YkIiXDmjdfVrLFblhyk2yQ==", - "dependencies": { - "buffer": "^6.0.3" - } - }, - "node_modules/ssb-validate2-rsjs-wasm/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "node_modules/ssb-ws": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/ssb-ws/-/ssb-ws-6.2.3.tgz", @@ -5522,14 +5128,6 @@ "node": ">=0.10.0" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "engines": { - "node": ">=6" - } - }, "node_modules/subarg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", @@ -5539,17 +5137,6 @@ "minimist": "^1.1.0" } }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/syntax-error": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", @@ -6068,20 +5655,6 @@ "ultron": "~1.1.0" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", @@ -6286,11 +5859,6 @@ } } }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" - }, "@types/node": { "version": "10.17.55", "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.55.tgz", @@ -6368,24 +5936,11 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "dev": true }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, "append-batch": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/append-batch/-/append-batch-0.0.2.tgz", "integrity": "sha1-1zm0UDiIJF1Hkz1HVisRSf+d+Lc=" }, - "array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==" - }, "array-filter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", @@ -6397,16 +5952,6 @@ "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=" }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" - }, "asn1.js": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", @@ -6826,15 +6371,6 @@ "get-intrinsic": "^1.0.2" } }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "chloride": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/chloride/-/chloride-2.4.1.tgz", @@ -6874,19 +6410,6 @@ "resolved": "https://registry.npmjs.org/codecs/-/codecs-2.2.0.tgz", "integrity": "sha512-+xi2ENsvchtUNa8oBUU58gHgmyN6BEEeZ8NIEgeQ0XnC+AoyihivgZYe+OOiNi+fLy/NUowugwV5gP8XWYDm0Q==" }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "combine-source-map": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", @@ -7043,16 +6566,6 @@ } } }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", @@ -7657,32 +7170,6 @@ "safe-buffer": "^5.1.1" } }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "dependencies": { - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "requires": { - "mimic-fn": "^2.1.0" - } - } - } - }, "explain-error": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/explain-error/-/explain-error-1.0.4.tgz", @@ -7745,15 +7232,6 @@ "object-assign": "^4.1.0" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, "flumecodec": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/flumecodec/-/flumecodec-0.0.1.tgz", @@ -7866,14 +7344,6 @@ "has-symbols": "^1.0.1" } }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -7923,11 +7393,6 @@ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, "has-network2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/has-network2/-/has-network2-0.0.3.tgz", @@ -8022,11 +7487,6 @@ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", "dev": true }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==" - }, "hyperswarm": { "version": "2.15.3", "resolved": "https://registry.npmjs.org/hyperswarm/-/hyperswarm-2.15.3.tgz", @@ -8083,11 +7543,6 @@ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" - }, "immediate": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", @@ -8266,11 +7721,6 @@ "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", "dev": true }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==" - }, "is-string": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", @@ -8324,11 +7774,6 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, "isomorphic-ws": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", @@ -8589,14 +8034,6 @@ "libsodium": "0.7.8" } }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -8671,11 +8108,6 @@ } } }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, "miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -8699,11 +8131,6 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" - }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -8785,11 +8212,6 @@ "xor-distance": "^2.0.0" } }, - "mri": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.1.6.tgz", - "integrity": "sha512-oi1b3MfbyGa7FJMP9GmLTttni5JoICpYBRlq+x5V16fZbLsnL9N3wFqqIm/nIG43FjUFkFh9Epzp/kzUGUnJxQ==" - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -8820,18 +8242,6 @@ "resolved": "https://registry.npmjs.org/multicb/-/multicb-1.2.2.tgz", "integrity": "sha512-PZM4dhYFmCF6uZGWpEmoPMUqJBywS9IcAgybT2GmSpYI1BvGvoWSdbio+ik+q/YD2vodhvslESWIS3NnkKYdqQ==" }, - "multimatch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz", - "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==", - "requires": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" - } - }, "multiserver": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/multiserver/-/multiserver-3.7.2.tgz", @@ -8988,14 +8398,6 @@ "ip": "^1.1.5" } }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "requires": { - "path-key": "^3.0.0" - } - }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -9115,22 +8517,6 @@ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "requires": { - "p-limit": "^2.2.0" - } - }, "p-queue": { "version": "6.6.2", "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", @@ -9148,11 +8534,6 @@ "p-finally": "^1.0.0" } }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, "packet-stream": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/packet-stream/-/packet-stream-2.0.6.tgz", @@ -9207,21 +8588,11 @@ "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", "dev": true }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - }, "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", @@ -9284,11 +8655,6 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, - "prettier": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==" - }, "pretty-ms": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz", @@ -9300,19 +8666,6 @@ "plur": "^1.0.0" } }, - "pretty-quick": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.0.tgz", - "integrity": "sha512-DtxIxksaUWCgPFN7E1ZZk4+Aav3CCuRdhrDSFZENb404sYMtuo9Zka823F+Mgeyt8Zt3bUiCjFzzWYE9LYqkmQ==", - "requires": { - "chalk": "^3.0.0", - "execa": "^4.0.0", - "find-up": "^4.1.0", - "ignore": "^5.1.4", - "mri": "^1.1.5", - "multimatch": "^4.0.0" - } - }, "private-box": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/private-box/-/private-box-0.3.1.tgz", @@ -9405,24 +8758,6 @@ "resolved": "https://registry.npmjs.org/pull-async/-/pull-async-1.0.0.tgz", "integrity": "sha1-FGs24+BD16ZmtZoUFl/dO+889Ew=" }, - "pull-async-filter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pull-async-filter/-/pull-async-filter-1.0.0.tgz", - "integrity": "sha1-68NhfZ3iRjkIyJ/QFnHHJ1ZNaDE=", - "requires": { - "pull-stream": "^2.26.0" - }, - "dependencies": { - "pull-stream": { - "version": "2.28.4", - "resolved": "https://registry.npmjs.org/pull-stream/-/pull-stream-2.28.4.tgz", - "integrity": "sha1-fql0E8FhnCC8O9+eEOkTR7AyU+Q=", - "requires": { - "pull-core": "~1.1.0" - } - } - } - }, "pull-awaitable": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/pull-awaitable/-/pull-awaitable-1.0.0.tgz", @@ -9454,11 +8789,6 @@ "resolved": "https://registry.npmjs.org/pull-cont/-/pull-cont-0.1.1.tgz", "integrity": "sha1-3x1YDicXV7qay666IN4kIdZg1hg=" }, - "pull-core": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pull-core/-/pull-core-1.1.0.tgz", - "integrity": "sha1-PYEn1trBR1cFyYAJYfWdZsgEbIo=" - }, "pull-cursor": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pull-cursor/-/pull-cursor-3.0.0.tgz", @@ -10127,19 +9457,6 @@ "fast-safe-stringify": "^2.0.7" } }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" - }, "shell-quote": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", @@ -10165,11 +9482,6 @@ "object-inspect": "^1.9.0" } }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, "signed-varint": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/signed-varint/-/signed-varint-2.0.1.tgz", @@ -10505,8 +9817,9 @@ } }, "ssb-db2": { - "version": "git+ssh://git@github.com/ssb-ngi-pointer/ssb-db2.git#550dca23518448b6c4b955e76ea43c851c333b6c", - "from": "ssb-db2@github:ssb-ngi-pointer/ssb-db2#validate2-changes", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ssb-db2/-/ssb-db2-2.2.0.tgz", + "integrity": "sha512-6ZxzNEUc/kT7wBFJkIblzulbIOn3hL2Al8+vzgJAXZeo+V9xRFftZPIZ3nVkgBwrdE9F2TxR9fWqBnUbVAOmfA==", "requires": { "async-append-only-log": "^3.0.8", "atomic-file-rw": "^0.2.1", @@ -10524,10 +9837,7 @@ "mkdirp": "^1.0.4", "obz": "^1.0.3", "p-defer": "^3.0.0", - "prettier": "^2.1.2", - "pretty-quick": "^3.1.0", "promisify-4loc": "1.0.0", - "pull-async-filter": "^1.0.0", "pull-cat": "^1.1.11", "pull-cont": "^0.1.1", "pull-drain-gently": "^1.1.0", @@ -10538,10 +9848,9 @@ "rimraf": "^3.0.2", "ssb-keys": "^8.1.0", "ssb-ref": "^2.14.3", - "ssb-sort": "^1.1.3", "ssb-validate": "^4.1.3", "ssb-validate2": "~0.1.1", - "ssb-validate2-rsjs": "~0.6.0", + "ssb-validate2-rsjs-node": "^1.0.0", "too-hot": "^1.0.0", "typedarray-to-buffer": "^4.0.0" }, @@ -10767,42 +10076,14 @@ "ssb-validate": "^4.1.4" } }, - "ssb-validate2-rsjs": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs/-/ssb-validate2-rsjs-0.6.0.tgz", - "integrity": "sha512-xl+Roqnyeswc3guXIEyytZLTzi/tTSkSiUwPcC9cQGPLX4J0mp7JeZZvaGkl/87odMxxKLRs5Qti/VnM3tgEaA==", - "requires": { - "ssb-validate2-rsjs-node": "~0.6.0", - "ssb-validate2-rsjs-wasm": "~0.6.0" - } - }, "ssb-validate2-rsjs-node": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-0.6.1.tgz", - "integrity": "sha512-xvqjyAVFyelha5Z8acBSMO0gN9/5ynPy1jzc4knqemXKtF5LNyUAbBHWy/6dfyCXeqH7joPVMSP51bPhDL5tXA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-node/-/ssb-validate2-rsjs-node-1.0.0.tgz", + "integrity": "sha512-kg/4JNzXEgFCRkvbhAuYZwq14n2sgXF03hClL5Hc9XsMWlQeQ/UHUvClMvy2veFUivz7A6PGT8MaL5BDxW0LiQ==", "requires": { "node-bindgen-loader": "^1.0.1" } }, - "ssb-validate2-rsjs-wasm": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/ssb-validate2-rsjs-wasm/-/ssb-validate2-rsjs-wasm-0.6.2.tgz", - "integrity": "sha512-gS6j92EBs8YQLpPVn/j3hbjRZwT0/YwGyx5+8H2/g6oeWqptiV9vsDpfkwmcsSA8YkIiXDmjdfVrLFblhyk2yQ==", - "requires": { - "buffer": "^6.0.3" - }, - "dependencies": { - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - } - } - }, "ssb-ws": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/ssb-ws/-/ssb-ws-6.2.3.tgz", @@ -11011,11 +10292,6 @@ "ansi-regex": "^2.0.0" } }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" - }, "subarg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", @@ -11025,14 +10301,6 @@ "minimist": "^1.1.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "requires": { - "has-flag": "^4.0.0" - } - }, "syntax-error": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", @@ -11495,14 +10763,6 @@ } } }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "requires": { - "isexe": "^2.0.0" - } - }, "which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", diff --git a/package.json b/package.json index 8bf8bfa..84da7b3 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "ssb-blob-files": "https://github.com/ssbc/ssb-blob-files#browser-support", "ssb-caps": "^1.1.0", "ssb-conn": "^5.1.0", - "ssb-db2": "github:ssb-ngi-pointer/ssb-db2#validate2-changes", + "ssb-db2": "^2.2.0", "ssb-dht-invite": "^2.0.0", "ssb-ebt": "^7.0.4", "ssb-friends": "^5.0.0",