diff --git a/package-lock.json b/package-lock.json index 67f6931..ca3ec19 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,44 +4,6 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@commercial/address": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@commercial/address/-/address-1.0.0.tgz", - "integrity": "sha512-vSmScYa4edz8CuIt3xw2mk8IARnUadqpVoGGyjHYeBgjTo1AF44uCMf9orrVMyIHewrGfiNOU4o+Mew11Rvdcw==", - "dev": true - }, - "@commercial/hoek": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@commercial/hoek/-/hoek-4.3.0.tgz", - "integrity": "sha512-Xg6dyEV13cvegHJJI5nbv+qGal6DruMgL+Lfv/GtQtyESdHPZBQKNEAiQ+bU1dByaXmdqvt9D23Fsokk1SF9tQ==", - "dev": true - }, - "@commercial/items": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@commercial/items/-/items-2.2.0.tgz", - "integrity": "sha512-hFv2jD5RZBDJB0NwxrdUfvLiSOrxQTbA7iQmSPJm1Ausl5EAaG0LeyOeD3B1KFuvesyWHHX+qwdRtE0nwzulqw==", - "dev": true - }, - "@commercial/joi": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/@commercial/joi/-/joi-12.1.0.tgz", - "integrity": "sha512-IvoVedpiXAxN4LRVBUIdf9+oEiHOncHbk53QPgVJ3/U2DkDAHV9pqxWApzaTHLzGb/IoKQOWVYhgg/HaJcxMng==", - "dev": true, - "requires": { - "@commercial/address": "1.x.x", - "@commercial/hoek": "4.x.x", - "@commercial/topo": "2.x.x" - } - }, - "@commercial/topo": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@commercial/topo/-/topo-2.1.0.tgz", - "integrity": "sha512-KMk5Y+5PpPycIazfTNR5+oKL2ZmUJTNiyjGXPecQy8eZif9OeSz56QxD1Vhe6WgU00r8OKqiCAqMKV3AqEw7zg==", - "dev": true, - "requires": { - "@commercial/hoek": "4.x.x" - } - }, "@nodeutils/defaults-deep": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@nodeutils/defaults-deep/-/defaults-deep-1.1.0.tgz", @@ -57,9 +19,9 @@ "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==" }, "@types/node": { - "version": "10.14.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.3.tgz", - "integrity": "sha512-2lhc7S28vo8FwR3Jv3Ifyd77AxEsx+Nl9ajWiac6/eWuvZ84zPK4RE05pfqcn3acIzlZDpQj5F1rIKQZX3ptLQ==" + "version": "10.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.4.tgz", + "integrity": "sha512-DT25xX/YgyPKiHFOpNuANIQIVvYEwCWXgK2jYYwqgaMrYE6+tq+DtmMwlD3drl6DJbUwtlIDnn0d7tIn/EbXBg==" }, "@webassemblyjs/ast": { "version": "1.8.5", @@ -1412,9 +1374,9 @@ } }, "binary-extensions": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.0.tgz", - "integrity": "sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true }, "binary-querystring": { @@ -1917,9 +1879,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30000951", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000951.tgz", - "integrity": "sha512-eRhP+nQ6YUkIcNQ6hnvdhMkdc7n3zadog0KXNRxAZTT2kHjUb1yGn71OrPhSn8MOvlX97g5CR97kGVj8fMsXWg==", + "version": "1.0.30000955", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000955.tgz", + "integrity": "sha512-6AwmIKgqCYfDWWadRkAuZSHMQP4Mmy96xAXEdRBlN/luQhlRYOKgwOlZ9plpCOsVbBuqbTmGqDK3JUM/nlr8CA==", "dev": true }, "capture-stack-trace": { @@ -3013,9 +2975,9 @@ } }, "electron-to-chromium": { - "version": "1.3.119", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.119.tgz", - "integrity": "sha512-3mtqcAWa4HgG+Djh/oNXlPH0cOH6MmtwxN1nHSaReb9P0Vn51qYPqYwLeoSuAX9loU1wrOBhFbiX3CkeIxPfgg==", + "version": "1.3.120", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.120.tgz", + "integrity": "sha512-p1pgKOSSgcROCRiZoJ5H5wFmhqdA0L3yLL9mlfcmdA4V60IDCrsvhNqN8rLPe9e3B772Gm02kBkL1GM/g2lENg==", "dev": true }, "elliptic": { @@ -5783,9 +5745,9 @@ } }, "hoek": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-6.1.2.tgz", - "integrity": "sha512-6qhh/wahGYZHFSFw12tBbJw5fsAhhwrrG/y3Cs0YMTv2WzMnL0oLPnQJjv1QJvEfylRSOFuP+xCu+tdx0tD16Q==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-6.1.3.tgz", + "integrity": "sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ==", "dev": true }, "home-or-tmp": { @@ -5855,9 +5817,9 @@ } }, "ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", "dev": true }, "iferr": { @@ -6102,18 +6064,18 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, "ip-address": { - "version": "5.8.9", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-5.8.9.tgz", - "integrity": "sha512-7ay355oMN34iXhET1BmCJVsHjOTSItEEIIpOs38qUC23AIhOy+xIPnkrTuEFjeLMrTJ7m8KMXWgWfy/2Vn9sDw==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-5.9.0.tgz", + "integrity": "sha512-+4yKpEyent8IpjuDQVkIpzIDbxSlCHTPdmaXCRLH0ttt3YsrbNxuZJ6h+1wLPx10T7gWsLN7M6BXIHV2vZNOGw==", "dev": true, "requires": { "jsbn": "1.1.0", "lodash.find": "^4.6.0", "lodash.max": "^4.0.1", - "lodash.merge": "^4.6.0", + "lodash.merge": "^4.6.1", "lodash.padstart": "^4.6.1", "lodash.repeat": "^4.1.0", - "sprintf-js": "1.1.0" + "sprintf-js": "1.1.1" } }, "ip-regex": { @@ -6557,12 +6519,12 @@ } }, "ipfs-log": { - "version": "github:orbitdb/ipfs-log#3298d12cee687bbd7de72a60e196b25eb9ee564d", + "version": "github:orbitdb/ipfs-log#b53861f9d25e1c8162d27f09a91c4aac647a220d", "from": "github:orbitdb/ipfs-log#libp2p", "requires": { "cids": "^0.5.7", "ipld-dag-pb": "^0.15.2", - "orbit-db-identity-provider": "github:orbitdb/orbit-db-identity-provider#179d0c20356f1b75d602ae4f1a4ac382795b59b3", + "orbit-db-identity-provider": "github:orbitdb/orbit-db-identity-provider#fc0829fefc855f3299b681acf6c76b48ce158a50", "orbit-db-io": "~0.0.1", "p-map": "^1.1.1", "p-whilst": "^1.0.0", @@ -6838,9 +6800,9 @@ } }, "ipfs-http-client": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/ipfs-http-client/-/ipfs-http-client-30.1.0.tgz", - "integrity": "sha512-yon0JgvXDXxy90x6R+Ut7nBoXEgSQI4cSmlV3KOhzMO9cIdUSDBflEWBGBSVciDBu9xxPASOh7umYV6XPz8Xlw==", + "version": "30.1.1", + "resolved": "https://registry.npmjs.org/ipfs-http-client/-/ipfs-http-client-30.1.1.tgz", + "integrity": "sha512-tMqSwEhW57VnjHDBLjKKlgtAvlhkqVSR3oIFC0IiGnaM1nzcw7pbFBoHaFzl0PKIuXm40a5bJt85Rm2trYx+Ag==", "dev": true, "requires": { "async": "^2.6.1", @@ -7533,9 +7495,9 @@ "integrity": "sha512-ywSWt0KrWcsaK0jVoVJIR30rLyjg9Rw3k2Sm/qp+3tdtSV0SNH7L7KilKnENcENOSoJxDFvpt2idvuMMQohdCQ==" }, "iso-stream-http": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/iso-stream-http/-/iso-stream-http-0.1.1.tgz", - "integrity": "sha512-uYveJvqcH+TecR1ittHG+vSfq8fwQRNiqWYlFkpZu1RpwLcXU9zSgN29CQ66M/ZOykbcXm3igDiHrs+G+bLd6A==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/iso-stream-http/-/iso-stream-http-0.1.2.tgz", + "integrity": "sha512-oHEDNOysIMTNypbg2f1SlydqRBvjl4ZbSE9+0awVxnkx3K2stGTFwB/kpVqnB6UEfF8QD36kAjDwZvqyXBLMnQ==", "dev": true, "requires": { "builtin-status-codes": "^3.0.0", @@ -8426,9 +8388,9 @@ } }, "libp2p-kad-dht": { - "version": "0.14.9", - "resolved": "https://registry.npmjs.org/libp2p-kad-dht/-/libp2p-kad-dht-0.14.9.tgz", - "integrity": "sha512-SjwiZU7/ES1eURMWtBJbGcxi41V+MUvFGt2cLpBozZ+v4UchwBJrN4GTIpjHOE/fyDpxRhDIn9vIuC9N+2aeXA==", + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/libp2p-kad-dht/-/libp2p-kad-dht-0.14.10.tgz", + "integrity": "sha512-nCUJa+0r5P4QE1pPc4CcklcuHJpibNzKVThSZkWI7wv3Bqte4Fqt6RbGPeW/7WmcoXNpBV1SK6uSgDS2Mp3EhA==", "dev": true, "requires": { "async": "^2.6.2", @@ -9019,7 +8981,7 @@ } }, "localstorage-level-migration": { - "version": "github:orbitdb/localstorage-level-migration#067cee74501741304d85bcef8d51e46e5f5dfd28", + "version": "github:orbitdb/localstorage-level-migration#df3a7f56a980d8934613ceba518e66c4fc111945", "from": "github:orbitdb/localstorage-level-migration", "dev": true, "requires": { @@ -10326,7 +10288,7 @@ "dev": true }, "orbit-db-access-controllers": { - "version": "github:orbitdb/orbit-db-access-controllers#ae5dec5a5949b8cb526c81e3fea57fecf3d7e877", + "version": "github:orbitdb/orbit-db-access-controllers#c3c129fbbc524c36d0805a295b0d1b48a7f371ef", "from": "github:orbitdb/orbit-db-access-controllers#libp2p", "requires": { "orbit-db-io": "~0.0.1", @@ -10382,11 +10344,11 @@ } }, "orbit-db-identity-provider": { - "version": "github:orbitdb/orbit-db-identity-provider#179d0c20356f1b75d602ae4f1a4ac382795b59b3", + "version": "github:orbitdb/orbit-db-identity-provider#fc0829fefc855f3299b681acf6c76b48ce158a50", "from": "github:orbitdb/orbit-db-identity-provider#libp2p", "requires": { "ethers": "^4.0.20", - "orbit-db-keystore": "github:orbitdb/orbit-db-keystore#a2c54e3c5d021780b3d2e92cc7d93f202123d2a8" + "orbit-db-keystore": "github:orbitdb/orbit-db-keystore#a7e6771692de8c17417a83473dd8f962d2cf5c36" } }, "orbit-db-io": { @@ -10400,7 +10362,7 @@ } }, "orbit-db-keystore": { - "version": "github:orbitdb/orbit-db-keystore#a2c54e3c5d021780b3d2e92cc7d93f202123d2a8", + "version": "github:orbitdb/orbit-db-keystore#a7e6771692de8c17417a83473dd8f962d2cf5c36", "from": "github:orbitdb/orbit-db-keystore#libp2p", "requires": { "elliptic": "^6.4.1", @@ -10450,7 +10412,7 @@ "version": "github:orbitdb/orbit-db-store#5f87d2ce4d313fc8c2cac097472a2cdd3eaa6e6a", "from": "github:orbitdb/orbit-db-store#feat/backwards-compatible", "requires": { - "ipfs-log": "github:orbitdb/ipfs-log#3298d12cee687bbd7de72a60e196b25eb9ee564d", + "ipfs-log": "github:orbitdb/ipfs-log#b53861f9d25e1c8162d27f09a91c4aac647a220d", "logplease": "^1.2.14", "orbit-db-io": "~0.0.1", "p-each-series": "^1.0.0", @@ -10879,14 +10841,34 @@ } }, "podium": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/podium/-/podium-1.4.0.tgz", - "integrity": "sha512-Dv465IPZA7Fd0yq00T9VpCzzaYbL7Ipb7c8UyAU2IwGovpduYkxgOK7ZqmfP/WyMsy7c4n4iwxe0jm+OKYvgZA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/podium/-/podium-1.3.0.tgz", + "integrity": "sha512-ZIujqk1pv8bRZNVxwwwq0BhXilZ2udycQT3Kp8ah3f3TcTmVg7ILJsv/oLf47gRa2qeiP584lNq+pfvS9U3aow==", "dev": true, "requires": { - "@commercial/hoek": "4.x.x", - "@commercial/items": "2.x.x", - "@commercial/joi": "12.x.x" + "hoek": "4.x.x", + "items": "2.x.x", + "joi": "10.x.x" + }, + "dependencies": { + "hoek": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", + "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==", + "dev": true + }, + "joi": { + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/joi/-/joi-10.6.0.tgz", + "integrity": "sha512-hBF3LcqyAid+9X/pwg+eXjD2QBZI5eXnBFJYaAkH4SK3mp9QSRiiQnDYlmlz5pccMvnLcJRS4whhDOTCkmsAdQ==", + "dev": true, + "requires": { + "hoek": "4.x.x", + "isemail": "2.x.x", + "items": "2.x.x", + "topo": "2.x.x" + } + } } }, "posix-character-classes": { @@ -12373,9 +12355,9 @@ "dev": true }, "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" }, "semver-diff": { "version": "2.1.0", @@ -12953,9 +12935,9 @@ } }, "sprintf-js": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.0.tgz", - "integrity": "sha1-z/yvcC2vZeo5u04PorKZzsGhvkY=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.1.tgz", + "integrity": "sha1-Nr54Mgr+WAH2zqPueLblqrlA6gw=", "dev": true }, "ssri": { @@ -14834,9 +14816,9 @@ "dev": true }, "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" diff --git a/src/OrbitDB.js b/src/OrbitDB.js index 0c57d7d..800569b 100644 --- a/src/OrbitDB.js +++ b/src/OrbitDB.js @@ -59,7 +59,7 @@ let databaseTypes = { const { id } = await ipfs.id() const directory = options.directory || './orbitdb' - const keystore = options.keystore || await Keystore.create(path.join(directory, id, '/keystore')) + const keystore = options.keystore || Keystore.create(path.join(directory, id, '/keystore')) const identity = options.identity || await Identities.createIdentity({ id: options.id || id, diff --git a/test/v0-open-load.js b/test/v0-open-load.js index 489f9d7..ae730e3 100644 --- a/test/v0-open-load.js +++ b/test/v0-open-load.js @@ -12,7 +12,7 @@ const OrbitDBAddress = require('../src/orbit-db-address') const io = require('orbit-db-io') const IPFS = require('ipfs') const Identities = require('orbit-db-identity-provider') -const migrate = require('localstorage-level-migration').migrateKeys +const migrate = require('localstorage-level-migration') // Include test utilities const { @@ -24,8 +24,9 @@ const { const dbPath = './orbitdb/tests/v0' -var dbFixturesDir = './test/fixtures/v0' -var ipfsFixturesDir = './test/fixtures/ipfs' +const keyFixtures = './test/fixtures/keys/QmRfPsKJs9YqTot5krRibra4gPwoK4kghhU8iKWxBjGDDX' +const dbFixturesDir = './test/fixtures/v0' +const ipfsFixturesDir = './test/fixtures/ipfs' Object.keys(testAPIs).forEach(API => { describe(`orbit-db - Backward-Compatibility - Open & Load (${API})`, function() { @@ -42,8 +43,8 @@ Object.keys(testAPIs).forEach(API => { await fs.copy(path.join(ipfsFixturesDir, 'blocks'), path.join(ipfsd.path, 'blocks')) await fs.copy(path.join(ipfsFixturesDir, 'datastore'), path.join(ipfsd.path, 'datastore')) await fs.copy(dbFixturesDir, dbPath) - - let identity = await Identities.createIdentity({ id: ipfs._peerInfo.id._idB58String, existingId: 'QmRfPsKJs9YqTot5krRibra4gPwoK4kghhU8iKWxBjGDDX', sourcePath: './test/fixtures/keys', migrate }) + + let identity = await Identities.createIdentity({ id: ipfs._peerInfo.id._idB58String, migrate: migrate(keyFixtures), identityKeysPath: dbPath + '/keys' }) orbitdb = await OrbitDB.createInstance(ipfs, { directory: dbPath, identity }) })