From 8f43d4212ae5147d4b998311fad9064babcf0b3a Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 07:40:17 -1000 Subject: [PATCH 01/14] WIP --- app/jest.config.ts | 5 +- app/test/setup.ts | 8 +- .../transformers/rawImportPreprocessor.ts | 20 +- ci/jest.config.ts | 3 + package.json | 15 +- packages/electron-socket/package.json | 2 +- packages/ros1/jest.config.ts | 3 + packages/ros1/package.json | 4 +- packages/rosmsg-bobject/jest.config.ts | 3 + packages/rosmsg-deser/jest.config.ts | 3 + packages/velodyne-cloud/jest.config.ts | 3 + packages/velodyne-cloud/package.json | 4 +- packages/wasm-bz2/jest.config.ts | 3 + packages/wasm-bz2/package.json | 2 +- packages/xmlrpc/jest.config.ts | 3 + packages/xmlrpc/package.json | 4 +- test/jest.config.ts | 3 + tsconfig.jest.json | 7 + yarn.lock | 1128 +++++++++-------- 19 files changed, 690 insertions(+), 533 deletions(-) create mode 100644 tsconfig.jest.json diff --git a/app/jest.config.ts b/app/jest.config.ts index e6b8eda624..8b5de23281 100644 --- a/app/jest.config.ts +++ b/app/jest.config.ts @@ -5,7 +5,7 @@ export default { preset: "ts-jest", transform: { - "\\.tsx?$": "/test/transformers/rawImportPreprocessor.ts", + // "\\.tsx?$": "/test/transformers/rawImportPreprocessor.ts", "\\.ne$": "/test/transformers/neTransformer.js", "\\.(bin|template|wasm)$": "/test/transformers/rawTransformer.js", }, @@ -27,4 +27,7 @@ export default { "\\.(css|scss)$": "/test/mocks/styleMock.ts", }, testRunner: "jest-circus/runner", + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/app/test/setup.ts b/app/test/setup.ts index 1f1bfc9839..c7398e68f7 100644 --- a/app/test/setup.ts +++ b/app/test/setup.ts @@ -22,14 +22,14 @@ function noOp() { // no-op } -if (typeof window.URL.createObjectURL === "undefined") { - Object.defineProperty(window.URL, "createObjectURL", { value: noOp }); -} - if (typeof window !== "undefined") { global.TextDecoder = util.TextDecoder as typeof TextDecoder; // polyfill URLSearchParams in jsdom window.URLSearchParams = UrlSearchParams; + + if (typeof window.URL.createObjectURL === "undefined") { + Object.defineProperty(window.URL, "createObjectURL", { value: noOp }); + } } // you can import fakes from fake-indexeddb and attach them to the jsdom global diff --git a/app/test/transformers/rawImportPreprocessor.ts b/app/test/transformers/rawImportPreprocessor.ts index 522dbc2e89..b0eac343dd 100644 --- a/app/test/transformers/rawImportPreprocessor.ts +++ b/app/test/transformers/rawImportPreprocessor.ts @@ -2,12 +2,10 @@ // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ -import type { CacheKeyOptions, TransformOptions } from "@jest/transform"; -import type { Config } from "@jest/types"; import fs from "fs"; -import { createTransformer } from "ts-jest"; +import TsJest from "ts-jest"; -const transformer = createTransformer(); +const transformer = TsJest.createTransformer(); // look for `?raw` import statements // re-write these into `const variable = "string source";`; @@ -21,17 +19,15 @@ const importReplacer = (_: unknown, p1: string, p2: string) => { function rewriteSource(source: string) { return source.replace(importRegEx, importReplacer); } - module.exports = { - process( + process(source: string, filePath: string, options: Parameters[2]) { + return transformer.process(rewriteSource(source), filePath, options); + }, + getCacheKey( source: string, filePath: string, - config: Config.ProjectConfig, - options?: TransformOptions, + options: Parameters[2], ) { - return transformer.process(rewriteSource(source), filePath, config, options); - }, - getCacheKey(source: string, filePath: string, config: string, options: CacheKeyOptions) { - return transformer.getCacheKey(rewriteSource(source), filePath, config, options); + return transformer.getCacheKey(rewriteSource(source), filePath, options); }, }; diff --git a/ci/jest.config.ts b/ci/jest.config.ts index 75c5e7ed8f..6551b83d93 100644 --- a/ci/jest.config.ts +++ b/ci/jest.config.ts @@ -5,4 +5,7 @@ export default { preset: "ts-jest", testRunner: "jest-circus/runner", + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/package.json b/package.json index ab5f424851..1d8d8ce54f 100644 --- a/package.json +++ b/package.json @@ -25,10 +25,10 @@ "serve": "webpack serve --mode development --progress", "lint": "TIMING=1 eslint --report-unused-disable-directives --fix .", "lint:ci": "TIMING=1 NODE_OPTIONS='--max-old-space-size=4096' eslint --report-unused-disable-directives --config .eslintrc.ci.yaml .", - "test": "NODE_OPTIONS='-r ts-node/register' jest", - "test:debug": "NODE_OPTIONS='-r ts-node/register --inspect-brk' jest", - "test:watch": "NODE_OPTIONS='-r ts-node/register' jest --watch", - "test:integration": "jest --forceExit --projects test", + "test": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register' jest", + "test:debug": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register --inspect-brk' jest", + "test:watch": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register' jest --watch", + "test:integration": "TS_NODE_PROJECT=tsconfig.jest.json jest --forceExit --projects test", "package:win": "yarn package --win", "package:darwin": "yarn package --mac", "package:linux": "yarn package --linux", @@ -56,6 +56,7 @@ "@types/case-sensitive-paths-webpack-plugin": "2.1.5", "@types/circular-dependency-plugin": "^5.0.2", "@types/electron-devtools-installer": "2.2.0", + "@types/jest": "26.0.22", "@types/license-checker": "^25.0.1", "@types/nearley": "2.11.1", "@types/pngjs": "^6", @@ -93,9 +94,9 @@ "fake-indexeddb": "3.1.2", "fork-ts-checker-webpack-plugin": "6.2.1", "html-webpack-plugin": "5.3.1", - "jest": "26.6.3", + "jest": "27.0.0-next.8", "jest-canvas-mock": "2.3.1", - "jest-circus": "26.6.3", + "jest-circus": "27.0.0-next.8", "license-checker": "25.0.1", "monaco-editor-webpack-plugin": "3.0.1", "nearley": "2.20.1", @@ -113,7 +114,7 @@ "spectron": "https://github.com/foxglove/spectron.git#commit=7f88e8fe148ee14b3efc14c3646c08c4ed0a6747", "string-replace-loader": "3.0.1", "style-loader": "2.0.0", - "ts-jest": "26.5.2", + "ts-jest": "27.0.0-next.11", "ts-loader": "8.1.0", "ts-node": "9.1.1", "typescript": "4.2.2", diff --git a/packages/electron-socket/package.json b/packages/electron-socket/package.json index c1051fdf26..a392bf38e1 100644 --- a/packages/electron-socket/package.json +++ b/packages/electron-socket/package.json @@ -23,7 +23,7 @@ "scripts": {}, "devDependencies": { "@jest/types": "26.6.2", - "jest": "26.6.3", + "jest": "27.0.0-next.8", "tslib": "2.2.0", "typescript": "4.2.2" }, diff --git a/packages/ros1/jest.config.ts b/packages/ros1/jest.config.ts index bb5377397f..22921d3321 100644 --- a/packages/ros1/jest.config.ts +++ b/packages/ros1/jest.config.ts @@ -6,4 +6,7 @@ export default { preset: "ts-jest", testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/ros1/package.json b/packages/ros1/package.json index 1c7beab883..5da1347148 100644 --- a/packages/ros1/package.json +++ b/packages/ros1/package.json @@ -25,8 +25,8 @@ }, "devDependencies": { "@jest/types": "26.6.2", - "jest": "26.6.3", - "jest-circus": "26.6.3", + "jest": "27.0.0-next.8", + "jest-circus": "27.0.0-next.8", "tslib": "2.2.0", "typescript": "4.2.2" }, diff --git a/packages/rosmsg-bobject/jest.config.ts b/packages/rosmsg-bobject/jest.config.ts index a19271d26d..ff28fd0105 100644 --- a/packages/rosmsg-bobject/jest.config.ts +++ b/packages/rosmsg-bobject/jest.config.ts @@ -14,4 +14,7 @@ export default { testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], setupFiles: ["/src/test/setup.ts"], + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/rosmsg-deser/jest.config.ts b/packages/rosmsg-deser/jest.config.ts index 75c5e7ed8f..6551b83d93 100644 --- a/packages/rosmsg-deser/jest.config.ts +++ b/packages/rosmsg-deser/jest.config.ts @@ -5,4 +5,7 @@ export default { preset: "ts-jest", testRunner: "jest-circus/runner", + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/velodyne-cloud/jest.config.ts b/packages/velodyne-cloud/jest.config.ts index bb5377397f..22921d3321 100644 --- a/packages/velodyne-cloud/jest.config.ts +++ b/packages/velodyne-cloud/jest.config.ts @@ -6,4 +6,7 @@ export default { preset: "ts-jest", testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/velodyne-cloud/package.json b/packages/velodyne-cloud/package.json index 08829ef9cb..0367b06721 100644 --- a/packages/velodyne-cloud/package.json +++ b/packages/velodyne-cloud/package.json @@ -25,8 +25,8 @@ }, "devDependencies": { "@jest/types": "26.6.2", - "jest": "26.6.3", - "jest-circus": "26.6.3", + "jest": "27.0.0-next.8", + "jest-circus": "27.0.0-next.8", "kelonio": "0.6.0", "rosbag": "github:foxglove/rosbag.js#fc61125fbc01ff55698c5ed48987b2d9e7599572", "tslib": "2.2.0", diff --git a/packages/wasm-bz2/jest.config.ts b/packages/wasm-bz2/jest.config.ts index 856392fb30..90ca4f325f 100644 --- a/packages/wasm-bz2/jest.config.ts +++ b/packages/wasm-bz2/jest.config.ts @@ -13,4 +13,7 @@ export default { }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/wasm-bz2/package.json b/packages/wasm-bz2/package.json index 52d7c9fe82..f09180bb64 100644 --- a/packages/wasm-bz2/package.json +++ b/packages/wasm-bz2/package.json @@ -17,6 +17,6 @@ "module": "src/index.ts", "devDependencies": { "@types/emscripten": "1.39.4", - "jest": "26.6.3" + "jest": "27.0.0-next.8" } } diff --git a/packages/xmlrpc/jest.config.ts b/packages/xmlrpc/jest.config.ts index bb5377397f..22921d3321 100644 --- a/packages/xmlrpc/jest.config.ts +++ b/packages/xmlrpc/jest.config.ts @@ -6,4 +6,7 @@ export default { preset: "ts-jest", testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/packages/xmlrpc/package.json b/packages/xmlrpc/package.json index aa7ced5e27..8a342b5fe1 100644 --- a/packages/xmlrpc/package.json +++ b/packages/xmlrpc/package.json @@ -33,8 +33,8 @@ "devDependencies": { "@jest/types": "26.6.2", "@types/sax": "^1.2.1", - "jest": "26.6.3", - "jest-circus": "26.6.3", + "jest": "27.0.0-next.8", + "jest-circus": "27.0.0-next.8", "tslib": "2.2.0", "typescript": "4.2.2" } diff --git a/test/jest.config.ts b/test/jest.config.ts index 7bc41f27d1..16e9e43b55 100644 --- a/test/jest.config.ts +++ b/test/jest.config.ts @@ -11,4 +11,7 @@ export default { }, globalSetup: "/globalSetup.ts", testRunner: "jest-circus/runner", + haste: { + forceNodeFilesystemAPI: true, + }, }; diff --git a/tsconfig.jest.json b/tsconfig.jest.json new file mode 100644 index 0000000000..8bf2caa834 --- /dev/null +++ b/tsconfig.jest.json @@ -0,0 +1,7 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "typeRoots": ["node_modules/@types/node", "node_modules/@types/jest"] + }, + "include": [] +} diff --git a/yarn.lock b/yarn.lock index 1541acd175..9e31711eb2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -162,14 +162,14 @@ __metadata: languageName: node linkType: hard -"@babel/generator@npm:^7.12.11, @babel/generator@npm:^7.12.5, @babel/generator@npm:^7.13.0": - version: 7.13.9 - resolution: "@babel/generator@npm:7.13.9" +"@babel/generator@npm:^7.12.11, @babel/generator@npm:^7.12.5, @babel/generator@npm:^7.13.0, @babel/generator@npm:^7.13.16, @babel/generator@npm:^7.7.2": + version: 7.13.16 + resolution: "@babel/generator@npm:7.13.16" dependencies: - "@babel/types": ^7.13.0 + "@babel/types": ^7.13.16 jsesc: ^2.5.1 source-map: ^0.5.0 - checksum: d9cf7db910dd703a55c3ba147a8024564d51de06f5e3e61aef6ca197bcd80a6cb0a633fe4688c8c9f6226c70ee6f32a747050a8e420972b45cc98a6b3fc5ae66 + checksum: 299bf875ea550f52d157260804bf5b1acdc27269ae7287e53a1a5a602ff6052a466f4a4c03dc7377b3f2d5240eea5ee92162e2a943acb4d28e017ac89ab89e9d languageName: node linkType: hard @@ -446,12 +446,12 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.12.11, @babel/parser@npm:^7.12.13, @babel/parser@npm:^7.12.7, @babel/parser@npm:^7.13.0, @babel/parser@npm:^7.13.4": - version: 7.13.9 - resolution: "@babel/parser@npm:7.13.9" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.12.11, @babel/parser@npm:^7.12.13, @babel/parser@npm:^7.12.7, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.13.4, @babel/parser@npm:^7.7.2": + version: 7.13.16 + resolution: "@babel/parser@npm:7.13.16" bin: parser: ./bin/babel-parser.js - checksum: de61d40db87a09a2bf230b06cd33121e25a650cf82efb3af7d348e9e5d5ca9426fa76f264eb7c9c5f16a11d17cf66adbe2f807d5a6126c370017ea4ca506fcea + checksum: 4f02b226686ad98684128d64082388c8af3a2cd0bb986e8eb0339235d99f9a6bb55ba225da953291d975f341fe6d5d5dc006706d515f999be5ad49dd99f815e3 languageName: node linkType: hard @@ -863,7 +863,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-typescript@npm:^7.12.13": +"@babel/plugin-syntax-typescript@npm:^7.12.13, @babel/plugin-syntax-typescript@npm:^7.7.2": version: 7.12.13 resolution: "@babel/plugin-syntax-typescript@npm:7.12.13" dependencies: @@ -1502,31 +1502,29 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.4.5": - version: 7.13.0 - resolution: "@babel/traverse@npm:7.13.0" +"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.4.5, @babel/traverse@npm:^7.7.2": + version: 7.13.17 + resolution: "@babel/traverse@npm:7.13.17" dependencies: "@babel/code-frame": ^7.12.13 - "@babel/generator": ^7.13.0 + "@babel/generator": ^7.13.16 "@babel/helper-function-name": ^7.12.13 "@babel/helper-split-export-declaration": ^7.12.13 - "@babel/parser": ^7.13.0 - "@babel/types": ^7.13.0 + "@babel/parser": ^7.13.16 + "@babel/types": ^7.13.17 debug: ^4.1.0 globals: ^11.1.0 - lodash: ^4.17.19 - checksum: e5d1b690157da325b5bea98e472f4df0fff16048242a70880e2da7939b005ccd5b63d2b4527e203cfc71a422da0fa513c0ad84114bff002d583ebd7dbd2c8576 + checksum: e50e3a97a5704ed76558c00a632fbbee888a864054772361323075f436b3e767b7441c53fec34333a0c5ed2a88b856c76de8770932a050bb6a1553ece998b0c1 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.13, @babel/types@npm:^7.12.17, @babel/types@npm:^7.12.7, @babel/types@npm:^7.13.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": - version: 7.13.0 - resolution: "@babel/types@npm:7.13.0" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.13, @babel/types@npm:^7.12.17, @babel/types@npm:^7.12.7, @babel/types@npm:^7.13.0, @babel/types@npm:^7.13.16, @babel/types@npm:^7.13.17, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.13.17 + resolution: "@babel/types@npm:7.13.17" dependencies: "@babel/helper-validator-identifier": ^7.12.11 - lodash: ^4.17.19 to-fast-properties: ^2.0.0 - checksum: a47357647a92c08ee2f5059210d37fd7fe190e8d4ef71dd97ba61c6ca7b7e979660bc8ba00fdc51249c037199b634dd984fde8d7a622fdd5e3e2161fe65e94c3 + checksum: d75193ea37008a039b2383f8ba3cbe492a092550c6656721f6aa76bd8565a9286b56165a0c82ea5a8423d6f65bd803eb2c73561a5fc7a098b97d19f692bc79a6 languageName: node linkType: hard @@ -2149,7 +2147,7 @@ __metadata: dependencies: "@jest/types": 26.6.2 eventemitter3: 4.0.7 - jest: 26.6.3 + jest: 27.0.0-next.8 tslib: 2.2.0 typescript: 4.2.2 peerDependencies: @@ -2193,8 +2191,8 @@ __metadata: "@foxglove/xmlrpc": "workspace:packages/xmlrpc" "@jest/types": 26.6.2 eventemitter3: 4.0.7 - jest: 26.6.3 - jest-circus: 26.6.3 + jest: 27.0.0-next.8 + jest-circus: 27.0.0-next.8 rosbag: "github:foxglove/rosbag.js#fc61125fbc01ff55698c5ed48987b2d9e7599572" tslib: 2.2.0 typescript: 4.2.2 @@ -2219,8 +2217,8 @@ __metadata: resolution: "@foxglove/velodyne-cloud@workspace:packages/velodyne-cloud" dependencies: "@jest/types": 26.6.2 - jest: 26.6.3 - jest-circus: 26.6.3 + jest: 27.0.0-next.8 + jest-circus: 27.0.0-next.8 kelonio: 0.6.0 rosbag: "github:foxglove/rosbag.js#fc61125fbc01ff55698c5ed48987b2d9e7599572" tslib: 2.2.0 @@ -2233,7 +2231,7 @@ __metadata: resolution: "@foxglove/wasm-bz2@workspace:packages/wasm-bz2" dependencies: "@types/emscripten": 1.39.4 - jest: 26.6.3 + jest: 27.0.0-next.8 languageName: unknown linkType: soft @@ -2245,8 +2243,8 @@ __metadata: "@jest/types": 26.6.2 "@types/sax": ^1.2.1 byte-base64: 1.1.0 - jest: 26.6.3 - jest-circus: 26.6.3 + jest: 27.0.0-next.8 + jest-circus: 27.0.0-next.8 sax: 1.2.4 tslib: 2.2.0 typescript: 4.2.2 @@ -2275,102 +2273,108 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/console@npm:26.6.2" +"@jest/console@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/console@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" chalk: ^4.0.0 - jest-message-util: ^26.6.2 - jest-util: ^26.6.2 + jest-message-util: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 slash: ^3.0.0 - checksum: 72920a893e4a622ce96786eb1d3f6ef0c88c9d1ec32fffbde4e25f582b5f1ccd5f5b7a370c0b1a4917fb74c046467f43422c0039c497df4b307527910759e0a5 + checksum: 21362d8f9f27822b3c3aa5407b4f0e38b73a3d1cce8d16d9ca5d15c53deb2a47d35cbbfc7993f1bd2ad06e90b67ad50b16032ff6ef86929b0b50970e24f0e7b1 languageName: node linkType: hard -"@jest/core@npm:^26.6.3": - version: 26.6.3 - resolution: "@jest/core@npm:26.6.3" +"@jest/core@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/core@npm:27.0.0-next.8" dependencies: - "@jest/console": ^26.6.2 - "@jest/reporters": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/console": ^27.0.0-next.8 + "@jest/reporters": ^27.0.0-next.8 + "@jest/test-result": ^27.0.0-next.8 + "@jest/transform": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 + emittery: ^0.8.1 exit: ^0.1.2 graceful-fs: ^4.2.4 - jest-changed-files: ^26.6.2 - jest-config: ^26.6.3 - jest-haste-map: ^26.6.2 - jest-message-util: ^26.6.2 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-resolve-dependencies: ^26.6.3 - jest-runner: ^26.6.3 - jest-runtime: ^26.6.3 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - jest-watcher: ^26.6.2 - micromatch: ^4.0.2 + jest-changed-files: ^27.0.0-next.8 + jest-config: ^27.0.0-next.8 + jest-haste-map: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + jest-resolve: ^27.0.0-next.8 + jest-resolve-dependencies: ^27.0.0-next.8 + jest-runner: ^27.0.0-next.8 + jest-runtime: ^27.0.0-next.8 + jest-snapshot: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-validate: ^27.0.0-next.8 + jest-watcher: ^27.0.0-next.8 + micromatch: ^4.0.4 p-each-series: ^2.1.0 rimraf: ^3.0.0 slash: ^3.0.0 strip-ansi: ^6.0.0 - checksum: e0d35e40fcbda21997dbc126722db92f8d534926c9bcf4a30ee79aa772e40ead2fefd405866e3364bff7ee50b12f03705c3fea5491b77807091961b2c3a0d65e + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: 8efa2817bc345c2164d5f61403b4fd2d26ed61c3e78f374a1b8404169ae83734f4584a73ba6eb523b1b1c4a1cf59a8fcf946e2fcefc093dd226952e292241709 languageName: node linkType: hard -"@jest/environment@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/environment@npm:26.6.2" +"@jest/environment@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/environment@npm:27.0.0-next.8" dependencies: - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/fake-timers": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" - jest-mock: ^26.6.2 - checksum: a4f426546801e79d2f5d1a516d80c330ccbe1638f7a7705f65110ac33f8a3ded08ccef75ad648610618122f2bfeba34e0c1e616eccc219a315956d63ff30d8fc + jest-mock: ^27.0.0-next.8 + checksum: dde346f855618187dbd7682c52014e150973223bff31ec6fbf679319c812bbeae356d5e61b80bbc47576612be7a6367e32623268b1bf8be82118b4019f778b9f languageName: node linkType: hard -"@jest/fake-timers@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/fake-timers@npm:26.6.2" +"@jest/fake-timers@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/fake-timers@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 - "@sinonjs/fake-timers": ^6.0.1 + "@jest/types": ^27.0.0-next.8 + "@sinonjs/fake-timers": ^7.0.2 "@types/node": "*" - jest-message-util: ^26.6.2 - jest-mock: ^26.6.2 - jest-util: ^26.6.2 - checksum: a82aa6d2f31d5e9958484b32e4714cb2ebca6ce6baf590c29505c8eea638663bf27f27b98a30ab574023cb15ecffbe70dc75d14694d76c4ccc78bee37d2ec1d1 + jest-message-util: ^27.0.0-next.8 + jest-mock: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + checksum: 3163daa842e3f4d0c5150062a34ecacfbc3e23d53752f957c1986845db3be3ada22144c413cfdf8528309dff29960c33791accf837f7000d71a408e5efdec39f languageName: node linkType: hard -"@jest/globals@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/globals@npm:26.6.2" +"@jest/globals@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/globals@npm:27.0.0-next.8" dependencies: - "@jest/environment": ^26.6.2 - "@jest/types": ^26.6.2 - expect: ^26.6.2 - checksum: d8f68a24adf87f6e32ba34ec884502ec067ed79a2855852ed64daa50383a53daf2b97487dd049e77c6fd6cade28b32f8cad4f0a2d02ce6b8aa23f95a136db8a7 + "@jest/environment": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 + expect: ^27.0.0-next.8 + checksum: 365886e38e7edccd11ed74580a0cecf3dda9601dfa8756a5018b473fe4bd7abc30564c92523870c77582eec0e1886083597a4666194259fba2b91844078e77e3 languageName: node linkType: hard -"@jest/reporters@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/reporters@npm:26.6.2" +"@jest/reporters@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/reporters@npm:27.0.0-next.8" dependencies: "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/console": ^27.0.0-next.8 + "@jest/test-result": ^27.0.0-next.8 + "@jest/transform": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 chalk: ^4.0.0 collect-v8-coverage: ^1.0.0 exit: ^0.1.2 @@ -2381,56 +2385,57 @@ __metadata: istanbul-lib-report: ^3.0.0 istanbul-lib-source-maps: ^4.0.0 istanbul-reports: ^3.0.2 - jest-haste-map: ^26.6.2 - jest-resolve: ^26.6.2 - jest-util: ^26.6.2 - jest-worker: ^26.6.2 - node-notifier: ^8.0.0 + jest-haste-map: ^27.0.0-next.8 + jest-resolve: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-worker: ^27.0.0-next.8 slash: ^3.0.0 source-map: ^0.6.0 string-length: ^4.0.1 terminal-link: ^2.0.0 v8-to-istanbul: ^7.0.0 - dependenciesMeta: + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 + peerDependenciesMeta: node-notifier: optional: true - checksum: 86ed8563dd4862de79c1b4f2e529a9a471d856b44aa66069c91b406d4c32ea70d909757797f99fc8d14a7eb2bd95286bd716346e289a92dba243e4b9eddef537 + checksum: 9b12d5f6fc0b19c7c98e61a8bd208ac44d8f54351437f0fe3b5296db6a176cb7db1f0c340684d75959501adb57f890d5f8c52bbea6f7cf0d0a93fec4265a2f0c languageName: node linkType: hard -"@jest/source-map@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/source-map@npm:26.6.2" +"@jest/source-map@npm:^27.0.0-next.3": + version: 27.0.0-next.3 + resolution: "@jest/source-map@npm:27.0.0-next.3" dependencies: callsites: ^3.0.0 graceful-fs: ^4.2.4 source-map: ^0.6.0 - checksum: 9a6d3e650660229fadfcf4d9789cdf99d645d3827b05cbce7676f39d19af2ab00cca728420ef188cf44b92289e06e2a5f3e5299085e3ae080cc0472ea1fa4cc9 + checksum: 359598f7458d13182c42d72a54c5eeefee7f6793cfe0319a5c802b7cc8036e0b7e8aeac2bb901bb7af4de5df891beaf6c432fb21152f004fd4d53b1850bf7dd1 languageName: node linkType: hard -"@jest/test-result@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/test-result@npm:26.6.2" +"@jest/test-result@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/test-result@npm:27.0.0-next.8" dependencies: - "@jest/console": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/console": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/istanbul-lib-coverage": ^2.0.0 collect-v8-coverage: ^1.0.0 - checksum: 0ecd35212bb19f2dee97d795193897780729c446739715a52cb37ed248020ad6a32bc2e9563812f56028be19c651237403c7dfec9ed967f443d9afcc385dd9dc + checksum: 58c1be413c217708e002ba1229cb20121f8197134eb0da7fa9439efaa854af5d1de35eb09b623ac50f63629712c769b8bb907f82a4e8d5a65ae072dcc7322c53 languageName: node linkType: hard -"@jest/test-sequencer@npm:^26.6.3": - version: 26.6.3 - resolution: "@jest/test-sequencer@npm:26.6.3" +"@jest/test-sequencer@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/test-sequencer@npm:27.0.0-next.8" dependencies: - "@jest/test-result": ^26.6.2 + "@jest/test-result": ^27.0.0-next.8 graceful-fs: ^4.2.4 - jest-haste-map: ^26.6.2 - jest-runner: ^26.6.3 - jest-runtime: ^26.6.3 - checksum: c0c2c7917a0b6e25414b0ed570701c9cd5b2ba18fe0c55ac3a2d53ccf6aeeaf7ec388c14c78d13c27c4a7e7ee87bdca52d09d820c0ebf80a3e7d47f3fc52e9ef + jest-haste-map: ^27.0.0-next.8 + jest-runner: ^27.0.0-next.8 + jest-runtime: ^27.0.0-next.8 + checksum: b1800a127f081a148ac52da1e7cf8a4feb0d22ba87015996ca787c78c2b02c63251e94a66f0de27bce4ad75a422f56725d845a1e89015d59c19a74be2a30e9f0 languageName: node linkType: hard @@ -2457,6 +2462,29 @@ __metadata: languageName: node linkType: hard +"@jest/transform@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/transform@npm:27.0.0-next.8" + dependencies: + "@babel/core": ^7.1.0 + "@jest/types": ^27.0.0-next.8 + babel-plugin-istanbul: ^6.0.0 + chalk: ^4.0.0 + convert-source-map: ^1.4.0 + fast-json-stable-stringify: ^2.0.0 + graceful-fs: ^4.2.4 + jest-haste-map: ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + jest-util: ^27.0.0-next.8 + micromatch: ^4.0.4 + pirates: ^4.0.1 + slash: ^3.0.0 + source-map: ^0.6.1 + write-file-atomic: ^3.0.0 + checksum: c54589f4c2fbac74af62b534549b60a401d5799e9cafa0d37cac7c8d1ff3e6cadb61e084ee6eb8cd2aa72536c62c4591e126784a546baf4eb67104b114389acd + languageName: node + linkType: hard + "@jest/types@npm:26.6.2, @jest/types@npm:^26.6.2": version: 26.6.2 resolution: "@jest/types@npm:26.6.2" @@ -2470,6 +2498,19 @@ __metadata: languageName: node linkType: hard +"@jest/types@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "@jest/types@npm:27.0.0-next.8" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^3.0.0 + "@types/node": "*" + "@types/yargs": ^16.0.0 + chalk: ^4.0.0 + checksum: 4c9a6b4cb4863d12ad70f4fd4528cce2d7f7e5cd628a2c589504f85c6185047440dbc857b95a0ad02a4971ef8097e81e449656e6fa2037fbd5ebe89348a1ad75 + languageName: node + linkType: hard + "@malept/cross-spawn-promise@npm:^1.1.0": version: 1.1.1 resolution: "@malept/cross-spawn-promise@npm:1.1.1" @@ -3058,12 +3099,12 @@ __metadata: languageName: node linkType: hard -"@sinonjs/fake-timers@npm:^6.0.1": - version: 6.0.1 - resolution: "@sinonjs/fake-timers@npm:6.0.1" +"@sinonjs/fake-timers@npm:^7.0.2": + version: 7.0.5 + resolution: "@sinonjs/fake-timers@npm:7.0.5" dependencies: "@sinonjs/commons": ^1.7.0 - checksum: 64458b908773638dda08b555a00e6fbbbc679735348291dc1b7f437ada2f60242537fdc48e4ee82d2573d86984ec87e755b66a96c0ed9ebf0f46b4c6687ccde2 + checksum: 5cc43301d3d46affdace077854ecffd299b80ab3a438bf34f21b6d6d27e0be636ba475397d12fd5b8561bd30679d0597f9d7e8b5e0c82ad57a6c9b49e366e9b4 languageName: node linkType: hard @@ -4107,16 +4148,16 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.7": - version: 7.1.12 - resolution: "@types/babel__core@npm:7.1.12" +"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": + version: 7.1.14 + resolution: "@types/babel__core@npm:7.1.14" dependencies: "@babel/parser": ^7.1.0 "@babel/types": ^7.0.0 "@types/babel__generator": "*" "@types/babel__template": "*" "@types/babel__traverse": "*" - checksum: e2642b77b89af41254a19d85b6cc5b1096f9825aa2b6534d5426cee7fbf6d90cfeceb5c1621f233d32dc1925a9fe88c317e412f81a061cf7239dbd4e2dd413e4 + checksum: e0212770e1cd520b8ad241642e9f99ef20b5c609c157ffe154c42e136c85f3c3f598ad7bfd452fda8abb304c483d6bce92de0b8ed0612f9f1c57b6c4a18da7b3 languageName: node linkType: hard @@ -4505,13 +4546,13 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:26.x": - version: 26.0.20 - resolution: "@types/jest@npm:26.0.20" +"@types/jest@npm:26.0.22": + version: 26.0.22 + resolution: "@types/jest@npm:26.0.22" dependencies: jest-diff: ^26.0.0 pretty-format: ^26.0.0 - checksum: 221e39c7c9ce8d71ae4b2ba6abeef1a5b04f1cd96419b9fbbb65534bef4c4215b650561183073dcf47584ff1888d1f4fa7d2af2a38492b7feb9a3bfdcd24c44f + checksum: 4c98ed058522f6cc74bcb47b8b7b104b77b2d4e42e087171f3d2d3ae5338c21f43ec26f2a186bc229c1bd72c3f776ad07faba837f0ec27f22cf94e154516c0b3 languageName: node linkType: hard @@ -4719,7 +4760,7 @@ __metadata: languageName: node linkType: hard -"@types/prettier@npm:2.2.3, @types/prettier@npm:^2.0.0": +"@types/prettier@npm:2.2.3, @types/prettier@npm:^2.1.5": version: 2.2.3 resolution: "@types/prettier@npm:2.2.3" checksum: b7e80288f9f776caca84391a7a217b8baac6b4fce00bb9701af69299d465cb8faf17466f0af0803970c74d2c191767ca729a6d21a2f7e2ce552d1ef6cc0d653a @@ -5199,6 +5240,15 @@ __metadata: languageName: node linkType: hard +"@types/yargs@npm:^16.0.0": + version: 16.0.1 + resolution: "@types/yargs@npm:16.0.1" + dependencies: + "@types/yargs-parser": "*" + checksum: 7b141b6a9efe2da5af054b022f2fbfa3a34d664f1db384babc567b20e9935ac18924c8075780ea22f5e0da4f5714f24dc27b05b6475cd060031648f154183a45 + languageName: node + linkType: hard + "@types/yauzl@npm:^2.9.1": version: 2.9.1 resolution: "@types/yauzl@npm:2.9.1" @@ -6111,6 +6161,13 @@ __metadata: languageName: node linkType: hard +"ansi-styles@npm:^5.0.0": + version: 5.2.0 + resolution: "ansi-styles@npm:5.2.0" + checksum: 10b01465c7a49cbfcc055188e3b79b00db6283319bb53c0d20ca9ad114d1477d6f48c1d01a3ed9678f616566ec33f11116926dfaa162fa7be9ee7d5d2c2ea7e1 + languageName: node + linkType: hard + "ansi-to-html@npm:^0.6.11": version: 0.6.14 resolution: "ansi-to-html@npm:0.6.14" @@ -6663,21 +6720,21 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^26.6.3": - version: 26.6.3 - resolution: "babel-jest@npm:26.6.3" +"babel-jest@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "babel-jest@npm:27.0.0-next.8" dependencies: - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/babel__core": ^7.1.7 + "@jest/transform": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 + "@types/babel__core": ^7.1.14 babel-plugin-istanbul: ^6.0.0 - babel-preset-jest: ^26.6.2 + babel-preset-jest: ^27.0.0-next.3 chalk: ^4.0.0 graceful-fs: ^4.2.4 slash: ^3.0.0 peerDependencies: - "@babel/core": ^7.0.0 - checksum: 89231d00e6b73e1dc6f009cb97a74edb1af4426f2cfa5d9b71684d1382526651820f8dd301857b9007a44c6b7d1fb77242b201bdea3cff98488b893e9c7d7182 + "@babel/core": ^7.8.0 + checksum: 7080a47fd8d79f1018ebf64b28bfae99a286ed9d4c5db6586595444846b379c1b82fce0379565ad8c50550416a69f17a53c99a3c75bf7d878933503ee833f581 languageName: node linkType: hard @@ -6764,15 +6821,15 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^26.6.2": - version: 26.6.2 - resolution: "babel-plugin-jest-hoist@npm:26.6.2" +"babel-plugin-jest-hoist@npm:^27.0.0-next.3": + version: 27.0.0-next.3 + resolution: "babel-plugin-jest-hoist@npm:27.0.0-next.3" dependencies: "@babel/template": ^7.3.3 "@babel/types": ^7.3.3 "@types/babel__core": ^7.0.0 "@types/babel__traverse": ^7.0.6 - checksum: e9c1de0fced1c8220590a0d6f37631f5b975964a8e876f0426fc7fd224f4c154b01f156e87401de47556b873bf4414eb2a9632fb56765f35fc07fe69e5b76d31 + checksum: c419256eeb20541b73dafbcc8f9fc31cbcab2e58f303a893c211d0cff11759d8452b0ecf21e3ed67f826313fc40d736b86ab9d1942704fc0387f43832ba44bd5 languageName: node linkType: hard @@ -6918,15 +6975,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^26.6.2": - version: 26.6.2 - resolution: "babel-preset-jest@npm:26.6.2" +"babel-preset-jest@npm:^27.0.0-next.3": + version: 27.0.0-next.3 + resolution: "babel-preset-jest@npm:27.0.0-next.3" dependencies: - babel-plugin-jest-hoist: ^26.6.2 + babel-plugin-jest-hoist: ^27.0.0-next.3 babel-preset-current-node-syntax: ^1.0.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 466ca17bba2638cadda5c25f3108dab1867b30e5d728366d0d2309be5d6555db8738a6cacd2c43284bee2ce7917e3285194c223a22b3d9817794f00c2775fdb2 + checksum: 7476a0ac7320af3f42dacb33af5b8ed604bd2d97ae765d88ac21a96120f25ffca884494540e288b0fcd460639e0def8ceb21c561b6e8c7c2ab411174bb6da17f languageName: node linkType: hard @@ -8081,6 +8138,13 @@ __metadata: languageName: node linkType: hard +"ci-info@npm:^3.1.1": + version: 3.1.1 + resolution: "ci-info@npm:3.1.1" + checksum: 417d2bf17c320d477bc32997d3831bcc1b174d6b48616c2f0463765f042f073bfbfb15e06abdeea55b05ca9c8e054057eb9e0672e4e6031457e87216b2faddda + languageName: node + linkType: hard + "cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3": version: 1.0.4 resolution: "cipher-base@npm:1.0.4" @@ -8100,10 +8164,10 @@ __metadata: languageName: node linkType: hard -"cjs-module-lexer@npm:^0.6.0": - version: 0.6.0 - resolution: "cjs-module-lexer@npm:0.6.0" - checksum: 333671db7fb916d9c569a52fba714a86051881c69a4df784a07cb1dfec2a1796c7bcd7ba46ff9035cccb6e7aaff612a83f6505437c01a5ae14c4ebc6c36f762c +"cjs-module-lexer@npm:^1.0.0": + version: 1.1.1 + resolution: "cjs-module-lexer@npm:1.1.1" + checksum: d70f88eb7add9cb51b9634a4bea6ebcfb68aedb877312d7e7fbc7c786ed74ed0838eb05450a2acec68c70419d6f0481cb95d9b61bedf86a477e2bdbaaae6922c languageName: node linkType: hard @@ -8241,17 +8305,6 @@ __metadata: languageName: node linkType: hard -"cliui@npm:^6.0.0": - version: 6.0.0 - resolution: "cliui@npm:6.0.0" - dependencies: - string-width: ^4.2.0 - strip-ansi: ^6.0.0 - wrap-ansi: ^6.2.0 - checksum: e59d0642946dd300b1b002e69f43b32d55e682c84f6f2073705ffe77477b400aeabd4f4795467db0771a21d35ee070071f6a31925e4f83b52a7fe1f5c8e6e860 - languageName: node - linkType: hard - "cliui@npm:^7.0.2": version: 7.0.4 resolution: "cliui@npm:7.0.4" @@ -9816,6 +9869,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^27.0.0-next.0": + version: 27.0.0-next.0 + resolution: "diff-sequences@npm:27.0.0-next.0" + checksum: d0e0791a401993469a56c9ef6f9daca0c635979c428ffcfddf40aac8567f1db8e4830388328f63ddbab888b9ffd1ea5dd1b70cf8fd6906bc345c6a8c176fb938 + languageName: node + linkType: hard + "diff@npm:^4.0.1": version: 4.0.2 resolution: "diff@npm:4.0.2" @@ -10491,10 +10551,10 @@ __metadata: languageName: node linkType: hard -"emittery@npm:^0.7.1": - version: 0.7.2 - resolution: "emittery@npm:0.7.2" - checksum: 34acfef51922a1b73d75cb658bf43ecb279633b263ffa831fb87697abbbd3aa4241ef15d204eeaa6a3c62656bd7563de7145c416a2bb18c4805e54ce6d7cdac6 +"emittery@npm:^0.8.1": + version: 0.8.1 + resolution: "emittery@npm:0.8.1" + checksum: 1c9cd9a1045ce8e50e41b4433a6d3adf109cbb7585fe5d504399f2a035f423adb9b9bc6735aad672368575532007948d4483645e188fe99759c302a39542479d languageName: node linkType: hard @@ -11415,17 +11475,17 @@ __metadata: languageName: node linkType: hard -"expect@npm:^26.6.2": - version: 26.6.2 - resolution: "expect@npm:26.6.2" +"expect@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "expect@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 - ansi-styles: ^4.0.0 - jest-get-type: ^26.3.0 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-regex-util: ^26.0.0 - checksum: a4ec4cbafac8b05eb02a8af5f086dede84a3a701abbfdafeadca24a1d286bd07035b32b2864a6ff012a733009beb0b96c10469b40832c5ee0d2dd0bb6b50a5b0 + "@jest/types": ^27.0.0-next.8 + ansi-styles: ^5.0.0 + jest-get-type: ^27.0.0-next.0 + jest-matcher-utils: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + checksum: 2abec19388801c7c2a88858a745fe4171b4cb4d9bd70f8c93009e11749aa3874cce7e29db43cbb1d6b4e938b3dca0df3c2bd1352a6f0c67e61ac2b798f661f4b languageName: node linkType: hard @@ -12087,6 +12147,7 @@ __metadata: "@types/case-sensitive-paths-webpack-plugin": 2.1.5 "@types/circular-dependency-plugin": ^5.0.2 "@types/electron-devtools-installer": 2.2.0 + "@types/jest": 26.0.22 "@types/license-checker": ^25.0.1 "@types/nearley": 2.11.1 "@types/pngjs": ^6 @@ -12124,9 +12185,9 @@ __metadata: fake-indexeddb: 3.1.2 fork-ts-checker-webpack-plugin: 6.2.1 html-webpack-plugin: 5.3.1 - jest: 26.6.3 + jest: 27.0.0-next.8 jest-canvas-mock: 2.3.1 - jest-circus: 26.6.3 + jest-circus: 27.0.0-next.8 license-checker: 25.0.1 monaco-editor-webpack-plugin: 3.0.1 nearley: 2.20.1 @@ -12144,7 +12205,7 @@ __metadata: spectron: "https://github.com/foxglove/spectron.git#commit=7f88e8fe148ee14b3efc14c3646c08c4ed0a6747" string-replace-loader: 3.0.1 style-loader: 2.0.0 - ts-jest: 26.5.2 + ts-jest: 27.0.0-next.11 ts-loader: 8.1.0 ts-node: 9.1.1 typescript: 4.2.2 @@ -12281,7 +12342,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"fsevents@^2.1.2, fsevents@~2.3.1": +"fsevents@^2.1.2, fsevents@^2.2.1, fsevents@~2.3.1": version: 2.3.2 resolution: "fsevents@npm:2.3.2" dependencies: @@ -12300,7 +12361,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"fsevents@patch:fsevents@^2.1.2#builtin, fsevents@patch:fsevents@~2.3.1#builtin": +"fsevents@patch:fsevents@^2.1.2#builtin, fsevents@patch:fsevents@^2.2.1#builtin, fsevents@patch:fsevents@~2.3.1#builtin": version: 2.3.2 resolution: "fsevents@patch:fsevents@npm%3A2.3.2#builtin::version=2.3.2&hash=11e9ea" dependencies: @@ -12804,13 +12865,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"growly@npm:^1.3.0": - version: 1.3.0 - resolution: "growly@npm:1.3.0" - checksum: c87f7e8c785cac6ee60719c9d62f7d790a85dafa13d62c4667664e3a21ee771f5fd19df3f374d2f7bdf297b8f687cf70e19bb066aba4832e6f6caa5190812578 - languageName: node - linkType: hard - "gud@npm:^1.0.0": version: 1.0.0 resolution: "gud@npm:1.0.0" @@ -14029,6 +14083,17 @@ fsevents@^1.2.7: languageName: node linkType: hard +"is-ci@npm:^3.0.0": + version: 3.0.0 + resolution: "is-ci@npm:3.0.0" + dependencies: + ci-info: ^3.1.1 + bin: + is-ci: bin.js + checksum: 1e26d3ba6634ebee83f9d22f260354c5d950eada4d609c30cc2642069f8ba52f3aeb4c9bbf8099aaf04a2f44a1ed7beef2a24485f988753c8c078a57e9b3a2fd + languageName: node + linkType: hard + "is-core-module@npm:^2.2.0": version: 2.2.0 resolution: "is-core-module@npm:2.2.0" @@ -14721,101 +14786,105 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-changed-files@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-changed-files@npm:26.6.2" +"jest-changed-files@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-changed-files@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 - execa: ^4.0.0 - throat: ^5.0.0 - checksum: b15a1c524b32b16694aaa4b2823266b89b54dddbb7c37ed0fdea605ea79ee784ce1003dc6163aa041d47453dfa32e21a4ade56b464d58459cdaa8e2291c83d12 + "@jest/types": ^27.0.0-next.8 + execa: ^5.0.0 + throat: ^6.0.1 + checksum: 8f6bb05d2ac69798404a81ccdfe2a3f0a7ce35d6ce7efeaf43ad02833a17386174ef2cc6248e6253e6afaeca6a7a683d4cc3b737316c049c2b0e86144fa5f979 languageName: node linkType: hard -"jest-circus@npm:26.6.3": - version: 26.6.3 - resolution: "jest-circus@npm:26.6.3" +"jest-circus@npm:27.0.0-next.8, jest-circus@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-circus@npm:27.0.0-next.8" dependencies: - "@babel/traverse": ^7.1.0 - "@jest/environment": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/babel__traverse": ^7.0.4 + "@jest/environment": ^27.0.0-next.8 + "@jest/test-result": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" chalk: ^4.0.0 co: ^4.6.0 dedent: ^0.7.0 - expect: ^26.6.2 + expect: ^27.0.0-next.8 is-generator-fn: ^2.0.0 - jest-each: ^26.6.2 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-runner: ^26.6.3 - jest-runtime: ^26.6.3 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - pretty-format: ^26.6.2 - stack-utils: ^2.0.2 - throat: ^5.0.0 - checksum: 8ef70b1ccd0837d19131889fcf4e7ed4d6f051a9140be71eb3536dd98d80ab4ab31dd5d445300f08f6e8d0bd6588e77159d53ea4fda808c5e55eb464755d1837 - languageName: node - linkType: hard - -"jest-cli@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-cli@npm:26.6.3" - dependencies: - "@jest/core": ^26.6.3 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 + jest-each: ^27.0.0-next.8 + jest-matcher-utils: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-runner: ^27.0.0-next.8 + jest-runtime: ^27.0.0-next.8 + jest-snapshot: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + pretty-format: ^27.0.0-next.8 + stack-utils: ^2.0.3 + throat: ^6.0.1 + checksum: a7e64ec4067713110f756d7a887e4edcde31bb979c3472735847cdb7efa178e9c055cacf15ad7feed98cffb9f2b04d4a8351139b1904de713fa367ecac9e80cb + languageName: node + linkType: hard + +"jest-cli@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-cli@npm:27.0.0-next.8" + dependencies: + "@jest/core": ^27.0.0-next.8 + "@jest/test-result": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 chalk: ^4.0.0 exit: ^0.1.2 graceful-fs: ^4.2.4 import-local: ^3.0.2 - is-ci: ^2.0.0 - jest-config: ^26.6.3 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 + is-ci: ^3.0.0 + jest-config: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-validate: ^27.0.0-next.8 prompts: ^2.0.1 - yargs: ^15.4.1 + yargs: ^16.0.3 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 + peerDependenciesMeta: + node-notifier: + optional: true bin: jest: bin/jest.js - checksum: 2d32e7e4b2802d230625cb041630abe25a8764fcea6a8ecf46a5ad68f23bd1498e5297bc43d1ba714832d433de6676d2bd3ac93d0fecec230665fe8421f23863 + checksum: a9e02c425d6c04a55e5459ebdc1a4e1192c713e6c7cbd601266b093b3b3b2ff6e385eb58304cc768bee77b169bad46f7e816c67d33646b963a5ff02af68afcad languageName: node linkType: hard -"jest-config@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-config@npm:26.6.3" +"jest-config@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-config@npm:27.0.0-next.8" dependencies: "@babel/core": ^7.1.0 - "@jest/test-sequencer": ^26.6.3 - "@jest/types": ^26.6.2 - babel-jest: ^26.6.3 + "@jest/test-sequencer": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 + babel-jest: ^27.0.0-next.8 chalk: ^4.0.0 deepmerge: ^4.2.2 glob: ^7.1.1 graceful-fs: ^4.2.4 - jest-environment-jsdom: ^26.6.2 - jest-environment-node: ^26.6.2 - jest-get-type: ^26.3.0 - jest-jasmine2: ^26.6.3 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - micromatch: ^4.0.2 - pretty-format: ^26.6.2 + jest-circus: ^27.0.0-next.8 + jest-environment-jsdom: ^27.0.0-next.8 + jest-environment-node: ^27.0.0-next.8 + jest-get-type: ^27.0.0-next.0 + jest-jasmine2: ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + jest-resolve: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-validate: ^27.0.0-next.8 + micromatch: ^4.0.4 + pretty-format: ^27.0.0-next.8 peerDependencies: ts-node: ">=9.0.0" peerDependenciesMeta: ts-node: optional: true - checksum: 974e7690bab003cc204906802107b6a38a32bcb2033bf738bdecc6d8ee5b536b4ca11d65c8a511ad0e730ec631651d666787ffcaf86365869dcceacb06d4e875 + checksum: 3c8719b1e6aa0c7154cdfc5f52ed88e17a7928c789deaffc45331f9d886774af407899e734fdff9fa5320e437f8c3261874876ec62e71a61fa38bd5ba048cccc languageName: node linkType: hard -"jest-diff@npm:^26.0.0, jest-diff@npm:^26.6.2": +"jest-diff@npm:^26.0.0": version: 26.6.2 resolution: "jest-diff@npm:26.6.2" dependencies: @@ -14827,54 +14896,66 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-docblock@npm:^26.0.0": - version: 26.0.0 - resolution: "jest-docblock@npm:26.0.0" +"jest-diff@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-diff@npm:27.0.0-next.8" + dependencies: + chalk: ^4.0.0 + diff-sequences: ^27.0.0-next.0 + jest-get-type: ^27.0.0-next.0 + pretty-format: ^27.0.0-next.8 + checksum: 7b2e1da8cdf8c85b7fd94bc0f20bb0d7d777d7aae64992bc9c3391a30b78888fd6e182e40d2d5b13f3502ec65bb0c7416e807a71ccbf86a6401c1ebe0f260f73 + languageName: node + linkType: hard + +"jest-docblock@npm:^27.0.0-next.0": + version: 27.0.0-next.0 + resolution: "jest-docblock@npm:27.0.0-next.0" dependencies: detect-newline: ^3.0.0 - checksum: 54b8ea1c8445a4b15e9ee5035f1bd60b0d492b87258995133a1b5df43a07803c93b54e8adaa45eae05778bd61ad57745491c625e7aa65198a9aa4f0c79030b56 + checksum: 37bf56632a5ce39f1c90ed8920b9cc4c449aafb6166d1bdaf37474ffc3da79708b9c9b954731e0181005aacddbe446ca0444b3c620f3973f72ad4e270c9fa634 languageName: node linkType: hard -"jest-each@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-each@npm:26.6.2" +"jest-each@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-each@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 chalk: ^4.0.0 - jest-get-type: ^26.3.0 - jest-util: ^26.6.2 - pretty-format: ^26.6.2 - checksum: 628eaeca647adb4d6cf75bdc17c9ceb8cbcbb6921d838a583cd4de3db188e3e49b62209e3a0703f1281db379d1b2c07254900e5d97e85d61dd193d7b40361d3a + jest-get-type: ^27.0.0-next.0 + jest-util: ^27.0.0-next.8 + pretty-format: ^27.0.0-next.8 + checksum: d6215138c7f312ee0d092d552f5a0b82290f109a6653587626f7e0cfb05c24932a8754f6bf4c22a13f6d260473899f01b7587d9d7f15006a32f92afc130cbdb7 languageName: node linkType: hard -"jest-environment-jsdom@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-environment-jsdom@npm:26.6.2" +"jest-environment-jsdom@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-environment-jsdom@npm:27.0.0-next.8" dependencies: - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/environment": ^27.0.0-next.8 + "@jest/fake-timers": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" - jest-mock: ^26.6.2 - jest-util: ^26.6.2 + jest-mock: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 jsdom: ^16.4.0 - checksum: 70af4860b71237274619cb93ebebf7da978ef086df2b6ad39ab23aba427b039e01e9c565afeee05f025d112d975252eee342a615416029b9b9a71ca7810b2a7d + checksum: 809216ce72f5809749c4cb5bba8feef7892e2c788e6770677893acd17c6a2f01f33437d72dd76211c36ebaee000a238728e86a15835117399513287a7d3de0d4 languageName: node linkType: hard -"jest-environment-node@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-environment-node@npm:26.6.2" +"jest-environment-node@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-environment-node@npm:27.0.0-next.8" dependencies: - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/environment": ^27.0.0-next.8 + "@jest/fake-timers": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" - jest-mock: ^26.6.2 - jest-util: ^26.6.2 - checksum: 68ea035d62b35faf1991c0a0a432c1d9547ce93949e9460761071748cbf4b1d818e47421df1eb7b15a3eda7c0846e284b4a5ece5d99122307a0ad742ea765a57 + jest-mock: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + checksum: 71edab6c93c809a9c654d0ad1604b352c50b378ed5a8c70594a50cd677f94f1d424e84f1cb194892b12d1d103cc75e61162c2096bfea002fee798c8d0ede4018 languageName: node linkType: hard @@ -14885,6 +14966,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"jest-get-type@npm:^27.0.0-next.0": + version: 27.0.0-next.0 + resolution: "jest-get-type@npm:27.0.0-next.0" + checksum: 0d5463b49dec78d7199056fd4456ce304a7ab7fc50b8f8b5e475025da7ee5d654b0967061555d33d8c42c3048962464ab73e7468f5a40bba6e59206e0a51bfcd + languageName: node + linkType: hard + "jest-haste-map@npm:^26.6.2": version: 26.6.2 resolution: "jest-haste-map@npm:26.6.2" @@ -14910,78 +14998,102 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-jasmine2@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-jasmine2@npm:26.6.3" +"jest-haste-map@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-haste-map@npm:27.0.0-next.8" + dependencies: + "@jest/types": ^27.0.0-next.8 + "@types/graceful-fs": ^4.1.2 + "@types/node": "*" + anymatch: ^3.0.3 + fb-watchman: ^2.0.0 + fsevents: ^2.2.1 + graceful-fs: ^4.2.4 + jest-regex-util: ^27.0.0-next.0 + jest-serializer: ^27.0.0-next.0 + jest-util: ^27.0.0-next.8 + jest-worker: ^27.0.0-next.8 + micromatch: ^4.0.4 + walker: ^1.0.7 + dependenciesMeta: + fsevents: + optional: true + checksum: 9976db79cfaec1da46f91d417c26d60100be33d2b0e8fecb82310ebc5109aec74c45a5f6b23e26a9a976028a85d8a0f866896bdc24645e6b68fbb44508c67ba0 + languageName: node + linkType: hard + +"jest-jasmine2@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-jasmine2@npm:27.0.0-next.8" dependencies: "@babel/traverse": ^7.1.0 - "@jest/environment": ^26.6.2 - "@jest/source-map": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/environment": ^27.0.0-next.8 + "@jest/source-map": ^27.0.0-next.3 + "@jest/test-result": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" chalk: ^4.0.0 co: ^4.6.0 - expect: ^26.6.2 + expect: ^27.0.0-next.8 is-generator-fn: ^2.0.0 - jest-each: ^26.6.2 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-runtime: ^26.6.3 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - pretty-format: ^26.6.2 - throat: ^5.0.0 - checksum: 18b15901f8eea23cb77b45dab7bbd9c9c15f6329516c4e5ccc36dff82153b9f992f7de264db45390a1a06b5cf730f073a9c49ed7b8905f7289c6f8055e8f7459 + jest-each: ^27.0.0-next.8 + jest-matcher-utils: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-runtime: ^27.0.0-next.8 + jest-snapshot: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + pretty-format: ^27.0.0-next.8 + throat: ^6.0.1 + checksum: af97b14e54eea20f5c19fbac3b1e44a5df6b3e9fd5ec00918f6457c27afbc0db328e39e572ab3c5e4e00a3a6e362d0427576bd70703c942a3609c002fcb24bd6 languageName: node linkType: hard -"jest-leak-detector@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-leak-detector@npm:26.6.2" +"jest-leak-detector@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-leak-detector@npm:27.0.0-next.8" dependencies: - jest-get-type: ^26.3.0 - pretty-format: ^26.6.2 - checksum: 08c1bbb628c46d22bead4de7bcbe6a4c9d5761d55f15a1d938b9409473eeb6175545ebade44318f9ae950fcdf484e1cbffbbcdcce8600b946e21300d7d1ed206 + jest-get-type: ^27.0.0-next.0 + pretty-format: ^27.0.0-next.8 + checksum: 149b3950a48b22f07df227a593a6e20a8bb3037a1c7342b26f4ea83ebaf4fff913ec2b1a098eb7b596e7fe6566de744d677897917160e198688e99c824d3e081 languageName: node linkType: hard -"jest-matcher-utils@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-matcher-utils@npm:26.6.2" +"jest-matcher-utils@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-matcher-utils@npm:27.0.0-next.8" dependencies: chalk: ^4.0.0 - jest-diff: ^26.6.2 - jest-get-type: ^26.3.0 - pretty-format: ^26.6.2 - checksum: c6db72f19e90d8c3b3f949bc174e4a1b95db5973080eaf716b69df0069faa9b9da2de4502cf9b5c1376387b49705611259f45f04efb7dfc3deb72bcf3602a6a1 + jest-diff: ^27.0.0-next.8 + jest-get-type: ^27.0.0-next.0 + pretty-format: ^27.0.0-next.8 + checksum: e81cf62924a2160aea53da65847c3524321565762e0a0bdbd7c9978dc15e7b23a2809eee063790d75699fb92049488293873e10fe323135b023219645851b42f languageName: node linkType: hard -"jest-message-util@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-message-util@npm:26.6.2" +"jest-message-util@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-message-util@npm:27.0.0-next.8" dependencies: - "@babel/code-frame": ^7.0.0 - "@jest/types": ^26.6.2 + "@babel/code-frame": ^7.12.13 + "@jest/types": ^27.0.0-next.8 "@types/stack-utils": ^2.0.0 chalk: ^4.0.0 graceful-fs: ^4.2.4 - micromatch: ^4.0.2 - pretty-format: ^26.6.2 + micromatch: ^4.0.4 + pretty-format: ^27.0.0-next.8 slash: ^3.0.0 - stack-utils: ^2.0.2 - checksum: 7a47773259e5bb431e3dba44321fd75d9e3264b12fc4fe584378053a8b065c61d1c7d07625c8e2c432ccf2d7f0dc68a9f6547bc62d0d558b8e5da0e82f824ecd + stack-utils: ^2.0.3 + checksum: f696f43b95cbe380de25f5c47ed67a2f15004920a28829f52032a205eccb31744051358f95e052e89750cc2d80f3400690b5e97ff4d80fd43f6b028a45d889db languageName: node linkType: hard -"jest-mock@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-mock@npm:26.6.2" +"jest-mock@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-mock@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" - checksum: 98e658beca866a5391fd5c0503a985a928231fd0652dea31809efa706a043ac4c4559769215ba8c8d0cde758f5c5463fbf99f233441e82641cace68023308fb6 + checksum: 628e50998cc14d86d8107d4024dc92bad52742e5afd4d61b564ff703dd049c16e99d816312b48daffbd4f6a022ea5210846ec8e2a61fa2d90597aa48095fd931 languageName: node linkType: hard @@ -15004,95 +15116,100 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-resolve-dependencies@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-resolve-dependencies@npm:26.6.3" +"jest-regex-util@npm:^27.0.0-next.0": + version: 27.0.0-next.0 + resolution: "jest-regex-util@npm:27.0.0-next.0" + checksum: 86681c00ba385e0050a48bf0f3a0606713cb5b9b71628d17529437bc258f3675ac70617bf3aec1da05956652ba67d654b985699bdbad88737a47a834b3a1985a + languageName: node + linkType: hard + +"jest-resolve-dependencies@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-resolve-dependencies@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 - jest-regex-util: ^26.0.0 - jest-snapshot: ^26.6.2 - checksum: 72e7a200c404197f1c06aff7faa77de13e12c2bfdc1a0a6bd9f8b96cd23317b64e2b614a26b67beece86d51249c3ec7dbeb3dfe17d284930307cd769712ace25 + "@jest/types": ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + jest-snapshot: ^27.0.0-next.8 + checksum: 52fa1735f874166f3f8bf0b6c39708e4b65f45296641c5f039eb764fe5454c67d090660f19a61bcb336edeb04c717226bc13e6969730542d135f6d635ca4dd1a languageName: node linkType: hard -"jest-resolve@npm:26.6.2, jest-resolve@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-resolve@npm:26.6.2" +"jest-resolve@npm:27.0.0-next.8, jest-resolve@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-resolve@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 chalk: ^4.0.0 + escalade: ^3.1.1 graceful-fs: ^4.2.4 jest-pnp-resolver: ^1.2.2 - jest-util: ^26.6.2 - read-pkg-up: ^7.0.1 - resolve: ^1.18.1 + jest-util: ^27.0.0-next.8 + resolve: ^1.20.0 slash: ^3.0.0 - checksum: 61e8884462b4bcdaa26dc8544b497f2e2dae0b0701c363d433afb482c7f2faa6d0ce691250ad64eddb7fff552dc025315c388e0449411c1522a4dd013cbe49ae + checksum: 7da5990797461dad2283e5f6f16d7dd9985b7ad5dca17b5a490a7cecba21680963474637f8e745d35478f2b0aa93ddd75da0f696196456fa791ded860eb32401 languageName: node linkType: hard -"jest-runner@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-runner@npm:26.6.3" +"jest-runner@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-runner@npm:27.0.0-next.8" dependencies: - "@jest/console": ^26.6.2 - "@jest/environment": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/console": ^27.0.0-next.8 + "@jest/environment": ^27.0.0-next.8 + "@jest/test-result": ^27.0.0-next.8 + "@jest/transform": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" chalk: ^4.0.0 - emittery: ^0.7.1 + emittery: ^0.8.1 exit: ^0.1.2 graceful-fs: ^4.2.4 - jest-config: ^26.6.3 - jest-docblock: ^26.0.0 - jest-haste-map: ^26.6.2 - jest-leak-detector: ^26.6.2 - jest-message-util: ^26.6.2 - jest-resolve: ^26.6.2 - jest-runtime: ^26.6.3 - jest-util: ^26.6.2 - jest-worker: ^26.6.2 + jest-config: ^27.0.0-next.8 + jest-docblock: ^27.0.0-next.0 + jest-haste-map: ^27.0.0-next.8 + jest-leak-detector: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-resolve: ^27.0.0-next.8 + jest-runtime: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-worker: ^27.0.0-next.8 source-map-support: ^0.5.6 - throat: ^5.0.0 - checksum: 7cac133ccfb4df461d32f536e7593c21e03b9b01fc97582f51b8487e673648444fe59ea3a96f1f6afddddecf62be86b1d8249723e3a3575cc04fa95f07a163c7 + throat: ^6.0.1 + checksum: 2ceef45e1951dbb90959fec456ef1bb82065c6789aebc0a93db1efd757d8cc9620f8e0304073ef8a1298d7c72c23486537d8dd39de9803dff7cae9834adfc9a9 languageName: node linkType: hard -"jest-runtime@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-runtime@npm:26.6.3" +"jest-runtime@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-runtime@npm:27.0.0-next.8" dependencies: - "@jest/console": ^26.6.2 - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/globals": ^26.6.2 - "@jest/source-map": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/yargs": ^15.0.0 + "@jest/console": ^27.0.0-next.8 + "@jest/environment": ^27.0.0-next.8 + "@jest/fake-timers": ^27.0.0-next.8 + "@jest/globals": ^27.0.0-next.8 + "@jest/source-map": ^27.0.0-next.3 + "@jest/test-result": ^27.0.0-next.8 + "@jest/transform": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 + "@types/yargs": ^16.0.0 chalk: ^4.0.0 - cjs-module-lexer: ^0.6.0 + cjs-module-lexer: ^1.0.0 collect-v8-coverage: ^1.0.0 exit: ^0.1.2 glob: ^7.1.3 graceful-fs: ^4.2.4 - jest-config: ^26.6.3 - jest-haste-map: ^26.6.2 - jest-message-util: ^26.6.2 - jest-mock: ^26.6.2 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 + jest-haste-map: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-mock: ^27.0.0-next.8 + jest-regex-util: ^27.0.0-next.0 + jest-resolve: ^27.0.0-next.8 + jest-snapshot: ^27.0.0-next.8 + jest-util: ^27.0.0-next.8 + jest-validate: ^27.0.0-next.8 slash: ^3.0.0 strip-bom: ^4.0.0 - yargs: ^15.4.1 - bin: - jest-runtime: bin/jest-runtime.js - checksum: 5ef4ceaefb0cd8c140d58d2d4f660467cb6581d17622789d1c0bf1576fded6a9e0e831c3bb8b3f528ec81279f3fb38a6fb71e1d1a8960d7cdc8e048d33b71c32 + yargs: ^16.0.3 + checksum: bb2b5c441bdcd796d04a28484497cd5310aecef080ac381d86e6bd2a3a6bf7a7d3f0678eb0a37d41afd0950417a23a23f8ccfb81867ebf6265b63ef9f5541744 languageName: node linkType: hard @@ -15106,31 +15223,65 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-snapshot@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-snapshot@npm:26.6.2" +"jest-serializer@npm:^27.0.0-next.0": + version: 27.0.0-next.0 + resolution: "jest-serializer@npm:27.0.0-next.0" + dependencies: + "@types/node": "*" + graceful-fs: ^4.2.4 + checksum: 6212465e75292bfa2e964a42a21ba204b310fdb13f5e32ea9db614765f82e9f6f00e339ade0a35eaea17f8f6f163fe98089b3d87db761435a9153a7151645d10 + languageName: node + linkType: hard + +"jest-snapshot@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-snapshot@npm:27.0.0-next.8" dependencies: + "@babel/generator": ^7.7.2 + "@babel/parser": ^7.7.2 + "@babel/plugin-syntax-typescript": ^7.7.2 + "@babel/traverse": ^7.7.2 "@babel/types": ^7.0.0 - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 "@types/babel__traverse": ^7.0.4 - "@types/prettier": ^2.0.0 + "@types/prettier": ^2.1.5 + babel-preset-current-node-syntax: ^1.0.0 chalk: ^4.0.0 - expect: ^26.6.2 + expect: ^27.0.0-next.8 graceful-fs: ^4.2.4 - jest-diff: ^26.6.2 - jest-get-type: ^26.3.0 - jest-haste-map: ^26.6.2 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-resolve: ^26.6.2 + jest-diff: ^27.0.0-next.8 + jest-get-type: ^27.0.0-next.0 + jest-haste-map: ^27.0.0-next.8 + jest-matcher-utils: ^27.0.0-next.8 + jest-message-util: ^27.0.0-next.8 + jest-resolve: ^27.0.0-next.8 natural-compare: ^1.4.0 - pretty-format: ^26.6.2 + pretty-format: ^27.0.0-next.8 semver: ^7.3.2 - checksum: 9cf50bd7b7b31736f914ea71f8049ddf8a9ebcfdbb663d262ad55045f1dd74cb599152946844193503363b9fbb32ee84f882ceae5067181e1dac537846801ae7 + peerDependencies: + "@babel/core": ^7.7.2 + peerDependenciesMeta: + "@babel/core": + optional: true + checksum: 101bba8985a112c2fb50bc2714230270b08b94d73114eac9f9358825fcc2fc25d4dd7d278301d9c0bdd74ed2467677db49cf5bce7147f60c6caad7fe14842e60 + languageName: node + linkType: hard + +"jest-util@npm:27.0.0-next.8, jest-util@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-util@npm:27.0.0-next.8" + dependencies: + "@jest/types": ^27.0.0-next.8 + "@types/node": "*" + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + is-ci: ^3.0.0 + picomatch: ^2.2.3 + checksum: 291328109086f48132bf5d4fa0e63d739458586589a5b6edb65a1fdcdb7d56a99bbbbe210821c6c12e3d2974107c3008a33a9db4aa9a9ce80b79d3202599d204 languageName: node linkType: hard -"jest-util@npm:^26.1.0, jest-util@npm:^26.6.2": +"jest-util@npm:^26.6.2": version: 26.6.2 resolution: "jest-util@npm:26.6.2" dependencies: @@ -15144,32 +15295,32 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-validate@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-validate@npm:26.6.2" +"jest-validate@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-validate@npm:27.0.0-next.8" dependencies: - "@jest/types": ^26.6.2 + "@jest/types": ^27.0.0-next.8 camelcase: ^6.0.0 chalk: ^4.0.0 - jest-get-type: ^26.3.0 + jest-get-type: ^27.0.0-next.0 leven: ^3.1.0 - pretty-format: ^26.6.2 - checksum: b19fd33b8667a45fea08a56353189b70532ebe360a6ac2e2320eac5e047be410053dcb3a6bcfe99d5e580e03580710af722119268d26ad5185871f5bfa0f6ca2 + pretty-format: ^27.0.0-next.8 + checksum: abceb144ce803a5365b4a354923a88f3b341b0806068cdef858c4315212f6b59dbb9aed93dec0c490f4e726d781afa11eb9a304000810128c303878bfa67d52e languageName: node linkType: hard -"jest-watcher@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-watcher@npm:26.6.2" +"jest-watcher@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-watcher@npm:27.0.0-next.8" dependencies: - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 + "@jest/test-result": ^27.0.0-next.8 + "@jest/types": ^27.0.0-next.8 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 - jest-util: ^26.6.2 + jest-util: ^27.0.0-next.8 string-length: ^4.0.1 - checksum: d4a13c17c7b9bd98616d7a4ff087c0c16346038ba6b6db6f4a15acbce2ea9a9c7b8b873d174ade3f458c9ad5607f7cadd29309aa13f03a844f984d3711b57805 + checksum: 4d7e0adde45d65548c31a1ecda75a5bfc7fcf749597b502adb0ea5f1316bd2d249260e9b9f47f1ee84b6b69e3c64238a60661191f42473374d69c71ea905fa3c languageName: node linkType: hard @@ -15184,16 +15335,32 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest@npm:26.6.3": - version: 26.6.3 - resolution: "jest@npm:26.6.3" +"jest-worker@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-worker@npm:27.0.0-next.8" dependencies: - "@jest/core": ^26.6.3 + "@types/node": "*" + merge-stream: ^2.0.0 + supports-color: ^8.0.0 + checksum: a16fe0e56c8c2f0fe36db3d7e1b39383f61aaa104922a3247b8c4546cd4fa60298cd4d0fba1b1c2c7837d088f81b247acf5a93a4388f53c561df1bdf1caaee11 + languageName: node + linkType: hard + +"jest@npm:27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest@npm:27.0.0-next.8" + dependencies: + "@jest/core": ^27.0.0-next.8 import-local: ^3.0.2 - jest-cli: ^26.6.3 + jest-cli: ^27.0.0-next.8 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 + peerDependenciesMeta: + node-notifier: + optional: true bin: jest: bin/jest.js - checksum: 4ffcfefa2b30999a71c205e1aacf2b3d7af10f36c17ba1baf45677684116ad5aa6a5bb162ad2dd418f9ea99d18f24b70d8c83fb317b765a3acac361a50e9db9f + checksum: a15195d4f15195d75cbf7bd046ecaf51d2a57948d8283783d3d820a44788ac09e617646a49b46279ed8df28dad1ad68ebd42fc0caa23655dbc71713767d00f05 languageName: node linkType: hard @@ -16600,13 +16767,13 @@ fsevents@^1.2.7: languageName: node linkType: hard -"micromatch@npm:^4.0.0, micromatch@npm:^4.0.2": - version: 4.0.2 - resolution: "micromatch@npm:4.0.2" +"micromatch@npm:^4.0.0, micromatch@npm:^4.0.2, micromatch@npm:^4.0.4": + version: 4.0.4 + resolution: "micromatch@npm:4.0.4" dependencies: braces: ^3.0.1 - picomatch: ^2.0.5 - checksum: 0cb0e11d647cbb65e398a0a8a1340a7fb751ae2722346219c435704cfac8b3275a94a6464236fe867f52ad46a24046d3bc4ac11b3d21ddb73bc44e27cf1e4904 + picomatch: ^2.2.3 + checksum: bc522ad93c086aa176f50fea2dc8060a8f7d7a621c811cf9ba02a1912577cc100190508166d721231465f10a575a40ec8a1bffc23bbc2c0108fcbf02e4be04ed languageName: node linkType: hard @@ -17279,20 +17446,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"node-notifier@npm:^8.0.0": - version: 8.0.1 - resolution: "node-notifier@npm:8.0.1" - dependencies: - growly: ^1.3.0 - is-wsl: ^2.2.0 - semver: ^7.3.2 - shellwords: ^0.1.1 - uuid: ^8.3.0 - which: ^2.0.2 - checksum: ce9611cfd8a6021b9aed5b9ad36e4717b9e151b46fe2f434408791291d261e695f3f397000e61edf23f2d1e5d2b73390abeb04b81754a9cfa95f68cfb2954cf1 - languageName: node - linkType: hard - "node-releases@npm:^1.1.61, node-releases@npm:^1.1.70": version: 1.1.71 resolution: "node-releases@npm:1.1.71" @@ -18310,7 +18463,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.0.5, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2": +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2, picomatch@npm:^2.2.3": version: 2.2.3 resolution: "picomatch@npm:2.2.3" checksum: f8c9323bc3b21ff448e81dd32277135d781abae5d53a1415d69a4ce6317a2c11404d449c550110b8fa402c07d5e80ff0e2657f263a312517cc809e9010d25791 @@ -18758,6 +18911,18 @@ fsevents@^1.2.7: languageName: node linkType: hard +"pretty-format@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "pretty-format@npm:27.0.0-next.8" + dependencies: + "@jest/types": ^27.0.0-next.8 + ansi-regex: ^5.0.0 + ansi-styles: ^5.0.0 + react-is: ^17.0.1 + checksum: fe1d639d282853b68259c4fcc1030906e9a0fa2095c82ae94d5ce8cfb62f24290d8358c9e83bde18c0143ed47a3e212cce31ec9115337c0764dcba91ecafc06b + languageName: node + linkType: hard + "pretty-hrtime@npm:^1.0.3": version: 1.0.3 resolution: "pretty-hrtime@npm:1.0.3" @@ -20833,7 +20998,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.3.2, resolve@^1.9.0": +"resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.9.0": version: 1.20.0 resolution: "resolve@npm:1.20.0" dependencies: @@ -20853,7 +21018,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.14.2#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.18.1#builtin, resolve@patch:resolve@^1.19.0#builtin, resolve@patch:resolve@^1.3.2#builtin, resolve@patch:resolve@^1.9.0#builtin": +"resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.14.2#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.19.0#builtin, resolve@patch:resolve@^1.20.0#builtin, resolve@patch:resolve@^1.3.2#builtin, resolve@patch:resolve@^1.9.0#builtin": version: 1.20.0 resolution: "resolve@patch:resolve@npm%3A1.20.0#builtin::version=1.20.0&hash=3388aa" dependencies: @@ -21580,13 +21745,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"shellwords@npm:^0.1.1": - version: 0.1.1 - resolution: "shellwords@npm:0.1.1" - checksum: 3559ff550917ece921d252edf42eb54827540e9676e537137ace236df8f9b78e48c542ae0b3f8876fea0faf5826c97629d5b8cb9ac7dee287260e9804fb8132c - languageName: node - linkType: hard - "side-channel@npm:^1.0.4": version: 1.0.4 resolution: "side-channel@npm:1.0.4" @@ -22071,7 +22229,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"stack-utils@npm:^2.0.2": +"stack-utils@npm:^2.0.3": version: 2.0.3 resolution: "stack-utils@npm:2.0.3" dependencies: @@ -22568,6 +22726,15 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"supports-color@npm:^8.0.0": + version: 8.1.1 + resolution: "supports-color@npm:8.1.1" + dependencies: + has-flag: ^4.0.0 + checksum: 0219f5c91753fea8dc8046cd4b18d39458b5dc0c6421c67c1072209faae9ba93b89283252e3b05d5c18901fd9f8b95001e3247fb93e2265f66d584a676522c75 + languageName: node + linkType: hard + "supports-hyperlinks@npm:^2.0.0": version: 2.1.0 resolution: "supports-hyperlinks@npm:2.1.0" @@ -22863,10 +23030,10 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"throat@npm:^5.0.0": - version: 5.0.0 - resolution: "throat@npm:5.0.0" - checksum: 2fa41c09ccd97982cd6601eca704913f5d8ef5cc4070fcd71c67e7240da7c0df86f65f5cb23f5c3132ab5567154740114cc92379663aa098b6076a39481b0f5f +"throat@npm:^6.0.1": + version: 6.0.1 + resolution: "throat@npm:6.0.1" + checksum: c984a40b4725bbd6e8c49d57b2bd36ab36c5534e8a1bed0d278d480171fdf908f16ba343d61c3e9c2e3ed4b327a59c28432cfa44594453b756ec219a772395a8 languageName: node linkType: hard @@ -23151,15 +23318,14 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"ts-jest@npm:26.5.2": - version: 26.5.2 - resolution: "ts-jest@npm:26.5.2" +"ts-jest@npm:27.0.0-next.11": + version: 27.0.0-next.11 + resolution: "ts-jest@npm:27.0.0-next.11" dependencies: - "@types/jest": 26.x bs-logger: 0.x buffer-from: 1.x fast-json-stable-stringify: 2.x - jest-util: ^26.1.0 + jest-util: 27.0.0-next.8 json5: 2.x lodash: 4.x make-error: 1.x @@ -23167,11 +23333,11 @@ resolve@^2.0.0-next.3: semver: 7.x yargs-parser: 20.x peerDependencies: - jest: ">=26 <27" + jest: 27.0.0-next.8 typescript: ">=3.8 <5.0" bin: ts-jest: cli.js - checksum: f9466241291bde18c6f6c5d61875d861983fa2a1b9b1a2164141418c129b874df2bc15bbc4fbde7fc2cb1fa9cae972d5fb292c79b4777afbe19f7ccf035e5d70 + checksum: b69fda5e6d4fad29e86c05d1c109af5e534942f33788863d09ed4d26612e4a1ea59f8f5b731dc8956d4fd2600e036f63f36a876c5a8862783eaa8e9a4ae08416 languageName: node linkType: hard @@ -24050,7 +24216,7 @@ typescript@4.2.2: languageName: node linkType: hard -"uuid@npm:8.3.2, uuid@npm:^8.0.0, uuid@npm:^8.3.0, uuid@npm:^8.3.2": +"uuid@npm:8.3.2, uuid@npm:^8.0.0, uuid@npm:^8.3.2": version: 8.3.2 resolution: "uuid@npm:8.3.2" bin: @@ -24835,17 +25001,6 @@ typescript@4.2.2: languageName: node linkType: hard -"wrap-ansi@npm:^6.2.0": - version: 6.2.0 - resolution: "wrap-ansi@npm:6.2.0" - dependencies: - ansi-styles: ^4.0.0 - string-width: ^4.1.0 - strip-ansi: ^6.0.0 - checksum: ee4ed8b2994cfbdcd571f4eadde9d8ba00b8a74113483fe5d0c5f9e84054e43df8e9092d7da35c5b051faeca8fe32bd6cea8bf5ae8ad4896d6ea676a347e90af - languageName: node - linkType: hard - "wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" @@ -25061,17 +25216,7 @@ typescript@4.2.2: languageName: node linkType: hard -"yargs-parser@npm:^18.1.2": - version: 18.1.3 - resolution: "yargs-parser@npm:18.1.3" - dependencies: - camelcase: ^5.0.0 - decamelize: ^1.2.0 - checksum: 33871721679053cc38165afc6356c06c3e820459589b5db78f315886105070eb90cbb583cd6515fa4231937d60c80262ca2b7c486d5942576802446318a39597 - languageName: node - linkType: hard - -"yargs@npm:16.2.0, yargs@npm:^16.2.0": +"yargs@npm:16.2.0, yargs@npm:^16.0.3, yargs@npm:^16.2.0": version: 16.2.0 resolution: "yargs@npm:16.2.0" dependencies: @@ -25104,25 +25249,6 @@ typescript@4.2.2: languageName: node linkType: hard -"yargs@npm:^15.4.1": - version: 15.4.1 - resolution: "yargs@npm:15.4.1" - dependencies: - cliui: ^6.0.0 - decamelize: ^1.2.0 - find-up: ^4.1.0 - get-caller-file: ^2.0.1 - require-directory: ^2.1.1 - require-main-filename: ^2.0.0 - set-blocking: ^2.0.0 - string-width: ^4.2.0 - which-module: ^2.0.0 - y18n: ^4.0.0 - yargs-parser: ^18.1.2 - checksum: dbf687d6b938f01bbf11e158dde6df906282b70cd9295af0217ee8cefbd83ad09d49fa9458d0d5325b0e66f03df954a38986db96f91e5b46ccdbbaf9a0157b23 - languageName: node - linkType: hard - "yarn-or-npm@npm:^3.0.1": version: 3.0.1 resolution: "yarn-or-npm@npm:3.0.1" From 03065056ddf73af0a19774955498e1475d20b212 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 08:16:57 -1000 Subject: [PATCH 02/14] isolatedModules? --- app/jest.config.ts | 1 + ci/jest.config.ts | 5 +++++ packages/ros1/jest.config.ts | 5 +++++ packages/rosmsg-bobject/jest.config.ts | 1 + packages/rosmsg-deser/jest.config.ts | 5 +++++ packages/velodyne-cloud/jest.config.ts | 5 +++++ packages/wasm-bz2/jest.config.ts | 1 + packages/xmlrpc/jest.config.ts | 5 +++++ test/jest.config.ts | 1 + tsconfig.json | 1 + 10 files changed, 30 insertions(+) diff --git a/app/jest.config.ts b/app/jest.config.ts index 8b5de23281..bbf95cc28d 100644 --- a/app/jest.config.ts +++ b/app/jest.config.ts @@ -12,6 +12,7 @@ export default { globals: { ReactNull: null, // eslint-disable-line no-restricted-syntax "ts-jest": { + isolatedModules: true, babelConfig: { plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], }, diff --git a/ci/jest.config.ts b/ci/jest.config.ts index 6551b83d93..8da5078c56 100644 --- a/ci/jest.config.ts +++ b/ci/jest.config.ts @@ -4,6 +4,11 @@ export default { preset: "ts-jest", + globals: { + "ts-jest": { + isolatedModules: true, + }, + }, testRunner: "jest-circus/runner", haste: { forceNodeFilesystemAPI: true, diff --git a/packages/ros1/jest.config.ts b/packages/ros1/jest.config.ts index 22921d3321..4e5c0a0c89 100644 --- a/packages/ros1/jest.config.ts +++ b/packages/ros1/jest.config.ts @@ -4,6 +4,11 @@ export default { preset: "ts-jest", + globals: { + "ts-jest": { + isolatedModules: true, + }, + }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/packages/rosmsg-bobject/jest.config.ts b/packages/rosmsg-bobject/jest.config.ts index ff28fd0105..3471504853 100644 --- a/packages/rosmsg-bobject/jest.config.ts +++ b/packages/rosmsg-bobject/jest.config.ts @@ -6,6 +6,7 @@ export default { preset: "ts-jest", globals: { "ts-jest": { + isolatedModules: true, babelConfig: { plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], }, diff --git a/packages/rosmsg-deser/jest.config.ts b/packages/rosmsg-deser/jest.config.ts index 6551b83d93..8da5078c56 100644 --- a/packages/rosmsg-deser/jest.config.ts +++ b/packages/rosmsg-deser/jest.config.ts @@ -4,6 +4,11 @@ export default { preset: "ts-jest", + globals: { + "ts-jest": { + isolatedModules: true, + }, + }, testRunner: "jest-circus/runner", haste: { forceNodeFilesystemAPI: true, diff --git a/packages/velodyne-cloud/jest.config.ts b/packages/velodyne-cloud/jest.config.ts index 22921d3321..4e5c0a0c89 100644 --- a/packages/velodyne-cloud/jest.config.ts +++ b/packages/velodyne-cloud/jest.config.ts @@ -4,6 +4,11 @@ export default { preset: "ts-jest", + globals: { + "ts-jest": { + isolatedModules: true, + }, + }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/packages/wasm-bz2/jest.config.ts b/packages/wasm-bz2/jest.config.ts index 90ca4f325f..dcf4458f11 100644 --- a/packages/wasm-bz2/jest.config.ts +++ b/packages/wasm-bz2/jest.config.ts @@ -6,6 +6,7 @@ export default { preset: "ts-jest", globals: { "ts-jest": { + isolatedModules: true, babelConfig: { plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], }, diff --git a/packages/xmlrpc/jest.config.ts b/packages/xmlrpc/jest.config.ts index 22921d3321..4e5c0a0c89 100644 --- a/packages/xmlrpc/jest.config.ts +++ b/packages/xmlrpc/jest.config.ts @@ -4,6 +4,11 @@ export default { preset: "ts-jest", + globals: { + "ts-jest": { + isolatedModules: true, + }, + }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/test/jest.config.ts b/test/jest.config.ts index 16e9e43b55..c60a519004 100644 --- a/test/jest.config.ts +++ b/test/jest.config.ts @@ -6,6 +6,7 @@ export default { preset: "ts-jest", globals: { "ts-jest": { + isolatedModules: true, tsconfig: "/../tsconfig.json", }, }, diff --git a/tsconfig.json b/tsconfig.json index da4363d330..24ccddd840 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,6 +7,7 @@ "esModuleInterop": true, "downlevelIteration": true, "importHelpers": true, + // "isolatedModules": true, "sourceMap": true, "moduleResolution": "node", "forceConsistentCasingInFileNames": true, From 2a41078ac99f3a636e4288c31bb188e54a9f2ed3 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 09:27:31 -1000 Subject: [PATCH 03/14] WIP stop using ts-jest/ts-node --- app/jest.config.ts | 8 +- app/players/types.ts | 2 +- .../transformers/rawImportPreprocessor.ts | 27 +- app/util/time.test.ts | 2 +- babel.config.json | 8 + ci/jest.config.ts | 6 - jest.config.json | 8 + jest.config.ts | 14 - package.json | 13 +- packages/ros1/jest.config.ts | 6 - packages/rosmsg-bobject/jest.config.ts | 10 +- packages/rosmsg-deser/jest.config.ts | 6 - packages/velodyne-cloud/jest.config.ts | 6 - packages/wasm-bz2/jest.config.ts | 10 +- packages/xmlrpc/jest.config.ts | 6 - test/jest.config.ts | 7 - tsconfig.json | 2 +- yarn.lock | 514 +++++++++++++++--- 18 files changed, 479 insertions(+), 176 deletions(-) create mode 100644 babel.config.json create mode 100644 jest.config.json delete mode 100644 jest.config.ts diff --git a/app/jest.config.ts b/app/jest.config.ts index bbf95cc28d..3739c04319 100644 --- a/app/jest.config.ts +++ b/app/jest.config.ts @@ -3,20 +3,14 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", transform: { + "\\.[jt]sx?$": "babel-jest", // "\\.tsx?$": "/test/transformers/rawImportPreprocessor.ts", "\\.ne$": "/test/transformers/neTransformer.js", "\\.(bin|template|wasm)$": "/test/transformers/rawTransformer.js", }, globals: { ReactNull: null, // eslint-disable-line no-restricted-syntax - "ts-jest": { - isolatedModules: true, - babelConfig: { - plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], - }, - }, }, setupFiles: ["/test/setup.ts", "/test/setupEnzyme.ts", "jest-canvas-mock"], setupFilesAfterEnv: ["/test/setupTestFramework.ts"], diff --git a/app/players/types.ts b/app/players/types.ts index 0391f5954a..49ef839067 100644 --- a/app/players/types.ts +++ b/app/players/types.ts @@ -87,7 +87,7 @@ export interface Player { setGlobalVariables(globalVariables: GlobalVariables): void; } -export const enum PlayerPresence { +export enum PlayerPresence { NOT_PRESENT = "NOT_PRESENT", CONSTRUCTING = "CONSTRUCTING", INITIALIZING = "INITIALIZING", diff --git a/app/test/transformers/rawImportPreprocessor.ts b/app/test/transformers/rawImportPreprocessor.ts index b0eac343dd..8b776a0596 100644 --- a/app/test/transformers/rawImportPreprocessor.ts +++ b/app/test/transformers/rawImportPreprocessor.ts @@ -3,9 +3,8 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ import fs from "fs"; -import TsJest from "ts-jest"; - -const transformer = TsJest.createTransformer(); +import { Transformer } from "@jest/transform"; +// import {} from "@jest/create-cache-key-function"; // look for `?raw` import statements // re-write these into `const variable = "string source";`; @@ -19,15 +18,17 @@ const importReplacer = (_: unknown, p1: string, p2: string) => { function rewriteSource(source: string) { return source.replace(importRegEx, importReplacer); } -module.exports = { - process(source: string, filePath: string, options: Parameters[2]) { - return transformer.process(rewriteSource(source), filePath, options); - }, - getCacheKey( - source: string, - filePath: string, - options: Parameters[2], - ) { - return transformer.getCacheKey(rewriteSource(source), filePath, options); + +const transformer: Transformer = { + process(sourceText, sourcePath, options) { + return rewriteSource(sourceText); }, + // FIXME + // getCacheKey( + // sourceText, sourcePath, options, + // ) { + // cryptod + // return transformer.getCacheKey(rewriteSource(source), filePath, options); + // }, }; +module.exports = transformer; diff --git a/app/util/time.test.ts b/app/util/time.test.ts index c69c70addd..034dac04f0 100644 --- a/app/util/time.test.ts +++ b/app/util/time.test.ts @@ -19,7 +19,7 @@ import * as time from "./time"; describe("time.toDate & time.fromDate", () => { it("converts to date and from date", () => { - const totalSeconds = Math.round(Date.now() / 1000); + const totalSeconds = Math.round(Date.now() / 1000) + "x"; const stamp = { sec: totalSeconds, nsec: 1000 }; const now = new Date(totalSeconds * 1000); expect(time.toDate(stamp)).toEqual(now); diff --git a/babel.config.json b/babel.config.json new file mode 100644 index 0000000000..88e80e153f --- /dev/null +++ b/babel.config.json @@ -0,0 +1,8 @@ +{ + "presets": [ + // "@babel/preset-env", + "@babel/preset-typescript", + "@babel/preset-react" + ], + "plugins": ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"] +} diff --git a/ci/jest.config.ts b/ci/jest.config.ts index 8da5078c56..a1e068089d 100644 --- a/ci/jest.config.ts +++ b/ci/jest.config.ts @@ -3,12 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - }, - }, testRunner: "jest-circus/runner", haste: { forceNodeFilesystemAPI: true, diff --git a/jest.config.json b/jest.config.json new file mode 100644 index 0000000000..fbd7bd8d54 --- /dev/null +++ b/jest.config.json @@ -0,0 +1,8 @@ +{ + "//": "Our top level jest config to reference all the projects under our monorepo. We exclude the integration test since it involves performing a webpack build and doesn't support 'watch' or 'debug' in the same way", + "projects": [ + "/app/jest.config.ts", + "/ci/jest.config.ts", + "/packages/*/jest.config.ts" + ] +} diff --git a/jest.config.ts b/jest.config.ts deleted file mode 100644 index fd0dbdbfbe..0000000000 --- a/jest.config.ts +++ /dev/null @@ -1,14 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -// Or top level jest config to reference all the projects under our monorepo -export default { - // We exclude the integration test since it involves performing a webpack build and - // doesn't support "watch" or "debug" in the same way - projects: [ - "/app/jest.config.ts", - "/ci/jest.config.ts", - "/packages/*/jest.config.ts", - ], -}; diff --git a/package.json b/package.json index 1d8d8ce54f..ad49d422da 100644 --- a/package.json +++ b/package.json @@ -25,9 +25,9 @@ "serve": "webpack serve --mode development --progress", "lint": "TIMING=1 eslint --report-unused-disable-directives --fix .", "lint:ci": "TIMING=1 NODE_OPTIONS='--max-old-space-size=4096' eslint --report-unused-disable-directives --config .eslintrc.ci.yaml .", - "test": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register' jest", - "test:debug": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register --inspect-brk' jest", - "test:watch": "TS_NODE_PROJECT=tsconfig.jest.json NODE_OPTIONS='-r ts-node/register' jest --watch", + "test": "jest", + "test:debug": "NODE_OPTIONS='--inspect-brk' jest", + "test:watch": "jest --watch", "test:integration": "TS_NODE_PROJECT=tsconfig.jest.json jest --forceExit --projects test", "package:win": "yarn package --win", "package:darwin": "yarn package --mac", @@ -47,12 +47,17 @@ }, "devDependencies": { "@actions/exec": "1.0.4", + "@babel/core": "7.13.16", + "@babel/preset-env": "7.13.15", + "@babel/preset-typescript": "7.13.0", "@foxglove/electron-socket": "workspace:packages/electron-socket", "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud", "@jest/types": "26.6.2", "@pmmmwh/react-refresh-webpack-plugin": "0.5.0-beta.1", "@sentry/electron": "2.4.0", "@types/amplitude-js": "7.0.1", + "@types/babel__core": "^7", + "@types/babel__preset-env": "^7", "@types/case-sensitive-paths-webpack-plugin": "2.1.5", "@types/circular-dependency-plugin": "^5.0.2", "@types/electron-devtools-installer": "2.2.0", @@ -68,6 +73,7 @@ "@typescript-eslint/eslint-plugin": "4.21.0", "@typescript-eslint/parser": "4.21.0", "amplitude-js": "8.1.0", + "babel-jest": "26.6.3", "babel-loader": "8.2.2", "babel-plugin-transform-import-meta": "1.0.1", "browserify-zlib": "0.2.0", @@ -114,7 +120,6 @@ "spectron": "https://github.com/foxglove/spectron.git#commit=7f88e8fe148ee14b3efc14c3646c08c4ed0a6747", "string-replace-loader": "3.0.1", "style-loader": "2.0.0", - "ts-jest": "27.0.0-next.11", "ts-loader": "8.1.0", "ts-node": "9.1.1", "typescript": "4.2.2", diff --git a/packages/ros1/jest.config.ts b/packages/ros1/jest.config.ts index 4e5c0a0c89..e9290c5007 100644 --- a/packages/ros1/jest.config.ts +++ b/packages/ros1/jest.config.ts @@ -3,12 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - }, - }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/packages/rosmsg-bobject/jest.config.ts b/packages/rosmsg-bobject/jest.config.ts index 3471504853..1995c2708e 100644 --- a/packages/rosmsg-bobject/jest.config.ts +++ b/packages/rosmsg-bobject/jest.config.ts @@ -3,15 +3,7 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - babelConfig: { - plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], - }, - }, - }, + // plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], setupFiles: ["/src/test/setup.ts"], diff --git a/packages/rosmsg-deser/jest.config.ts b/packages/rosmsg-deser/jest.config.ts index 8da5078c56..a1e068089d 100644 --- a/packages/rosmsg-deser/jest.config.ts +++ b/packages/rosmsg-deser/jest.config.ts @@ -3,12 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - }, - }, testRunner: "jest-circus/runner", haste: { forceNodeFilesystemAPI: true, diff --git a/packages/velodyne-cloud/jest.config.ts b/packages/velodyne-cloud/jest.config.ts index 4e5c0a0c89..e9290c5007 100644 --- a/packages/velodyne-cloud/jest.config.ts +++ b/packages/velodyne-cloud/jest.config.ts @@ -3,12 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - }, - }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/packages/wasm-bz2/jest.config.ts b/packages/wasm-bz2/jest.config.ts index dcf4458f11..270cdfc001 100644 --- a/packages/wasm-bz2/jest.config.ts +++ b/packages/wasm-bz2/jest.config.ts @@ -3,15 +3,7 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - babelConfig: { - plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], - }, - }, - }, + // plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/packages/xmlrpc/jest.config.ts b/packages/xmlrpc/jest.config.ts index 4e5c0a0c89..e9290c5007 100644 --- a/packages/xmlrpc/jest.config.ts +++ b/packages/xmlrpc/jest.config.ts @@ -3,12 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - }, - }, testRunner: "jest-circus/runner", testMatch: ["/src/**/*.test.ts"], haste: { diff --git a/test/jest.config.ts b/test/jest.config.ts index c60a519004..97cf165113 100644 --- a/test/jest.config.ts +++ b/test/jest.config.ts @@ -3,13 +3,6 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/ export default { - preset: "ts-jest", - globals: { - "ts-jest": { - isolatedModules: true, - tsconfig: "/../tsconfig.json", - }, - }, globalSetup: "/globalSetup.ts", testRunner: "jest-circus/runner", haste: { diff --git a/tsconfig.json b/tsconfig.json index 24ccddd840..c516249567 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,7 +7,7 @@ "esModuleInterop": true, "downlevelIteration": true, "importHelpers": true, - // "isolatedModules": true, + "isolatedModules": true, "sourceMap": true, "moduleResolution": "node", "forceConsistentCasingInFileNames": true, diff --git a/yarn.lock b/yarn.lock index 9e31711eb2..668696fa96 100644 --- a/yarn.lock +++ b/yarn.lock @@ -114,6 +114,13 @@ __metadata: languageName: node linkType: hard +"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.13.15": + version: 7.13.15 + resolution: "@babel/compat-data@npm:7.13.15" + checksum: 6abe95cbd36e54217cdcc51829e377cf31451ed0a64ff43cc82e0ce728d9e265990c5e079d5c3f9ee0afd49e20d6c90112fe2093ed0699c2ffc62f5172df24fa + languageName: node + linkType: hard + "@babel/core@npm:7.12.9": version: 7.12.9 resolution: "@babel/core@npm:7.12.9" @@ -138,6 +145,29 @@ __metadata: languageName: node linkType: hard +"@babel/core@npm:7.13.16": + version: 7.13.16 + resolution: "@babel/core@npm:7.13.16" + dependencies: + "@babel/code-frame": ^7.12.13 + "@babel/generator": ^7.13.16 + "@babel/helper-compilation-targets": ^7.13.16 + "@babel/helper-module-transforms": ^7.13.14 + "@babel/helpers": ^7.13.16 + "@babel/parser": ^7.13.16 + "@babel/template": ^7.12.13 + "@babel/traverse": ^7.13.15 + "@babel/types": ^7.13.16 + convert-source-map: ^1.7.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.2 + json5: ^2.1.2 + semver: ^6.3.0 + source-map: ^0.5.0 + checksum: 1a53b70629fae3c5b714af1c582a92ffbb1a87d0f8fe705292faed6281476bf0a35ffa19d9d28ad791610d203fdbb8928e28aedb52a02023a561caaa44a9ee61 + languageName: node + linkType: hard + "@babel/core@npm:7.13.8, @babel/core@npm:^7.0.0, @babel/core@npm:^7.1.0, @babel/core@npm:^7.12.10, @babel/core@npm:^7.4.5, @babel/core@npm:^7.7.5": version: 7.13.8 resolution: "@babel/core@npm:7.13.8" @@ -206,6 +236,20 @@ __metadata: languageName: node linkType: hard +"@babel/helper-compilation-targets@npm:^7.13.13, @babel/helper-compilation-targets@npm:^7.13.16": + version: 7.13.16 + resolution: "@babel/helper-compilation-targets@npm:7.13.16" + dependencies: + "@babel/compat-data": ^7.13.15 + "@babel/helper-validator-option": ^7.12.17 + browserslist: ^4.14.5 + semver: ^6.3.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: baa1e4cdd562996c6af0a8cedb097cd72f67c44577faf4b657015f477d4930ebcc40ca21dc1e5fcffe91a1517de6e4114bc21f805ca701dfac2ddd2e9b006228 + languageName: node + linkType: hard + "@babel/helper-create-class-features-plugin@npm:^7.13.0": version: 7.13.8 resolution: "@babel/helper-create-class-features-plugin@npm:7.13.8" @@ -251,6 +295,24 @@ __metadata: languageName: node linkType: hard +"@babel/helper-define-polyfill-provider@npm:^0.2.0": + version: 0.2.0 + resolution: "@babel/helper-define-polyfill-provider@npm:0.2.0" + dependencies: + "@babel/helper-compilation-targets": ^7.13.0 + "@babel/helper-module-imports": ^7.12.13 + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/traverse": ^7.13.0 + debug: ^4.1.1 + lodash.debounce: ^4.0.8 + resolve: ^1.14.2 + semver: ^6.1.2 + peerDependencies: + "@babel/core": ^7.4.0-0 + checksum: 575785f62b10ee5cd9d8c092b6077f8bad8eed42ac50a8d55b82430c6958f94da11f5b20de650e31b400f7c7a0af08b6e4476669fd2a3b24414d1a9db89d531f + languageName: node + linkType: hard + "@babel/helper-explode-assignable-expression@npm:^7.12.13": version: 7.13.0 resolution: "@babel/helper-explode-assignable-expression@npm:7.13.0" @@ -299,6 +361,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-member-expression-to-functions@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/helper-member-expression-to-functions@npm:7.13.12" + dependencies: + "@babel/types": ^7.13.12 + checksum: 2c075f72e5bda1432c74484548272577485d45c4d6c7cc9e84c5d053eaa6e0890e93c9b018bab97f65cbb81ac04dd9cdca73d5ae0e94b03cfc00d10972b99185 + languageName: node + linkType: hard + "@babel/helper-module-imports@npm:^7.0.0, @babel/helper-module-imports@npm:^7.12.13": version: 7.12.13 resolution: "@babel/helper-module-imports@npm:7.12.13" @@ -308,6 +379,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-imports@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/helper-module-imports@npm:7.13.12" + dependencies: + "@babel/types": ^7.13.12 + checksum: 4d1d3364bec0820e50c782b5a5c81e7987c260c14772bc594ca8dbfdb3b6e43bd9b4e5071fd2a5f777c822dc7440781fa904f643e2069755db9ba5033cb2beac + languageName: node + linkType: hard + "@babel/helper-module-transforms@npm:^7.12.1, @babel/helper-module-transforms@npm:^7.13.0": version: 7.13.0 resolution: "@babel/helper-module-transforms@npm:7.13.0" @@ -325,6 +405,22 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-transforms@npm:^7.13.14": + version: 7.13.14 + resolution: "@babel/helper-module-transforms@npm:7.13.14" + dependencies: + "@babel/helper-module-imports": ^7.13.12 + "@babel/helper-replace-supers": ^7.13.12 + "@babel/helper-simple-access": ^7.13.12 + "@babel/helper-split-export-declaration": ^7.12.13 + "@babel/helper-validator-identifier": ^7.12.11 + "@babel/template": ^7.12.13 + "@babel/traverse": ^7.13.13 + "@babel/types": ^7.13.14 + checksum: 576e86d0d41674e01703754a16e94495e424c7972f932e1eedb30206092b410b3659c0d0a7a06c61e024cee9b6020215db4732903ae49ebbd19d813feb0a90da + languageName: node + linkType: hard + "@babel/helper-optimise-call-expression@npm:^7.12.13": version: 7.12.13 resolution: "@babel/helper-optimise-call-expression@npm:7.12.13" @@ -371,6 +467,18 @@ __metadata: languageName: node linkType: hard +"@babel/helper-replace-supers@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/helper-replace-supers@npm:7.13.12" + dependencies: + "@babel/helper-member-expression-to-functions": ^7.13.12 + "@babel/helper-optimise-call-expression": ^7.12.13 + "@babel/traverse": ^7.13.0 + "@babel/types": ^7.13.12 + checksum: 38b79cb56a9a5324e32567660fcafbac4efae6f2c2c2ef048deb2d022476fc1c7acfda5ab841f7135d07b4f39e62142f9d253cfe824232030432c86f94d226f1 + languageName: node + linkType: hard + "@babel/helper-simple-access@npm:^7.12.13": version: 7.12.13 resolution: "@babel/helper-simple-access@npm:7.12.13" @@ -380,6 +488,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-simple-access@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/helper-simple-access@npm:7.13.12" + dependencies: + "@babel/types": ^7.13.12 + checksum: eff532a1572a4ac562c5918a409871ddf9baee9ece197b98a54622184d3b9e01bdd465597f27ca3d452e71638c913a14819cf261dc095a466032dfd92a88bc73 + languageName: node + linkType: hard + "@babel/helper-skip-transparent-expression-wrappers@npm:^7.12.1": version: 7.12.1 resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.12.1" @@ -435,6 +552,17 @@ __metadata: languageName: node linkType: hard +"@babel/helpers@npm:^7.13.16": + version: 7.13.17 + resolution: "@babel/helpers@npm:7.13.17" + dependencies: + "@babel/template": ^7.12.13 + "@babel/traverse": ^7.13.17 + "@babel/types": ^7.13.17 + checksum: 3e2b18d6bad7e7fa4e268a4e28f7ba5a15893efd39a57af9ae38613fe11bf4cff03cb2a56d4e6e18eeabe0934bfa689432ce3578bf59bb43bf926c956771b4b4 + languageName: node + linkType: hard + "@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.12.13": version: 7.13.8 resolution: "@babel/highlight@npm:7.13.8" @@ -455,6 +583,32 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.13.12" + dependencies: + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 + "@babel/plugin-proposal-optional-chaining": ^7.13.12 + peerDependencies: + "@babel/core": ^7.13.0 + checksum: ad0b508a5c3f3436ff0ff598b7aad63686bfe7f846b19c862c09397bc987ab9244b866204440496cf6d1b7ec07ea01a6fe95fd3067dbdf58ec48d9d4d4d9a440 + languageName: node + linkType: hard + +"@babel/plugin-proposal-async-generator-functions@npm:^7.13.15": + version: 7.13.15 + resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.15" + dependencies: + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-remap-async-to-generator": ^7.13.0 + "@babel/plugin-syntax-async-generators": ^7.8.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: cfef2d2d97f4dee2930278ff8596940d3fef07522cf88b6635dd671cee055d23bd196eeba731600f7edb950e65ba915e363e5555982598087561e276a4fe6fce + languageName: node + linkType: hard + "@babel/plugin-proposal-async-generator-functions@npm:^7.13.8": version: 7.13.8 resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.8" @@ -630,6 +784,19 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-proposal-optional-chaining@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.13.12" + dependencies: + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8663cfbf5cdfe41f8765976b94de9525c223085d53bb48bd481a03539a7680f2aa3b3fd525d80144e1c1c646cbad817fea7ef8da573bbf0600ddde32fab7420b + languageName: node + linkType: hard + "@babel/plugin-proposal-private-methods@npm:^7.12.1, @babel/plugin-proposal-private-methods@npm:^7.13.0": version: 7.13.0 resolution: "@babel/plugin-proposal-private-methods@npm:7.13.0" @@ -1221,6 +1388,17 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-transform-regenerator@npm:^7.13.15": + version: 7.13.15 + resolution: "@babel/plugin-transform-regenerator@npm:7.13.15" + dependencies: + regenerator-transform: ^0.14.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ac1f6bda7e72c073b0957c543cba8a29a40d561582c17d938d4cd36ff0c441adfa2caa21dd80cf3be1674f18cca4cd936be29f8df659fbfb020b58f45c7787fa + languageName: node + linkType: hard + "@babel/plugin-transform-reserved-words@npm:^7.12.13": version: 7.12.13 resolution: "@babel/plugin-transform-reserved-words@npm:7.12.13" @@ -1324,6 +1502,85 @@ __metadata: languageName: node linkType: hard +"@babel/preset-env@npm:7.13.15": + version: 7.13.15 + resolution: "@babel/preset-env@npm:7.13.15" + dependencies: + "@babel/compat-data": ^7.13.15 + "@babel/helper-compilation-targets": ^7.13.13 + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-validator-option": ^7.12.17 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.13.12 + "@babel/plugin-proposal-async-generator-functions": ^7.13.15 + "@babel/plugin-proposal-class-properties": ^7.13.0 + "@babel/plugin-proposal-dynamic-import": ^7.13.8 + "@babel/plugin-proposal-export-namespace-from": ^7.12.13 + "@babel/plugin-proposal-json-strings": ^7.13.8 + "@babel/plugin-proposal-logical-assignment-operators": ^7.13.8 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.13.8 + "@babel/plugin-proposal-numeric-separator": ^7.12.13 + "@babel/plugin-proposal-object-rest-spread": ^7.13.8 + "@babel/plugin-proposal-optional-catch-binding": ^7.13.8 + "@babel/plugin-proposal-optional-chaining": ^7.13.12 + "@babel/plugin-proposal-private-methods": ^7.13.0 + "@babel/plugin-proposal-unicode-property-regex": ^7.12.13 + "@babel/plugin-syntax-async-generators": ^7.8.4 + "@babel/plugin-syntax-class-properties": ^7.12.13 + "@babel/plugin-syntax-dynamic-import": ^7.8.3 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + "@babel/plugin-syntax-top-level-await": ^7.12.13 + "@babel/plugin-transform-arrow-functions": ^7.13.0 + "@babel/plugin-transform-async-to-generator": ^7.13.0 + "@babel/plugin-transform-block-scoped-functions": ^7.12.13 + "@babel/plugin-transform-block-scoping": ^7.12.13 + "@babel/plugin-transform-classes": ^7.13.0 + "@babel/plugin-transform-computed-properties": ^7.13.0 + "@babel/plugin-transform-destructuring": ^7.13.0 + "@babel/plugin-transform-dotall-regex": ^7.12.13 + "@babel/plugin-transform-duplicate-keys": ^7.12.13 + "@babel/plugin-transform-exponentiation-operator": ^7.12.13 + "@babel/plugin-transform-for-of": ^7.13.0 + "@babel/plugin-transform-function-name": ^7.12.13 + "@babel/plugin-transform-literals": ^7.12.13 + "@babel/plugin-transform-member-expression-literals": ^7.12.13 + "@babel/plugin-transform-modules-amd": ^7.13.0 + "@babel/plugin-transform-modules-commonjs": ^7.13.8 + "@babel/plugin-transform-modules-systemjs": ^7.13.8 + "@babel/plugin-transform-modules-umd": ^7.13.0 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.12.13 + "@babel/plugin-transform-new-target": ^7.12.13 + "@babel/plugin-transform-object-super": ^7.12.13 + "@babel/plugin-transform-parameters": ^7.13.0 + "@babel/plugin-transform-property-literals": ^7.12.13 + "@babel/plugin-transform-regenerator": ^7.13.15 + "@babel/plugin-transform-reserved-words": ^7.12.13 + "@babel/plugin-transform-shorthand-properties": ^7.12.13 + "@babel/plugin-transform-spread": ^7.13.0 + "@babel/plugin-transform-sticky-regex": ^7.12.13 + "@babel/plugin-transform-template-literals": ^7.13.0 + "@babel/plugin-transform-typeof-symbol": ^7.12.13 + "@babel/plugin-transform-unicode-escapes": ^7.12.13 + "@babel/plugin-transform-unicode-regex": ^7.12.13 + "@babel/preset-modules": ^0.1.4 + "@babel/types": ^7.13.14 + babel-plugin-polyfill-corejs2: ^0.2.0 + babel-plugin-polyfill-corejs3: ^0.2.0 + babel-plugin-polyfill-regenerator: ^0.2.0 + core-js-compat: ^3.9.0 + semver: ^6.3.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bcab2e9ce31ba4c6d0d56ff4afc1f6a6365952f2ab1001bad91dec4ad72b2b7578cdecc214b173caf0a7bf19bd075844294786432d56113aefa0e14b61d67d79 + languageName: node + linkType: hard + "@babel/preset-env@npm:^7.12.11": version: 7.13.9 resolution: "@babel/preset-env@npm:7.13.9" @@ -1444,7 +1701,7 @@ __metadata: languageName: node linkType: hard -"@babel/preset-typescript@npm:^7.12.7": +"@babel/preset-typescript@npm:7.13.0, @babel/preset-typescript@npm:^7.12.7": version: 7.13.0 resolution: "@babel/preset-typescript@npm:7.13.0" dependencies: @@ -1502,7 +1759,7 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.4.5, @babel/traverse@npm:^7.7.2": +"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.13.13, @babel/traverse@npm:^7.13.15, @babel/traverse@npm:^7.13.17, @babel/traverse@npm:^7.4.5, @babel/traverse@npm:^7.7.2": version: 7.13.17 resolution: "@babel/traverse@npm:7.13.17" dependencies: @@ -1518,7 +1775,7 @@ __metadata: languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.13, @babel/types@npm:^7.12.17, @babel/types@npm:^7.12.7, @babel/types@npm:^7.13.0, @babel/types@npm:^7.13.16, @babel/types@npm:^7.13.17, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.13, @babel/types@npm:^7.12.17, @babel/types@npm:^7.12.7, @babel/types@npm:^7.13.0, @babel/types@npm:^7.13.12, @babel/types@npm:^7.13.14, @babel/types@npm:^7.13.16, @babel/types@npm:^7.13.17, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": version: 7.13.17 resolution: "@babel/types@npm:7.13.17" dependencies: @@ -4148,7 +4405,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": +"@types/babel__core@npm:^7, @types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.1.7": version: 7.1.14 resolution: "@types/babel__core@npm:7.1.14" dependencies: @@ -4170,6 +4427,13 @@ __metadata: languageName: node linkType: hard +"@types/babel__preset-env@npm:^7": + version: 7.9.1 + resolution: "@types/babel__preset-env@npm:7.9.1" + checksum: bb76f246000f396b1542a331bcdb62d60f49d2cf78208d44b156cbfd567f9c941614f0ed1aee8d494091455580dc3629dfddf08e73e13661339603c11822145f + languageName: node + linkType: hard + "@types/babel__template@npm:*": version: 7.4.0 resolution: "@types/babel__template@npm:7.4.0" @@ -6720,6 +6984,24 @@ __metadata: languageName: node linkType: hard +"babel-jest@npm:26.6.3": + version: 26.6.3 + resolution: "babel-jest@npm:26.6.3" + dependencies: + "@jest/transform": ^26.6.2 + "@jest/types": ^26.6.2 + "@types/babel__core": ^7.1.7 + babel-plugin-istanbul: ^6.0.0 + babel-preset-jest: ^26.6.2 + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + slash: ^3.0.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 89231d00e6b73e1dc6f009cb97a74edb1af4426f2cfa5d9b71684d1382526651820f8dd301857b9007a44c6b7d1fb77242b201bdea3cff98488b893e9c7d7182 + languageName: node + linkType: hard + "babel-jest@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "babel-jest@npm:27.0.0-next.8" @@ -6821,6 +7103,18 @@ __metadata: languageName: node linkType: hard +"babel-plugin-jest-hoist@npm:^26.6.2": + version: 26.6.2 + resolution: "babel-plugin-jest-hoist@npm:26.6.2" + dependencies: + "@babel/template": ^7.3.3 + "@babel/types": ^7.3.3 + "@types/babel__core": ^7.0.0 + "@types/babel__traverse": ^7.0.6 + checksum: e9c1de0fced1c8220590a0d6f37631f5b975964a8e876f0426fc7fd224f4c154b01f156e87401de47556b873bf4414eb2a9632fb56765f35fc07fe69e5b76d31 + languageName: node + linkType: hard + "babel-plugin-jest-hoist@npm:^27.0.0-next.3": version: 27.0.0-next.3 resolution: "babel-plugin-jest-hoist@npm:27.0.0-next.3" @@ -6877,6 +7171,19 @@ __metadata: languageName: node linkType: hard +"babel-plugin-polyfill-corejs2@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-corejs2@npm:0.2.0" + dependencies: + "@babel/compat-data": ^7.13.11 + "@babel/helper-define-polyfill-provider": ^0.2.0 + semver: ^6.1.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5d2825a9f28b322956da8941b069c3e4130478bc3620ab20e4b680671b31ad95d1c69514c58df9d5e2d54c87aba9ca92df5a7dbad54005b25ac9587af252db07 + languageName: node + linkType: hard + "babel-plugin-polyfill-corejs3@npm:^0.1.0, babel-plugin-polyfill-corejs3@npm:^0.1.3": version: 0.1.7 resolution: "babel-plugin-polyfill-corejs3@npm:0.1.7" @@ -6889,6 +7196,18 @@ __metadata: languageName: node linkType: hard +"babel-plugin-polyfill-corejs3@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-corejs3@npm:0.2.0" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.2.0 + core-js-compat: ^3.9.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ae25400dd8764f737ecbd02f9aa3f35df62d3d239ad269edebab195551686b020d4b9b957cc303c6fbf9497c214e7b2f7fa3eee460d00b569d0d6f634ef3d5aa + languageName: node + linkType: hard + "babel-plugin-polyfill-regenerator@npm:^0.1.2": version: 0.1.6 resolution: "babel-plugin-polyfill-regenerator@npm:0.1.6" @@ -6900,6 +7219,17 @@ __metadata: languageName: node linkType: hard +"babel-plugin-polyfill-regenerator@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-regenerator@npm:0.2.0" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.2.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 538ab98e3062fb4ef4eae09587292513c03917902fe6d8c90b49001b26d41ffc3cd2da34b3b999b12e501cde1233e356af9f33f898c623720c94c6d9022d998c + languageName: node + linkType: hard + "babel-plugin-react-docgen@npm:^4.2.1": version: 4.2.1 resolution: "babel-plugin-react-docgen@npm:4.2.1" @@ -6975,6 +7305,18 @@ __metadata: languageName: node linkType: hard +"babel-preset-jest@npm:^26.6.2": + version: 26.6.2 + resolution: "babel-preset-jest@npm:26.6.2" + dependencies: + babel-plugin-jest-hoist: ^26.6.2 + babel-preset-current-node-syntax: ^1.0.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 466ca17bba2638cadda5c25f3108dab1867b30e5d728366d0d2309be5d6555db8738a6cacd2c43284bee2ce7917e3285194c223a22b3d9817794f00c2775fdb2 + languageName: node + linkType: hard + "babel-preset-jest@npm:^27.0.0-next.3": version: 27.0.0-next.3 resolution: "babel-preset-jest@npm:27.0.0-next.3" @@ -7460,12 +7802,18 @@ __metadata: languageName: node linkType: hard -"bs-logger@npm:0.x": - version: 0.2.6 - resolution: "bs-logger@npm:0.2.6" +"browserslist@npm:^4.16.4": + version: 4.16.5 + resolution: "browserslist@npm:4.16.5" dependencies: - fast-json-stable-stringify: 2.x - checksum: f5f2f1315d6ceac655c3945d149086a5f5a90b3c908780757e12e938aad0125a7aa563cae2f7153ccf43443adb1b88a44960a61063903c3973e1dfdda6fc2d8c + caniuse-lite: ^1.0.30001214 + colorette: ^1.2.2 + electron-to-chromium: ^1.3.719 + escalade: ^3.1.1 + node-releases: ^1.1.71 + bin: + browserslist: cli.js + checksum: ea06cb8262a69d1479ab2c288eb939250ea0a6b172a181ce7ce9410f1ee29701095c8c13bd575b70baead87743866471814f8c0247c9785b229b04bef399e4c8 languageName: node linkType: hard @@ -7492,7 +7840,7 @@ __metadata: languageName: node linkType: hard -"buffer-from@npm:1.x, buffer-from@npm:^1.0.0": +"buffer-from@npm:^1.0.0": version: 1.1.1 resolution: "buffer-from@npm:1.1.1" checksum: 540ceb79c4f5bfcadaabbc18324fa84c50dc52905084be7c03596a339cf5a88513bee6831ce9b36ddd046fab09257a7c80686e129d0559a0cfd141da196ad956 @@ -7825,6 +8173,13 @@ __metadata: languageName: node linkType: hard +"caniuse-lite@npm:^1.0.30001214": + version: 1.0.30001214 + resolution: "caniuse-lite@npm:1.0.30001214" + checksum: 96c09af8989fe03e6aa0cc0130be3392c4a871093f0ae7190cb1185862a63b54de14483561578564d034cf993c315d4939727badee39ed76144e94ae4ab2a0f7 + languageName: node + linkType: hard + "capture-exit@npm:^2.0.0": version: 2.0.0 resolution: "capture-exit@npm:2.0.0" @@ -8820,6 +9175,16 @@ __metadata: languageName: node linkType: hard +"core-js-compat@npm:^3.9.1": + version: 3.11.0 + resolution: "core-js-compat@npm:3.11.0" + dependencies: + browserslist: ^4.16.4 + semver: 7.0.0 + checksum: 608d11356728f6c0df98b41c50cad9b3d54de600423e141fe964d6ae5ede1d2479398b4bbe1e4cd4dfbb9a2a721cfd88987aae6dd68131557efb2bb3f7f1896a + languageName: node + linkType: hard + "core-js-pure@npm:^3.0.0, core-js-pure@npm:^3.8.1, core-js-pure@npm:^3.8.2": version: 3.9.1 resolution: "core-js-pure@npm:3.9.1" @@ -10492,6 +10857,13 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.3.719": + version: 1.3.720 + resolution: "electron-to-chromium@npm:1.3.720" + checksum: 51bb3720af1ffe2ac04e0760f4cdcf319c2e371625e7ed9e433ee962c1c7ae09e65b44afbe7ddf5c71dc9a01583c8e0015ff04b86f0222ed7cc5b5871494078d + languageName: node + linkType: hard + "electron-updater@npm:4.3.8": version: 4.3.8 resolution: "electron-updater@npm:4.3.8" @@ -11694,7 +12066,7 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0": +"fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: 7df3fabfe445d65953b2d9d9d3958bd895438b215a40fb87dae8b2165c5169a897785eb5d51e6cf0eb03523af756e3d82ea01083f6ac6341fe16db532fee3016 @@ -12138,12 +12510,17 @@ __metadata: resolution: "foxglove-studio@workspace:." dependencies: "@actions/exec": 1.0.4 + "@babel/core": 7.13.16 + "@babel/preset-env": 7.13.15 + "@babel/preset-typescript": 7.13.0 "@foxglove/electron-socket": "workspace:packages/electron-socket" "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud" "@jest/types": 26.6.2 "@pmmmwh/react-refresh-webpack-plugin": 0.5.0-beta.1 "@sentry/electron": 2.4.0 "@types/amplitude-js": 7.0.1 + "@types/babel__core": ^7 + "@types/babel__preset-env": ^7 "@types/case-sensitive-paths-webpack-plugin": 2.1.5 "@types/circular-dependency-plugin": ^5.0.2 "@types/electron-devtools-installer": 2.2.0 @@ -12159,6 +12536,7 @@ __metadata: "@typescript-eslint/eslint-plugin": 4.21.0 "@typescript-eslint/parser": 4.21.0 amplitude-js: 8.1.0 + babel-jest: 26.6.3 babel-loader: 8.2.2 babel-plugin-transform-import-meta: 1.0.1 browserify-zlib: 0.2.0 @@ -12205,7 +12583,6 @@ __metadata: spectron: "https://github.com/foxglove/spectron.git#commit=7f88e8fe148ee14b3efc14c3646c08c4ed0a6747" string-replace-loader: 3.0.1 style-loader: 2.0.0 - ts-jest: 27.0.0-next.11 ts-loader: 8.1.0 ts-node: 9.1.1 typescript: 4.2.2 @@ -15267,20 +15644,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-util@npm:27.0.0-next.8, jest-util@npm:^27.0.0-next.8": - version: 27.0.0-next.8 - resolution: "jest-util@npm:27.0.0-next.8" - dependencies: - "@jest/types": ^27.0.0-next.8 - "@types/node": "*" - chalk: ^4.0.0 - graceful-fs: ^4.2.4 - is-ci: ^3.0.0 - picomatch: ^2.2.3 - checksum: 291328109086f48132bf5d4fa0e63d739458586589a5b6edb65a1fdcdb7d56a99bbbbe210821c6c12e3d2974107c3008a33a9db4aa9a9ce80b79d3202599d204 - languageName: node - linkType: hard - "jest-util@npm:^26.6.2": version: 26.6.2 resolution: "jest-util@npm:26.6.2" @@ -15295,6 +15658,20 @@ fsevents@^1.2.7: languageName: node linkType: hard +"jest-util@npm:^27.0.0-next.8": + version: 27.0.0-next.8 + resolution: "jest-util@npm:27.0.0-next.8" + dependencies: + "@jest/types": ^27.0.0-next.8 + "@types/node": "*" + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + is-ci: ^3.0.0 + picomatch: ^2.2.3 + checksum: 291328109086f48132bf5d4fa0e63d739458586589a5b6edb65a1fdcdb7d56a99bbbbe210821c6c12e3d2974107c3008a33a9db4aa9a9ce80b79d3202599d204 + languageName: node + linkType: hard + "jest-validate@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-validate@npm:27.0.0-next.8" @@ -15554,17 +15931,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"json5@npm:2.x, json5@npm:^2.1.2, json5@npm:^2.1.3": - version: 2.2.0 - resolution: "json5@npm:2.2.0" - dependencies: - minimist: ^1.2.5 - bin: - json5: lib/cli.js - checksum: 07b1f90c2801dc52df2b0ac8d606cc400a85cda79130e754780fa2ab9805d0fb85a0e61b6a5cdd68e88e5d0c8f9109ec415af08283175556cdccaa8563853908 - languageName: node - linkType: hard - "json5@npm:^0.5.0": version: 0.5.1 resolution: "json5@npm:0.5.1" @@ -15585,6 +15951,17 @@ fsevents@^1.2.7: languageName: node linkType: hard +"json5@npm:^2.1.2, json5@npm:^2.1.3": + version: 2.2.0 + resolution: "json5@npm:2.2.0" + dependencies: + minimist: ^1.2.5 + bin: + json5: lib/cli.js + checksum: 07b1f90c2801dc52df2b0ac8d606cc400a85cda79130e754780fa2ab9805d0fb85a0e61b6a5cdd68e88e5d0c8f9109ec415af08283175556cdccaa8563853908 + languageName: node + linkType: hard + "jsondiffpatch@npm:0.4.1": version: 0.4.1 resolution: "jsondiffpatch@npm:0.4.1" @@ -16210,7 +16587,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"lodash@npm:4.17.21, lodash@npm:4.x, lodash@npm:^4.17.10, lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4": +"lodash@npm:4.17.21, lodash@npm:^4.17.10, lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: 4983720b9abca930a4a46f18db163d7dad8dd00dbed6db0cc7b499b33b717cce69f80928b27bbb1ff2cbd3b19d251ee90669a8b5ea466072ca81c2ebe91e7468 @@ -16366,7 +16743,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"make-error@npm:1.x, make-error@npm:^1.1.1": +"make-error@npm:^1.1.1": version: 1.3.6 resolution: "make-error@npm:1.3.6" checksum: 2c780bab8409b865e8ee86697c599a2bf2765ec64d21eb67ccda27050e039f983feacad05a0d43aba3c966ea03d305d2612e94fec45474bcbc61181f57c5bb88 @@ -17009,15 +17386,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"mkdirp@npm:1.x, mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4, mkdirp@npm:~1.0.4": - version: 1.0.4 - resolution: "mkdirp@npm:1.0.4" - bin: - mkdirp: bin/cmd.js - checksum: 1aa3a6a2d7514f094a91329ec09994f5d32d2955a4985ecbb3d86f2aaeafc4aa11521f98d606144c1d49cd9835004d9a73342709b8c692c92e59eacf37412468 - languageName: node - linkType: hard - "mkdirp@npm:^0.5.1, mkdirp@npm:^0.5.3, mkdirp@npm:^0.5.4, mkdirp@npm:^0.5.5, mkdirp@npm:~0.5.1": version: 0.5.5 resolution: "mkdirp@npm:0.5.5" @@ -17029,6 +17397,15 @@ fsevents@^1.2.7: languageName: node linkType: hard +"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4, mkdirp@npm:~1.0.4": + version: 1.0.4 + resolution: "mkdirp@npm:1.0.4" + bin: + mkdirp: bin/cmd.js + checksum: 1aa3a6a2d7514f094a91329ec09994f5d32d2955a4985ecbb3d86f2aaeafc4aa11521f98d606144c1d49cd9835004d9a73342709b8c692c92e59eacf37412468 + languageName: node + linkType: hard + "moment-duration-format@npm:2.3.2": version: 2.3.2 resolution: "moment-duration-format@npm:2.3.2" @@ -17446,7 +17823,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"node-releases@npm:^1.1.61, node-releases@npm:^1.1.70": +"node-releases@npm:^1.1.61, node-releases@npm:^1.1.70, node-releases@npm:^1.1.71": version: 1.1.71 resolution: "node-releases@npm:1.1.71" checksum: 9e283003f1deafd0ca7f9bbde9c4b5b05d880ca165217f5227b37406626d6689a246a5c4c72f9a8512be65cd51b13cc7d0f5d8bc68ad36089b620f1810292340 @@ -21507,7 +21884,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"semver@npm:7.3.5, semver@npm:7.x, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4": +"semver@npm:7.3.5, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4": version: 7.3.5 resolution: "semver@npm:7.3.5" dependencies: @@ -23318,29 +23695,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"ts-jest@npm:27.0.0-next.11": - version: 27.0.0-next.11 - resolution: "ts-jest@npm:27.0.0-next.11" - dependencies: - bs-logger: 0.x - buffer-from: 1.x - fast-json-stable-stringify: 2.x - jest-util: 27.0.0-next.8 - json5: 2.x - lodash: 4.x - make-error: 1.x - mkdirp: 1.x - semver: 7.x - yargs-parser: 20.x - peerDependencies: - jest: 27.0.0-next.8 - typescript: ">=3.8 <5.0" - bin: - ts-jest: cli.js - checksum: b69fda5e6d4fad29e86c05d1c109af5e534942f33788863d09ed4d26612e4a1ea59f8f5b731dc8956d4fd2600e036f63f36a876c5a8862783eaa8e9a4ae08416 - languageName: node - linkType: hard - "ts-loader@npm:8.1.0": version: 8.1.0 resolution: "ts-loader@npm:8.1.0" @@ -25199,13 +25553,6 @@ typescript@4.2.2: languageName: node linkType: hard -"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": - version: 20.2.7 - resolution: "yargs-parser@npm:20.2.7" - checksum: 124e7f1c24c9609d5d1c343f14b83289634e19bb43770708ebb6a19852647aaa0f89edcbf0e5b18a21bee77f54513ab5051518b2950cda69eb607a7c6251aa4f - languageName: node - linkType: hard - "yargs-parser@npm:^13.1.2": version: 13.1.2 resolution: "yargs-parser@npm:13.1.2" @@ -25216,6 +25563,13 @@ typescript@4.2.2: languageName: node linkType: hard +"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": + version: 20.2.7 + resolution: "yargs-parser@npm:20.2.7" + checksum: 124e7f1c24c9609d5d1c343f14b83289634e19bb43770708ebb6a19852647aaa0f89edcbf0e5b18a21bee77f54513ab5051518b2950cda69eb607a7c6251aa4f + languageName: node + linkType: hard + "yargs@npm:16.2.0, yargs@npm:^16.0.3, yargs@npm:^16.2.0": version: 16.2.0 resolution: "yargs@npm:16.2.0" From e4060346e864022d4d7c4229cdb9c4d50c238388 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 09:52:40 -1000 Subject: [PATCH 04/14] WIP jest.config.json --- app/jest.config.json | 23 +++ app/jest.config.ts | 28 --- babel.config.json | 6 +- ci/jest.config.json | 6 + ci/jest.config.ts | 10 - jest.config.json | 6 +- package.json | 2 - packages/log/tsconfig.json | 2 +- packages/ros1/jest.config.json | 7 + packages/ros1/jest.config.ts | 11 -- packages/ros1/tsconfig.json | 2 +- packages/rosmsg-bobject/jest.config.json | 8 + packages/rosmsg-bobject/jest.config.ts | 13 -- packages/rosmsg-bobject/tsconfig.json | 2 +- packages/rosmsg-deser/jest.config.json | 6 + packages/rosmsg-deser/jest.config.ts | 10 - packages/rosmsg-deser/tsconfig.json | 2 +- packages/velodyne-cloud/jest.config.json | 7 + packages/velodyne-cloud/jest.config.ts | 11 -- packages/velodyne-cloud/tsconfig.json | 2 +- packages/wasm-bz2/jest.config.json | 7 + packages/wasm-bz2/jest.config.ts | 12 -- packages/xmlrpc/jest.config.json | 7 + packages/xmlrpc/jest.config.ts | 11 -- packages/xmlrpc/tsconfig.json | 2 +- test/jest.config.json | 7 + test/jest.config.ts | 11 -- yarn.lock | 237 +---------------------- 28 files changed, 91 insertions(+), 367 deletions(-) create mode 100644 app/jest.config.json delete mode 100644 app/jest.config.ts create mode 100644 ci/jest.config.json delete mode 100644 ci/jest.config.ts create mode 100644 packages/ros1/jest.config.json delete mode 100644 packages/ros1/jest.config.ts create mode 100644 packages/rosmsg-bobject/jest.config.json delete mode 100644 packages/rosmsg-bobject/jest.config.ts create mode 100644 packages/rosmsg-deser/jest.config.json delete mode 100644 packages/rosmsg-deser/jest.config.ts create mode 100644 packages/velodyne-cloud/jest.config.json delete mode 100644 packages/velodyne-cloud/jest.config.ts create mode 100644 packages/wasm-bz2/jest.config.json delete mode 100644 packages/wasm-bz2/jest.config.ts create mode 100644 packages/xmlrpc/jest.config.json delete mode 100644 packages/xmlrpc/jest.config.ts create mode 100644 test/jest.config.json delete mode 100644 test/jest.config.ts diff --git a/app/jest.config.json b/app/jest.config.json new file mode 100644 index 0000000000..cc2829998a --- /dev/null +++ b/app/jest.config.json @@ -0,0 +1,23 @@ +{ + "transform": { + "\\.[jt]sx?$": "babel-jest", + "\\.ne$": "/test/transformers/neTransformer.js", + "\\.(bin|template|wasm)$": "/test/transformers/rawTransformer.js" + }, + "globals": { + "ReactNull": null + }, + "setupFiles": ["/test/setup.ts", "/test/setupEnzyme.ts", "jest-canvas-mock"], + "setupFilesAfterEnv": ["/test/setupTestFramework.ts"], + "restoreMocks": true, + "moduleNameMapper": { + "\\.svg$": "/test/mocks/MockSvg.tsx", + "react-monaco-editor": "/test/stubs/MonacoEditor.tsx", + "\\.(glb|md|png)$": "/test/mocks/fileMock.ts", + "\\.(css|scss)$": "/test/mocks/styleMock.ts" + }, + "testRunner": "jest-circus/runner", + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/app/jest.config.ts b/app/jest.config.ts deleted file mode 100644 index 3739c04319..0000000000 --- a/app/jest.config.ts +++ /dev/null @@ -1,28 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - transform: { - "\\.[jt]sx?$": "babel-jest", - // "\\.tsx?$": "/test/transformers/rawImportPreprocessor.ts", - "\\.ne$": "/test/transformers/neTransformer.js", - "\\.(bin|template|wasm)$": "/test/transformers/rawTransformer.js", - }, - globals: { - ReactNull: null, // eslint-disable-line no-restricted-syntax - }, - setupFiles: ["/test/setup.ts", "/test/setupEnzyme.ts", "jest-canvas-mock"], - setupFilesAfterEnv: ["/test/setupTestFramework.ts"], - restoreMocks: true, - moduleNameMapper: { - "\\.svg$": "/test/mocks/MockSvg.tsx", - "react-monaco-editor": "/test/stubs/MonacoEditor.tsx", - "\\.(glb|md|png)$": "/test/mocks/fileMock.ts", - "\\.(css|scss)$": "/test/mocks/styleMock.ts", - }, - testRunner: "jest-circus/runner", - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/babel.config.json b/babel.config.json index 88e80e153f..a344142ef9 100644 --- a/babel.config.json +++ b/babel.config.json @@ -1,8 +1,4 @@ { - "presets": [ - // "@babel/preset-env", - "@babel/preset-typescript", - "@babel/preset-react" - ], + "presets": ["@babel/preset-typescript", "@babel/preset-react"], "plugins": ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"] } diff --git a/ci/jest.config.json b/ci/jest.config.json new file mode 100644 index 0000000000..4244d51b36 --- /dev/null +++ b/ci/jest.config.json @@ -0,0 +1,6 @@ +{ + "testRunner": "jest-circus/runner", + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/ci/jest.config.ts b/ci/jest.config.ts deleted file mode 100644 index a1e068089d..0000000000 --- a/ci/jest.config.ts +++ /dev/null @@ -1,10 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - testRunner: "jest-circus/runner", - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/jest.config.json b/jest.config.json index fbd7bd8d54..d8b09e1f4d 100644 --- a/jest.config.json +++ b/jest.config.json @@ -1,8 +1,8 @@ { "//": "Our top level jest config to reference all the projects under our monorepo. We exclude the integration test since it involves performing a webpack build and doesn't support 'watch' or 'debug' in the same way", "projects": [ - "/app/jest.config.ts", - "/ci/jest.config.ts", - "/packages/*/jest.config.ts" + "/app/jest.config.json", + "/ci/jest.config.json", + "/packages/*/jest.config.json" ] } diff --git a/package.json b/package.json index ad49d422da..9270e5bc20 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,6 @@ "devDependencies": { "@actions/exec": "1.0.4", "@babel/core": "7.13.16", - "@babel/preset-env": "7.13.15", "@babel/preset-typescript": "7.13.0", "@foxglove/electron-socket": "workspace:packages/electron-socket", "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud", @@ -57,7 +56,6 @@ "@sentry/electron": "2.4.0", "@types/amplitude-js": "7.0.1", "@types/babel__core": "^7", - "@types/babel__preset-env": "^7", "@types/case-sensitive-paths-webpack-plugin": "2.1.5", "@types/circular-dependency-plugin": "^5.0.2", "@types/electron-devtools-installer": "2.2.0", diff --git a/packages/log/tsconfig.json b/packages/log/tsconfig.json index 766dc14ea5..dd70ccb09f 100644 --- a/packages/log/tsconfig.json +++ b/packages/log/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "test/**/*.ts", "jest.config.ts"], + "include": ["src/**/*.ts", "test/**/*.ts"], "compilerOptions": { "module": "es2020", "noEmit": true diff --git a/packages/ros1/jest.config.json b/packages/ros1/jest.config.json new file mode 100644 index 0000000000..3c1b05e730 --- /dev/null +++ b/packages/ros1/jest.config.json @@ -0,0 +1,7 @@ +{ + "testRunner": "jest-circus/runner", + "testMatch": ["/src/**/*.test.ts"], + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/ros1/jest.config.ts b/packages/ros1/jest.config.ts deleted file mode 100644 index e9290c5007..0000000000 --- a/packages/ros1/jest.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - testRunner: "jest-circus/runner", - testMatch: ["/src/**/*.test.ts"], - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/ros1/tsconfig.json b/packages/ros1/tsconfig.json index 652955676a..e669ce2fbc 100644 --- a/packages/ros1/tsconfig.json +++ b/packages/ros1/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "jest.config.ts"], + "include": ["src/**/*.ts"], "compilerOptions": { "module": "es2020", "lib": ["es2020"], diff --git a/packages/rosmsg-bobject/jest.config.json b/packages/rosmsg-bobject/jest.config.json new file mode 100644 index 0000000000..f751642d99 --- /dev/null +++ b/packages/rosmsg-bobject/jest.config.json @@ -0,0 +1,8 @@ +{ + "testRunner": "jest-circus/runner", + "testMatch": ["/src/**/*.test.ts"], + "setupFiles": ["/src/test/setup.ts"], + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/rosmsg-bobject/jest.config.ts b/packages/rosmsg-bobject/jest.config.ts deleted file mode 100644 index 1995c2708e..0000000000 --- a/packages/rosmsg-bobject/jest.config.ts +++ /dev/null @@ -1,13 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - // plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], - testRunner: "jest-circus/runner", - testMatch: ["/src/**/*.test.ts"], - setupFiles: ["/src/test/setup.ts"], - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/rosmsg-bobject/tsconfig.json b/packages/rosmsg-bobject/tsconfig.json index 766dc14ea5..dd70ccb09f 100644 --- a/packages/rosmsg-bobject/tsconfig.json +++ b/packages/rosmsg-bobject/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "test/**/*.ts", "jest.config.ts"], + "include": ["src/**/*.ts", "test/**/*.ts"], "compilerOptions": { "module": "es2020", "noEmit": true diff --git a/packages/rosmsg-deser/jest.config.json b/packages/rosmsg-deser/jest.config.json new file mode 100644 index 0000000000..4244d51b36 --- /dev/null +++ b/packages/rosmsg-deser/jest.config.json @@ -0,0 +1,6 @@ +{ + "testRunner": "jest-circus/runner", + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/rosmsg-deser/jest.config.ts b/packages/rosmsg-deser/jest.config.ts deleted file mode 100644 index a1e068089d..0000000000 --- a/packages/rosmsg-deser/jest.config.ts +++ /dev/null @@ -1,10 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - testRunner: "jest-circus/runner", - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/rosmsg-deser/tsconfig.json b/packages/rosmsg-deser/tsconfig.json index 3f99ac2bd6..59c180e652 100644 --- a/packages/rosmsg-deser/tsconfig.json +++ b/packages/rosmsg-deser/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "jest.config.ts"], + "include": ["src/**/*.ts"], "compilerOptions": { "module": "es2020", "lib": ["es2020"], diff --git a/packages/velodyne-cloud/jest.config.json b/packages/velodyne-cloud/jest.config.json new file mode 100644 index 0000000000..3c1b05e730 --- /dev/null +++ b/packages/velodyne-cloud/jest.config.json @@ -0,0 +1,7 @@ +{ + "testRunner": "jest-circus/runner", + "testMatch": ["/src/**/*.test.ts"], + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/velodyne-cloud/jest.config.ts b/packages/velodyne-cloud/jest.config.ts deleted file mode 100644 index e9290c5007..0000000000 --- a/packages/velodyne-cloud/jest.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - testRunner: "jest-circus/runner", - testMatch: ["/src/**/*.test.ts"], - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/velodyne-cloud/tsconfig.json b/packages/velodyne-cloud/tsconfig.json index 470b43c480..1c068f6f9c 100644 --- a/packages/velodyne-cloud/tsconfig.json +++ b/packages/velodyne-cloud/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "src/**/*.json", "fixtures/**/*", "jest.config.ts"], + "include": ["src/**/*.ts", "src/**/*.json", "fixtures/**/*"], "compilerOptions": { "outDir": "dist", "module": "commonjs", diff --git a/packages/wasm-bz2/jest.config.json b/packages/wasm-bz2/jest.config.json new file mode 100644 index 0000000000..3c1b05e730 --- /dev/null +++ b/packages/wasm-bz2/jest.config.json @@ -0,0 +1,7 @@ +{ + "testRunner": "jest-circus/runner", + "testMatch": ["/src/**/*.test.ts"], + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/wasm-bz2/jest.config.ts b/packages/wasm-bz2/jest.config.ts deleted file mode 100644 index 270cdfc001..0000000000 --- a/packages/wasm-bz2/jest.config.ts +++ /dev/null @@ -1,12 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - // plugins: ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"], - testRunner: "jest-circus/runner", - testMatch: ["/src/**/*.test.ts"], - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/xmlrpc/jest.config.json b/packages/xmlrpc/jest.config.json new file mode 100644 index 0000000000..3c1b05e730 --- /dev/null +++ b/packages/xmlrpc/jest.config.json @@ -0,0 +1,7 @@ +{ + "testRunner": "jest-circus/runner", + "testMatch": ["/src/**/*.test.ts"], + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/packages/xmlrpc/jest.config.ts b/packages/xmlrpc/jest.config.ts deleted file mode 100644 index e9290c5007..0000000000 --- a/packages/xmlrpc/jest.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - testRunner: "jest-circus/runner", - testMatch: ["/src/**/*.test.ts"], - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/packages/xmlrpc/tsconfig.json b/packages/xmlrpc/tsconfig.json index ba5c50cc3f..559c0c71e0 100644 --- a/packages/xmlrpc/tsconfig.json +++ b/packages/xmlrpc/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["src/**/*.ts", "jest.config.ts"], + "include": ["src/**/*.ts"], "compilerOptions": { "outDir": "dist", "module": "commonjs", diff --git a/test/jest.config.json b/test/jest.config.json new file mode 100644 index 0000000000..b3b45b7246 --- /dev/null +++ b/test/jest.config.json @@ -0,0 +1,7 @@ +{ + "globalSetup": "/globalSetup.ts", + "testRunner": "jest-circus/runner", + "haste": { + "forceNodeFilesystemAPI": true + } +} diff --git a/test/jest.config.ts b/test/jest.config.ts deleted file mode 100644 index 97cf165113..0000000000 --- a/test/jest.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ - -export default { - globalSetup: "/globalSetup.ts", - testRunner: "jest-circus/runner", - haste: { - forceNodeFilesystemAPI: true, - }, -}; diff --git a/yarn.lock b/yarn.lock index 668696fa96..ec7d7cb6a6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -114,7 +114,7 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.13.15": +"@babel/compat-data@npm:^7.13.15": version: 7.13.15 resolution: "@babel/compat-data@npm:7.13.15" checksum: 6abe95cbd36e54217cdcc51829e377cf31451ed0a64ff43cc82e0ce728d9e265990c5e079d5c3f9ee0afd49e20d6c90112fe2093ed0699c2ffc62f5172df24fa @@ -236,7 +236,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.13.13, @babel/helper-compilation-targets@npm:^7.13.16": +"@babel/helper-compilation-targets@npm:^7.13.16": version: 7.13.16 resolution: "@babel/helper-compilation-targets@npm:7.13.16" dependencies: @@ -295,24 +295,6 @@ __metadata: languageName: node linkType: hard -"@babel/helper-define-polyfill-provider@npm:^0.2.0": - version: 0.2.0 - resolution: "@babel/helper-define-polyfill-provider@npm:0.2.0" - dependencies: - "@babel/helper-compilation-targets": ^7.13.0 - "@babel/helper-module-imports": ^7.12.13 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/traverse": ^7.13.0 - debug: ^4.1.1 - lodash.debounce: ^4.0.8 - resolve: ^1.14.2 - semver: ^6.1.2 - peerDependencies: - "@babel/core": ^7.4.0-0 - checksum: 575785f62b10ee5cd9d8c092b6077f8bad8eed42ac50a8d55b82430c6958f94da11f5b20de650e31b400f7c7a0af08b6e4476669fd2a3b24414d1a9db89d531f - languageName: node - linkType: hard - "@babel/helper-explode-assignable-expression@npm:^7.12.13": version: 7.13.0 resolution: "@babel/helper-explode-assignable-expression@npm:7.13.0" @@ -583,32 +565,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.13.12" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 - "@babel/plugin-proposal-optional-chaining": ^7.13.12 - peerDependencies: - "@babel/core": ^7.13.0 - checksum: ad0b508a5c3f3436ff0ff598b7aad63686bfe7f846b19c862c09397bc987ab9244b866204440496cf6d1b7ec07ea01a6fe95fd3067dbdf58ec48d9d4d4d9a440 - languageName: node - linkType: hard - -"@babel/plugin-proposal-async-generator-functions@npm:^7.13.15": - version: 7.13.15 - resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.15" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-remap-async-to-generator": ^7.13.0 - "@babel/plugin-syntax-async-generators": ^7.8.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: cfef2d2d97f4dee2930278ff8596940d3fef07522cf88b6635dd671cee055d23bd196eeba731600f7edb950e65ba915e363e5555982598087561e276a4fe6fce - languageName: node - linkType: hard - "@babel/plugin-proposal-async-generator-functions@npm:^7.13.8": version: 7.13.8 resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.8" @@ -784,19 +740,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/plugin-proposal-optional-chaining@npm:7.13.12" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 8663cfbf5cdfe41f8765976b94de9525c223085d53bb48bd481a03539a7680f2aa3b3fd525d80144e1c1c646cbad817fea7ef8da573bbf0600ddde32fab7420b - languageName: node - linkType: hard - "@babel/plugin-proposal-private-methods@npm:^7.12.1, @babel/plugin-proposal-private-methods@npm:^7.13.0": version: 7.13.0 resolution: "@babel/plugin-proposal-private-methods@npm:7.13.0" @@ -1388,17 +1331,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.13.15": - version: 7.13.15 - resolution: "@babel/plugin-transform-regenerator@npm:7.13.15" - dependencies: - regenerator-transform: ^0.14.2 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: ac1f6bda7e72c073b0957c543cba8a29a40d561582c17d938d4cd36ff0c441adfa2caa21dd80cf3be1674f18cca4cd936be29f8df659fbfb020b58f45c7787fa - languageName: node - linkType: hard - "@babel/plugin-transform-reserved-words@npm:^7.12.13": version: 7.12.13 resolution: "@babel/plugin-transform-reserved-words@npm:7.12.13" @@ -1502,85 +1434,6 @@ __metadata: languageName: node linkType: hard -"@babel/preset-env@npm:7.13.15": - version: 7.13.15 - resolution: "@babel/preset-env@npm:7.13.15" - dependencies: - "@babel/compat-data": ^7.13.15 - "@babel/helper-compilation-targets": ^7.13.13 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-validator-option": ^7.12.17 - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.13.12 - "@babel/plugin-proposal-async-generator-functions": ^7.13.15 - "@babel/plugin-proposal-class-properties": ^7.13.0 - "@babel/plugin-proposal-dynamic-import": ^7.13.8 - "@babel/plugin-proposal-export-namespace-from": ^7.12.13 - "@babel/plugin-proposal-json-strings": ^7.13.8 - "@babel/plugin-proposal-logical-assignment-operators": ^7.13.8 - "@babel/plugin-proposal-nullish-coalescing-operator": ^7.13.8 - "@babel/plugin-proposal-numeric-separator": ^7.12.13 - "@babel/plugin-proposal-object-rest-spread": ^7.13.8 - "@babel/plugin-proposal-optional-catch-binding": ^7.13.8 - "@babel/plugin-proposal-optional-chaining": ^7.13.12 - "@babel/plugin-proposal-private-methods": ^7.13.0 - "@babel/plugin-proposal-unicode-property-regex": ^7.12.13 - "@babel/plugin-syntax-async-generators": ^7.8.4 - "@babel/plugin-syntax-class-properties": ^7.12.13 - "@babel/plugin-syntax-dynamic-import": ^7.8.3 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 - "@babel/plugin-syntax-json-strings": ^7.8.3 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 - "@babel/plugin-syntax-object-rest-spread": ^7.8.3 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 - "@babel/plugin-syntax-top-level-await": ^7.12.13 - "@babel/plugin-transform-arrow-functions": ^7.13.0 - "@babel/plugin-transform-async-to-generator": ^7.13.0 - "@babel/plugin-transform-block-scoped-functions": ^7.12.13 - "@babel/plugin-transform-block-scoping": ^7.12.13 - "@babel/plugin-transform-classes": ^7.13.0 - "@babel/plugin-transform-computed-properties": ^7.13.0 - "@babel/plugin-transform-destructuring": ^7.13.0 - "@babel/plugin-transform-dotall-regex": ^7.12.13 - "@babel/plugin-transform-duplicate-keys": ^7.12.13 - "@babel/plugin-transform-exponentiation-operator": ^7.12.13 - "@babel/plugin-transform-for-of": ^7.13.0 - "@babel/plugin-transform-function-name": ^7.12.13 - "@babel/plugin-transform-literals": ^7.12.13 - "@babel/plugin-transform-member-expression-literals": ^7.12.13 - "@babel/plugin-transform-modules-amd": ^7.13.0 - "@babel/plugin-transform-modules-commonjs": ^7.13.8 - "@babel/plugin-transform-modules-systemjs": ^7.13.8 - "@babel/plugin-transform-modules-umd": ^7.13.0 - "@babel/plugin-transform-named-capturing-groups-regex": ^7.12.13 - "@babel/plugin-transform-new-target": ^7.12.13 - "@babel/plugin-transform-object-super": ^7.12.13 - "@babel/plugin-transform-parameters": ^7.13.0 - "@babel/plugin-transform-property-literals": ^7.12.13 - "@babel/plugin-transform-regenerator": ^7.13.15 - "@babel/plugin-transform-reserved-words": ^7.12.13 - "@babel/plugin-transform-shorthand-properties": ^7.12.13 - "@babel/plugin-transform-spread": ^7.13.0 - "@babel/plugin-transform-sticky-regex": ^7.12.13 - "@babel/plugin-transform-template-literals": ^7.13.0 - "@babel/plugin-transform-typeof-symbol": ^7.12.13 - "@babel/plugin-transform-unicode-escapes": ^7.12.13 - "@babel/plugin-transform-unicode-regex": ^7.12.13 - "@babel/preset-modules": ^0.1.4 - "@babel/types": ^7.13.14 - babel-plugin-polyfill-corejs2: ^0.2.0 - babel-plugin-polyfill-corejs3: ^0.2.0 - babel-plugin-polyfill-regenerator: ^0.2.0 - core-js-compat: ^3.9.0 - semver: ^6.3.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bcab2e9ce31ba4c6d0d56ff4afc1f6a6365952f2ab1001bad91dec4ad72b2b7578cdecc214b173caf0a7bf19bd075844294786432d56113aefa0e14b61d67d79 - languageName: node - linkType: hard - "@babel/preset-env@npm:^7.12.11": version: 7.13.9 resolution: "@babel/preset-env@npm:7.13.9" @@ -4427,13 +4280,6 @@ __metadata: languageName: node linkType: hard -"@types/babel__preset-env@npm:^7": - version: 7.9.1 - resolution: "@types/babel__preset-env@npm:7.9.1" - checksum: bb76f246000f396b1542a331bcdb62d60f49d2cf78208d44b156cbfd567f9c941614f0ed1aee8d494091455580dc3629dfddf08e73e13661339603c11822145f - languageName: node - linkType: hard - "@types/babel__template@npm:*": version: 7.4.0 resolution: "@types/babel__template@npm:7.4.0" @@ -7171,19 +7017,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs2@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-corejs2@npm:0.2.0" - dependencies: - "@babel/compat-data": ^7.13.11 - "@babel/helper-define-polyfill-provider": ^0.2.0 - semver: ^6.1.1 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 5d2825a9f28b322956da8941b069c3e4130478bc3620ab20e4b680671b31ad95d1c69514c58df9d5e2d54c87aba9ca92df5a7dbad54005b25ac9587af252db07 - languageName: node - linkType: hard - "babel-plugin-polyfill-corejs3@npm:^0.1.0, babel-plugin-polyfill-corejs3@npm:^0.1.3": version: 0.1.7 resolution: "babel-plugin-polyfill-corejs3@npm:0.1.7" @@ -7196,18 +7029,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs3@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-corejs3@npm:0.2.0" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.2.0 - core-js-compat: ^3.9.1 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: ae25400dd8764f737ecbd02f9aa3f35df62d3d239ad269edebab195551686b020d4b9b957cc303c6fbf9497c214e7b2f7fa3eee460d00b569d0d6f634ef3d5aa - languageName: node - linkType: hard - "babel-plugin-polyfill-regenerator@npm:^0.1.2": version: 0.1.6 resolution: "babel-plugin-polyfill-regenerator@npm:0.1.6" @@ -7219,17 +7040,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-regenerator@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-regenerator@npm:0.2.0" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.2.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 538ab98e3062fb4ef4eae09587292513c03917902fe6d8c90b49001b26d41ffc3cd2da34b3b999b12e501cde1233e356af9f33f898c623720c94c6d9022d998c - languageName: node - linkType: hard - "babel-plugin-react-docgen@npm:^4.2.1": version: 4.2.1 resolution: "babel-plugin-react-docgen@npm:4.2.1" @@ -7802,21 +7612,6 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.16.4": - version: 4.16.5 - resolution: "browserslist@npm:4.16.5" - dependencies: - caniuse-lite: ^1.0.30001214 - colorette: ^1.2.2 - electron-to-chromium: ^1.3.719 - escalade: ^3.1.1 - node-releases: ^1.1.71 - bin: - browserslist: cli.js - checksum: ea06cb8262a69d1479ab2c288eb939250ea0a6b172a181ce7ce9410f1ee29701095c8c13bd575b70baead87743866471814f8c0247c9785b229b04bef399e4c8 - languageName: node - linkType: hard - "bser@npm:2.1.1": version: 2.1.1 resolution: "bser@npm:2.1.1" @@ -8173,13 +7968,6 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001214": - version: 1.0.30001214 - resolution: "caniuse-lite@npm:1.0.30001214" - checksum: 96c09af8989fe03e6aa0cc0130be3392c4a871093f0ae7190cb1185862a63b54de14483561578564d034cf993c315d4939727badee39ed76144e94ae4ab2a0f7 - languageName: node - linkType: hard - "capture-exit@npm:^2.0.0": version: 2.0.0 resolution: "capture-exit@npm:2.0.0" @@ -9175,16 +8963,6 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.9.1": - version: 3.11.0 - resolution: "core-js-compat@npm:3.11.0" - dependencies: - browserslist: ^4.16.4 - semver: 7.0.0 - checksum: 608d11356728f6c0df98b41c50cad9b3d54de600423e141fe964d6ae5ede1d2479398b4bbe1e4cd4dfbb9a2a721cfd88987aae6dd68131557efb2bb3f7f1896a - languageName: node - linkType: hard - "core-js-pure@npm:^3.0.0, core-js-pure@npm:^3.8.1, core-js-pure@npm:^3.8.2": version: 3.9.1 resolution: "core-js-pure@npm:3.9.1" @@ -10857,13 +10635,6 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.3.719": - version: 1.3.720 - resolution: "electron-to-chromium@npm:1.3.720" - checksum: 51bb3720af1ffe2ac04e0760f4cdcf319c2e371625e7ed9e433ee962c1c7ae09e65b44afbe7ddf5c71dc9a01583c8e0015ff04b86f0222ed7cc5b5871494078d - languageName: node - linkType: hard - "electron-updater@npm:4.3.8": version: 4.3.8 resolution: "electron-updater@npm:4.3.8" @@ -12511,7 +12282,6 @@ __metadata: dependencies: "@actions/exec": 1.0.4 "@babel/core": 7.13.16 - "@babel/preset-env": 7.13.15 "@babel/preset-typescript": 7.13.0 "@foxglove/electron-socket": "workspace:packages/electron-socket" "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud" @@ -12520,7 +12290,6 @@ __metadata: "@sentry/electron": 2.4.0 "@types/amplitude-js": 7.0.1 "@types/babel__core": ^7 - "@types/babel__preset-env": ^7 "@types/case-sensitive-paths-webpack-plugin": 2.1.5 "@types/circular-dependency-plugin": ^5.0.2 "@types/electron-devtools-installer": 2.2.0 @@ -17823,7 +17592,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"node-releases@npm:^1.1.61, node-releases@npm:^1.1.70, node-releases@npm:^1.1.71": +"node-releases@npm:^1.1.61, node-releases@npm:^1.1.70": version: 1.1.71 resolution: "node-releases@npm:1.1.71" checksum: 9e283003f1deafd0ca7f9bbde9c4b5b05d880ca165217f5227b37406626d6689a246a5c4c72f9a8512be65cd51b13cc7d0f5d8bc68ad36089b620f1810292340 From edf3f977f19c8eb04ff40e495ef0b1a505cd82cc Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 11:37:10 -1000 Subject: [PATCH 05/14] WIP custom rule --- .eslintrc.yaml | 15 ++++++++------- .vscode/settings.json | 3 ++- app/util/layout.test.ts | 1 + app/util/time.test.ts | 2 +- eslint-rules/foxglove-license-header.js | 25 +++++++++++++++++++++++++ package.json | 1 - tsconfig.base.json | 1 + yarn.lock | 10 ---------- 8 files changed, 38 insertions(+), 20 deletions(-) create mode 100644 eslint-rules/foxglove-license-header.js diff --git a/.eslintrc.yaml b/.eslintrc.yaml index 6a9055130b..d825614bc2 100644 --- a/.eslintrc.yaml +++ b/.eslintrc.yaml @@ -16,7 +16,6 @@ plugins: - react - react-hooks - "@typescript-eslint" - - header - file-progress extends: @@ -88,12 +87,14 @@ rules: - error - additionalHooks: "(useAsync(?!AppConfigurationValue))" no-new-func: error - header/header: - - error - - line - - - " This Source Code Form is subject to the terms of the Mozilla Public" - - " License, v2.0. If a copy of the MPL was not distributed with this" - - " file, You can obtain one at http://mozilla.org/MPL/2.0/" + "foxglove-license-header": error + # header/header: + # - error + # - line + # - - { pattern: "(^/\\*\\* @jest-environment jsdom \\*/$)?" } + # - " This Source Code Form is subject to the terms of the Mozilla Public" + # - " License, v2.0. If a copy of the MPL was not distributed with this" + # - " file, You can obtain one at http://mozilla.org/MPL/2.0/" curly: error "@typescript-eslint/no-unused-vars": diff --git a/.vscode/settings.json b/.vscode/settings.json index 85e66d83e8..f013971d63 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -19,7 +19,8 @@ "typescript.tsdk": "node_modules/typescript/lib", "typescript.preferences.importModuleSpecifier": "non-relative", "eslint.options": { - "reportUnusedDisableDirectives": true + "reportUnusedDisableDirectives": true, + "rulePaths": ["eslint-rules"] }, // enable intellisense in custom snippets (see snippets.code-snippets) "editor.suggest.snippetsPreventQuickSuggestions": false diff --git a/app/util/layout.test.ts b/app/util/layout.test.ts index d5ac546c30..f184e52d66 100644 --- a/app/util/layout.test.ts +++ b/app/util/layout.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/time.test.ts b/app/util/time.test.ts index 034dac04f0..c69c70addd 100644 --- a/app/util/time.test.ts +++ b/app/util/time.test.ts @@ -19,7 +19,7 @@ import * as time from "./time"; describe("time.toDate & time.fromDate", () => { it("converts to date and from date", () => { - const totalSeconds = Math.round(Date.now() / 1000) + "x"; + const totalSeconds = Math.round(Date.now() / 1000); const stamp = { sec: totalSeconds, nsec: 1000 }; const now = new Date(totalSeconds * 1000); expect(time.toDate(stamp)).toEqual(now); diff --git a/eslint-rules/foxglove-license-header.js b/eslint-rules/foxglove-license-header.js new file mode 100644 index 0000000000..dfbd108f94 --- /dev/null +++ b/eslint-rules/foxglove-license-header.js @@ -0,0 +1,25 @@ +// @ts-check + +const COMMENT = ` +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at http://mozilla.org/MPL/2.0/ +`.trim(); + +module.exports = { + create: (context) => { + return { + Program: (node) => { + const source = context.getSourceCode().getText(); + console.log("derp", source.substr(0, 200)); + context.report({ + loc: node.loc, + message: "derp2", + fix: (fixer) => { + fixer.insertTextBefore(node, COMMENT); + }, + }); + }, + }; + }, +}; diff --git a/package.json b/package.json index 2d7dc12faa..681894ce07 100644 --- a/package.json +++ b/package.json @@ -89,7 +89,6 @@ "eslint-config-prettier": "8.1.0", "eslint-import-resolver-webpack": "0.13.0", "eslint-plugin-file-progress": "1.1.1", - "eslint-plugin-header": "github:amacneil/eslint-plugin-header#notemplate", "eslint-plugin-import": "2.22.1", "eslint-plugin-prettier": "3.3.1", "eslint-plugin-react": "7.23.1", diff --git a/tsconfig.base.json b/tsconfig.base.json index 5fb65252e7..c94a0c38d6 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -10,6 +10,7 @@ "moduleResolution": "node", "esModuleInterop": true, "importHelpers": false, + "isolatedModules": true, //fixme:comment // webpack handles JS imports for us "allowJs": false, diff --git a/yarn.lock b/yarn.lock index a94a6a0784..7662a10f5d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11453,15 +11453,6 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-header@github:amacneil/eslint-plugin-header#notemplate": - version: 3.1.1 - resolution: "eslint-plugin-header@https://github.com/amacneil/eslint-plugin-header.git#commit=073d5559b1d83e4e6d3a390d37eb6ad392b21ba0" - peerDependencies: - eslint: ">=7.7.0" - checksum: fae4b7b87ee1b9ea82f53418ab2a7462b5b4e64dc32223b546fd833b2b247c20bd4a84fb8dc240a81e5a968d7a62cac63931e384873d09a7f96a86d5ec4579b5 - languageName: node - linkType: hard - "eslint-plugin-import@npm:2.22.1": version: 2.22.1 resolution: "eslint-plugin-import@npm:2.22.1" @@ -12547,7 +12538,6 @@ __metadata: eslint-config-prettier: 8.1.0 eslint-import-resolver-webpack: 0.13.0 eslint-plugin-file-progress: 1.1.1 - eslint-plugin-header: "github:amacneil/eslint-plugin-header#notemplate" eslint-plugin-import: 2.22.1 eslint-plugin-prettier: 3.3.1 eslint-plugin-react: 7.23.1 From 94bcffa138f7c4673af18207bd5d2a52537e3900 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 12:46:01 -1000 Subject: [PATCH 06/14] Fix jsdom environment --- app/PanelAPI/useBlocksByTopic.test.tsx | 1 + app/PanelAPI/useDataSourceInfo.test.tsx | 1 + app/PanelAPI/useMessageReducer.test.tsx | 1 + app/PanelAPI/useMessagesByTopic.test.tsx | 1 + app/components/ButtonBase.test.tsx | 1 + app/components/DocumentDropListener.test.tsx | 1 + .../ExperimentalFeatureSettings.test.tsx | 1 + app/components/GlobalKeyListener.test.tsx | 1 + app/components/Icon.test.tsx | 1 + .../MessagePathInput.test.ts | 1 + .../useCachedGetMessagePathDataItems.test.tsx | 1 + .../useLatestMessageDataItem.test.tsx | 1 + .../useMessagesByPath.test.tsx | 1 + app/components/MessagePipeline/index.test.tsx | 1 + app/components/Panel.test.tsx | 1 + app/components/ShareJsonModal.test.tsx | 1 + .../CombinedDataProvider.test.ts | 1 + .../ParseMessagesDataProvider.test.ts | 1 + .../RewriteBinaryDataProvider.test.ts | 1 + app/dataProviders/RpcDataProvider.test.ts | 1 + app/hooks/useContextSelector.test.tsx | 1 + app/hooks/usePrompt.test.tsx | 1 + app/jest.config.json | 3 +- app/panels/Internals.test.tsx | 1 + app/panels/Plot/PlotMenu.test.ts | 1 + app/panels/Publish/index.test.tsx | 1 + .../FrameCompatibility.test.tsx | 1 + .../ThreeDimensionalViz/SearchText.test.tsx | 1 + .../useSceneBuilderAndTransformsData.test.tsx | 1 + .../TopicTree/useTopicTree.test.tsx | 1 + .../diagnostics/DiagnosticsHistory.test.ts | 1 + app/players/RandomAccessPlayer.test.ts | 1 + app/players/UserNodePlayer/index.test.ts | 1 + .../automatedRun/AutomatedRunPlayer.test.ts | 1 + .../performanceMeasuringClient.test.ts | 1 + app/reducers/layoutHistory.test.ts | 1 + app/reducers/panels.test.ts | 1 + app/reducers/recentLayouts.test.ts | 1 + ...=> typescriptTransformerWithRawImports.js} | 27 +- app/util/Rpc.test.ts | 1 + app/util/RpcUtils.test.ts | 1 + app/util/Storage.test.ts | 1 + app/util/binaryObjects/BobjectRpc.test.ts | 1 + app/util/indexeddb/MetaDatabase.test.ts | 1 + app/util/parseMessageDefinitionsCache.test.ts | 1 + eslint-rules/foxglove-license-header.js | 34 +- package.json | 4 +- packages/rosmsg-bobject/package.json | 2 +- packages/rosmsg-deser/package.json | 2 +- tsconfig.jest.json | 7 - tsconfig.json | 1 + yarn.lock | 695 +----------------- 52 files changed, 95 insertions(+), 723 deletions(-) rename app/test/transformers/{rawImportPreprocessor.ts => typescriptTransformerWithRawImports.js} (51%) delete mode 100644 tsconfig.jest.json diff --git a/app/PanelAPI/useBlocksByTopic.test.tsx b/app/PanelAPI/useBlocksByTopic.test.tsx index 88c9032c44..3fe10c3f1b 100644 --- a/app/PanelAPI/useBlocksByTopic.test.tsx +++ b/app/PanelAPI/useBlocksByTopic.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/PanelAPI/useDataSourceInfo.test.tsx b/app/PanelAPI/useDataSourceInfo.test.tsx index 11961c46bd..d28aea9f17 100644 --- a/app/PanelAPI/useDataSourceInfo.test.tsx +++ b/app/PanelAPI/useDataSourceInfo.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/PanelAPI/useMessageReducer.test.tsx b/app/PanelAPI/useMessageReducer.test.tsx index 4df8027550..81eb5cb12f 100644 --- a/app/PanelAPI/useMessageReducer.test.tsx +++ b/app/PanelAPI/useMessageReducer.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/PanelAPI/useMessagesByTopic.test.tsx b/app/PanelAPI/useMessagesByTopic.test.tsx index 3d04b0d129..bc7d5f31e4 100644 --- a/app/PanelAPI/useMessagesByTopic.test.tsx +++ b/app/PanelAPI/useMessagesByTopic.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/ButtonBase.test.tsx b/app/components/ButtonBase.test.tsx index 702b769609..102e4c70dc 100644 --- a/app/components/ButtonBase.test.tsx +++ b/app/components/ButtonBase.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/DocumentDropListener.test.tsx b/app/components/DocumentDropListener.test.tsx index d08bd2c277..9178cfc1ad 100644 --- a/app/components/DocumentDropListener.test.tsx +++ b/app/components/DocumentDropListener.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/ExperimentalFeatureSettings.test.tsx b/app/components/ExperimentalFeatureSettings.test.tsx index ce381041ae..39149bcb3a 100644 --- a/app/components/ExperimentalFeatureSettings.test.tsx +++ b/app/components/ExperimentalFeatureSettings.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/GlobalKeyListener.test.tsx b/app/components/GlobalKeyListener.test.tsx index 4f881c4c62..ed5f66a1b3 100644 --- a/app/components/GlobalKeyListener.test.tsx +++ b/app/components/GlobalKeyListener.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/Icon.test.tsx b/app/components/Icon.test.tsx index f0ad3addb8..35eaf84e13 100644 --- a/app/components/Icon.test.tsx +++ b/app/components/Icon.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/MessagePathSyntax/MessagePathInput.test.ts b/app/components/MessagePathSyntax/MessagePathInput.test.ts index 6554f6f307..8b1ebc3d2c 100644 --- a/app/components/MessagePathSyntax/MessagePathInput.test.ts +++ b/app/components/MessagePathSyntax/MessagePathInput.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/MessagePathSyntax/useCachedGetMessagePathDataItems.test.tsx b/app/components/MessagePathSyntax/useCachedGetMessagePathDataItems.test.tsx index eed34debf5..d67ef9a1bb 100644 --- a/app/components/MessagePathSyntax/useCachedGetMessagePathDataItems.test.tsx +++ b/app/components/MessagePathSyntax/useCachedGetMessagePathDataItems.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/MessagePathSyntax/useLatestMessageDataItem.test.tsx b/app/components/MessagePathSyntax/useLatestMessageDataItem.test.tsx index b236a15d2d..c6d3128d8b 100644 --- a/app/components/MessagePathSyntax/useLatestMessageDataItem.test.tsx +++ b/app/components/MessagePathSyntax/useLatestMessageDataItem.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/MessagePathSyntax/useMessagesByPath.test.tsx b/app/components/MessagePathSyntax/useMessagesByPath.test.tsx index ed9bfc1a24..81b88ec30d 100644 --- a/app/components/MessagePathSyntax/useMessagesByPath.test.tsx +++ b/app/components/MessagePathSyntax/useMessagesByPath.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/MessagePipeline/index.test.tsx b/app/components/MessagePipeline/index.test.tsx index 62c6d9cdd0..a0b900ec45 100644 --- a/app/components/MessagePipeline/index.test.tsx +++ b/app/components/MessagePipeline/index.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/Panel.test.tsx b/app/components/Panel.test.tsx index 720bace62b..fd1f672b12 100644 --- a/app/components/Panel.test.tsx +++ b/app/components/Panel.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/components/ShareJsonModal.test.tsx b/app/components/ShareJsonModal.test.tsx index 896568fbcc..d13377b462 100644 --- a/app/components/ShareJsonModal.test.tsx +++ b/app/components/ShareJsonModal.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/dataProviders/CombinedDataProvider.test.ts b/app/dataProviders/CombinedDataProvider.test.ts index f773b7c1cb..c72c5b7f19 100644 --- a/app/dataProviders/CombinedDataProvider.test.ts +++ b/app/dataProviders/CombinedDataProvider.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/dataProviders/ParseMessagesDataProvider.test.ts b/app/dataProviders/ParseMessagesDataProvider.test.ts index 27e79f578b..b39af5e921 100644 --- a/app/dataProviders/ParseMessagesDataProvider.test.ts +++ b/app/dataProviders/ParseMessagesDataProvider.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/dataProviders/RewriteBinaryDataProvider.test.ts b/app/dataProviders/RewriteBinaryDataProvider.test.ts index 8e2ec3e77a..58aa3dc6b6 100644 --- a/app/dataProviders/RewriteBinaryDataProvider.test.ts +++ b/app/dataProviders/RewriteBinaryDataProvider.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/dataProviders/RpcDataProvider.test.ts b/app/dataProviders/RpcDataProvider.test.ts index 39b83a6894..a5f447860d 100644 --- a/app/dataProviders/RpcDataProvider.test.ts +++ b/app/dataProviders/RpcDataProvider.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/hooks/useContextSelector.test.tsx b/app/hooks/useContextSelector.test.tsx index 9b6ffc46be..b1037792ad 100644 --- a/app/hooks/useContextSelector.test.tsx +++ b/app/hooks/useContextSelector.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/hooks/usePrompt.test.tsx b/app/hooks/usePrompt.test.tsx index 16ed8a3958..47c75f4ca1 100644 --- a/app/hooks/usePrompt.test.tsx +++ b/app/hooks/usePrompt.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/jest.config.json b/app/jest.config.json index cc2829998a..fed567f2fb 100644 --- a/app/jest.config.json +++ b/app/jest.config.json @@ -1,6 +1,7 @@ { + "//": "Note: we use babel-jest rather than ts-jest for performance reasons.", "transform": { - "\\.[jt]sx?$": "babel-jest", + "\\.tsx?$": "/test/transformers/typescriptTransformerWithRawImports.js", "\\.ne$": "/test/transformers/neTransformer.js", "\\.(bin|template|wasm)$": "/test/transformers/rawTransformer.js" }, diff --git a/app/panels/Internals.test.tsx b/app/panels/Internals.test.tsx index 9deb70e9cc..c32d1c5e5f 100644 --- a/app/panels/Internals.test.tsx +++ b/app/panels/Internals.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/Plot/PlotMenu.test.ts b/app/panels/Plot/PlotMenu.test.ts index 1d7d34f41e..0818877c3d 100644 --- a/app/panels/Plot/PlotMenu.test.ts +++ b/app/panels/Plot/PlotMenu.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/Publish/index.test.tsx b/app/panels/Publish/index.test.tsx index c054feb1cf..3d45b762dc 100644 --- a/app/panels/Publish/index.test.tsx +++ b/app/panels/Publish/index.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/ThreeDimensionalViz/FrameCompatibility.test.tsx b/app/panels/ThreeDimensionalViz/FrameCompatibility.test.tsx index 01daade372..c383e9d7be 100644 --- a/app/panels/ThreeDimensionalViz/FrameCompatibility.test.tsx +++ b/app/panels/ThreeDimensionalViz/FrameCompatibility.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/ThreeDimensionalViz/SearchText.test.tsx b/app/panels/ThreeDimensionalViz/SearchText.test.tsx index 8127a95a00..e7302a7b6d 100644 --- a/app/panels/ThreeDimensionalViz/SearchText.test.tsx +++ b/app/panels/ThreeDimensionalViz/SearchText.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/ThreeDimensionalViz/TopicTree/useSceneBuilderAndTransformsData.test.tsx b/app/panels/ThreeDimensionalViz/TopicTree/useSceneBuilderAndTransformsData.test.tsx index d3b1f57ad9..dc2a58a379 100644 --- a/app/panels/ThreeDimensionalViz/TopicTree/useSceneBuilderAndTransformsData.test.tsx +++ b/app/panels/ThreeDimensionalViz/TopicTree/useSceneBuilderAndTransformsData.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/ThreeDimensionalViz/TopicTree/useTopicTree.test.tsx b/app/panels/ThreeDimensionalViz/TopicTree/useTopicTree.test.tsx index 0cc0d41bfa..b6462758e9 100644 --- a/app/panels/ThreeDimensionalViz/TopicTree/useTopicTree.test.tsx +++ b/app/panels/ThreeDimensionalViz/TopicTree/useTopicTree.test.tsx @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/panels/diagnostics/DiagnosticsHistory.test.ts b/app/panels/diagnostics/DiagnosticsHistory.test.ts index 72b0dbcb06..c373482b98 100644 --- a/app/panels/diagnostics/DiagnosticsHistory.test.ts +++ b/app/panels/diagnostics/DiagnosticsHistory.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/players/RandomAccessPlayer.test.ts b/app/players/RandomAccessPlayer.test.ts index 185d93f7c3..4993733ecb 100644 --- a/app/players/RandomAccessPlayer.test.ts +++ b/app/players/RandomAccessPlayer.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/players/UserNodePlayer/index.test.ts b/app/players/UserNodePlayer/index.test.ts index 1d64984a29..da049b0999 100644 --- a/app/players/UserNodePlayer/index.test.ts +++ b/app/players/UserNodePlayer/index.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/players/automatedRun/AutomatedRunPlayer.test.ts b/app/players/automatedRun/AutomatedRunPlayer.test.ts index dd7f77a9f7..943f193676 100644 --- a/app/players/automatedRun/AutomatedRunPlayer.test.ts +++ b/app/players/automatedRun/AutomatedRunPlayer.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/players/automatedRun/performanceMeasuringClient.test.ts b/app/players/automatedRun/performanceMeasuringClient.test.ts index 99207216cb..82d32872c9 100644 --- a/app/players/automatedRun/performanceMeasuringClient.test.ts +++ b/app/players/automatedRun/performanceMeasuringClient.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/reducers/layoutHistory.test.ts b/app/reducers/layoutHistory.test.ts index 623ce71aff..4f0d04430d 100644 --- a/app/reducers/layoutHistory.test.ts +++ b/app/reducers/layoutHistory.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/reducers/panels.test.ts b/app/reducers/panels.test.ts index 6f64a6bc04..64435aaa21 100644 --- a/app/reducers/panels.test.ts +++ b/app/reducers/panels.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/reducers/recentLayouts.test.ts b/app/reducers/recentLayouts.test.ts index 26795b5642..64a5c13991 100644 --- a/app/reducers/recentLayouts.test.ts +++ b/app/reducers/recentLayouts.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/test/transformers/rawImportPreprocessor.ts b/app/test/transformers/typescriptTransformerWithRawImports.js similarity index 51% rename from app/test/transformers/rawImportPreprocessor.ts rename to app/test/transformers/typescriptTransformerWithRawImports.js index 8b776a0596..01e805ae33 100644 --- a/app/test/transformers/rawImportPreprocessor.ts +++ b/app/test/transformers/typescriptTransformerWithRawImports.js @@ -2,33 +2,28 @@ // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ -import fs from "fs"; -import { Transformer } from "@jest/transform"; -// import {} from "@jest/create-cache-key-function"; +/* eslint-disable @typescript-eslint/no-var-requires */ +const babelJest = require("babel-jest").default; +const fs = require("fs"); // look for `?raw` import statements // re-write these into `const variable = "string source";`; const importRegEx = /^import (.*) from "(.*)\?raw";$/gm; -const importReplacer = (_: unknown, p1: string, p2: string) => { +const importReplacer = (_, p1, p2) => { const resolved = require.resolve(p2); const rawFile = fs.readFileSync(resolved, { encoding: "utf-8" }); return `const ${p1} = ${JSON.stringify(rawFile.toString())};`; }; -function rewriteSource(source: string) { +function rewriteSource(source) { return source.replace(importRegEx, importReplacer); } -const transformer: Transformer = { - process(sourceText, sourcePath, options) { - return rewriteSource(sourceText); +module.exports = { + process(sourceText, ...args) { + return babelJest.process(rewriteSource(sourceText), ...args); + }, + getCacheKey(sourceText, ...args) { + return babelJest.getCacheKey(rewriteSource(sourceText), ...args); }, - // FIXME - // getCacheKey( - // sourceText, sourcePath, options, - // ) { - // cryptod - // return transformer.getCacheKey(rewriteSource(source), filePath, options); - // }, }; -module.exports = transformer; diff --git a/app/util/Rpc.test.ts b/app/util/Rpc.test.ts index dc703dd869..d83b33a7af 100644 --- a/app/util/Rpc.test.ts +++ b/app/util/Rpc.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/RpcUtils.test.ts b/app/util/RpcUtils.test.ts index 86fdcebac5..5bb6f14ad7 100644 --- a/app/util/RpcUtils.test.ts +++ b/app/util/RpcUtils.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/Storage.test.ts b/app/util/Storage.test.ts index f84879141e..db38fcb073 100644 --- a/app/util/Storage.test.ts +++ b/app/util/Storage.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/binaryObjects/BobjectRpc.test.ts b/app/util/binaryObjects/BobjectRpc.test.ts index fa23c113cc..599cdcdbfe 100644 --- a/app/util/binaryObjects/BobjectRpc.test.ts +++ b/app/util/binaryObjects/BobjectRpc.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/indexeddb/MetaDatabase.test.ts b/app/util/indexeddb/MetaDatabase.test.ts index 61e0a5463d..e99dd64e58 100644 --- a/app/util/indexeddb/MetaDatabase.test.ts +++ b/app/util/indexeddb/MetaDatabase.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/app/util/parseMessageDefinitionsCache.test.ts b/app/util/parseMessageDefinitionsCache.test.ts index 33d804d7ef..d6c020115c 100644 --- a/app/util/parseMessageDefinitionsCache.test.ts +++ b/app/util/parseMessageDefinitionsCache.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ diff --git a/eslint-rules/foxglove-license-header.js b/eslint-rules/foxglove-license-header.js index dfbd108f94..6b5974de90 100644 --- a/eslint-rules/foxglove-license-header.js +++ b/eslint-rules/foxglove-license-header.js @@ -1,6 +1,12 @@ -// @ts-check +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at http://mozilla.org/MPL/2.0/ + +// A custom eslint rule checking for the existence of a license header comment, while allowing +// certain prefixes that cannot be moved below the license header. -const COMMENT = ` +const ALLOWED_PREFIX_LINES = ["/** @jest-environment jsdom */"]; +const LICENSE_HEADER = ` // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ @@ -9,16 +15,22 @@ const COMMENT = ` module.exports = { create: (context) => { return { - Program: (node) => { + Program: () => { const source = context.getSourceCode().getText(); - console.log("derp", source.substr(0, 200)); - context.report({ - loc: node.loc, - message: "derp2", - fix: (fixer) => { - fixer.insertTextBefore(node, COMMENT); - }, - }); + const headerIndex = source.indexOf(LICENSE_HEADER); + const prefixLines = source.substring(0, headerIndex).trim().split("\n"); + const prefixLinesAreValid = prefixLines.every( + (line) => line === "" || ALLOWED_PREFIX_LINES.includes(line), + ); + if (headerIndex === -1 || !prefixLinesAreValid) { + context.report({ + message: "Missing license header", + loc: { start: 0, end: +source.indexOf("\n") + 1 }, + fix: () => { + return { range: [0, 0], text: LICENSE_HEADER + "\n" }; + }, + }); + } }, }; }, diff --git a/package.json b/package.json index 681894ce07..5cc3ea0e56 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "test": "jest", "test:debug": "NODE_OPTIONS='--inspect-brk' jest", "test:watch": "jest --watch", - "test:integration": "TS_NODE_PROJECT=tsconfig.jest.json jest --forceExit --projects test", + "test:integration": "jest --forceExit --projects test", "package:win": "yarn package --win", "package:darwin": "yarn package --mac", "package:linux": "yarn package --linux", @@ -71,7 +71,7 @@ "@typescript-eslint/eslint-plugin": "4.21.0", "@typescript-eslint/parser": "4.21.0", "amplitude-js": "8.1.0", - "babel-jest": "26.6.3", + "babel-jest": "27.0.0-next.8", "babel-plugin-transform-import-meta": "1.0.1", "browserify-zlib": "0.2.0", "circular-dependency-plugin": "5.2.2", diff --git a/packages/rosmsg-bobject/package.json b/packages/rosmsg-bobject/package.json index 405c1b0d6c..a7a75a8d32 100644 --- a/packages/rosmsg-bobject/package.json +++ b/packages/rosmsg-bobject/package.json @@ -4,7 +4,7 @@ "private": true, "main": "./src/index.ts", "devDependencies": { - "jest": "26.6.3", + "jest": "27.0.0-next.8", "typescript": "4.2.2" } } diff --git a/packages/rosmsg-deser/package.json b/packages/rosmsg-deser/package.json index 5a97d7684e..e2bd22fe24 100644 --- a/packages/rosmsg-deser/package.json +++ b/packages/rosmsg-deser/package.json @@ -5,7 +5,7 @@ "main": "src/index.ts", "module": "src/index.ts", "devDependencies": { - "jest": "26.6.3", + "jest": "27.0.0-next.8", "typescript": "4.2.2" } } diff --git a/tsconfig.jest.json b/tsconfig.jest.json deleted file mode 100644 index 8bf2caa834..0000000000 --- a/tsconfig.jest.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "typeRoots": ["node_modules/@types/node", "node_modules/@types/jest"] - }, - "include": [] -} diff --git a/tsconfig.json b/tsconfig.json index f0fbf51ed1..c68c33b866 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,6 +8,7 @@ "./*.js", "./**/jest.config.ts", "./ci/**/*.ts", + "./eslint-rules/*.js", "./test/**/*.ts", "./resources/notarize.ts" ], diff --git a/yarn.lock b/yarn.lock index 7662a10f5d..cf12528ae7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2315,7 +2315,7 @@ __metadata: version: 0.0.0-use.local resolution: "@foxglove/rosmsg-bobject@workspace:packages/rosmsg-bobject" dependencies: - jest: 26.6.3 + jest: 27.0.0-next.8 typescript: 4.2.2 languageName: unknown linkType: soft @@ -2324,7 +2324,7 @@ __metadata: version: 0.0.0-use.local resolution: "@foxglove/rosmsg-deser@workspace:packages/rosmsg-deser" dependencies: - jest: 26.6.3 + jest: 27.0.0-next.8 typescript: 4.2.2 languageName: unknown linkType: soft @@ -2390,20 +2390,6 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/console@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - "@types/node": "*" - chalk: ^4.0.0 - jest-message-util: ^26.6.2 - jest-util: ^26.6.2 - slash: ^3.0.0 - checksum: 72920a893e4a622ce96786eb1d3f6ef0c88c9d1ec32fffbde4e25f582b5f1ccd5f5b7a370c0b1a4917fb74c046467f43422c0039c497df4b307527910759e0a5 - languageName: node - linkType: hard - "@jest/console@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/console@npm:27.0.0-next.8" @@ -2418,42 +2404,6 @@ __metadata: languageName: node linkType: hard -"@jest/core@npm:^26.6.3": - version: 26.6.3 - resolution: "@jest/core@npm:26.6.3" - dependencies: - "@jest/console": ^26.6.2 - "@jest/reporters": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - ansi-escapes: ^4.2.1 - chalk: ^4.0.0 - exit: ^0.1.2 - graceful-fs: ^4.2.4 - jest-changed-files: ^26.6.2 - jest-config: ^26.6.3 - jest-haste-map: ^26.6.2 - jest-message-util: ^26.6.2 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-resolve-dependencies: ^26.6.3 - jest-runner: ^26.6.3 - jest-runtime: ^26.6.3 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - jest-watcher: ^26.6.2 - micromatch: ^4.0.2 - p-each-series: ^2.1.0 - rimraf: ^3.0.0 - slash: ^3.0.0 - strip-ansi: ^6.0.0 - checksum: e0d35e40fcbda21997dbc126722db92f8d534926c9bcf4a30ee79aa772e40ead2fefd405866e3364bff7ee50b12f03705c3fea5491b77807091961b2c3a0d65e - languageName: node - linkType: hard - "@jest/core@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/core@npm:27.0.0-next.8" @@ -2496,18 +2446,6 @@ __metadata: languageName: node linkType: hard -"@jest/environment@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/environment@npm:26.6.2" - dependencies: - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - jest-mock: ^26.6.2 - checksum: a4f426546801e79d2f5d1a516d80c330ccbe1638f7a7705f65110ac33f8a3ded08ccef75ad648610618122f2bfeba34e0c1e616eccc219a315956d63ff30d8fc - languageName: node - linkType: hard - "@jest/environment@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/environment@npm:27.0.0-next.8" @@ -2520,20 +2458,6 @@ __metadata: languageName: node linkType: hard -"@jest/fake-timers@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/fake-timers@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - "@sinonjs/fake-timers": ^6.0.1 - "@types/node": "*" - jest-message-util: ^26.6.2 - jest-mock: ^26.6.2 - jest-util: ^26.6.2 - checksum: a82aa6d2f31d5e9958484b32e4714cb2ebca6ce6baf590c29505c8eea638663bf27f27b98a30ab574023cb15ecffbe70dc75d14694d76c4ccc78bee37d2ec1d1 - languageName: node - linkType: hard - "@jest/fake-timers@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/fake-timers@npm:27.0.0-next.8" @@ -2548,17 +2472,6 @@ __metadata: languageName: node linkType: hard -"@jest/globals@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/globals@npm:26.6.2" - dependencies: - "@jest/environment": ^26.6.2 - "@jest/types": ^26.6.2 - expect: ^26.6.2 - checksum: d8f68a24adf87f6e32ba34ec884502ec067ed79a2855852ed64daa50383a53daf2b97487dd049e77c6fd6cade28b32f8cad4f0a2d02ce6b8aa23f95a136db8a7 - languageName: node - linkType: hard - "@jest/globals@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/globals@npm:27.0.0-next.8" @@ -2570,42 +2483,6 @@ __metadata: languageName: node linkType: hard -"@jest/reporters@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/reporters@npm:26.6.2" - dependencies: - "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - chalk: ^4.0.0 - collect-v8-coverage: ^1.0.0 - exit: ^0.1.2 - glob: ^7.1.2 - graceful-fs: ^4.2.4 - istanbul-lib-coverage: ^3.0.0 - istanbul-lib-instrument: ^4.0.3 - istanbul-lib-report: ^3.0.0 - istanbul-lib-source-maps: ^4.0.0 - istanbul-reports: ^3.0.2 - jest-haste-map: ^26.6.2 - jest-resolve: ^26.6.2 - jest-util: ^26.6.2 - jest-worker: ^26.6.2 - node-notifier: ^8.0.0 - slash: ^3.0.0 - source-map: ^0.6.0 - string-length: ^4.0.1 - terminal-link: ^2.0.0 - v8-to-istanbul: ^7.0.0 - dependenciesMeta: - node-notifier: - optional: true - checksum: 86ed8563dd4862de79c1b4f2e529a9a471d856b44aa66069c91b406d4c32ea70d909757797f99fc8d14a7eb2bd95286bd716346e289a92dba243e4b9eddef537 - languageName: node - linkType: hard - "@jest/reporters@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/reporters@npm:27.0.0-next.8" @@ -2643,17 +2520,6 @@ __metadata: languageName: node linkType: hard -"@jest/source-map@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/source-map@npm:26.6.2" - dependencies: - callsites: ^3.0.0 - graceful-fs: ^4.2.4 - source-map: ^0.6.0 - checksum: 9a6d3e650660229fadfcf4d9789cdf99d645d3827b05cbce7676f39d19af2ab00cca728420ef188cf44b92289e06e2a5f3e5299085e3ae080cc0472ea1fa4cc9 - languageName: node - linkType: hard - "@jest/source-map@npm:^27.0.0-next.3": version: 27.0.0-next.3 resolution: "@jest/source-map@npm:27.0.0-next.3" @@ -2665,18 +2531,6 @@ __metadata: languageName: node linkType: hard -"@jest/test-result@npm:^26.6.2": - version: 26.6.2 - resolution: "@jest/test-result@npm:26.6.2" - dependencies: - "@jest/console": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/istanbul-lib-coverage": ^2.0.0 - collect-v8-coverage: ^1.0.0 - checksum: 0ecd35212bb19f2dee97d795193897780729c446739715a52cb37ed248020ad6a32bc2e9563812f56028be19c651237403c7dfec9ed967f443d9afcc385dd9dc - languageName: node - linkType: hard - "@jest/test-result@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/test-result@npm:27.0.0-next.8" @@ -2689,19 +2543,6 @@ __metadata: languageName: node linkType: hard -"@jest/test-sequencer@npm:^26.6.3": - version: 26.6.3 - resolution: "@jest/test-sequencer@npm:26.6.3" - dependencies: - "@jest/test-result": ^26.6.2 - graceful-fs: ^4.2.4 - jest-haste-map: ^26.6.2 - jest-runner: ^26.6.3 - jest-runtime: ^26.6.3 - checksum: c0c2c7917a0b6e25414b0ed570701c9cd5b2ba18fe0c55ac3a2d53ccf6aeeaf7ec388c14c78d13c27c4a7e7ee87bdca52d09d820c0ebf80a3e7d47f3fc52e9ef - languageName: node - linkType: hard - "@jest/test-sequencer@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "@jest/test-sequencer@npm:27.0.0-next.8" @@ -3375,15 +3216,6 @@ __metadata: languageName: node linkType: hard -"@sinonjs/fake-timers@npm:^6.0.1": - version: 6.0.1 - resolution: "@sinonjs/fake-timers@npm:6.0.1" - dependencies: - "@sinonjs/commons": ^1.7.0 - checksum: 64458b908773638dda08b555a00e6fbbbc679735348291dc1b7f437ada2f60242537fdc48e4ee82d2573d86984ec87e755b66a96c0ed9ebf0f46b4c6687ccde2 - languageName: node - linkType: hard - "@sinonjs/fake-timers@npm:^7.0.2": version: 7.0.5 resolution: "@sinonjs/fake-timers@npm:7.0.5" @@ -4433,7 +4265,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7, @types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.1.7": +"@types/babel__core@npm:^7, @types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": version: 7.1.14 resolution: "@types/babel__core@npm:7.1.14" dependencies: @@ -5045,7 +4877,7 @@ __metadata: languageName: node linkType: hard -"@types/prettier@npm:2.2.3, @types/prettier@npm:^2.0.0, @types/prettier@npm:^2.1.5": +"@types/prettier@npm:2.2.3, @types/prettier@npm:^2.1.5": version: 2.2.3 resolution: "@types/prettier@npm:2.2.3" checksum: b7e80288f9f776caca84391a7a217b8baac6b4fce00bb9701af69299d465cb8faf17466f0af0803970c74d2c191767ca729a6d21a2f7e2ce552d1ef6cc0d653a @@ -7005,25 +6837,7 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:26.6.3, babel-jest@npm:^26.6.3": - version: 26.6.3 - resolution: "babel-jest@npm:26.6.3" - dependencies: - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/babel__core": ^7.1.7 - babel-plugin-istanbul: ^6.0.0 - babel-preset-jest: ^26.6.2 - chalk: ^4.0.0 - graceful-fs: ^4.2.4 - slash: ^3.0.0 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 89231d00e6b73e1dc6f009cb97a74edb1af4426f2cfa5d9b71684d1382526651820f8dd301857b9007a44c6b7d1fb77242b201bdea3cff98488b893e9c7d7182 - languageName: node - linkType: hard - -"babel-jest@npm:^27.0.0-next.8": +"babel-jest@npm:27.0.0-next.8, babel-jest@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "babel-jest@npm:27.0.0-next.8" dependencies: @@ -7124,18 +6938,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^26.6.2": - version: 26.6.2 - resolution: "babel-plugin-jest-hoist@npm:26.6.2" - dependencies: - "@babel/template": ^7.3.3 - "@babel/types": ^7.3.3 - "@types/babel__core": ^7.0.0 - "@types/babel__traverse": ^7.0.6 - checksum: e9c1de0fced1c8220590a0d6f37631f5b975964a8e876f0426fc7fd224f4c154b01f156e87401de47556b873bf4414eb2a9632fb56765f35fc07fe69e5b76d31 - languageName: node - linkType: hard - "babel-plugin-jest-hoist@npm:^27.0.0-next.3": version: 27.0.0-next.3 resolution: "babel-plugin-jest-hoist@npm:27.0.0-next.3" @@ -7290,18 +7092,6 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^26.6.2": - version: 26.6.2 - resolution: "babel-preset-jest@npm:26.6.2" - dependencies: - babel-plugin-jest-hoist: ^26.6.2 - babel-preset-current-node-syntax: ^1.0.0 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 466ca17bba2638cadda5c25f3108dab1867b30e5d728366d0d2309be5d6555db8738a6cacd2c43284bee2ce7917e3285194c223a22b3d9817794f00c2775fdb2 - languageName: node - linkType: hard - "babel-preset-jest@npm:^27.0.0-next.3": version: 27.0.0-next.3 resolution: "babel-preset-jest@npm:27.0.0-next.3" @@ -8482,13 +8272,6 @@ __metadata: languageName: node linkType: hard -"cjs-module-lexer@npm:^0.6.0": - version: 0.6.0 - resolution: "cjs-module-lexer@npm:0.6.0" - checksum: 333671db7fb916d9c569a52fba714a86051881c69a4df784a07cb1dfec2a1796c7bcd7ba46ff9035cccb6e7aaff612a83f6505437c01a5ae14c4ebc6c36f762c - languageName: node - linkType: hard - "cjs-module-lexer@npm:^1.0.0": version: 1.1.1 resolution: "cjs-module-lexer@npm:1.1.1" @@ -8630,17 +8413,6 @@ __metadata: languageName: node linkType: hard -"cliui@npm:^6.0.0": - version: 6.0.0 - resolution: "cliui@npm:6.0.0" - dependencies: - string-width: ^4.2.0 - strip-ansi: ^6.0.0 - wrap-ansi: ^6.2.0 - checksum: e59d0642946dd300b1b002e69f43b32d55e682c84f6f2073705ffe77477b400aeabd4f4795467db0771a21d35ee070071f6a31925e4f83b52a7fe1f5c8e6e860 - languageName: node - linkType: hard - "cliui@npm:^7.0.2": version: 7.0.4 resolution: "cliui@npm:7.0.4" @@ -10897,13 +10669,6 @@ __metadata: languageName: node linkType: hard -"emittery@npm:^0.7.1": - version: 0.7.2 - resolution: "emittery@npm:0.7.2" - checksum: 34acfef51922a1b73d75cb658bf43ecb279633b263ffa831fb87697abbbd3aa4241ef15d204eeaa6a3c62656bd7563de7145c416a2bb18c4805e54ce6d7cdac6 - languageName: node - linkType: hard - "emittery@npm:^0.8.1": version: 0.8.1 resolution: "emittery@npm:0.8.1" @@ -11819,20 +11584,6 @@ __metadata: languageName: node linkType: hard -"expect@npm:^26.6.2": - version: 26.6.2 - resolution: "expect@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - ansi-styles: ^4.0.0 - jest-get-type: ^26.3.0 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-regex-util: ^26.0.0 - checksum: a4ec4cbafac8b05eb02a8af5f086dede84a3a701abbfdafeadca24a1d286bd07035b32b2864a6ff012a733009beb0b96c10469b40832c5ee0d2dd0bb6b50a5b0 - languageName: node - linkType: hard - "expect@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "expect@npm:27.0.0-next.8" @@ -12520,7 +12271,7 @@ __metadata: "@typescript-eslint/eslint-plugin": 4.21.0 "@typescript-eslint/parser": 4.21.0 amplitude-js: 8.1.0 - babel-jest: 26.6.3 + babel-jest: 27.0.0-next.8 babel-plugin-transform-import-meta: 1.0.1 browserify-zlib: 0.2.0 circular-dependency-plugin: 5.2.2 @@ -13225,13 +12976,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"growly@npm:^1.3.0": - version: 1.3.0 - resolution: "growly@npm:1.3.0" - checksum: c87f7e8c785cac6ee60719c9d62f7d790a85dafa13d62c4667664e3a21ee771f5fd19df3f374d2f7bdf297b8f687cf70e19bb066aba4832e6f6caa5190812578 - languageName: node - linkType: hard - "gud@npm:^1.0.0": version: 1.0.0 resolution: "gud@npm:1.0.0" @@ -15153,17 +14897,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-changed-files@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-changed-files@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - execa: ^4.0.0 - throat: ^5.0.0 - checksum: b15a1c524b32b16694aaa4b2823266b89b54dddbb7c37ed0fdea605ea79ee784ce1003dc6163aa041d47453dfa32e21a4ade56b464d58459cdaa8e2291c83d12 - languageName: node - linkType: hard - "jest-changed-files@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-changed-files@npm:27.0.0-next.8" @@ -15202,29 +14935,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-cli@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-cli@npm:26.6.3" - dependencies: - "@jest/core": ^26.6.3 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 - chalk: ^4.0.0 - exit: ^0.1.2 - graceful-fs: ^4.2.4 - import-local: ^3.0.2 - is-ci: ^2.0.0 - jest-config: ^26.6.3 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - prompts: ^2.0.1 - yargs: ^15.4.1 - bin: - jest: bin/jest.js - checksum: 2d32e7e4b2802d230625cb041630abe25a8764fcea6a8ecf46a5ad68f23bd1498e5297bc43d1ba714832d433de6676d2bd3ac93d0fecec230665fe8421f23863 - languageName: node - linkType: hard - "jest-cli@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-cli@npm:27.0.0-next.8" @@ -15253,37 +14963,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-config@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-config@npm:26.6.3" - dependencies: - "@babel/core": ^7.1.0 - "@jest/test-sequencer": ^26.6.3 - "@jest/types": ^26.6.2 - babel-jest: ^26.6.3 - chalk: ^4.0.0 - deepmerge: ^4.2.2 - glob: ^7.1.1 - graceful-fs: ^4.2.4 - jest-environment-jsdom: ^26.6.2 - jest-environment-node: ^26.6.2 - jest-get-type: ^26.3.0 - jest-jasmine2: ^26.6.3 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - micromatch: ^4.0.2 - pretty-format: ^26.6.2 - peerDependencies: - ts-node: ">=9.0.0" - peerDependenciesMeta: - ts-node: - optional: true - checksum: 974e7690bab003cc204906802107b6a38a32bcb2033bf738bdecc6d8ee5b536b4ca11d65c8a511ad0e730ec631651d666787ffcaf86365869dcceacb06d4e875 - languageName: node - linkType: hard - "jest-config@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-config@npm:27.0.0-next.8" @@ -15316,7 +14995,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-diff@npm:^26.0.0, jest-diff@npm:^26.6.2": +"jest-diff@npm:^26.0.0": version: 26.6.2 resolution: "jest-diff@npm:26.6.2" dependencies: @@ -15340,15 +15019,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-docblock@npm:^26.0.0": - version: 26.0.0 - resolution: "jest-docblock@npm:26.0.0" - dependencies: - detect-newline: ^3.0.0 - checksum: 54b8ea1c8445a4b15e9ee5035f1bd60b0d492b87258995133a1b5df43a07803c93b54e8adaa45eae05778bd61ad57745491c625e7aa65198a9aa4f0c79030b56 - languageName: node - linkType: hard - "jest-docblock@npm:^27.0.0-next.0": version: 27.0.0-next.0 resolution: "jest-docblock@npm:27.0.0-next.0" @@ -15358,19 +15028,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-each@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-each@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - chalk: ^4.0.0 - jest-get-type: ^26.3.0 - jest-util: ^26.6.2 - pretty-format: ^26.6.2 - checksum: 628eaeca647adb4d6cf75bdc17c9ceb8cbcbb6921d838a583cd4de3db188e3e49b62209e3a0703f1281db379d1b2c07254900e5d97e85d61dd193d7b40361d3a - languageName: node - linkType: hard - "jest-each@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-each@npm:27.0.0-next.8" @@ -15384,21 +15041,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-environment-jsdom@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-environment-jsdom@npm:26.6.2" - dependencies: - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - jest-mock: ^26.6.2 - jest-util: ^26.6.2 - jsdom: ^16.4.0 - checksum: 70af4860b71237274619cb93ebebf7da978ef086df2b6ad39ab23aba427b039e01e9c565afeee05f025d112d975252eee342a615416029b9b9a71ca7810b2a7d - languageName: node - linkType: hard - "jest-environment-jsdom@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-environment-jsdom@npm:27.0.0-next.8" @@ -15414,20 +15056,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-environment-node@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-environment-node@npm:26.6.2" - dependencies: - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - jest-mock: ^26.6.2 - jest-util: ^26.6.2 - checksum: 68ea035d62b35faf1991c0a0a432c1d9547ce93949e9460761071748cbf4b1d818e47421df1eb7b15a3eda7c0846e284b4a5ece5d99122307a0ad742ea765a57 - languageName: node - linkType: hard - "jest-environment-node@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-environment-node@npm:27.0.0-next.8" @@ -15505,32 +15133,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-jasmine2@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-jasmine2@npm:26.6.3" - dependencies: - "@babel/traverse": ^7.1.0 - "@jest/environment": ^26.6.2 - "@jest/source-map": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - chalk: ^4.0.0 - co: ^4.6.0 - expect: ^26.6.2 - is-generator-fn: ^2.0.0 - jest-each: ^26.6.2 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-runtime: ^26.6.3 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - pretty-format: ^26.6.2 - throat: ^5.0.0 - checksum: 18b15901f8eea23cb77b45dab7bbd9c9c15f6329516c4e5ccc36dff82153b9f992f7de264db45390a1a06b5cf730f073a9c49ed7b8905f7289c6f8055e8f7459 - languageName: node - linkType: hard - "jest-jasmine2@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-jasmine2@npm:27.0.0-next.8" @@ -15557,16 +15159,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-leak-detector@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-leak-detector@npm:26.6.2" - dependencies: - jest-get-type: ^26.3.0 - pretty-format: ^26.6.2 - checksum: 08c1bbb628c46d22bead4de7bcbe6a4c9d5761d55f15a1d938b9409473eeb6175545ebade44318f9ae950fcdf484e1cbffbbcdcce8600b946e21300d7d1ed206 - languageName: node - linkType: hard - "jest-leak-detector@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-leak-detector@npm:27.0.0-next.8" @@ -15577,18 +15169,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-matcher-utils@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-matcher-utils@npm:26.6.2" - dependencies: - chalk: ^4.0.0 - jest-diff: ^26.6.2 - jest-get-type: ^26.3.0 - pretty-format: ^26.6.2 - checksum: c6db72f19e90d8c3b3f949bc174e4a1b95db5973080eaf716b69df0069faa9b9da2de4502cf9b5c1376387b49705611259f45f04efb7dfc3deb72bcf3602a6a1 - languageName: node - linkType: hard - "jest-matcher-utils@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-matcher-utils@npm:27.0.0-next.8" @@ -15601,23 +15181,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-message-util@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-message-util@npm:26.6.2" - dependencies: - "@babel/code-frame": ^7.0.0 - "@jest/types": ^26.6.2 - "@types/stack-utils": ^2.0.0 - chalk: ^4.0.0 - graceful-fs: ^4.2.4 - micromatch: ^4.0.2 - pretty-format: ^26.6.2 - slash: ^3.0.0 - stack-utils: ^2.0.2 - checksum: 7a47773259e5bb431e3dba44321fd75d9e3264b12fc4fe584378053a8b065c61d1c7d07625c8e2c432ccf2d7f0dc68a9f6547bc62d0d558b8e5da0e82f824ecd - languageName: node - linkType: hard - "jest-message-util@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-message-util@npm:27.0.0-next.8" @@ -15635,16 +15198,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-mock@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-mock@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - "@types/node": "*" - checksum: 98e658beca866a5391fd5c0503a985a928231fd0652dea31809efa706a043ac4c4559769215ba8c8d0cde758f5c5463fbf99f233441e82641cace68023308fb6 - languageName: node - linkType: hard - "jest-mock@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-mock@npm:27.0.0-next.8" @@ -15681,17 +15234,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-resolve-dependencies@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-resolve-dependencies@npm:26.6.3" - dependencies: - "@jest/types": ^26.6.2 - jest-regex-util: ^26.0.0 - jest-snapshot: ^26.6.2 - checksum: 72e7a200c404197f1c06aff7faa77de13e12c2bfdc1a0a6bd9f8b96cd23317b64e2b614a26b67beece86d51249c3ec7dbeb3dfe17d284930307cd769712ace25 - languageName: node - linkType: hard - "jest-resolve-dependencies@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-resolve-dependencies@npm:27.0.0-next.8" @@ -15703,22 +15245,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-resolve@npm:26.6.2, jest-resolve@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-resolve@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - chalk: ^4.0.0 - graceful-fs: ^4.2.4 - jest-pnp-resolver: ^1.2.2 - jest-util: ^26.6.2 - read-pkg-up: ^7.0.1 - resolve: ^1.18.1 - slash: ^3.0.0 - checksum: 61e8884462b4bcdaa26dc8544b497f2e2dae0b0701c363d433afb482c7f2faa6d0ce691250ad64eddb7fff552dc025315c388e0449411c1522a4dd013cbe49ae - languageName: node - linkType: hard - "jest-resolve@npm:27.0.0-next.8, jest-resolve@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-resolve@npm:27.0.0-next.8" @@ -15735,34 +15261,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-runner@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-runner@npm:26.6.3" - dependencies: - "@jest/console": ^26.6.2 - "@jest/environment": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - chalk: ^4.0.0 - emittery: ^0.7.1 - exit: ^0.1.2 - graceful-fs: ^4.2.4 - jest-config: ^26.6.3 - jest-docblock: ^26.0.0 - jest-haste-map: ^26.6.2 - jest-leak-detector: ^26.6.2 - jest-message-util: ^26.6.2 - jest-resolve: ^26.6.2 - jest-runtime: ^26.6.3 - jest-util: ^26.6.2 - jest-worker: ^26.6.2 - source-map-support: ^0.5.6 - throat: ^5.0.0 - checksum: 7cac133ccfb4df461d32f536e7593c21e03b9b01fc97582f51b8487e673648444fe59ea3a96f1f6afddddecf62be86b1d8249723e3a3575cc04fa95f07a163c7 - languageName: node - linkType: hard - "jest-runner@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-runner@npm:27.0.0-next.8" @@ -15792,43 +15290,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-runtime@npm:^26.6.3": - version: 26.6.3 - resolution: "jest-runtime@npm:26.6.3" - dependencies: - "@jest/console": ^26.6.2 - "@jest/environment": ^26.6.2 - "@jest/fake-timers": ^26.6.2 - "@jest/globals": ^26.6.2 - "@jest/source-map": ^26.6.2 - "@jest/test-result": ^26.6.2 - "@jest/transform": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/yargs": ^15.0.0 - chalk: ^4.0.0 - cjs-module-lexer: ^0.6.0 - collect-v8-coverage: ^1.0.0 - exit: ^0.1.2 - glob: ^7.1.3 - graceful-fs: ^4.2.4 - jest-config: ^26.6.3 - jest-haste-map: ^26.6.2 - jest-message-util: ^26.6.2 - jest-mock: ^26.6.2 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.6.2 - jest-snapshot: ^26.6.2 - jest-util: ^26.6.2 - jest-validate: ^26.6.2 - slash: ^3.0.0 - strip-bom: ^4.0.0 - yargs: ^15.4.1 - bin: - jest-runtime: bin/jest-runtime.js - checksum: 5ef4ceaefb0cd8c140d58d2d4f660467cb6581d17622789d1c0bf1576fded6a9e0e831c3bb8b3f528ec81279f3fb38a6fb71e1d1a8960d7cdc8e048d33b71c32 - languageName: node - linkType: hard - "jest-runtime@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-runtime@npm:27.0.0-next.8" @@ -15883,30 +15344,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-snapshot@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-snapshot@npm:26.6.2" - dependencies: - "@babel/types": ^7.0.0 - "@jest/types": ^26.6.2 - "@types/babel__traverse": ^7.0.4 - "@types/prettier": ^2.0.0 - chalk: ^4.0.0 - expect: ^26.6.2 - graceful-fs: ^4.2.4 - jest-diff: ^26.6.2 - jest-get-type: ^26.3.0 - jest-haste-map: ^26.6.2 - jest-matcher-utils: ^26.6.2 - jest-message-util: ^26.6.2 - jest-resolve: ^26.6.2 - natural-compare: ^1.4.0 - pretty-format: ^26.6.2 - semver: ^7.3.2 - checksum: 9cf50bd7b7b31736f914ea71f8049ddf8a9ebcfdbb663d262ad55045f1dd74cb599152946844193503363b9fbb32ee84f882ceae5067181e1dac537846801ae7 - languageName: node - linkType: hard - "jest-snapshot@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-snapshot@npm:27.0.0-next.8" @@ -15969,20 +15406,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-validate@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-validate@npm:26.6.2" - dependencies: - "@jest/types": ^26.6.2 - camelcase: ^6.0.0 - chalk: ^4.0.0 - jest-get-type: ^26.3.0 - leven: ^3.1.0 - pretty-format: ^26.6.2 - checksum: b19fd33b8667a45fea08a56353189b70532ebe360a6ac2e2320eac5e047be410053dcb3a6bcfe99d5e580e03580710af722119268d26ad5185871f5bfa0f6ca2 - languageName: node - linkType: hard - "jest-validate@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-validate@npm:27.0.0-next.8" @@ -15997,21 +15420,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-watcher@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-watcher@npm:26.6.2" - dependencies: - "@jest/test-result": ^26.6.2 - "@jest/types": ^26.6.2 - "@types/node": "*" - ansi-escapes: ^4.2.1 - chalk: ^4.0.0 - jest-util: ^26.6.2 - string-length: ^4.0.1 - checksum: d4a13c17c7b9bd98616d7a4ff087c0c16346038ba6b6db6f4a15acbce2ea9a9c7b8b873d174ade3f458c9ad5607f7cadd29309aa13f03a844f984d3711b57805 - languageName: node - linkType: hard - "jest-watcher@npm:^27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest-watcher@npm:27.0.0-next.8" @@ -16049,19 +15457,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest@npm:26.6.3": - version: 26.6.3 - resolution: "jest@npm:26.6.3" - dependencies: - "@jest/core": ^26.6.3 - import-local: ^3.0.2 - jest-cli: ^26.6.3 - bin: - jest: bin/jest.js - checksum: 4ffcfefa2b30999a71c205e1aacf2b3d7af10f36c17ba1baf45677684116ad5aa6a5bb162ad2dd418f9ea99d18f24b70d8c83fb317b765a3acac361a50e9db9f - languageName: node - linkType: hard - "jest@npm:27.0.0-next.8": version: 27.0.0-next.8 resolution: "jest@npm:27.0.0-next.8" @@ -18174,20 +17569,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"node-notifier@npm:^8.0.0": - version: 8.0.2 - resolution: "node-notifier@npm:8.0.2" - dependencies: - growly: ^1.3.0 - is-wsl: ^2.2.0 - semver: ^7.3.2 - shellwords: ^0.1.1 - uuid: ^8.3.0 - which: ^2.0.2 - checksum: e90aac4592f1fe4822702d21db4f86814e7fbfa5e3f0b809ef74fcca2ba2cb51f9e3cd33d321bc4201979c7b5161faa18de21cefa741e4a3f263c291beb37025 - languageName: node - linkType: hard - "node-releases@npm:^1.1.61, node-releases@npm:^1.1.70": version: 1.1.71 resolution: "node-releases@npm:1.1.71" @@ -21750,7 +21131,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.9.0": +"resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.9.0": version: 1.20.0 resolution: "resolve@npm:1.20.0" dependencies: @@ -21770,7 +21151,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.14.2#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.18.1#builtin, resolve@patch:resolve@^1.19.0#builtin, resolve@patch:resolve@^1.20.0#builtin, resolve@patch:resolve@^1.3.2#builtin, resolve@patch:resolve@^1.9.0#builtin": +"resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.14.2#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.19.0#builtin, resolve@patch:resolve@^1.20.0#builtin, resolve@patch:resolve@^1.3.2#builtin, resolve@patch:resolve@^1.9.0#builtin": version: 1.20.0 resolution: "resolve@patch:resolve@npm%3A1.20.0#builtin::version=1.20.0&hash=3388aa" dependencies: @@ -22497,13 +21878,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"shellwords@npm:^0.1.1": - version: 0.1.1 - resolution: "shellwords@npm:0.1.1" - checksum: 3559ff550917ece921d252edf42eb54827540e9676e537137ace236df8f9b78e48c542ae0b3f8876fea0faf5826c97629d5b8cb9ac7dee287260e9804fb8132c - languageName: node - linkType: hard - "side-channel@npm:^1.0.4": version: 1.0.4 resolution: "side-channel@npm:1.0.4" @@ -22988,7 +22362,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"stack-utils@npm:^2.0.2, stack-utils@npm:^2.0.3": +"stack-utils@npm:^2.0.3": version: 2.0.3 resolution: "stack-utils@npm:2.0.3" dependencies: @@ -23789,13 +23163,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"throat@npm:^5.0.0": - version: 5.0.0 - resolution: "throat@npm:5.0.0" - checksum: 2fa41c09ccd97982cd6601eca704913f5d8ef5cc4070fcd71c67e7240da7c0df86f65f5cb23f5c3132ab5567154740114cc92379663aa098b6076a39481b0f5f - languageName: node - linkType: hard - "throat@npm:^6.0.1": version: 6.0.1 resolution: "throat@npm:6.0.1" @@ -24959,7 +24326,7 @@ typescript@4.2.2: languageName: node linkType: hard -"uuid@npm:8.3.2, uuid@npm:^8.0.0, uuid@npm:^8.3.0, uuid@npm:^8.3.2": +"uuid@npm:8.3.2, uuid@npm:^8.0.0, uuid@npm:^8.3.2": version: 8.3.2 resolution: "uuid@npm:8.3.2" bin: @@ -25744,17 +25111,6 @@ typescript@4.2.2: languageName: node linkType: hard -"wrap-ansi@npm:^6.2.0": - version: 6.2.0 - resolution: "wrap-ansi@npm:6.2.0" - dependencies: - ansi-styles: ^4.0.0 - string-width: ^4.1.0 - strip-ansi: ^6.0.0 - checksum: ee4ed8b2994cfbdcd571f4eadde9d8ba00b8a74113483fe5d0c5f9e84054e43df8e9092d7da35c5b051faeca8fe32bd6cea8bf5ae8ad4896d6ea676a347e90af - languageName: node - linkType: hard - "wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" @@ -25963,16 +25319,6 @@ typescript@4.2.2: languageName: node linkType: hard -"yargs-parser@npm:^18.1.2": - version: 18.1.3 - resolution: "yargs-parser@npm:18.1.3" - dependencies: - camelcase: ^5.0.0 - decamelize: ^1.2.0 - checksum: 33871721679053cc38165afc6356c06c3e820459589b5db78f315886105070eb90cbb583cd6515fa4231937d60c80262ca2b7c486d5942576802446318a39597 - languageName: node - linkType: hard - "yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": version: 20.2.7 resolution: "yargs-parser@npm:20.2.7" @@ -26013,25 +25359,6 @@ typescript@4.2.2: languageName: node linkType: hard -"yargs@npm:^15.4.1": - version: 15.4.1 - resolution: "yargs@npm:15.4.1" - dependencies: - cliui: ^6.0.0 - decamelize: ^1.2.0 - find-up: ^4.1.0 - get-caller-file: ^2.0.1 - require-directory: ^2.1.1 - require-main-filename: ^2.0.0 - set-blocking: ^2.0.0 - string-width: ^4.2.0 - which-module: ^2.0.0 - y18n: ^4.0.0 - yargs-parser: ^18.1.2 - checksum: dbf687d6b938f01bbf11e158dde6df906282b70cd9295af0217ee8cefbd83ad09d49fa9458d0d5325b0e66f03df954a38986db96f91e5b46ccdbbaf9a0157b23 - languageName: node - linkType: hard - "yarn-or-npm@npm:^3.0.1": version: 3.0.1 resolution: "yarn-or-npm@npm:3.0.1" From 2f5154dc2cd28d760209a16cd2eaa5bb2407b32a Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:13:56 -1000 Subject: [PATCH 07/14] Disable broken test which will be deleted soon anyway --- app/util/indexeddb/MetaDatabase.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/util/indexeddb/MetaDatabase.test.ts b/app/util/indexeddb/MetaDatabase.test.ts index e99dd64e58..a04741e12e 100644 --- a/app/util/indexeddb/MetaDatabase.test.ts +++ b/app/util/indexeddb/MetaDatabase.test.ts @@ -46,7 +46,7 @@ describe("MetaDatabase", () => { expect(getDatabasesInTests().size).toEqual(4); }); - it("does not delete databases which are still open", async () => { + it.skip("does not delete databases which are still open", async () => { const dbs: Database[] = []; async function createAndClose(name: string) { const db = await Database.get({ name, version: 1, objectStores: [{ name: "foo" }] }); From c56e0e0316bc53bf9133a9a0799b306b7e858578 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:24:22 -1000 Subject: [PATCH 08/14] cleanups for isolatedModules --- app/components/Tree/index.stories.tsx | 3 ++- app/components/Tree/index.tsx | 3 --- app/test/mocks/fileMock.ts | 2 +- app/test/mocks/styleMock.ts | 2 +- app/test/sentry-stub.ts | 12 ------------ app/test/setupTestFramework.test.ts | 2 ++ 6 files changed, 6 insertions(+), 18 deletions(-) delete mode 100644 app/test/sentry-stub.ts diff --git a/app/components/Tree/index.stories.tsx b/app/components/Tree/index.stories.tsx index 3d079517bf..6dd522f314 100644 --- a/app/components/Tree/index.stories.tsx +++ b/app/components/Tree/index.stories.tsx @@ -17,7 +17,8 @@ import { storiesOf } from "@storybook/react"; import { useState } from "react"; import Menu from "@foxglove-studio/app/components/Menu"; -import Tree, { Node } from "@foxglove-studio/app/components/Tree"; +import Tree from "@foxglove-studio/app/components/Tree"; +import { Node } from "@foxglove-studio/app/components/Tree/Node"; function getInitialState() { const root = { diff --git a/app/components/Tree/index.tsx b/app/components/Tree/index.tsx index 5c1ea5932d..385fd210f9 100644 --- a/app/components/Tree/index.tsx +++ b/app/components/Tree/index.tsx @@ -16,9 +16,6 @@ import React, { PureComponent } from "react"; import { Node } from "./Node"; import TreeNode from "./TreeNode"; -// export the node flow type -export { Node } from "./Node"; - type Props = { disableCheckbox?: boolean; enableVisibilityToggle?: boolean; diff --git a/app/test/mocks/fileMock.ts b/app/test/mocks/fileMock.ts index 90e74e471f..cb86b4c2b8 100644 --- a/app/test/mocks/fileMock.ts +++ b/app/test/mocks/fileMock.ts @@ -2,4 +2,4 @@ // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ -module.exports = "test-file-stub"; +export default "test-file-stub"; diff --git a/app/test/mocks/styleMock.ts b/app/test/mocks/styleMock.ts index b54be0e0cc..3848c9fa2b 100644 --- a/app/test/mocks/styleMock.ts +++ b/app/test/mocks/styleMock.ts @@ -2,4 +2,4 @@ // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/ -module.exports = {}; +export default {}; diff --git a/app/test/sentry-stub.ts b/app/test/sentry-stub.ts deleted file mode 100644 index f049fc53f8..0000000000 --- a/app/test/sentry-stub.ts +++ /dev/null @@ -1,12 +0,0 @@ -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/ -// -// This file incorporates work covered by the following copyright and -// permission notice: -// -// Copyright 2018-2021 Cruise LLC -// -// This source code is licensed under the Apache License, Version 2.0, -// found at http://www.apache.org/licenses/LICENSE-2.0 -// You may not use this file except in compliance with the License. diff --git a/app/test/setupTestFramework.test.ts b/app/test/setupTestFramework.test.ts index 1b0bb0dee3..058192fef4 100644 --- a/app/test/setupTestFramework.test.ts +++ b/app/test/setupTestFramework.test.ts @@ -44,3 +44,5 @@ describe("custom expectations", () => { }); }); }); + +export {}; // for isolatedModules From 978f9b00d30ede3fd499ca0f4dd4a128263b3114 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:40:58 -1000 Subject: [PATCH 09/14] cleanup --- packages/rosmsg-bobject/jest.config.json | 8 -------- tsconfig.base.json | 4 +++- yarn.lock | 9 --------- 3 files changed, 3 insertions(+), 18 deletions(-) delete mode 100644 packages/rosmsg-bobject/jest.config.json diff --git a/packages/rosmsg-bobject/jest.config.json b/packages/rosmsg-bobject/jest.config.json deleted file mode 100644 index f751642d99..0000000000 --- a/packages/rosmsg-bobject/jest.config.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "testRunner": "jest-circus/runner", - "testMatch": ["/src/**/*.test.ts"], - "setupFiles": ["/src/test/setup.ts"], - "haste": { - "forceNodeFilesystemAPI": true - } -} diff --git a/tsconfig.base.json b/tsconfig.base.json index c94a0c38d6..fd945c5c64 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -10,7 +10,9 @@ "moduleResolution": "node", "esModuleInterop": true, "importHelpers": false, - "isolatedModules": true, //fixme:comment + + // required for testing with babel-jest + babel-plugin-transform-typescript + "isolatedModules": true, // webpack handles JS imports for us "allowJs": false, diff --git a/yarn.lock b/yarn.lock index 809c2ffef6..79fd0a192e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2199,15 +2199,6 @@ __metadata: languageName: unknown linkType: soft -"@foxglove/rosmsg-bobject@workspace:packages/rosmsg-bobject": - version: 0.0.0-use.local - resolution: "@foxglove/rosmsg-bobject@workspace:packages/rosmsg-bobject" - dependencies: - jest: 27.0.0-next.8 - typescript: 4.2.2 - languageName: unknown - linkType: soft - "@foxglove/rosmsg-deser@workspace:packages/rosmsg-deser": version: 0.0.0-use.local resolution: "@foxglove/rosmsg-deser@workspace:packages/rosmsg-deser" From 510fff5d79846530fd4c4255a0fb1f5534c2a87f Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:47:15 -1000 Subject: [PATCH 10/14] comment --- app/jest.config.json | 5 ++--- ci/jest.config.json | 5 ++--- packages/ros1/jest.config.json | 5 ++--- packages/rosmsg-deser/jest.config.json | 5 ++--- packages/velodyne-cloud/jest.config.json | 5 ++--- packages/wasm-bz2/jest.config.json | 5 ++--- packages/xmlrpc/jest.config.json | 5 ++--- test/jest.config.json | 5 ++--- 8 files changed, 16 insertions(+), 24 deletions(-) diff --git a/app/jest.config.json b/app/jest.config.json index fed567f2fb..7a3d8a582f 100644 --- a/app/jest.config.json +++ b/app/jest.config.json @@ -18,7 +18,6 @@ "\\.(css|scss)$": "/test/mocks/styleMock.ts" }, "testRunner": "jest-circus/runner", - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/ci/jest.config.json b/ci/jest.config.json index 4244d51b36..587c5f884e 100644 --- a/ci/jest.config.json +++ b/ci/jest.config.json @@ -1,6 +1,5 @@ { "testRunner": "jest-circus/runner", - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/packages/ros1/jest.config.json b/packages/ros1/jest.config.json index 3c1b05e730..044d520cd2 100644 --- a/packages/ros1/jest.config.json +++ b/packages/ros1/jest.config.json @@ -1,7 +1,6 @@ { "testRunner": "jest-circus/runner", "testMatch": ["/src/**/*.test.ts"], - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/packages/rosmsg-deser/jest.config.json b/packages/rosmsg-deser/jest.config.json index 4244d51b36..587c5f884e 100644 --- a/packages/rosmsg-deser/jest.config.json +++ b/packages/rosmsg-deser/jest.config.json @@ -1,6 +1,5 @@ { "testRunner": "jest-circus/runner", - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/packages/velodyne-cloud/jest.config.json b/packages/velodyne-cloud/jest.config.json index 3c1b05e730..044d520cd2 100644 --- a/packages/velodyne-cloud/jest.config.json +++ b/packages/velodyne-cloud/jest.config.json @@ -1,7 +1,6 @@ { "testRunner": "jest-circus/runner", "testMatch": ["/src/**/*.test.ts"], - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/packages/wasm-bz2/jest.config.json b/packages/wasm-bz2/jest.config.json index 3c1b05e730..044d520cd2 100644 --- a/packages/wasm-bz2/jest.config.json +++ b/packages/wasm-bz2/jest.config.json @@ -1,7 +1,6 @@ { "testRunner": "jest-circus/runner", "testMatch": ["/src/**/*.test.ts"], - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/packages/xmlrpc/jest.config.json b/packages/xmlrpc/jest.config.json index 3c1b05e730..044d520cd2 100644 --- a/packages/xmlrpc/jest.config.json +++ b/packages/xmlrpc/jest.config.json @@ -1,7 +1,6 @@ { "testRunner": "jest-circus/runner", "testMatch": ["/src/**/*.test.ts"], - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } diff --git a/test/jest.config.json b/test/jest.config.json index b3b45b7246..2dfb2d6e37 100644 --- a/test/jest.config.json +++ b/test/jest.config.json @@ -1,7 +1,6 @@ { "globalSetup": "/globalSetup.ts", "testRunner": "jest-circus/runner", - "haste": { - "forceNodeFilesystemAPI": true - } + "//": "Native find is slow because it does not exclude files: https://github.com/facebook/jest/pull/11264#issuecomment-825377579", + "haste": { "forceNodeFilesystemAPI": true } } From eccef547ca5bfd5f879e3d44019aac8b7dd8e8bd Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:49:21 -1000 Subject: [PATCH 11/14] fix lint scripts --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index e63a4ead07..6cf804cbf8 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "build:prod": "webpack --mode production --progress", "build:dev": "webpack --mode development --progress", "serve": "webpack serve --mode development --progress", - "lint": "TIMING=1 eslint --report-unused-disable-directives --fix .", - "lint:ci": "TIMING=1 NODE_OPTIONS='--max-old-space-size=4096' eslint --report-unused-disable-directives --config .eslintrc.ci.yaml .", + "lint": "TIMING=1 eslint --rulesdir eslint-rules --report-unused-disable-directives --fix .", + "lint:ci": "TIMING=1 NODE_OPTIONS='--max-old-space-size=4096' eslint --rulesdir eslint-rules --report-unused-disable-directives --config .eslintrc.ci.yaml .", "test": "jest", "test:debug": "NODE_OPTIONS='--inspect-brk' jest", "test:watch": "jest --watch", From 6fed77c38576a413d901026059e825c671f03eea Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 14:52:57 -1000 Subject: [PATCH 12/14] clean up lint settings --- .eslintrc.yaml | 9 +-------- .../typescript/userUtils/.eslintrc.yaml | 2 +- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/.eslintrc.yaml b/.eslintrc.yaml index 189e800dbe..3561ce318a 100644 --- a/.eslintrc.yaml +++ b/.eslintrc.yaml @@ -87,14 +87,7 @@ rules: - error - additionalHooks: "(useAsync(?!AppConfigurationValue))" no-new-func: error - "foxglove-license-header": error - # header/header: - # - error - # - line - # - - { pattern: "(^/\\*\\* @jest-environment jsdom \\*/$)?" } - # - " This Source Code Form is subject to the terms of the Mozilla Public" - # - " License, v2.0. If a copy of the MPL was not distributed with this" - # - " file, You can obtain one at http://mozilla.org/MPL/2.0/" + foxglove-license-header: error curly: error "@typescript-eslint/no-unused-vars": diff --git a/app/players/UserNodePlayer/nodeTransformerWorker/typescript/userUtils/.eslintrc.yaml b/app/players/UserNodePlayer/nodeTransformerWorker/typescript/userUtils/.eslintrc.yaml index 9977a24350..b8ca1aae6b 100644 --- a/app/players/UserNodePlayer/nodeTransformerWorker/typescript/userUtils/.eslintrc.yaml +++ b/app/players/UserNodePlayer/nodeTransformerWorker/typescript/userUtils/.eslintrc.yaml @@ -1,3 +1,3 @@ rules: # do not require license header for userUtils - "header/header": off + foxglove-license-header: off From 9b7445c9f9204ae594e87b174e5bc194b8159ef6 Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 15:53:30 -1000 Subject: [PATCH 13/14] Fixes for jsdom environment changes and node 14 in CI --- app/components/MessagePipeline/index.test.tsx | 11 +- app/package.json | 1 + app/test/setup.ts | 5 + babel.config.json | 6 +- package.json | 2 + yarn.lock | 184 +++++++++++------- 6 files changed, 138 insertions(+), 71 deletions(-) diff --git a/app/components/MessagePipeline/index.test.tsx b/app/components/MessagePipeline/index.test.tsx index 811e53e442..b566c7ccd1 100644 --- a/app/components/MessagePipeline/index.test.tsx +++ b/app/components/MessagePipeline/index.test.tsx @@ -165,26 +165,27 @@ describe("MessagePipelineProvider/useMessagePipeline", () => { it("waits for the previous frame to finish before calling setGlobalVariables again", async () => { const player = new FakePlayer(); - jest.spyOn(player, "setGlobalVariables"); + const mockSetGlobalVariables = jest.spyOn(player, "setGlobalVariables"); const { result, rerender } = renderHook(Hook, { wrapper: Wrapper, initialProps: { maybePlayer: { player }, globalVariables: {} }, }); await tick(); + await tick(); - expect(player.setGlobalVariables).toHaveBeenCalledWith({}); - expect(player.setGlobalVariables).toHaveBeenCalledTimes(1); + expect(mockSetGlobalVariables.mock.calls).toEqual([[{}]]); const onFrameRendered = result.current.pauseFrame("Wait"); // Pass in new globalVariables and make sure they aren't used until the frame is done rerender({ maybePlayer: { player }, globalVariables: { futureTime: 1 } }); await tick(); - expect(player.setGlobalVariables).toHaveBeenCalledTimes(1); + expect(mockSetGlobalVariables.mock.calls).toEqual([[{}]]); // Once the frame is done, setGlobalVariables will be called with the new value onFrameRendered(); await tick(); - expect(player.setGlobalVariables).toHaveBeenCalledWith({ futureTime: 1 }); + await tick(); + expect(mockSetGlobalVariables.mock.calls).toEqual([[{}], [{ futureTime: 1 }]]); }); it("sets subscriptions", () => { diff --git a/app/package.json b/app/package.json index d60b6124c2..48c862ba60 100644 --- a/app/package.json +++ b/app/package.json @@ -89,6 +89,7 @@ "@storybook/addon-essentials": "6.2.5", "@storybook/builder-webpack5": "6.2.5", "@storybook/react": "6.2.5", + "@testing-library/dom": "7.30.1", "@testing-library/react": "11.2.6", "@testing-library/react-hooks": "5.1.1", "@types/argparse": "^2.0.5", diff --git a/app/test/setup.ts b/app/test/setup.ts index 45ad48ffed..bc13394f1a 100644 --- a/app/test/setup.ts +++ b/app/test/setup.ts @@ -15,6 +15,7 @@ import UrlSearchParams from "url-search-params"; import util from "util"; import { resetLogEventForTests } from "@foxglove-studio/app/util/logEvent"; +import setImmediate from "@foxglove-studio/app/util/setImmediate"; process.env.WASM_LZ4_ENVIRONMENT = "NODE"; @@ -30,6 +31,10 @@ if (typeof window !== "undefined") { if (typeof window.URL.createObjectURL === "undefined") { Object.defineProperty(window.URL, "createObjectURL", { value: noOp }); } + + // jsdom removes Node's setImmediate from global, but we have tests & app code that use it + // https://github.com/facebook/jest/pull/11222 + (window as any).setImmediate ??= setImmediate; } global.TextEncoder = util.TextEncoder; diff --git a/babel.config.json b/babel.config.json index a344142ef9..0749c0ba83 100644 --- a/babel.config.json +++ b/babel.config.json @@ -1,4 +1,8 @@ { - "presets": ["@babel/preset-typescript", "@babel/preset-react"], + "presets": [ + ["@babel/preset-env", { "targets": { "node": "14" } }], + "@babel/preset-typescript", + "@babel/preset-react" + ], "plugins": ["babel-plugin-transform-import-meta", "@babel/plugin-transform-modules-commonjs"] } diff --git a/package.json b/package.json index 6a54255855..5ce45357cf 100644 --- a/package.json +++ b/package.json @@ -48,6 +48,7 @@ "devDependencies": { "@actions/exec": "1.0.4", "@babel/core": "7.13.16", + "@babel/preset-env": "7.13.15", "@babel/preset-typescript": "7.13.0", "@foxglove/electron-socket": "workspace:packages/electron-socket", "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud", @@ -56,6 +57,7 @@ "@sentry/electron": "2.4.0", "@types/amplitude-js": "7.0.1", "@types/babel__core": "^7", + "@types/babel__preset-env": "^7", "@types/case-sensitive-paths-webpack-plugin": "2.1.5", "@types/circular-dependency-plugin": "^5.0.2", "@types/electron-devtools-installer": "2.2.0", diff --git a/yarn.lock b/yarn.lock index 9092957b73..459395449a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -107,7 +107,7 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.13.0, @babel/compat-data@npm:^7.13.15, @babel/compat-data@npm:^7.13.8": +"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.13.15, @babel/compat-data@npm:^7.13.8": version: 7.13.15 resolution: "@babel/compat-data@npm:7.13.15" checksum: 6abe95cbd36e54217cdcc51829e377cf31451ed0a64ff43cc82e0ce728d9e265990c5e079d5c3f9ee0afd49e20d6c90112fe2093ed0699c2ffc62f5172df24fa @@ -191,7 +191,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.13.16, @babel/helper-compilation-targets@npm:^7.13.8": +"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.13.13, @babel/helper-compilation-targets@npm:^7.13.16, @babel/helper-compilation-targets@npm:^7.13.8": version: 7.13.16 resolution: "@babel/helper-compilation-targets@npm:7.13.16" dependencies: @@ -250,6 +250,24 @@ __metadata: languageName: node linkType: hard +"@babel/helper-define-polyfill-provider@npm:^0.2.0": + version: 0.2.0 + resolution: "@babel/helper-define-polyfill-provider@npm:0.2.0" + dependencies: + "@babel/helper-compilation-targets": ^7.13.0 + "@babel/helper-module-imports": ^7.12.13 + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/traverse": ^7.13.0 + debug: ^4.1.1 + lodash.debounce: ^4.0.8 + resolve: ^1.14.2 + semver: ^6.1.2 + peerDependencies: + "@babel/core": ^7.4.0-0 + checksum: 575785f62b10ee5cd9d8c092b6077f8bad8eed42ac50a8d55b82430c6958f94da11f5b20de650e31b400f7c7a0af08b6e4476669fd2a3b24414d1a9db89d531f + languageName: node + linkType: hard + "@babel/helper-explode-assignable-expression@npm:^7.12.13": version: 7.13.0 resolution: "@babel/helper-explode-assignable-expression@npm:7.13.0" @@ -453,16 +471,29 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-async-generator-functions@npm:^7.13.8": - version: 7.13.8 - resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.8" +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.13.12" + dependencies: + "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 + "@babel/plugin-proposal-optional-chaining": ^7.13.12 + peerDependencies: + "@babel/core": ^7.13.0 + checksum: ad0b508a5c3f3436ff0ff598b7aad63686bfe7f846b19c862c09397bc987ab9244b866204440496cf6d1b7ec07ea01a6fe95fd3067dbdf58ec48d9d4d4d9a440 + languageName: node + linkType: hard + +"@babel/plugin-proposal-async-generator-functions@npm:^7.13.15": + version: 7.13.15 + resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.13.15" dependencies: "@babel/helper-plugin-utils": ^7.13.0 "@babel/helper-remap-async-to-generator": ^7.13.0 "@babel/plugin-syntax-async-generators": ^7.8.4 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 56610a31dcd26e8613a715dfd7ed2308ce6e3a8357325e3562996468104aae45c4780db373d8b12b659b56175e9ace2e078420838ae3246573499a5ab74b1632 + checksum: cfef2d2d97f4dee2930278ff8596940d3fef07522cf88b6635dd671cee055d23bd196eeba731600f7edb950e65ba915e363e5555982598087561e276a4fe6fce languageName: node linkType: hard @@ -615,16 +646,16 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:^7.12.7, @babel/plugin-proposal-optional-chaining@npm:^7.13.8": - version: 7.13.8 - resolution: "@babel/plugin-proposal-optional-chaining@npm:7.13.8" +"@babel/plugin-proposal-optional-chaining@npm:^7.12.7, @babel/plugin-proposal-optional-chaining@npm:^7.13.12": + version: 7.13.12 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.13.12" dependencies: "@babel/helper-plugin-utils": ^7.13.0 "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 "@babel/plugin-syntax-optional-chaining": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8295f1ceda1bc40eb281b611eeebc087db843de318bbffeecd245b0a0ffe7df723ec99c39579d2e1089af2694abde938f30defb16c5f909423fa6d57a7155598 + checksum: 8663cfbf5cdfe41f8765976b94de9525c223085d53bb48bd481a03539a7680f2aa3b3fd525d80144e1c1c646cbad817fea7ef8da573bbf0600ddde32fab7420b languageName: node linkType: hard @@ -1208,14 +1239,14 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-regenerator@npm:7.12.13" +"@babel/plugin-transform-regenerator@npm:^7.13.15": + version: 7.13.15 + resolution: "@babel/plugin-transform-regenerator@npm:7.13.15" dependencies: regenerator-transform: ^0.14.2 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4ee616942c712a94720b8613fa027db98bd08cfc677bc2d9bf444a40989571db269d502fcb4851d2959c34c2819e767ecd48fa61c572b3814cfe65c8a46ad0dd + checksum: ac1f6bda7e72c073b0957c543cba8a29a40d561582c17d938d4cd36ff0c441adfa2caa21dd80cf3be1674f18cca4cd936be29f8df659fbfb020b58f45c7787fa languageName: node linkType: hard @@ -1322,15 +1353,16 @@ __metadata: languageName: node linkType: hard -"@babel/preset-env@npm:^7.12.11": - version: 7.13.9 - resolution: "@babel/preset-env@npm:7.13.9" +"@babel/preset-env@npm:7.13.15, @babel/preset-env@npm:^7.12.11": + version: 7.13.15 + resolution: "@babel/preset-env@npm:7.13.15" dependencies: - "@babel/compat-data": ^7.13.8 - "@babel/helper-compilation-targets": ^7.13.8 + "@babel/compat-data": ^7.13.15 + "@babel/helper-compilation-targets": ^7.13.13 "@babel/helper-plugin-utils": ^7.13.0 "@babel/helper-validator-option": ^7.12.17 - "@babel/plugin-proposal-async-generator-functions": ^7.13.8 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.13.12 + "@babel/plugin-proposal-async-generator-functions": ^7.13.15 "@babel/plugin-proposal-class-properties": ^7.13.0 "@babel/plugin-proposal-dynamic-import": ^7.13.8 "@babel/plugin-proposal-export-namespace-from": ^7.12.13 @@ -1340,7 +1372,7 @@ __metadata: "@babel/plugin-proposal-numeric-separator": ^7.12.13 "@babel/plugin-proposal-object-rest-spread": ^7.13.8 "@babel/plugin-proposal-optional-catch-binding": ^7.13.8 - "@babel/plugin-proposal-optional-chaining": ^7.13.8 + "@babel/plugin-proposal-optional-chaining": ^7.13.12 "@babel/plugin-proposal-private-methods": ^7.13.0 "@babel/plugin-proposal-unicode-property-regex": ^7.12.13 "@babel/plugin-syntax-async-generators": ^7.8.4 @@ -1378,7 +1410,7 @@ __metadata: "@babel/plugin-transform-object-super": ^7.12.13 "@babel/plugin-transform-parameters": ^7.13.0 "@babel/plugin-transform-property-literals": ^7.12.13 - "@babel/plugin-transform-regenerator": ^7.12.13 + "@babel/plugin-transform-regenerator": ^7.13.15 "@babel/plugin-transform-reserved-words": ^7.12.13 "@babel/plugin-transform-shorthand-properties": ^7.12.13 "@babel/plugin-transform-spread": ^7.13.0 @@ -1388,15 +1420,15 @@ __metadata: "@babel/plugin-transform-unicode-escapes": ^7.12.13 "@babel/plugin-transform-unicode-regex": ^7.12.13 "@babel/preset-modules": ^0.1.4 - "@babel/types": ^7.13.0 - babel-plugin-polyfill-corejs2: ^0.1.4 - babel-plugin-polyfill-corejs3: ^0.1.3 - babel-plugin-polyfill-regenerator: ^0.1.2 + "@babel/types": ^7.13.14 + babel-plugin-polyfill-corejs2: ^0.2.0 + babel-plugin-polyfill-corejs3: ^0.2.0 + babel-plugin-polyfill-regenerator: ^0.2.0 core-js-compat: ^3.9.0 semver: ^6.3.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 55ef45c648da2cf98d703a3f5128eeb883285580f02717059c1ac708ac8cb291e40705838dfdd4f4c59da3c96b816c13e2d2d0d9a7490e3bace4cf41ec8ba151 + checksum: bcab2e9ce31ba4c6d0d56ff4afc1f6a6365952f2ab1001bad91dec4ad72b2b7578cdecc214b173caf0a7bf19bd075844294786432d56113aefa0e14b61d67d79 languageName: node linkType: hard @@ -2014,6 +2046,7 @@ __metadata: "@storybook/addon-essentials": 6.2.5 "@storybook/builder-webpack5": 6.2.5 "@storybook/react": 6.2.5 + "@testing-library/dom": 7.30.1 "@testing-library/react": 11.2.6 "@testing-library/react-hooks": 5.1.1 "@types/argparse": ^2.0.5 @@ -4063,9 +4096,9 @@ __metadata: languageName: node linkType: hard -"@testing-library/dom@npm:^7.28.1": - version: 7.30.0 - resolution: "@testing-library/dom@npm:7.30.0" +"@testing-library/dom@npm:7.30.1, @testing-library/dom@npm:^7.28.1": + version: 7.30.1 + resolution: "@testing-library/dom@npm:7.30.1" dependencies: "@babel/code-frame": ^7.10.4 "@babel/runtime": ^7.12.5 @@ -4075,7 +4108,7 @@ __metadata: dom-accessibility-api: ^0.5.4 lz-string: ^1.4.4 pretty-format: ^26.6.2 - checksum: 5af9f762ff43265cf9c36bb62bba37d73da2858a6149a2f11f159c61bfb46d60f66d9c7c10ab9f201cf0749c9e0039494005379355b0a0d494c60f6b759cea34 + checksum: a886bdb20955e5f029fa10932184128dd701dac866dc8016e66f339d89ab5b63185c3584ea5eb2a5ffbcb779bad6952f1f0933cc47f6772450211cd85b55861e languageName: node linkType: hard @@ -4165,6 +4198,13 @@ __metadata: languageName: node linkType: hard +"@types/babel__preset-env@npm:^7": + version: 7.9.1 + resolution: "@types/babel__preset-env@npm:7.9.1" + checksum: bb76f246000f396b1542a331bcdb62d60f49d2cf78208d44b156cbfd567f9c941614f0ed1aee8d494091455580dc3629dfddf08e73e13661339603c11822145f + languageName: node + linkType: hard + "@types/babel__template@npm:*": version: 7.4.0 resolution: "@types/babel__template@npm:7.4.0" @@ -6859,20 +6899,20 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs2@npm:^0.1.4": - version: 0.1.10 - resolution: "babel-plugin-polyfill-corejs2@npm:0.1.10" +"babel-plugin-polyfill-corejs2@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-corejs2@npm:0.2.0" dependencies: - "@babel/compat-data": ^7.13.0 - "@babel/helper-define-polyfill-provider": ^0.1.5 + "@babel/compat-data": ^7.13.11 + "@babel/helper-define-polyfill-provider": ^0.2.0 semver: ^6.1.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b11a01d9d3a078de5f26eeef8216f29b104239eee3ae93767dccdff9df558d07d159a35941ce5d77d6c658b9017475922831a232f8e60d94056412ba6ef2692b + checksum: 5d2825a9f28b322956da8941b069c3e4130478bc3620ab20e4b680671b31ad95d1c69514c58df9d5e2d54c87aba9ca92df5a7dbad54005b25ac9587af252db07 languageName: node linkType: hard -"babel-plugin-polyfill-corejs3@npm:^0.1.0, babel-plugin-polyfill-corejs3@npm:^0.1.3": +"babel-plugin-polyfill-corejs3@npm:^0.1.0": version: 0.1.7 resolution: "babel-plugin-polyfill-corejs3@npm:0.1.7" dependencies: @@ -6884,14 +6924,26 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-regenerator@npm:^0.1.2": - version: 0.1.6 - resolution: "babel-plugin-polyfill-regenerator@npm:0.1.6" +"babel-plugin-polyfill-corejs3@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-corejs3@npm:0.2.0" dependencies: - "@babel/helper-define-polyfill-provider": ^0.1.5 + "@babel/helper-define-polyfill-provider": ^0.2.0 + core-js-compat: ^3.9.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 49b98a19015074d3466e8b020928b7dc09ff2c1a62d8d8ba2f02f6e7e0cc99e3ac5e7624a7611acf0a8073d363c2d6aa6a0a6e7508b85f63982150164f1d7e25 + checksum: ae25400dd8764f737ecbd02f9aa3f35df62d3d239ad269edebab195551686b020d4b9b957cc303c6fbf9497c214e7b2f7fa3eee460d00b569d0d6f634ef3d5aa + languageName: node + linkType: hard + +"babel-plugin-polyfill-regenerator@npm:^0.2.0": + version: 0.2.0 + resolution: "babel-plugin-polyfill-regenerator@npm:0.2.0" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.2.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 538ab98e3062fb4ef4eae09587292513c03917902fe6d8c90b49001b26d41ffc3cd2da34b3b999b12e501cde1233e356af9f33f898c623720c94c6d9022d998c languageName: node linkType: hard @@ -7433,18 +7485,18 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.16.3": - version: 4.16.3 - resolution: "browserslist@npm:4.16.3" +"browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.16.4": + version: 4.16.5 + resolution: "browserslist@npm:4.16.5" dependencies: - caniuse-lite: ^1.0.30001181 - colorette: ^1.2.1 - electron-to-chromium: ^1.3.649 + caniuse-lite: ^1.0.30001214 + colorette: ^1.2.2 + electron-to-chromium: ^1.3.719 escalade: ^3.1.1 - node-releases: ^1.1.70 + node-releases: ^1.1.71 bin: browserslist: cli.js - checksum: dfab0d3c3d9a3517cf3f8a274bc4e8245f3a02c1a5ae2a0e01498273d363952d11ee09fdce3b0ce551f6cab9d619ed2d9facf7b6471c9190df949a5ad39665c5 + checksum: ea06cb8262a69d1479ab2c288eb939250ea0a6b172a181ce7ce9410f1ee29701095c8c13bd575b70baead87743866471814f8c0247c9785b229b04bef399e4c8 languageName: node linkType: hard @@ -7797,10 +7849,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001125, caniuse-lite@npm:^1.0.30001181": - version: 1.0.30001194 - resolution: "caniuse-lite@npm:1.0.30001194" - checksum: e2a47728f3fef1ac54ab0b6efb6f87943a99b8a4a402a567708b5c9a3a0ca0b6f56c436972b6dafd4268304fc1685e58aec3dc7fd5826a5081a76a60dd17f12e +"caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001125, caniuse-lite@npm:^1.0.30001214": + version: 1.0.30001214 + resolution: "caniuse-lite@npm:1.0.30001214" + checksum: 96c09af8989fe03e6aa0cc0130be3392c4a871093f0ae7190cb1185862a63b54de14483561578564d034cf993c315d4939727badee39ed76144e94ae4ab2a0f7 languageName: node linkType: hard @@ -8789,13 +8841,13 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.8.1, core-js-compat@npm:^3.9.0": - version: 3.9.1 - resolution: "core-js-compat@npm:3.9.1" +"core-js-compat@npm:^3.8.1, core-js-compat@npm:^3.9.0, core-js-compat@npm:^3.9.1": + version: 3.11.0 + resolution: "core-js-compat@npm:3.11.0" dependencies: - browserslist: ^4.16.3 + browserslist: ^4.16.4 semver: 7.0.0 - checksum: 46c8bf3b40b1f5124527e969c41de6419da21399630230a3ba1679c7ad6c43469a67a8fcf9123b11eb13ec76a39229d48025c1f5d23e3dd5453056644d7fc0bd + checksum: 608d11356728f6c0df98b41c50cad9b3d54de600423e141fe964d6ae5ede1d2479398b4bbe1e4cd4dfbb9a2a721cfd88987aae6dd68131557efb2bb3f7f1896a languageName: node linkType: hard @@ -10465,10 +10517,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.3.564, electron-to-chromium@npm:^1.3.649": - version: 1.3.678 - resolution: "electron-to-chromium@npm:1.3.678" - checksum: 61ee1c1359f650fdbd09ac7977c82c39587a17fd0aca6e37565b40ff7e3b7ab5a7dead0f22615a964524bb858f6d2ec84aeb4beeb67e268df5c1abd2eaa64506 +"electron-to-chromium@npm:^1.3.564, electron-to-chromium@npm:^1.3.719": + version: 1.3.720 + resolution: "electron-to-chromium@npm:1.3.720" + checksum: 51bb3720af1ffe2ac04e0760f4cdcf319c2e371625e7ed9e433ee962c1c7ae09e65b44afbe7ddf5c71dc9a01583c8e0015ff04b86f0222ed7cc5b5871494078d languageName: node linkType: hard @@ -12100,6 +12152,7 @@ __metadata: dependencies: "@actions/exec": 1.0.4 "@babel/core": 7.13.16 + "@babel/preset-env": 7.13.15 "@babel/preset-typescript": 7.13.0 "@foxglove/electron-socket": "workspace:packages/electron-socket" "@foxglove/velodyne-cloud": "workspace:packages/velodyne-cloud" @@ -12108,6 +12161,7 @@ __metadata: "@sentry/electron": 2.4.0 "@types/amplitude-js": 7.0.1 "@types/babel__core": ^7 + "@types/babel__preset-env": ^7 "@types/case-sensitive-paths-webpack-plugin": 2.1.5 "@types/circular-dependency-plugin": ^5.0.2 "@types/electron-devtools-installer": 2.2.0 @@ -17413,7 +17467,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"node-releases@npm:^1.1.61, node-releases@npm:^1.1.70": +"node-releases@npm:^1.1.61, node-releases@npm:^1.1.71": version: 1.1.71 resolution: "node-releases@npm:1.1.71" checksum: 9e283003f1deafd0ca7f9bbde9c4b5b05d880ca165217f5227b37406626d6689a246a5c4c72f9a8512be65cd51b13cc7d0f5d8bc68ad36089b620f1810292340 From b5ceb8a6190189ad184290ffe8c98c1a0877583f Mon Sep 17 00:00:00 2001 From: Jacob Bandes-Storch Date: Fri, 23 Apr 2021 16:03:41 -1000 Subject: [PATCH 14/14] Add jsdom environment for AbortController in Node 14 --- app/dataProviders/getRemoteBagGuid.test.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/app/dataProviders/getRemoteBagGuid.test.ts b/app/dataProviders/getRemoteBagGuid.test.ts index 49c2f9525c..f5fb60d2fa 100644 --- a/app/dataProviders/getRemoteBagGuid.test.ts +++ b/app/dataProviders/getRemoteBagGuid.test.ts @@ -1,3 +1,4 @@ +/** @jest-environment jsdom */ // This Source Code Form is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/