From c21c54664b51d60ce883625bad70606882859513 Mon Sep 17 00:00:00 2001 From: Emma Casolin Date: Fri, 22 Jul 2022 11:04:40 +1000 Subject: [PATCH 1/3] feat: CLI format option affects logger output --- package-lock.json | 48 ++++++++++++++++++++++++++----- package.json | 2 +- src/bin/CommandPolykey.ts | 8 +++++- src/bin/polykey-agent.ts | 9 +++++- tests/bin/polykey.test.ts | 60 ++++++++++++++++++++++++++++++++++++++- 5 files changed, 116 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2f376bb5c..a0230b1b2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@matrixai/db": "^4.0.5", "@matrixai/errors": "^1.1.1", "@matrixai/id": "^3.3.3", - "@matrixai/logger": "^2.2.2", + "@matrixai/logger": "^3.0.0", "@matrixai/resources": "^1.1.3", "@matrixai/workers": "^1.3.3", "ajv": "^7.0.4", @@ -2610,6 +2610,11 @@ "threads": "^1.6.5" } }, + "node_modules/@matrixai/db/node_modules/@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + }, "node_modules/@matrixai/errors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@matrixai/errors/-/errors-1.1.2.tgz", @@ -2628,9 +2633,9 @@ } }, "node_modules/@matrixai/logger": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.2.2.tgz", - "integrity": "sha512-6/G1svkcFiBMvmIdBv6YbxoLKwMWpXNzt93Cc4XbXXygCQrsn6oYwLvnRk/JNr6uM29M2T+Aa7K1o3n2XMTuLw==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-3.0.0.tgz", + "integrity": "sha512-J2KMMw4FCHHmIacRfbU3mBPMvGxxwRc4Y8eFEtzkOcL8WhqBfWKiZ96xNduJGxUo+nfTlj+Q2Ep9RwRw3FCxMw==" }, "node_modules/@matrixai/resources": { "version": "1.1.3", @@ -2648,6 +2653,11 @@ "threads": "^1.6.5" } }, + "node_modules/@matrixai/workers/node_modules/@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -4773,6 +4783,11 @@ "util-callbackify": "^1.0.0" } }, + "node_modules/encryptedfs/node_modules/@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + }, "node_modules/encryptedfs/node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -13396,6 +13411,13 @@ "@types/abstract-leveldown": "^7.2.0", "level": "7.0.1", "threads": "^1.6.5" + }, + "dependencies": { + "@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + } } }, "@matrixai/errors": { @@ -13416,9 +13438,9 @@ } }, "@matrixai/logger": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.2.2.tgz", - "integrity": "sha512-6/G1svkcFiBMvmIdBv6YbxoLKwMWpXNzt93Cc4XbXXygCQrsn6oYwLvnRk/JNr6uM29M2T+Aa7K1o3n2XMTuLw==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-3.0.0.tgz", + "integrity": "sha512-J2KMMw4FCHHmIacRfbU3mBPMvGxxwRc4Y8eFEtzkOcL8WhqBfWKiZ96xNduJGxUo+nfTlj+Q2Ep9RwRw3FCxMw==" }, "@matrixai/resources": { "version": "1.1.3", @@ -13434,6 +13456,13 @@ "@matrixai/errors": "^1.1.1", "@matrixai/logger": "^2.1.1", "threads": "^1.6.5" + }, + "dependencies": { + "@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + } } }, "@nodelib/fs.scandir": { @@ -15008,6 +15037,11 @@ "util-callbackify": "^1.0.0" }, "dependencies": { + "@matrixai/logger": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", + "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" + }, "node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", diff --git a/package.json b/package.json index 5beb1db09..20f4ff52a 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "@matrixai/db": "^4.0.5", "@matrixai/errors": "^1.1.1", "@matrixai/id": "^3.3.3", - "@matrixai/logger": "^2.2.2", + "@matrixai/logger": "^3.0.0", "@matrixai/resources": "^1.1.3", "@matrixai/workers": "^1.3.3", "ajv": "^7.0.4", diff --git a/src/bin/CommandPolykey.ts b/src/bin/CommandPolykey.ts index 436dfdbdd..a80c2bd28 100644 --- a/src/bin/CommandPolykey.ts +++ b/src/bin/CommandPolykey.ts @@ -1,6 +1,6 @@ import type { FileSystem } from '../types'; import commander from 'commander'; -import Logger, { StreamHandler } from '@matrixai/logger'; +import Logger, { StreamHandler, formatting } from '@matrixai/logger'; import * as binUtils from './utils'; import * as binOptions from './utils/options'; import * as binErrors from './errors'; @@ -65,6 +65,12 @@ class CommandPolykey extends commander.Command { this.exitHandlers.errFormat = opts.format === 'json' ? 'json' : 'error'; // Set the logger according to the verbosity this.logger.setLevel(binUtils.verboseToLogLevel(opts.verbose)); + // Set the logger formatter according to the format + if (opts.format === 'json') { + this.logger.handlers.forEach((handler) => + handler.setFormatter(formatting.jsonFormatter), + ); + } // Set the global upstream GRPC logger grpcSetLogger(this.logger.getChild('grpc')); // If the node path is undefined diff --git a/src/bin/polykey-agent.ts b/src/bin/polykey-agent.ts index 80bc92a92..19acd32cd 100755 --- a/src/bin/polykey-agent.ts +++ b/src/bin/polykey-agent.ts @@ -19,7 +19,7 @@ import process from 'process'; import 'threads'; process.removeAllListeners('SIGINT'); process.removeAllListeners('SIGTERM'); -import Logger, { StreamHandler } from '@matrixai/logger'; +import Logger, { StreamHandler, formatting } from '@matrixai/logger'; import * as binUtils from './utils'; import PolykeyAgent from '../PolykeyAgent'; import * as nodesUtils from '../nodes/utils'; @@ -46,7 +46,14 @@ async function main(_argv = process.argv): Promise { const messageIn = await messageInP; const errFormat = messageIn.format === 'json' ? 'json' : 'error'; exitHandlers.errFormat = errFormat; + // Set the logger according to the verbosity logger.setLevel(messageIn.logLevel); + // Set the logger formatter according to the format + if (messageIn.format === 'json') { + logger.handlers.forEach((handler) => + handler.setFormatter(formatting.jsonFormatter), + ); + } // Set the global upstream GRPC logger grpcSetLogger(logger.getChild('grpc')); let pkAgent: PolykeyAgent; diff --git a/tests/bin/polykey.test.ts b/tests/bin/polykey.test.ts index ffdcd0942..c61e80cd9 100644 --- a/tests/bin/polykey.test.ts +++ b/tests/bin/polykey.test.ts @@ -1,11 +1,69 @@ +import fs from 'fs'; +import path from 'path'; +import os from 'os'; +import readline from 'readline'; +import Logger, { LogLevel, StreamHandler } from '@matrixai/logger'; import * as execUtils from '../utils/exec'; import { runTestIfPlatforms } from '../utils'; describe('polykey', () => { - runTestIfPlatforms('lunix', 'docker')('default help display', async () => { + runTestIfPlatforms('linux', 'docker')('default help display', async () => { const result = await execUtils.pkStdio([]); expect(result.exitCode).toBe(0); expect(result.stdout).toBe(''); expect(result.stderr.length > 0).toBe(true); }); + runTestIfPlatforms('docker')('format option affects STDERR', async () => { + const logger = new Logger('format test', LogLevel.WARN, [ + new StreamHandler(), + ]); + const dataDir = await fs.promises.mkdtemp( + path.join(os.tmpdir(), 'polykey-test-'), + ); + const password = 'abc123'; + const polykeyPath = path.join(dataDir, 'polykey'); + await fs.promises.mkdir(polykeyPath); + const agentProcess = await execUtils.pkSpawn( + [ + 'agent', + 'start', + '--node-path', + path.join(dataDir, 'polykey'), + '--root-key-pair-bits', + '1024', + '--client-host', + '127.0.0.1', + '--proxy-host', + '127.0.0.1', + '--workers', + '0', + '--verbose', + '--format', + 'json', + ], + { + PK_TEST_DATA_PATH: dataDir, + PK_PASSWORD: password, + }, + dataDir, + logger, + ); + const rlErr = readline.createInterface(agentProcess.stderr!); + // Just check the first log + const stderrStart = await new Promise((resolve, reject) => { + rlErr.once('line', resolve); + rlErr.once('close', reject); + }); + const stderrParsed = JSON.parse(stderrStart); + expect(stderrParsed).toMatchObject({ + level: expect.stringMatching(/INFO|WARN|ERROR|DEBUG/), + key: expect.any(String), + msg: expect.any(String), + }); + agentProcess.kill('SIGTERM'); + await fs.promises.rm(dataDir, { + force: true, + recursive: true, + }); + }); }); From ad162bdd67890186412e6e26dcb01f06fb6e0e6b Mon Sep 17 00:00:00 2001 From: Emma Casolin Date: Fri, 22 Jul 2022 11:46:32 +1000 Subject: [PATCH 2/3] chore: synchronised ci changes with TypeScript-Demo-Lib - Reverted Windows to NodeJS v16.14.2 - Added `--arg ci true` to `nix-shell` - Introduced continuous benchmarking --- .gitlab-ci.yml | 40 +- benches/gitgc.ts | 21 +- benches/index.ts | 27 +- benches/utils/index.ts | 1 + benches/utils/utils.ts | 61 ++ package-lock.json | 963 +++++++++++++++++++++++----- package.json | 19 +- scripts/build-platforms-generate.sh | 4 +- scripts/check-test-generate.sh | 4 +- scripts/choco-install.ps1 | 8 +- shell.nix | 12 +- src/vaults/VaultManager.ts | 4 +- tsconfig.build.json | 3 +- tsconfig.json | 3 +- 14 files changed, 952 insertions(+), 218 deletions(-) create mode 100644 benches/utils/index.ts create mode 100644 benches/utils/utils.ts diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5a1579f6e..e1f034e1c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,9 +10,9 @@ variables: GH_PROJECT_PATH: "MatrixAI/${CI_PROJECT_NAME}" GH_PROJECT_URL: "https://${GITHUB_TOKEN}@github.com/${GH_PROJECT_PATH}.git" # Cache .npm - NPM_CONFIG_CACHE: "${CI_PROJECT_DIR}/tmp/npm" + npm_config_cache: "${CI_PROJECT_DIR}/tmp/npm" # Prefer offline node module installation - NPM_CONFIG_PREFER_OFFLINE: "true" + npm_config_prefer_offline: "true" # Homebrew cache only used by macos runner HOMEBREW_CACHE: "${CI_PROJECT_DIR}/tmp/Homebrew" @@ -50,7 +50,7 @@ check:lint: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm run lint; npm run lint-shell; ' @@ -82,8 +82,8 @@ check:test-generate: needs: [] script: - > - nix-shell --run ' - ./scripts/check-test-generate.sh > ./tmp/check-test.yml + nix-shell --arg ci true --run $' + ./scripts/check-test-generate.sh > ./tmp/check-test.yml; ' artifacts: when: always @@ -124,7 +124,7 @@ build:merge: # Required for `gh pr create` - git remote add upstream "$GH_PROJECT_URL" - > - nix-shell --run ' + nix-shell --arg ci true --run $' gh pr create \ --head staging \ --base master \ @@ -149,7 +149,7 @@ build:dist: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm run build --verbose; ' artifacts: @@ -167,8 +167,8 @@ build:platforms-generate: needs: [] script: - > - nix-shell --run ' - ./scripts/build-platforms-generate.sh > ./tmp/build-platforms.yml + nix-shell --arg ci true --run $' + ./scripts/build-platforms-generate.sh > ./tmp/build-platforms.yml; ' artifacts: when: always @@ -210,7 +210,7 @@ build:prerelease: - echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ./.npmrc - echo 'Publishing library prerelease' - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm publish --tag prerelease --access public; ' after_script: @@ -425,10 +425,7 @@ integration:prerelease: script: - echo 'Publishing application prerelease' - > - nix-shell --run $' - set -o errexit; - set -o nounset; - set -o pipefail; + nix-shell --arg ci true --run $' if gh release view "$CI_COMMIT_TAG" --repo "$GH_PROJECT_PATH" >/dev/null; then \ gh release \ upload "$CI_COMMIT_TAG" \ @@ -456,10 +453,7 @@ integration:prerelease: ' - echo 'Prereleasing container image' - > - nix-shell --run $' - set -o errexit; - set -o nounset; - set -o pipefail; + nix-shell --arg ci true --run $' skopeo login \ --username "$CI_REGISTRY_USER" \ --password "$CI_REGISTRY_PASSWORD" \ @@ -481,8 +475,6 @@ integration:merge: stage: integration needs: - build:merge - - job: build:dist - optional: true - job: build:platforms optional: true - job: integration:nix @@ -505,7 +497,7 @@ integration:merge: GIT_DEPTH: 0 script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' printf "Pipeline Succeeded on ${CI_PIPELINE_ID} for ${CI_COMMIT_SHA}\n\n${CI_PIPELINE_URL}" \ | gh pr comment staging \ --body-file - \ @@ -624,12 +616,12 @@ release:distribution: - echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ./.npmrc - echo 'Publishing library' - > - nix-shell --run $' + nix-shell --arg ci true --run $' npm publish --access public; ' - echo 'Releasing application builds' - > - nix-shell --run $' + nix-shell --arg ci true --run $' gh release \ create "$CI_COMMIT_TAG" \ builds/*.closure.gz \ @@ -644,7 +636,7 @@ release:distribution: ' - echo 'Releasing container image' - > - nix-shell --run $' + nix-shell --arg ci true --run $' skopeo login \ --username "$CI_REGISTRY_USER" \ --password "$CI_REGISTRY_PASSWORD" \ diff --git a/benches/gitgc.ts b/benches/gitgc.ts index 8652b7f63..983065cf1 100644 --- a/benches/gitgc.ts +++ b/benches/gitgc.ts @@ -1,13 +1,14 @@ +import path from 'path'; import b from 'benny'; -import packageJson from '../package.json'; +import { suiteCommon } from './utils'; async function main () { let map = new Map(); let obj = {}; - let arr = []; + let arr: any = []; let set = new Set(); const summary = await b.suite( - 'gitgc', + path.basename(__filename, path.extname(__filename)), b.add('map', async () => { map = new Map(); return async () => { @@ -78,19 +79,7 @@ async function main () { } }; }), - b.cycle(), - b.complete(), - b.save({ - file: 'gitgc', - folder: 'benches/results', - version: packageJson.version, - details: true, - }), - b.save({ - file: 'gitgc', - folder: 'benches/results', - format: 'chart.html', - }), + ...suiteCommon, ); return summary; } diff --git a/benches/index.ts b/benches/index.ts index f39b56f13..ffe0aa7ed 100644 --- a/benches/index.ts +++ b/benches/index.ts @@ -1,18 +1,41 @@ -#!/usr/bin/env node +#!/usr/bin/env ts-node import fs from 'fs'; +import path from 'path'; import si from 'systeminformation'; import gitgc from './gitgc'; async function main(): Promise { + await fs.promises.mkdir(path.join(__dirname, 'results'), { recursive: true }); await gitgc(); + const resultFilenames = await fs.promises.readdir( + path.join(__dirname, 'results'), + ); + const metricsFile = await fs.promises.open( + path.join(__dirname, 'results', 'metrics.txt'), + 'w', + ); + let concatenating = false; + for (const resultFilename of resultFilenames) { + if (/.+_metrics\.txt$/.test(resultFilename)) { + const metricsData = await fs.promises.readFile( + path.join(__dirname, 'results', resultFilename), + ); + if (concatenating) { + await metricsFile.write('\n'); + } + await metricsFile.write(metricsData); + concatenating = true; + } + } + await metricsFile.close(); const systemData = await si.get({ cpu: '*', osInfo: 'platform, distro, release, kernel, arch', system: 'model, manufacturer', }); await fs.promises.writeFile( - 'benches/results/system.json', + path.join(__dirname, 'results', 'system.json'), JSON.stringify(systemData, null, 2), ); } diff --git a/benches/utils/index.ts b/benches/utils/index.ts new file mode 100644 index 000000000..04bca77e0 --- /dev/null +++ b/benches/utils/index.ts @@ -0,0 +1 @@ +export * from './utils'; diff --git a/benches/utils/utils.ts b/benches/utils/utils.ts new file mode 100644 index 000000000..71c4d1034 --- /dev/null +++ b/benches/utils/utils.ts @@ -0,0 +1,61 @@ +import fs from 'fs'; +import path from 'path'; +import b from 'benny'; +import { codeBlock } from 'common-tags'; +import packageJson from '../../package.json'; + +const suiteCommon = [ + b.cycle(), + b.complete(), + b.save({ + file: (summary) => summary.name, + folder: path.join(__dirname, '../results'), + version: packageJson.version, + details: true, + }), + b.save({ + file: (summary) => summary.name, + folder: path.join(__dirname, '../results'), + version: packageJson.version, + format: 'chart.html', + }), + b.complete((summary) => { + const filePath = path.join( + __dirname, + '../results', + summary.name + '_metrics.txt', + ); + fs.writeFileSync( + filePath, + codeBlock` + # TYPE ${summary.name}_ops gauge + ${summary.results + .map( + (result) => + `${summary.name}_ops{name="${result.name}"} ${result.ops}`, + ) + .join('\n')} + + # TYPE ${summary.name}_margin gauge + ${summary.results + .map( + (result) => + `${summary.name}_margin{name="${result.name}"} ${result.margin}`, + ) + .join('\n')} + + # TYPE ${summary.name}_samples counter + ${summary.results + .map( + (result) => + `${summary.name}_samples{name="${result.name}"} ${result.samples}`, + ) + .join('\n')} + ` + '\n', + ); + // eslint-disable-next-line no-console + console.log('\nSaved to:', path.resolve(filePath)); + }), +]; + +export { suiteCommon }; diff --git a/package-lock.json b/package-lock.json index a0230b1b2..937d2a73c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,14 +10,14 @@ "license": "GPL-3.0", "dependencies": { "@grpc/grpc-js": "1.6.7", - "@matrixai/async-init": "^1.8.1", - "@matrixai/async-locks": "^2.3.1", + "@matrixai/async-init": "^1.8.2", + "@matrixai/async-locks": "^3.1.2", "@matrixai/db": "^4.0.5", - "@matrixai/errors": "^1.1.1", + "@matrixai/errors": "^1.1.3", "@matrixai/id": "^3.3.3", "@matrixai/logger": "^3.0.0", - "@matrixai/resources": "^1.1.3", - "@matrixai/workers": "^1.3.3", + "@matrixai/resources": "^1.1.4", + "@matrixai/workers": "^1.3.6", "ajv": "^7.0.4", "bip39": "^3.0.3", "canonicalize": "^1.0.5", @@ -62,7 +62,9 @@ "@types/uuid": "^8.3.0", "@typescript-eslint/eslint-plugin": "^5.23.0", "@typescript-eslint/parser": "^5.23.0", - "babel-jest": "^28.1.2", + "babel-jest": "^28.1.3", + "benny": "^3.7.1", + "common-tags": "^1.8.2", "eslint": "^8.15.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -70,8 +72,8 @@ "grpc_tools_node_protoc_ts": "^5.1.3", "jest": "^28.1.1", "jest-junit": "^14.0.0", - "jest-mock-process": "^1.4.1", - "jest-mock-props": "^1.9.0", + "jest-mock-process": "^2.0.0", + "jest-mock-props": "^1.9.1", "mocked-env": "^1.3.5", "nexpect": "^0.6.0", "node-gyp-build": "^4.4.0", @@ -79,6 +81,7 @@ "prettier": "^2.6.2", "shelljs": "^0.8.5", "shx": "^0.3.4", + "systeminformation": "^5.12.1", "ts-jest": "^28.0.5", "ts-node": "^10.9.1", "tsconfig-paths": "^3.9.0", @@ -99,6 +102,48 @@ "node": ">=6.0.0" } }, + "node_modules/@arrows/array": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@arrows/array/-/array-1.4.1.tgz", + "integrity": "sha512-MGYS8xi3c4tTy1ivhrVntFvufoNzje0PchjEz6G/SsWRgUKxL4tKwS6iPdO8vsaJYldagAeWMd5KRD0aX3Q39g==", + "dev": true, + "dependencies": { + "@arrows/composition": "^1.2.2" + } + }, + "node_modules/@arrows/composition": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@arrows/composition/-/composition-1.2.2.tgz", + "integrity": "sha512-9fh1yHwrx32lundiB3SlZ/VwuStPB4QakPsSLrGJFH6rCXvdrd060ivAZ7/2vlqPnEjBkPRRXOcG1YOu19p2GQ==", + "dev": true + }, + "node_modules/@arrows/dispatch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@arrows/dispatch/-/dispatch-1.0.3.tgz", + "integrity": "sha512-v/HwvrFonitYZM2PmBlAlCqVqxrkIIoiEuy5bQgn0BdfvlL0ooSBzcPzTMrtzY8eYktPyYcHg8fLbSgyybXEqw==", + "dev": true, + "dependencies": { + "@arrows/composition": "^1.2.2" + } + }, + "node_modules/@arrows/error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@arrows/error/-/error-1.0.2.tgz", + "integrity": "sha512-yvkiv1ay4Z3+Z6oQsUkedsQm5aFdyPpkBUQs8vejazU/RmANABx6bMMcBPPHI4aW43VPQmXFfBzr/4FExwWTEA==", + "dev": true + }, + "node_modules/@arrows/multimethod": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@arrows/multimethod/-/multimethod-1.4.1.tgz", + "integrity": "sha512-AZnAay0dgPnCJxn3We5uKiB88VL+1ZIF2SjZohLj6vqY2UyvB/sKdDnFP+LZNVsTC5lcnGPmLlRRkAh4sXkXsQ==", + "dev": true, + "dependencies": { + "@arrows/array": "^1.4.1", + "@arrows/composition": "^1.2.2", + "@arrows/error": "^1.0.2", + "fast-deep-equal": "^3.1.3" + } + }, "node_modules/@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -2291,12 +2336,12 @@ } }, "node_modules/@jest/schemas": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.0.2.tgz", - "integrity": "sha512-YVDJZjd4izeTDkij00vHHAymNXQ6WWsdChFRK86qck6Jpr3DCL5W3Is3vslviRlP+bLuMYRLbdp98amMvqudhA==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz", + "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==", "dev": true, "dependencies": { - "@sinclair/typebox": "^0.23.3" + "@sinclair/typebox": "^0.24.1" }, "engines": { "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" @@ -2347,22 +2392,22 @@ } }, "node_modules/@jest/transform": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.2.tgz", - "integrity": "sha512-3o+lKF6iweLeJFHBlMJysdaPbpoMmtbHEFsjzSv37HIq/wWt5ijTeO2Yf7MO5yyczCopD507cNwNLeX8Y/CuIg==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.3.tgz", + "integrity": "sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==", "dev": true, "dependencies": { "@babel/core": "^7.11.6", - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@jridgewell/trace-mapping": "^0.3.13", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.1", + "jest-haste-map": "^28.1.3", "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.1", + "jest-util": "^28.1.3", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -2443,12 +2488,12 @@ } }, "node_modules/@jest/types": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.1.tgz", - "integrity": "sha512-vRXVqSg1VhDnB8bWcmvLzmg0Bt9CRKVgHPXqYwvWMX3TvAjeO+nRuK6+VdTKCtWOvYlmkF/HqNAL/z+N3B53Kw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", + "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.0.2", + "@jest/schemas": "^28.1.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2577,21 +2622,21 @@ } }, "node_modules/@matrixai/async-init": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@matrixai/async-init/-/async-init-1.8.1.tgz", - "integrity": "sha512-ZAS1yd/PC+r3NwvT9fEz3OtAm68A8mKXXGdZRcYQF1ajl43jsV8/B4aDwr2oLFlV+RYZgWl7UwjZj4rtoZSycQ==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@matrixai/async-init/-/async-init-1.8.2.tgz", + "integrity": "sha512-HAJ5hB1sLYHSbTZ6Ana126v10wFfXrKOYbLIyFuX4yspyjRM9akUVGQdP9H8SoxR35GtZoiJuqRjaRwxNk1KNQ==", "dependencies": { - "@matrixai/async-locks": "^2.3.1", - "@matrixai/errors": "^1.1.1" + "@matrixai/async-locks": "^3.1.2", + "@matrixai/errors": "^1.1.3" } }, "node_modules/@matrixai/async-locks": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-2.3.1.tgz", - "integrity": "sha512-STz8VyiIXleaa72zMsq01x/ZO1gPzukUgMe25+uqMWn/nPrC9EtJOR7e3CW0DODfYDZ0748z196GeOjS3jh+4g==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-3.1.2.tgz", + "integrity": "sha512-rIA89EGBNlWV59pLVwx7aqlKWVJRCOsVi6evt8HoN6dyvyyns8//Q8PyBcg5ay0GjLkqsXKQjYXMRif5OB3VSg==", "dependencies": { - "@matrixai/errors": "^1.1.1", - "@matrixai/resources": "^1.1.3", + "@matrixai/errors": "^1.1.3", + "@matrixai/resources": "^1.1.4", "async-mutex": "^0.3.2" } }, @@ -2616,9 +2661,9 @@ "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" }, "node_modules/@matrixai/errors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@matrixai/errors/-/errors-1.1.2.tgz", - "integrity": "sha512-JSi2SIqdlqqDruANrTG8RMvLrJZAwduY19y26LZHx7DDkqhkqzF9fblbWaE9Fo1lhSTGk65oKRx2UjGn3v5gWw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@matrixai/errors/-/errors-1.1.3.tgz", + "integrity": "sha512-SqHSDd1E2IUXlqvVmEvyGChBrnQUTTHjy4hTc1SmcDBttgqS4QgBXH7aovk6Eviuhq6unSWkA9nyBDDXOT3DJA==", "dependencies": { "ts-custom-error": "^3.2.0" } @@ -2638,26 +2683,21 @@ "integrity": "sha512-J2KMMw4FCHHmIacRfbU3mBPMvGxxwRc4Y8eFEtzkOcL8WhqBfWKiZ96xNduJGxUo+nfTlj+Q2Ep9RwRw3FCxMw==" }, "node_modules/@matrixai/resources": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@matrixai/resources/-/resources-1.1.3.tgz", - "integrity": "sha512-9zbA0NtgCtA+2hILpojshH6Pd679bIPtB8DcsPLVDzvGZP1TDwvtvZWCC3SG7oJUTzxqBI2Bfe+hypqwpvYPCw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@matrixai/resources/-/resources-1.1.4.tgz", + "integrity": "sha512-YZSMtklbXah0+SxcKOVEm0ONQdWhlJecQ1COx6hg9Dl80WOybZjZ9A+N+OZfvWk9y25NuoIPzOsjhr8G1aTnIg==" }, "node_modules/@matrixai/workers": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@matrixai/workers/-/workers-1.3.3.tgz", - "integrity": "sha512-ID1sSJDXjM0hdWC10euWGcFofuys7+IDP+XTBh8Gq6jirn18xJs71wSy357qxLVSa7mL00qRJJfW6rljcFUK4A==", + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@matrixai/workers/-/workers-1.3.6.tgz", + "integrity": "sha512-vllPhkBpEl5tNCXIN3PuiYn/fQCtQZUHsvCybkNXj/RZuBjUjktt2Yb+yCXxnw8/QRtNBDnts63qwTGCHFqU2Q==", "dependencies": { - "@matrixai/async-init": "^1.7.3", - "@matrixai/errors": "^1.1.1", - "@matrixai/logger": "^2.1.1", + "@matrixai/async-init": "^1.8.2", + "@matrixai/errors": "^1.1.2", + "@matrixai/logger": "^3.0.0", "threads": "^1.6.5" } }, - "node_modules/@matrixai/workers/node_modules/@matrixai/logger": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", - "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -2748,9 +2788,9 @@ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, "node_modules/@sinclair/typebox": { - "version": "0.23.5", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.23.5.tgz", - "integrity": "sha512-AFBVi/iT4g20DHoujvMH1aEDn8fGJh4xsRGCP6d8RpLPMqsNPvW01Jcn0QysXTsg++/xj25NmJsGyH9xug/wKg==", + "version": "0.24.20", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.20.tgz", + "integrity": "sha512-kVaO5aEFZb33nPMTZBxiPEkY+slxiPtqC7QX8f9B3eGOMBvEfuMfxp9DSTTCsRJPumPKjrge4yagyssO4q6qzQ==", "dev": true }, "node_modules/@sinonjs/commons": { @@ -3688,6 +3728,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/async-lock": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.3.1.tgz", @@ -3711,15 +3760,15 @@ } }, "node_modules/babel-jest": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.2.tgz", - "integrity": "sha512-pfmoo6sh4L/+5/G2OOfQrGJgvH7fTa1oChnuYH2G/6gA+JwDvO8PELwvwnofKBMNrQsam0Wy/Rw+QSrBNewq2Q==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz", + "integrity": "sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==", "dev": true, "dependencies": { - "@jest/transform": "^28.1.2", + "@jest/transform": "^28.1.3", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^28.1.1", + "babel-preset-jest": "^28.1.3", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -3827,9 +3876,9 @@ } }, "node_modules/babel-plugin-jest-hoist": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.1.tgz", - "integrity": "sha512-NovGCy5Hn25uMJSAU8FaHqzs13cFoOI4lhIujiepssjCKRsAo3TA734RDWSGxuFTsUJXerYOqQQodlxgmtqbzw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz", + "integrity": "sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==", "dev": true, "dependencies": { "@babel/template": "^7.3.3", @@ -3904,12 +3953,12 @@ } }, "node_modules/babel-preset-jest": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.1.tgz", - "integrity": "sha512-FCq9Oud0ReTeWtcneYf/48981aTfXYuB9gbU4rBNNJVBSQ6ssv7E6v/qvbBxtOWwZFXjLZwpg+W3q7J6vhH25g==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz", + "integrity": "sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^28.1.1", + "babel-plugin-jest-hoist": "^28.1.3", "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { @@ -3958,6 +4007,59 @@ } ] }, + "node_modules/benchmark": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/benchmark/-/benchmark-2.1.4.tgz", + "integrity": "sha512-l9MlfN4M1K/H2fbhfMy3B7vJd6AGKJVQn2h6Sg/Yx+KckoUA7ewS5Vv6TjSq18ooE1kS9hhAlQRH3AkXIh/aOQ==", + "dev": true, + "dependencies": { + "lodash": "^4.17.4", + "platform": "^1.3.3" + } + }, + "node_modules/benny": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/benny/-/benny-3.7.1.tgz", + "integrity": "sha512-USzYxODdVfOS7JuQq/L0naxB788dWCiUgUTxvN+WLPt/JfcDURNNj8kN/N+uK6PDvuR67/9/55cVKGPleFQINA==", + "dev": true, + "dependencies": { + "@arrows/composition": "^1.0.0", + "@arrows/dispatch": "^1.0.2", + "@arrows/multimethod": "^1.1.6", + "benchmark": "^2.1.4", + "common-tags": "^1.8.0", + "fs-extra": "^10.0.0", + "json2csv": "^5.0.6", + "kleur": "^4.1.4", + "log-update": "^4.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/benny/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/benny/node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/bip39": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.4.tgz", @@ -4282,6 +4384,18 @@ "resolved": "https://registry.npmjs.org/clean-git-ref/-/clean-git-ref-2.0.1.tgz", "integrity": "sha512-bLSptAy2P0s6hU4PzuIMKmMJJSE6gLXGH1cntDu7bWJUksvuM+7ReOK61mozULErYvP6a15rnYl0zFDef+pyPw==" }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -4361,6 +4475,15 @@ "node": ">= 12" } }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -4783,6 +4906,16 @@ "util-callbackify": "^1.0.0" } }, + "node_modules/encryptedfs/node_modules/@matrixai/async-locks": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-2.3.1.tgz", + "integrity": "sha512-STz8VyiIXleaa72zMsq01x/ZO1gPzukUgMe25+uqMWn/nPrC9EtJOR7e3CW0DODfYDZ0748z196GeOjS3jh+4g==", + "dependencies": { + "@matrixai/errors": "^1.1.1", + "@matrixai/resources": "^1.1.3", + "async-mutex": "^0.3.2" + } + }, "node_modules/encryptedfs/node_modules/@matrixai/logger": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", @@ -7379,20 +7512,20 @@ } }, "node_modules/jest-haste-map": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.1.tgz", - "integrity": "sha512-ZrRSE2o3Ezh7sb1KmeLEZRZ4mgufbrMwolcFHNRSjKZhpLa8TdooXOOFlSwoUzlbVs1t0l7upVRW2K7RWGHzbQ==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.3.tgz", + "integrity": "sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==", "dev": true, "dependencies": { - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.1", - "jest-worker": "^28.1.1", + "jest-util": "^28.1.3", + "jest-worker": "^28.1.3", "micromatch": "^4.0.4", "walker": "^1.0.8" }, @@ -7620,12 +7753,12 @@ } }, "node_modules/jest-mock-process": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/jest-mock-process/-/jest-mock-process-1.5.1.tgz", - "integrity": "sha512-CPu46KyUiVSxE+LkqBuscqGmy1bvW2vJQuNstt83iLtFaFjgrgmp6LY04IKuOhhlGhcrdi86Gqq5/fTE2wG6lg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jest-mock-process/-/jest-mock-process-2.0.0.tgz", + "integrity": "sha512-bybzszPfvrYhplymvUNFc130ryvjSCW1JSCrLA0LiV0Sv9TrI+cz90n3UYUPoT2nhNL6c6IV9LxUSFJF9L9tHQ==", "dev": true, "peerDependencies": { - "jest": ">=23.4 <29" + "jest": ">=23.4" } }, "node_modules/jest-mock-props": { @@ -8094,12 +8227,12 @@ } }, "node_modules/jest-util": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.1.tgz", - "integrity": "sha512-FktOu7ca1DZSyhPAxgxB6hfh2+9zMoJ7aEQA759Z6p45NuO8mWcqujH+UdHlCm/V6JTWwDztM2ITCzU1ijJAfw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", + "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -8369,9 +8502,9 @@ } }, "node_modules/jest-worker": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.1.tgz", - "integrity": "sha512-Au7slXB08C6h+xbJPp7VIb6U0XX5Kc9uel/WFc6/rcTzGiaVCBRngBExSYuXSLFPULPSYU3cJ3ybS988lNFQhQ==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", + "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", "dev": true, "dependencies": { "@types/node": "*", @@ -8467,6 +8600,33 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/json2csv": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-5.0.7.tgz", + "integrity": "sha512-YRZbUnyaJZLZUJSRi2G/MqahCyRv9n/ds+4oIetjDF3jWQA7AG7iSeKTiZiCNqtMZM7HDyt0e/W6lEnoGEmMGA==", + "dev": true, + "dependencies": { + "commander": "^6.1.0", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" + }, + "bin": { + "json2csv": "bin/json2csv.js" + }, + "engines": { + "node": ">= 10", + "npm": ">= 6.13.0" + } + }, + "node_modules/json2csv/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/json5": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", @@ -8497,6 +8657,15 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -8680,6 +8849,12 @@ "node": ">=8" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -8691,6 +8866,12 @@ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -8703,6 +8884,94 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/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==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-update/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==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-update/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==", + "dev": true + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/long": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", @@ -9746,6 +10015,12 @@ "node": ">=8" } }, + "node_modules/platform": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz", + "integrity": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==", + "dev": true + }, "node_modules/prebuild-install": { "version": "6.1.4", "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", @@ -10214,6 +10489,19 @@ "node": ">=6.4.0" } }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -10478,6 +10766,65 @@ "node": ">=8" } }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/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==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/slice-ansi/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==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/slice-ansi/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==", + "dev": true + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -10744,6 +11091,32 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/systeminformation": { + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.12.1.tgz", + "integrity": "sha512-qAV0xSeSJlg0ZHmQ1T2rLrL54SATalBx6v4T8Sd5s17pEm6saX3LKzlPhfPx+EfT91y9yhRYnKhnMoLTFkxbqw==", + "dev": true, + "os": [ + "darwin", + "linux", + "win32", + "freebsd", + "openbsd", + "netbsd", + "sunos", + "android" + ], + "bin": { + "systeminformation": "lib/cli.js" + }, + "engines": { + "node": ">=8.0.0" + }, + "funding": { + "type": "Buy me a coffee", + "url": "https://www.buymeacoffee.com/systeminfo" + } + }, "node_modules/tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", @@ -11594,6 +11967,48 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, + "@arrows/array": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@arrows/array/-/array-1.4.1.tgz", + "integrity": "sha512-MGYS8xi3c4tTy1ivhrVntFvufoNzje0PchjEz6G/SsWRgUKxL4tKwS6iPdO8vsaJYldagAeWMd5KRD0aX3Q39g==", + "dev": true, + "requires": { + "@arrows/composition": "^1.2.2" + } + }, + "@arrows/composition": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@arrows/composition/-/composition-1.2.2.tgz", + "integrity": "sha512-9fh1yHwrx32lundiB3SlZ/VwuStPB4QakPsSLrGJFH6rCXvdrd060ivAZ7/2vlqPnEjBkPRRXOcG1YOu19p2GQ==", + "dev": true + }, + "@arrows/dispatch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@arrows/dispatch/-/dispatch-1.0.3.tgz", + "integrity": "sha512-v/HwvrFonitYZM2PmBlAlCqVqxrkIIoiEuy5bQgn0BdfvlL0ooSBzcPzTMrtzY8eYktPyYcHg8fLbSgyybXEqw==", + "dev": true, + "requires": { + "@arrows/composition": "^1.2.2" + } + }, + "@arrows/error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@arrows/error/-/error-1.0.2.tgz", + "integrity": "sha512-yvkiv1ay4Z3+Z6oQsUkedsQm5aFdyPpkBUQs8vejazU/RmANABx6bMMcBPPHI4aW43VPQmXFfBzr/4FExwWTEA==", + "dev": true + }, + "@arrows/multimethod": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@arrows/multimethod/-/multimethod-1.4.1.tgz", + "integrity": "sha512-AZnAay0dgPnCJxn3We5uKiB88VL+1ZIF2SjZohLj6vqY2UyvB/sKdDnFP+LZNVsTC5lcnGPmLlRRkAh4sXkXsQ==", + "dev": true, + "requires": { + "@arrows/array": "^1.4.1", + "@arrows/composition": "^1.2.2", + "@arrows/error": "^1.0.2", + "fast-deep-equal": "^3.1.3" + } + }, "@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -13159,12 +13574,12 @@ } }, "@jest/schemas": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.0.2.tgz", - "integrity": "sha512-YVDJZjd4izeTDkij00vHHAymNXQ6WWsdChFRK86qck6Jpr3DCL5W3Is3vslviRlP+bLuMYRLbdp98amMvqudhA==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz", + "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==", "dev": true, "requires": { - "@sinclair/typebox": "^0.23.3" + "@sinclair/typebox": "^0.24.1" } }, "@jest/source-map": { @@ -13203,22 +13618,22 @@ } }, "@jest/transform": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.2.tgz", - "integrity": "sha512-3o+lKF6iweLeJFHBlMJysdaPbpoMmtbHEFsjzSv37HIq/wWt5ijTeO2Yf7MO5yyczCopD507cNwNLeX8Y/CuIg==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.3.tgz", + "integrity": "sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==", "dev": true, "requires": { "@babel/core": "^7.11.6", - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@jridgewell/trace-mapping": "^0.3.13", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.1", + "jest-haste-map": "^28.1.3", "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.1", + "jest-util": "^28.1.3", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -13277,12 +13692,12 @@ } }, "@jest/types": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.1.tgz", - "integrity": "sha512-vRXVqSg1VhDnB8bWcmvLzmg0Bt9CRKVgHPXqYwvWMX3TvAjeO+nRuK6+VdTKCtWOvYlmkF/HqNAL/z+N3B53Kw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", + "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", "dev": true, "requires": { - "@jest/schemas": "^28.0.2", + "@jest/schemas": "^28.1.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -13380,21 +13795,21 @@ } }, "@matrixai/async-init": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@matrixai/async-init/-/async-init-1.8.1.tgz", - "integrity": "sha512-ZAS1yd/PC+r3NwvT9fEz3OtAm68A8mKXXGdZRcYQF1ajl43jsV8/B4aDwr2oLFlV+RYZgWl7UwjZj4rtoZSycQ==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@matrixai/async-init/-/async-init-1.8.2.tgz", + "integrity": "sha512-HAJ5hB1sLYHSbTZ6Ana126v10wFfXrKOYbLIyFuX4yspyjRM9akUVGQdP9H8SoxR35GtZoiJuqRjaRwxNk1KNQ==", "requires": { - "@matrixai/async-locks": "^2.3.1", - "@matrixai/errors": "^1.1.1" + "@matrixai/async-locks": "^3.1.2", + "@matrixai/errors": "^1.1.3" } }, "@matrixai/async-locks": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-2.3.1.tgz", - "integrity": "sha512-STz8VyiIXleaa72zMsq01x/ZO1gPzukUgMe25+uqMWn/nPrC9EtJOR7e3CW0DODfYDZ0748z196GeOjS3jh+4g==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-3.1.2.tgz", + "integrity": "sha512-rIA89EGBNlWV59pLVwx7aqlKWVJRCOsVi6evt8HoN6dyvyyns8//Q8PyBcg5ay0GjLkqsXKQjYXMRif5OB3VSg==", "requires": { - "@matrixai/errors": "^1.1.1", - "@matrixai/resources": "^1.1.3", + "@matrixai/errors": "^1.1.3", + "@matrixai/resources": "^1.1.4", "async-mutex": "^0.3.2" } }, @@ -13421,9 +13836,9 @@ } }, "@matrixai/errors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@matrixai/errors/-/errors-1.1.2.tgz", - "integrity": "sha512-JSi2SIqdlqqDruANrTG8RMvLrJZAwduY19y26LZHx7DDkqhkqzF9fblbWaE9Fo1lhSTGk65oKRx2UjGn3v5gWw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@matrixai/errors/-/errors-1.1.3.tgz", + "integrity": "sha512-SqHSDd1E2IUXlqvVmEvyGChBrnQUTTHjy4hTc1SmcDBttgqS4QgBXH7aovk6Eviuhq6unSWkA9nyBDDXOT3DJA==", "requires": { "ts-custom-error": "^3.2.0" } @@ -13443,26 +13858,19 @@ "integrity": "sha512-J2KMMw4FCHHmIacRfbU3mBPMvGxxwRc4Y8eFEtzkOcL8WhqBfWKiZ96xNduJGxUo+nfTlj+Q2Ep9RwRw3FCxMw==" }, "@matrixai/resources": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@matrixai/resources/-/resources-1.1.3.tgz", - "integrity": "sha512-9zbA0NtgCtA+2hILpojshH6Pd679bIPtB8DcsPLVDzvGZP1TDwvtvZWCC3SG7oJUTzxqBI2Bfe+hypqwpvYPCw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@matrixai/resources/-/resources-1.1.4.tgz", + "integrity": "sha512-YZSMtklbXah0+SxcKOVEm0ONQdWhlJecQ1COx6hg9Dl80WOybZjZ9A+N+OZfvWk9y25NuoIPzOsjhr8G1aTnIg==" }, "@matrixai/workers": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@matrixai/workers/-/workers-1.3.3.tgz", - "integrity": "sha512-ID1sSJDXjM0hdWC10euWGcFofuys7+IDP+XTBh8Gq6jirn18xJs71wSy357qxLVSa7mL00qRJJfW6rljcFUK4A==", + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@matrixai/workers/-/workers-1.3.6.tgz", + "integrity": "sha512-vllPhkBpEl5tNCXIN3PuiYn/fQCtQZUHsvCybkNXj/RZuBjUjktt2Yb+yCXxnw8/QRtNBDnts63qwTGCHFqU2Q==", "requires": { - "@matrixai/async-init": "^1.7.3", - "@matrixai/errors": "^1.1.1", - "@matrixai/logger": "^2.1.1", + "@matrixai/async-init": "^1.8.2", + "@matrixai/errors": "^1.1.2", + "@matrixai/logger": "^3.0.0", "threads": "^1.6.5" - }, - "dependencies": { - "@matrixai/logger": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", - "integrity": "sha512-DbsUv9eBubB2WxA8aGygnY/A2Ggm9a+ZnnnL2hIWWnE+sid92FK96gubW1a+u8OrXWx559HqUTBkcPDs83zV/A==" - } } }, "@nodelib/fs.scandir": { @@ -13546,9 +13954,9 @@ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, "@sinclair/typebox": { - "version": "0.23.5", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.23.5.tgz", - "integrity": "sha512-AFBVi/iT4g20DHoujvMH1aEDn8fGJh4xsRGCP6d8RpLPMqsNPvW01Jcn0QysXTsg++/xj25NmJsGyH9xug/wKg==", + "version": "0.24.20", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.20.tgz", + "integrity": "sha512-kVaO5aEFZb33nPMTZBxiPEkY+slxiPtqC7QX8f9B3eGOMBvEfuMfxp9DSTTCsRJPumPKjrge4yagyssO4q6qzQ==", "dev": true }, "@sinonjs/commons": { @@ -14209,6 +14617,12 @@ "is-string": "^1.0.7" } }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, "async-lock": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.3.1.tgz", @@ -14229,15 +14643,15 @@ "dev": true }, "babel-jest": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.2.tgz", - "integrity": "sha512-pfmoo6sh4L/+5/G2OOfQrGJgvH7fTa1oChnuYH2G/6gA+JwDvO8PELwvwnofKBMNrQsam0Wy/Rw+QSrBNewq2Q==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz", + "integrity": "sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==", "dev": true, "requires": { - "@jest/transform": "^28.1.2", + "@jest/transform": "^28.1.3", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^28.1.1", + "babel-preset-jest": "^28.1.3", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -14317,9 +14731,9 @@ } }, "babel-plugin-jest-hoist": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.1.tgz", - "integrity": "sha512-NovGCy5Hn25uMJSAU8FaHqzs13cFoOI4lhIujiepssjCKRsAo3TA734RDWSGxuFTsUJXerYOqQQodlxgmtqbzw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz", + "integrity": "sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==", "dev": true, "requires": { "@babel/template": "^7.3.3", @@ -14379,12 +14793,12 @@ } }, "babel-preset-jest": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.1.tgz", - "integrity": "sha512-FCq9Oud0ReTeWtcneYf/48981aTfXYuB9gbU4rBNNJVBSQ6ssv7E6v/qvbBxtOWwZFXjLZwpg+W3q7J6vhH25g==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz", + "integrity": "sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^28.1.1", + "babel-plugin-jest-hoist": "^28.1.3", "babel-preset-current-node-syntax": "^1.0.0" } }, @@ -14415,6 +14829,52 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, + "benchmark": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/benchmark/-/benchmark-2.1.4.tgz", + "integrity": "sha512-l9MlfN4M1K/H2fbhfMy3B7vJd6AGKJVQn2h6Sg/Yx+KckoUA7ewS5Vv6TjSq18ooE1kS9hhAlQRH3AkXIh/aOQ==", + "dev": true, + "requires": { + "lodash": "^4.17.4", + "platform": "^1.3.3" + } + }, + "benny": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/benny/-/benny-3.7.1.tgz", + "integrity": "sha512-USzYxODdVfOS7JuQq/L0naxB788dWCiUgUTxvN+WLPt/JfcDURNNj8kN/N+uK6PDvuR67/9/55cVKGPleFQINA==", + "dev": true, + "requires": { + "@arrows/composition": "^1.0.0", + "@arrows/dispatch": "^1.0.2", + "@arrows/multimethod": "^1.1.6", + "benchmark": "^2.1.4", + "common-tags": "^1.8.0", + "fs-extra": "^10.0.0", + "json2csv": "^5.0.6", + "kleur": "^4.1.4", + "log-update": "^4.0.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true + } + } + }, "bip39": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.4.tgz", @@ -14650,6 +15110,15 @@ "resolved": "https://registry.npmjs.org/clean-git-ref/-/clean-git-ref-2.0.1.tgz", "integrity": "sha512-bLSptAy2P0s6hU4PzuIMKmMJJSE6gLXGH1cntDu7bWJUksvuM+7ReOK61mozULErYvP6a15rnYl0zFDef+pyPw==" }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -14715,6 +15184,12 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" }, + "common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -15037,6 +15512,16 @@ "util-callbackify": "^1.0.0" }, "dependencies": { + "@matrixai/async-locks": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@matrixai/async-locks/-/async-locks-2.3.1.tgz", + "integrity": "sha512-STz8VyiIXleaa72zMsq01x/ZO1gPzukUgMe25+uqMWn/nPrC9EtJOR7e3CW0DODfYDZ0748z196GeOjS3jh+4g==", + "requires": { + "@matrixai/errors": "^1.1.1", + "@matrixai/resources": "^1.1.3", + "async-mutex": "^0.3.2" + } + }, "@matrixai/logger": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@matrixai/logger/-/logger-2.3.0.tgz", @@ -16948,12 +17433,12 @@ "dev": true }, "jest-haste-map": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.1.tgz", - "integrity": "sha512-ZrRSE2o3Ezh7sb1KmeLEZRZ4mgufbrMwolcFHNRSjKZhpLa8TdooXOOFlSwoUzlbVs1t0l7upVRW2K7RWGHzbQ==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.3.tgz", + "integrity": "sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==", "dev": true, "requires": { - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", @@ -16961,8 +17446,8 @@ "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.1", - "jest-worker": "^28.1.1", + "jest-util": "^28.1.3", + "jest-worker": "^28.1.3", "micromatch": "^4.0.4", "walker": "^1.0.8" } @@ -17131,9 +17616,9 @@ } }, "jest-mock-process": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/jest-mock-process/-/jest-mock-process-1.5.1.tgz", - "integrity": "sha512-CPu46KyUiVSxE+LkqBuscqGmy1bvW2vJQuNstt83iLtFaFjgrgmp6LY04IKuOhhlGhcrdi86Gqq5/fTE2wG6lg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jest-mock-process/-/jest-mock-process-2.0.0.tgz", + "integrity": "sha512-bybzszPfvrYhplymvUNFc130ryvjSCW1JSCrLA0LiV0Sv9TrI+cz90n3UYUPoT2nhNL6c6IV9LxUSFJF9L9tHQ==", "dev": true, "requires": {} }, @@ -17488,12 +17973,12 @@ } }, "jest-util": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.1.tgz", - "integrity": "sha512-FktOu7ca1DZSyhPAxgxB6hfh2+9zMoJ7aEQA759Z6p45NuO8mWcqujH+UdHlCm/V6JTWwDztM2ITCzU1ijJAfw==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", + "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", "dev": true, "requires": { - "@jest/types": "^28.1.1", + "@jest/types": "^28.1.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -17691,9 +18176,9 @@ } }, "jest-worker": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.1.tgz", - "integrity": "sha512-Au7slXB08C6h+xbJPp7VIb6U0XX5Kc9uel/WFc6/rcTzGiaVCBRngBExSYuXSLFPULPSYU3cJ3ybS988lNFQhQ==", + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", + "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", "dev": true, "requires": { "@types/node": "*", @@ -17767,6 +18252,25 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "json2csv": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-5.0.7.tgz", + "integrity": "sha512-YRZbUnyaJZLZUJSRi2G/MqahCyRv9n/ds+4oIetjDF3jWQA7AG7iSeKTiZiCNqtMZM7HDyt0e/W6lEnoGEmMGA==", + "dev": true, + "requires": { + "commander": "^6.1.0", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" + }, + "dependencies": { + "commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + } + } + }, "json5": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", @@ -17789,6 +18293,12 @@ "universalify": "^2.0.0" } }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true + }, "kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -17925,6 +18435,12 @@ "p-locate": "^4.1.0" } }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -17936,6 +18452,12 @@ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true + }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -17948,6 +18470,72 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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==", + "dev": true, + "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==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, "long": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", @@ -18717,6 +19305,12 @@ } } }, + "platform": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz", + "integrity": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==", + "dev": true + }, "prebuild-install": { "version": "6.1.4", "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", @@ -19066,6 +19660,16 @@ "bitset": "^5.0.3" } }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -19220,6 +19824,49 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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==", + "dev": true, + "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==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + } + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -19434,6 +20081,12 @@ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true }, + "systeminformation": { + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.12.1.tgz", + "integrity": "sha512-qAV0xSeSJlg0ZHmQ1T2rLrL54SATalBx6v4T8Sd5s17pEm6saX3LKzlPhfPx+EfT91y9yhRYnKhnMoLTFkxbqw==", + "dev": true + }, "tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", diff --git a/package.json b/package.json index 20f4ff52a..09886f303 100644 --- a/package.json +++ b/package.json @@ -77,14 +77,14 @@ }, "dependencies": { "@grpc/grpc-js": "1.6.7", - "@matrixai/async-init": "^1.8.1", - "@matrixai/async-locks": "^2.3.1", + "@matrixai/async-init": "^1.8.2", + "@matrixai/async-locks": "^3.1.2", "@matrixai/db": "^4.0.5", - "@matrixai/errors": "^1.1.1", + "@matrixai/errors": "^1.1.3", "@matrixai/id": "^3.3.3", "@matrixai/logger": "^3.0.0", - "@matrixai/resources": "^1.1.3", - "@matrixai/workers": "^1.3.3", + "@matrixai/resources": "^1.1.4", + "@matrixai/workers": "^1.3.6", "ajv": "^7.0.4", "bip39": "^3.0.3", "canonicalize": "^1.0.5", @@ -125,7 +125,9 @@ "@types/uuid": "^8.3.0", "@typescript-eslint/eslint-plugin": "^5.23.0", "@typescript-eslint/parser": "^5.23.0", - "babel-jest": "^28.1.2", + "babel-jest": "^28.1.3", + "benny": "^3.7.1", + "common-tags": "^1.8.2", "eslint": "^8.15.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -133,8 +135,8 @@ "grpc_tools_node_protoc_ts": "^5.1.3", "jest": "^28.1.1", "jest-junit": "^14.0.0", - "jest-mock-process": "^1.4.1", - "jest-mock-props": "^1.9.0", + "jest-mock-process": "^2.0.0", + "jest-mock-props": "^1.9.1", "mocked-env": "^1.3.5", "nexpect": "^0.6.0", "node-gyp-build": "^4.4.0", @@ -142,6 +144,7 @@ "prettier": "^2.6.2", "shelljs": "^0.8.5", "shx": "^0.3.4", + "systeminformation": "^5.12.1", "ts-jest": "^28.0.5", "ts-node": "^10.9.1", "tsconfig-paths": "^3.9.0", diff --git a/scripts/build-platforms-generate.sh b/scripts/build-platforms-generate.sh index 660aee34e..b2f08d700 100755 --- a/scripts/build-platforms-generate.sh +++ b/scripts/build-platforms-generate.sh @@ -72,7 +72,7 @@ build:linux $test_dir: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm test -- --ci --coverage ${test_files[@]}; ' artifacts: @@ -96,7 +96,7 @@ build:linux index: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm test -- --ci --coverage ${test_files[@]}; ' artifacts: diff --git a/scripts/check-test-generate.sh b/scripts/check-test-generate.sh index 8635c4d3e..fc10e44c2 100755 --- a/scripts/check-test-generate.sh +++ b/scripts/check-test-generate.sh @@ -63,7 +63,7 @@ check:test $test_dir: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm test -- --ci --coverage ${test_files[@]}; ' artifacts: @@ -87,7 +87,7 @@ check:test index: needs: [] script: - > - nix-shell --run ' + nix-shell --arg ci true --run $' npm test -- --ci --coverage ${test_files[@]}; ' artifacts: diff --git a/scripts/choco-install.ps1 b/scripts/choco-install.ps1 index 765080a9e..6231b49fb 100755 --- a/scripts/choco-install.ps1 +++ b/scripts/choco-install.ps1 @@ -1,3 +1,5 @@ +$ErrorActionPreference = "Stop" + function Save-ChocoPackage { param ( $PackageName @@ -21,10 +23,10 @@ if ( $null -eq $env:ChocolateyInstall ) { New-Item -Path "${PSScriptRoot}\..\tmp\chocolatey" -ItemType "directory" -ErrorAction:SilentlyContinue choco source add --name="cache" --source="${PSScriptRoot}\..\tmp\chocolatey" --priority=1 -# Install nodejs v16.15.1 (will use cache if exists) +# Install nodejs v16.14.2 (will use cache if exists) $nodejs = "nodejs.install" -choco install "$nodejs" --version="16.15.1" --require-checksums -y +choco install "$nodejs" --version="16.14.2" --require-checksums -y # Internalise nodejs to cache if doesn't exist -if ( -not (Test-Path -Path "${PSScriptRoot}\..\tmp\chocolatey\$nodejs\$nodejs.16.15.1.nupkg" -PathType Leaf) ) { +if ( -not (Test-Path -Path "${PSScriptRoot}\..\tmp\chocolatey\$nodejs\$nodejs.16.14.2.nupkg" -PathType Leaf) ) { Save-ChocoPackage -PackageName $nodejs } diff --git a/shell.nix b/shell.nix index adcf7fbae..2e6e5981c 100644 --- a/shell.nix +++ b/shell.nix @@ -1,4 +1,4 @@ -{ pkgs ? import ./pkgs.nix {} }: +{ pkgs ? import ./pkgs.nix {}, ci ? false }: with pkgs; let @@ -23,7 +23,15 @@ in . ./.env set +o allexport set -v - + ${ + lib.optionalString ci + '' + set -o errexit + set -o nounset + set -o pipefail + shopt -s inherit_errexit + '' + } mkdir --parents "$(pwd)/tmp" # Built executables and NPM executables diff --git a/src/vaults/VaultManager.ts b/src/vaults/VaultManager.ts index b8cdd59d6..6b95b9122 100644 --- a/src/vaults/VaultManager.ts +++ b/src/vaults/VaultManager.ts @@ -17,7 +17,7 @@ import type NotificationsManager from '../notifications/NotificationsManager'; import type ACL from '../acl/ACL'; import type { RemoteInfo } from './VaultInternal'; import type { VaultAction } from './types'; -import type { LockRequest } from '@matrixai/async-locks'; +import type { MultiLockRequest } from '@matrixai/async-locks'; import path from 'path'; import { PassThrough } from 'readable-stream'; import { EncryptedFS, errors as encryptedFsErrors } from 'encryptedfs'; @@ -961,7 +961,7 @@ class VaultManager { } // Obtaining locks - const vaultLocks: Array> = vaultIds.map( + const vaultLocks: Array> = vaultIds.map( (vaultId) => { return [vaultId.toString(), RWLockWriter, 'read']; }, diff --git a/tsconfig.build.json b/tsconfig.build.json index 3c5544ccc..724de4425 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -7,6 +7,7 @@ }, "exclude": [ "./tests/**/*", - "./scripts/**/*" + "./scripts/**/*", + "./benches/**/*" ] } diff --git a/tsconfig.json b/tsconfig.json index 9a1801712..2fffd2833 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,7 +26,8 @@ "./src/**/*", "./src/**/*.json", "./tests/**/*", - "./scripts/**/*" + "./scripts/**/*", + "./benches/**/*" ], "ts-node": { "require": ["tsconfig-paths/register"], From dca4cca2a25fbde1f518ced9270875805c7cea93 Mon Sep 17 00:00:00 2001 From: Emma Casolin Date: Wed, 27 Jul 2022 17:27:10 +1000 Subject: [PATCH 3/3] fix: ts-ignoring logger type incompatibilities --- src/PolykeyAgent.ts | 1 + src/bootstrap/utils.ts | 1 + src/vaults/VaultManager.ts | 1 + tests/acl/ACL.test.ts | 1 + tests/agent/GRPCClientAgent.test.ts | 1 + tests/agent/service/notificationsSend.test.ts | 1 + tests/client/service/agentLockAll.test.ts | 1 + .../service/gestaltsActionsSetUnsetGetByIdentity.test.ts | 1 + .../service/gestaltsActionsSetUnsetGetByNode.test.ts | 1 + tests/client/service/gestaltsDiscoveryByIdentity.test.ts | 1 + tests/client/service/gestaltsDiscoveryByNode.test.ts | 1 + tests/client/service/gestaltsGestaltGetByIdentity.test.ts | 1 + tests/client/service/gestaltsGestaltGetByNode.test.ts | 1 + tests/client/service/gestaltsGestaltList.test.ts | 1 + .../client/service/gestaltsGestaltTrustByIdentity.test.ts | 1 + tests/client/service/gestaltsGestaltTrustByNode.test.ts | 1 + tests/client/service/identitiesAuthenticate.test.ts | 1 + tests/client/service/identitiesAuthenticatedGet.test.ts | 1 + tests/client/service/identitiesClaim.test.ts | 1 + tests/client/service/identitiesInfoConnectedGet.test.ts | 1 + tests/client/service/identitiesInfoGet.test.ts | 1 + tests/client/service/identitiesProvidersList.test.ts | 1 + tests/client/service/identitiesTokenPutDeleteGet.test.ts | 1 + tests/client/service/nodesAdd.test.ts | 1 + tests/client/service/nodesClaim.test.ts | 1 + tests/client/service/nodesFind.test.ts | 1 + tests/client/service/nodesPing.test.ts | 1 + tests/client/service/notificationsClear.test.ts | 1 + tests/client/service/notificationsRead.test.ts | 1 + tests/client/service/notificationsSend.test.ts | 1 + tests/client/service/vaultsClone.test.ts | 1 + tests/client/service/vaultsCreateDeleteList.test.ts | 1 + tests/client/service/vaultsLog.test.ts | 1 + tests/client/service/vaultsPermissionSetUnsetGet.test.ts | 1 + tests/client/service/vaultsPull.test.ts | 1 + tests/client/service/vaultsRename.test.ts | 1 + tests/client/service/vaultsSecretsEdit.test.ts | 1 + tests/client/service/vaultsSecretsMkdir.test.ts | 1 + tests/client/service/vaultsSecretsNewDeleteGet.test.ts | 1 + tests/client/service/vaultsSecretsNewDirList.test.ts | 1 + tests/client/service/vaultsSecretsRename.test.ts | 1 + tests/client/service/vaultsSecretsStat.test.ts | 1 + tests/client/service/vaultsVersion.test.ts | 1 + tests/discovery/Discovery.test.ts | 1 + tests/gestalts/GestaltGraph.test.ts | 1 + tests/git/utils.test.ts | 1 + tests/grpc/GRPCClient.test.ts | 1 + tests/grpc/GRPCServer.test.ts | 1 + tests/identities/IdentitiesManager.test.ts | 1 + tests/keys/KeyManager.test.ts | 2 ++ tests/nodes/NodeConnection.test.ts | 1 + tests/nodes/NodeConnectionManager.general.test.ts | 1 + tests/nodes/NodeConnectionManager.lifecycle.test.ts | 1 + tests/nodes/NodeConnectionManager.seednodes.test.ts | 1 + tests/nodes/NodeConnectionManager.termination.test.ts | 1 + tests/nodes/NodeConnectionManager.timeout.test.ts | 1 + tests/nodes/NodeGraph.test.ts | 1 + tests/nodes/NodeManager.test.ts | 1 + tests/nodes/utils.test.ts | 1 + tests/notifications/NotificationsManager.test.ts | 1 + tests/sessions/SessionManager.test.ts | 1 + tests/sigchain/Sigchain.test.ts | 1 + tests/vaults/VaultInternal.test.ts | 2 ++ tests/vaults/VaultManager.test.ts | 1 + tests/vaults/VaultOps.test.ts | 7 ++++++- tests/vaults/utils.test.ts | 1 + 66 files changed, 73 insertions(+), 1 deletion(-) diff --git a/src/PolykeyAgent.ts b/src/PolykeyAgent.ts index 528a092b5..15d369d45 100644 --- a/src/PolykeyAgent.ts +++ b/src/PolykeyAgent.ts @@ -230,6 +230,7 @@ class PolykeyAgent { }, }, fs, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger.getChild(DB.name), fresh, })); diff --git a/src/bootstrap/utils.ts b/src/bootstrap/utils.ts index 9eece1244..72aa2d0d3 100644 --- a/src/bootstrap/utils.ts +++ b/src/bootstrap/utils.ts @@ -100,6 +100,7 @@ async function bootstrapState({ const db = await DB.createDB({ dbPath, fs, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger.getChild(DB.name), crypto: { key: keyManager.dbKey, diff --git a/src/vaults/VaultManager.ts b/src/vaults/VaultManager.ts index 6b95b9122..e6fa716f6 100644 --- a/src/vaults/VaultManager.ts +++ b/src/vaults/VaultManager.ts @@ -181,6 +181,7 @@ class VaultManager { efs = await EncryptedFS.createEncryptedFS({ dbPath: this.efsPath, dbKey: vaultKey, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger: this.logger.getChild('EncryptedFileSystem'), }); } catch (e) { diff --git a/tests/acl/ACL.test.ts b/tests/acl/ACL.test.ts index ec4020a1b..45e1b8baf 100644 --- a/tests/acl/ACL.test.ts +++ b/tests/acl/ACL.test.ts @@ -42,6 +42,7 @@ describe(ACL.name, () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: dbKey, diff --git a/tests/agent/GRPCClientAgent.test.ts b/tests/agent/GRPCClientAgent.test.ts index 86ad6cba7..0cf1fac2f 100644 --- a/tests/agent/GRPCClientAgent.test.ts +++ b/tests/agent/GRPCClientAgent.test.ts @@ -77,6 +77,7 @@ describe(GRPCClientAgent.name, () => { db = await DB.createDB({ dbPath: dbPath, fs: fs, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger: logger, crypto: { key: keyManager.dbKey, diff --git a/tests/agent/service/notificationsSend.test.ts b/tests/agent/service/notificationsSend.test.ts index 1836e22b1..61ae74f61 100644 --- a/tests/agent/service/notificationsSend.test.ts +++ b/tests/agent/service/notificationsSend.test.ts @@ -75,6 +75,7 @@ describe('notificationsSend', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/agentLockAll.test.ts b/tests/client/service/agentLockAll.test.ts index 49bfa9306..659433f8b 100644 --- a/tests/client/service/agentLockAll.test.ts +++ b/tests/client/service/agentLockAll.test.ts @@ -44,6 +44,7 @@ describe('agentLockall', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/client/service/gestaltsActionsSetUnsetGetByIdentity.test.ts b/tests/client/service/gestaltsActionsSetUnsetGetByIdentity.test.ts index 381ec9b60..daf72bb55 100644 --- a/tests/client/service/gestaltsActionsSetUnsetGetByIdentity.test.ts +++ b/tests/client/service/gestaltsActionsSetUnsetGetByIdentity.test.ts @@ -55,6 +55,7 @@ describe('gestaltsActionsByIdentity', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/gestaltsActionsSetUnsetGetByNode.test.ts b/tests/client/service/gestaltsActionsSetUnsetGetByNode.test.ts index 439f9b754..25bdafd0f 100644 --- a/tests/client/service/gestaltsActionsSetUnsetGetByNode.test.ts +++ b/tests/client/service/gestaltsActionsSetUnsetGetByNode.test.ts @@ -49,6 +49,7 @@ describe('gestaltsActionsByNode', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/gestaltsDiscoveryByIdentity.test.ts b/tests/client/service/gestaltsDiscoveryByIdentity.test.ts index 0b9dd8c44..a7696a7c2 100644 --- a/tests/client/service/gestaltsDiscoveryByIdentity.test.ts +++ b/tests/client/service/gestaltsDiscoveryByIdentity.test.ts @@ -69,6 +69,7 @@ describe('gestaltsDiscoveryByIdentity', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/client/service/gestaltsDiscoveryByNode.test.ts b/tests/client/service/gestaltsDiscoveryByNode.test.ts index d0d77b431..175511661 100644 --- a/tests/client/service/gestaltsDiscoveryByNode.test.ts +++ b/tests/client/service/gestaltsDiscoveryByNode.test.ts @@ -70,6 +70,7 @@ describe('gestaltsDiscoveryByNode', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/client/service/gestaltsGestaltGetByIdentity.test.ts b/tests/client/service/gestaltsGestaltGetByIdentity.test.ts index b6ecc2d71..926b363f7 100644 --- a/tests/client/service/gestaltsGestaltGetByIdentity.test.ts +++ b/tests/client/service/gestaltsGestaltGetByIdentity.test.ts @@ -73,6 +73,7 @@ describe('gestaltsGestaltGetByIdentity', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/gestaltsGestaltGetByNode.test.ts b/tests/client/service/gestaltsGestaltGetByNode.test.ts index 1d7a3ceb6..3a5c23ebf 100644 --- a/tests/client/service/gestaltsGestaltGetByNode.test.ts +++ b/tests/client/service/gestaltsGestaltGetByNode.test.ts @@ -70,6 +70,7 @@ describe('gestaltsGestaltGetByNode', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/gestaltsGestaltList.test.ts b/tests/client/service/gestaltsGestaltList.test.ts index 1075a34f8..f118fdf51 100644 --- a/tests/client/service/gestaltsGestaltList.test.ts +++ b/tests/client/service/gestaltsGestaltList.test.ts @@ -75,6 +75,7 @@ describe('gestaltsGestaltList', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/gestaltsGestaltTrustByIdentity.test.ts b/tests/client/service/gestaltsGestaltTrustByIdentity.test.ts index ea96532ac..d979b968c 100644 --- a/tests/client/service/gestaltsGestaltTrustByIdentity.test.ts +++ b/tests/client/service/gestaltsGestaltTrustByIdentity.test.ts @@ -121,6 +121,7 @@ describe('gestaltsGestaltTrustByIdentity', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/client/service/gestaltsGestaltTrustByNode.test.ts b/tests/client/service/gestaltsGestaltTrustByNode.test.ts index e80f39e2b..d18a0e0a2 100644 --- a/tests/client/service/gestaltsGestaltTrustByNode.test.ts +++ b/tests/client/service/gestaltsGestaltTrustByNode.test.ts @@ -130,6 +130,7 @@ describe('gestaltsGestaltTrustByNode', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/client/service/identitiesAuthenticate.test.ts b/tests/client/service/identitiesAuthenticate.test.ts index 21b4f78dc..6756d1162 100644 --- a/tests/client/service/identitiesAuthenticate.test.ts +++ b/tests/client/service/identitiesAuthenticate.test.ts @@ -45,6 +45,7 @@ describe('identitiesAuthenticate', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesAuthenticatedGet.test.ts b/tests/client/service/identitiesAuthenticatedGet.test.ts index 1dacdddbc..84bfa0744 100644 --- a/tests/client/service/identitiesAuthenticatedGet.test.ts +++ b/tests/client/service/identitiesAuthenticatedGet.test.ts @@ -38,6 +38,7 @@ describe('identitiesAuthenticatedGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesClaim.test.ts b/tests/client/service/identitiesClaim.test.ts index f41caa6a5..b3396afb7 100644 --- a/tests/client/service/identitiesClaim.test.ts +++ b/tests/client/service/identitiesClaim.test.ts @@ -99,6 +99,7 @@ describe('identitiesClaim', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesInfoConnectedGet.test.ts b/tests/client/service/identitiesInfoConnectedGet.test.ts index 532690fe4..e0f57e5c4 100644 --- a/tests/client/service/identitiesInfoConnectedGet.test.ts +++ b/tests/client/service/identitiesInfoConnectedGet.test.ts @@ -43,6 +43,7 @@ describe('identitiesInfoConnectedGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesInfoGet.test.ts b/tests/client/service/identitiesInfoGet.test.ts index 68b9df655..f87336beb 100644 --- a/tests/client/service/identitiesInfoGet.test.ts +++ b/tests/client/service/identitiesInfoGet.test.ts @@ -41,6 +41,7 @@ describe('identitiesInfoGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesProvidersList.test.ts b/tests/client/service/identitiesProvidersList.test.ts index e75ffd477..d48d4c610 100644 --- a/tests/client/service/identitiesProvidersList.test.ts +++ b/tests/client/service/identitiesProvidersList.test.ts @@ -50,6 +50,7 @@ describe('identitiesProvidersList', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/identitiesTokenPutDeleteGet.test.ts b/tests/client/service/identitiesTokenPutDeleteGet.test.ts index 1752e2f94..3bfba7e90 100644 --- a/tests/client/service/identitiesTokenPutDeleteGet.test.ts +++ b/tests/client/service/identitiesTokenPutDeleteGet.test.ts @@ -45,6 +45,7 @@ describe('identitiesTokenPutDeleteGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); identitiesManager = await IdentitiesManager.createIdentitiesManager({ diff --git a/tests/client/service/nodesAdd.test.ts b/tests/client/service/nodesAdd.test.ts index 58aec7a57..75feed163 100644 --- a/tests/client/service/nodesAdd.test.ts +++ b/tests/client/service/nodesAdd.test.ts @@ -59,6 +59,7 @@ describe('nodesAdd', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, }); proxy = new Proxy({ diff --git a/tests/client/service/nodesClaim.test.ts b/tests/client/service/nodesClaim.test.ts index 55fe371d7..fc1b4e81e 100644 --- a/tests/client/service/nodesClaim.test.ts +++ b/tests/client/service/nodesClaim.test.ts @@ -90,6 +90,7 @@ describe('nodesClaim', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/nodesFind.test.ts b/tests/client/service/nodesFind.test.ts index c0d0e6b83..1f3681917 100644 --- a/tests/client/service/nodesFind.test.ts +++ b/tests/client/service/nodesFind.test.ts @@ -68,6 +68,7 @@ describe('nodesFind', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); proxy = new Proxy({ diff --git a/tests/client/service/nodesPing.test.ts b/tests/client/service/nodesPing.test.ts index 5c4d6faa2..80115f97e 100644 --- a/tests/client/service/nodesPing.test.ts +++ b/tests/client/service/nodesPing.test.ts @@ -68,6 +68,7 @@ describe('nodesPing', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); proxy = new Proxy({ diff --git a/tests/client/service/notificationsClear.test.ts b/tests/client/service/notificationsClear.test.ts index 4156043e0..c7d4fdd7b 100644 --- a/tests/client/service/notificationsClear.test.ts +++ b/tests/client/service/notificationsClear.test.ts @@ -68,6 +68,7 @@ describe('notificationsClear', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/notificationsRead.test.ts b/tests/client/service/notificationsRead.test.ts index 0f32b7cda..36ca8ab18 100644 --- a/tests/client/service/notificationsRead.test.ts +++ b/tests/client/service/notificationsRead.test.ts @@ -143,6 +143,7 @@ describe('notificationsRead', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/notificationsSend.test.ts b/tests/client/service/notificationsSend.test.ts index 3c5aecbce..2757f6bb0 100644 --- a/tests/client/service/notificationsSend.test.ts +++ b/tests/client/service/notificationsSend.test.ts @@ -77,6 +77,7 @@ describe('notificationsSend', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/vaultsClone.test.ts b/tests/client/service/vaultsClone.test.ts index 536cbd8ba..e9f906b87 100644 --- a/tests/client/service/vaultsClone.test.ts +++ b/tests/client/service/vaultsClone.test.ts @@ -35,6 +35,7 @@ describe('vaultsClone', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsCreateDeleteList.test.ts b/tests/client/service/vaultsCreateDeleteList.test.ts index ced8acaa5..f7159d630 100644 --- a/tests/client/service/vaultsCreateDeleteList.test.ts +++ b/tests/client/service/vaultsCreateDeleteList.test.ts @@ -50,6 +50,7 @@ describe('vaultsCreateDeleteList', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsLog.test.ts b/tests/client/service/vaultsLog.test.ts index cec272d90..b10640384 100644 --- a/tests/client/service/vaultsLog.test.ts +++ b/tests/client/service/vaultsLog.test.ts @@ -55,6 +55,7 @@ describe('vaultsLog', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsPermissionSetUnsetGet.test.ts b/tests/client/service/vaultsPermissionSetUnsetGet.test.ts index 7563c3109..e025591f2 100644 --- a/tests/client/service/vaultsPermissionSetUnsetGet.test.ts +++ b/tests/client/service/vaultsPermissionSetUnsetGet.test.ts @@ -66,6 +66,7 @@ describe('vaultsPermissionSetUnsetGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); acl = await ACL.createACL({ diff --git a/tests/client/service/vaultsPull.test.ts b/tests/client/service/vaultsPull.test.ts index 8d3951cb8..f438fa71f 100644 --- a/tests/client/service/vaultsPull.test.ts +++ b/tests/client/service/vaultsPull.test.ts @@ -35,6 +35,7 @@ describe('vaultsPull', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsRename.test.ts b/tests/client/service/vaultsRename.test.ts index 637c6f288..d14463091 100644 --- a/tests/client/service/vaultsRename.test.ts +++ b/tests/client/service/vaultsRename.test.ts @@ -48,6 +48,7 @@ describe('vaultsRename', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsEdit.test.ts b/tests/client/service/vaultsSecretsEdit.test.ts index e805b9eb7..817cda396 100644 --- a/tests/client/service/vaultsSecretsEdit.test.ts +++ b/tests/client/service/vaultsSecretsEdit.test.ts @@ -50,6 +50,7 @@ describe('vaultsSecretsEdit', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsMkdir.test.ts b/tests/client/service/vaultsSecretsMkdir.test.ts index ee50aaff7..7b78c6e54 100644 --- a/tests/client/service/vaultsSecretsMkdir.test.ts +++ b/tests/client/service/vaultsSecretsMkdir.test.ts @@ -49,6 +49,7 @@ describe('vaultsSecretsMkdir', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsNewDeleteGet.test.ts b/tests/client/service/vaultsSecretsNewDeleteGet.test.ts index b23fbc8e2..32ed9030f 100644 --- a/tests/client/service/vaultsSecretsNewDeleteGet.test.ts +++ b/tests/client/service/vaultsSecretsNewDeleteGet.test.ts @@ -53,6 +53,7 @@ describe('vaultsSecretsNewDeleteGet', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsNewDirList.test.ts b/tests/client/service/vaultsSecretsNewDirList.test.ts index 01a8bf462..e0ed0fda7 100644 --- a/tests/client/service/vaultsSecretsNewDirList.test.ts +++ b/tests/client/service/vaultsSecretsNewDirList.test.ts @@ -51,6 +51,7 @@ describe('vaultsSecretsNewDirList', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsRename.test.ts b/tests/client/service/vaultsSecretsRename.test.ts index b54acd01e..51c458523 100644 --- a/tests/client/service/vaultsSecretsRename.test.ts +++ b/tests/client/service/vaultsSecretsRename.test.ts @@ -50,6 +50,7 @@ describe('vaultsSecretsRename', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsSecretsStat.test.ts b/tests/client/service/vaultsSecretsStat.test.ts index 33b6b3cec..80ec8eaed 100644 --- a/tests/client/service/vaultsSecretsStat.test.ts +++ b/tests/client/service/vaultsSecretsStat.test.ts @@ -50,6 +50,7 @@ describe('vaultsSecretsStat', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/client/service/vaultsVersion.test.ts b/tests/client/service/vaultsVersion.test.ts index c397eafe7..7e0e3f13a 100644 --- a/tests/client/service/vaultsVersion.test.ts +++ b/tests/client/service/vaultsVersion.test.ts @@ -60,6 +60,7 @@ describe('vaultsVersion', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); const vaultsPath = path.join(dataDir, 'vaults'); diff --git a/tests/discovery/Discovery.test.ts b/tests/discovery/Discovery.test.ts index 2e59779b1..f4fbddd4e 100644 --- a/tests/discovery/Discovery.test.ts +++ b/tests/discovery/Discovery.test.ts @@ -72,6 +72,7 @@ describe('Discovery', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger: logger.getChild('db'), crypto: { key: keyManager.dbKey, diff --git a/tests/gestalts/GestaltGraph.test.ts b/tests/gestalts/GestaltGraph.test.ts index e24a08e00..2ef000424 100644 --- a/tests/gestalts/GestaltGraph.test.ts +++ b/tests/gestalts/GestaltGraph.test.ts @@ -55,6 +55,7 @@ describe('GestaltGraph', () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: await keysUtils.generateKey(), diff --git a/tests/git/utils.test.ts b/tests/git/utils.test.ts index e1f59103f..414340f73 100644 --- a/tests/git/utils.test.ts +++ b/tests/git/utils.test.ts @@ -31,6 +31,7 @@ describe('Git utils', () => { efs = await EncryptedFS.createEncryptedFS({ dbKey, dbPath: dataDir, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); await efs.start(); diff --git a/tests/grpc/GRPCClient.test.ts b/tests/grpc/GRPCClient.test.ts index bf252bc6d..2062803bc 100644 --- a/tests/grpc/GRPCClient.test.ts +++ b/tests/grpc/GRPCClient.test.ts @@ -53,6 +53,7 @@ describe('GRPCClient', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: await keysUtils.generateKey(), diff --git a/tests/grpc/GRPCServer.test.ts b/tests/grpc/GRPCServer.test.ts index 285018cb1..5c8a7777f 100644 --- a/tests/grpc/GRPCServer.test.ts +++ b/tests/grpc/GRPCServer.test.ts @@ -40,6 +40,7 @@ describe('GRPCServer', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/identities/IdentitiesManager.test.ts b/tests/identities/IdentitiesManager.test.ts index 23000440b..1e2a39a7b 100644 --- a/tests/identities/IdentitiesManager.test.ts +++ b/tests/identities/IdentitiesManager.test.ts @@ -32,6 +32,7 @@ describe('IdentitiesManager', () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, crypto: { key: await keysUtils.generateKey(), diff --git a/tests/keys/KeyManager.test.ts b/tests/keys/KeyManager.test.ts index cd9516212..dfd312fda 100644 --- a/tests/keys/KeyManager.test.ts +++ b/tests/keys/KeyManager.test.ts @@ -326,6 +326,7 @@ describe('KeyManager', () => { const dbPath = `${dataDir}/db`; const db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, @@ -375,6 +376,7 @@ describe('KeyManager', () => { const dbPath = `${dataDir}/db`; const db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeConnection.test.ts b/tests/nodes/NodeConnection.test.ts index 56dee4b14..8391f6f7d 100644 --- a/tests/nodes/NodeConnection.test.ts +++ b/tests/nodes/NodeConnection.test.ts @@ -207,6 +207,7 @@ describe(`${NodeConnection.name} test`, () => { serverDb = await DB.createDB({ dbPath: serverDbPath, fs: fs, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger, crypto: { key: serverKeyManager.dbKey, diff --git a/tests/nodes/NodeConnectionManager.general.test.ts b/tests/nodes/NodeConnectionManager.general.test.ts index 63f672e41..4ab11fd1f 100644 --- a/tests/nodes/NodeConnectionManager.general.test.ts +++ b/tests/nodes/NodeConnectionManager.general.test.ts @@ -184,6 +184,7 @@ describe(`${NodeConnectionManager.name} general test`, () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: nodeConnectionManagerLogger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeConnectionManager.lifecycle.test.ts b/tests/nodes/NodeConnectionManager.lifecycle.test.ts index 06cf819aa..98a1bfc39 100644 --- a/tests/nodes/NodeConnectionManager.lifecycle.test.ts +++ b/tests/nodes/NodeConnectionManager.lifecycle.test.ts @@ -142,6 +142,7 @@ describe(`${NodeConnectionManager.name} lifecycle test`, () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: nodeConnectionManagerLogger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeConnectionManager.seednodes.test.ts b/tests/nodes/NodeConnectionManager.seednodes.test.ts index c965c15ac..1ef6b8b71 100644 --- a/tests/nodes/NodeConnectionManager.seednodes.test.ts +++ b/tests/nodes/NodeConnectionManager.seednodes.test.ts @@ -142,6 +142,7 @@ describe(`${NodeConnectionManager.name} seed nodes test`, () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeConnectionManager.termination.test.ts b/tests/nodes/NodeConnectionManager.termination.test.ts index 74e02570d..cf4bfe410 100644 --- a/tests/nodes/NodeConnectionManager.termination.test.ts +++ b/tests/nodes/NodeConnectionManager.termination.test.ts @@ -101,6 +101,7 @@ describe(`${NodeConnectionManager.name} termination test`, () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeConnectionManager.timeout.test.ts b/tests/nodes/NodeConnectionManager.timeout.test.ts index feda9d877..287f6a171 100644 --- a/tests/nodes/NodeConnectionManager.timeout.test.ts +++ b/tests/nodes/NodeConnectionManager.timeout.test.ts @@ -132,6 +132,7 @@ describe(`${NodeConnectionManager.name} timeout test`, () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: nodeConnectionManagerLogger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/NodeGraph.test.ts b/tests/nodes/NodeGraph.test.ts index 07d01365a..7a9a1d85e 100644 --- a/tests/nodes/NodeGraph.test.ts +++ b/tests/nodes/NodeGraph.test.ts @@ -55,6 +55,7 @@ describe(`${NodeGraph.name} test`, () => { beforeEach(async () => { db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: dbKey, diff --git a/tests/nodes/NodeManager.test.ts b/tests/nodes/NodeManager.test.ts index 77ce88a26..1f8f0e5b5 100644 --- a/tests/nodes/NodeManager.test.ts +++ b/tests/nodes/NodeManager.test.ts @@ -92,6 +92,7 @@ describe(`${NodeManager.name} test`, () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/nodes/utils.test.ts b/tests/nodes/utils.test.ts index 0d962f963..64d7c7afe 100644 --- a/tests/nodes/utils.test.ts +++ b/tests/nodes/utils.test.ts @@ -25,6 +25,7 @@ describe('nodes/utils', () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: dbKey, diff --git a/tests/notifications/NotificationsManager.test.ts b/tests/notifications/NotificationsManager.test.ts index 97a36545e..7677e7691 100644 --- a/tests/notifications/NotificationsManager.test.ts +++ b/tests/notifications/NotificationsManager.test.ts @@ -72,6 +72,7 @@ describe('NotificationsManager', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/sessions/SessionManager.test.ts b/tests/sessions/SessionManager.test.ts index 4bdad8cb2..eecd1cf8c 100644 --- a/tests/sessions/SessionManager.test.ts +++ b/tests/sessions/SessionManager.test.ts @@ -35,6 +35,7 @@ describe('SessionManager', () => { const dbPath = path.join(dataDir, 'db'); db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/sigchain/Sigchain.test.ts b/tests/sigchain/Sigchain.test.ts index 9eba8bb73..45da1b665 100644 --- a/tests/sigchain/Sigchain.test.ts +++ b/tests/sigchain/Sigchain.test.ts @@ -59,6 +59,7 @@ describe('Sigchain', () => { const dbPath = `${dataDir}/db`; db = await DB.createDB({ dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, crypto: { key: keyManager.dbKey, diff --git a/tests/vaults/VaultInternal.test.ts b/tests/vaults/VaultInternal.test.ts index 28e3d1b94..10cdf1ef5 100644 --- a/tests/vaults/VaultInternal.test.ts +++ b/tests/vaults/VaultInternal.test.ts @@ -56,6 +56,7 @@ describe('VaultInternal', () => { efs = await EncryptedFS.createEncryptedFS({ dbPath: efsDbPath, dbKey, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger, }); await efs.start(); @@ -70,6 +71,7 @@ describe('VaultInternal', () => { }, dbPath: path.join(dataDir, 'db'), fs: fs, + // @ts-ignore - version of js-logger is incompatible (remove when EFS logger updates to 3.*) logger: logger, }); vaultsDbPath = ['vaults']; diff --git a/tests/vaults/VaultManager.test.ts b/tests/vaults/VaultManager.test.ts index 206d5f663..6ce9385dc 100644 --- a/tests/vaults/VaultManager.test.ts +++ b/tests/vaults/VaultManager.test.ts @@ -73,6 +73,7 @@ describe('VaultManager', () => { vaultsPath = path.join(dataDir, 'VAULTS'); db = await DB.createDB({ dbPath: path.join(dataDir, 'DB'), + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger: logger.getChild(DB.name), }); }); diff --git a/tests/vaults/VaultOps.test.ts b/tests/vaults/VaultOps.test.ts index 105827c74..ee1adb834 100644 --- a/tests/vaults/VaultOps.test.ts +++ b/tests/vaults/VaultOps.test.ts @@ -40,6 +40,7 @@ describe('VaultOps', () => { baseEfs = await EncryptedFS.createEncryptedFS({ dbKey, dbPath, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, }); await baseEfs.start(); @@ -51,7 +52,11 @@ describe('VaultOps', () => { recursive: true, }, ); - db = await DB.createDB({ dbPath: path.join(dataDir, 'db'), logger }); + db = await DB.createDB({ + dbPath: path.join(dataDir, 'db'), + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) + logger, + }); vaultsDbPath = ['vaults']; vaultInternal = await VaultInternal.createVaultInternal({ keyManager: dummyKeyManager, diff --git a/tests/vaults/utils.test.ts b/tests/vaults/utils.test.ts index a2333467b..669f5e8cc 100644 --- a/tests/vaults/utils.test.ts +++ b/tests/vaults/utils.test.ts @@ -33,6 +33,7 @@ describe('Vaults utils', () => { const efs = await EncryptedFS.createEncryptedFS({ dbKey: key, dbPath: dataDir, + // @ts-ignore - version of js-logger is incompatible (remove when DB updates to 5.*) logger, }); await efs.promises.mkdir(path.join('dir', 'dir2', 'dir3'), {