From e5722fd2f6a41aabdc94c37cca1736ef00e6707f Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9my=20Cotineau?= Date: Fri, 16 Feb 2024 17:01:18 +0100 Subject: [PATCH] SQDEVOPS-372 implement datadog test monitoring in ci --- .../sql/RenameColumnsBuilderTest.java | 100 ++-- server/sonar-web/design-system/package.json | 3 +- server/sonar-web/package.json | 3 +- server/sonar-web/yarn.lock | 511 +++++++++++++++++- 4 files changed, 553 insertions(+), 64 deletions(-) diff --git a/server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/sql/RenameColumnsBuilderTest.java b/server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/sql/RenameColumnsBuilderTest.java index 650c82c0f53..4c84728cd57 100644 --- a/server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/sql/RenameColumnsBuilderTest.java +++ b/server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/sql/RenameColumnsBuilderTest.java @@ -23,11 +23,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.commons.lang.text.StrSubstitutor; -import org.junit.experimental.theories.DataPoints; -import org.junit.experimental.theories.FromDataPoints; -import org.junit.experimental.theories.Theories; -import org.junit.experimental.theories.Theory; -import org.junit.runner.RunWith; +import org.junit.Test; import org.sonar.db.dialect.Dialect; import org.sonar.db.dialect.H2; import org.sonar.db.dialect.MsSql; @@ -47,19 +43,16 @@ import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; -@RunWith(Theories.class) public class RenameColumnsBuilderTest { private static final String NEW_COLUMN_NAME = "new_" + randomAlphabetic(6).toLowerCase(); - @DataPoints("database") - public static final DatabaseAndResult[] DATABASES = { + private static final DatabaseAndResult[] DATABASES = { new DatabaseAndResult(new H2(), "ALTER TABLE ${table_name} ALTER COLUMN ${old_column_name} RENAME TO ${new_column_name}"), new DatabaseAndResult(new PostgreSql(), "ALTER TABLE ${table_name} RENAME COLUMN ${old_column_name} TO ${new_column_name}"), new DatabaseAndResult(new MsSql(), "EXEC sp_rename '${table_name}.${old_column_name}', '${new_column_name}', 'COLUMN'"), new DatabaseAndResult(new Oracle(), "ALTER TABLE ${table_name} RENAME COLUMN ${old_column_name} TO ${new_column_name}") }; - @DataPoints("columnDef") public static final ColumnDef[] COLUMN_DEFS = { BigIntegerColumnDef.newBigIntegerColumnDefBuilder().setColumnName(NEW_COLUMN_NAME).setIsNullable(false).build(), BigIntegerColumnDef.newBigIntegerColumnDefBuilder().setColumnName(NEW_COLUMN_NAME).setIsNullable(true).build(), @@ -79,7 +72,6 @@ public class RenameColumnsBuilderTest { VarcharColumnDef.newVarcharColumnDefBuilder().setColumnName(NEW_COLUMN_NAME).setIsNullable(true).setLimit(10).build(), }; - @DataPoints("illegalColumnName") public static final String[] ILLEGAL_COLUMN_NAME = { "", "AA", @@ -89,15 +81,23 @@ public class RenameColumnsBuilderTest { "\uD801\uDC8B\uD801\uDC8C\uD801\uDC8D" }; - @Theory - public void checkSQL_results( - @FromDataPoints("database") DatabaseAndResult database, - @FromDataPoints("columnDef") ColumnDef columnDef) { + @Test + public void run_checkSQL_results() { + for (DatabaseAndResult database : DATABASES) { + for (ColumnDef columnDef : COLUMN_DEFS) { + checkSQL_results(database, columnDef); + } + } + } + + private void checkSQL_results( + DatabaseAndResult database, + ColumnDef columnDef) { String oldColumnName = "old_" + randomAlphabetic(6).toLowerCase(); String tableName = "table_" + randomAlphabetic(6).toLowerCase(); - List result = new RenameColumnsBuilder(database.getDialect(), tableName) + List result = new RenameColumnsBuilder(database.dialect(), tableName) .renameColumn(oldColumnName, columnDef) .build(); @@ -105,54 +105,58 @@ public class RenameColumnsBuilderTest { parameters.put("table_name", tableName); parameters.put("old_column_name", oldColumnName); parameters.put("new_column_name", NEW_COLUMN_NAME); - parameters.put("column_def", columnDef.generateSqlType(database.getDialect())); - String expectedResult = StrSubstitutor.replace(database.getTemplateSql(), parameters); + parameters.put("column_def", columnDef.generateSqlType(database.dialect())); + String expectedResult = StrSubstitutor.replace(database.templateSql(), parameters); assertThat(result).containsExactlyInAnyOrder(expectedResult); } - @Theory - public void when_old_column_is_same_as_new_column_ISA_is_thrown( - @FromDataPoints("database") DatabaseAndResult database, - @FromDataPoints("columnDef") ColumnDef columnDef) { + @Test + public void run_when_old_column_is_same_as_new_column_ISA_is_thrown() { + for (DatabaseAndResult database : DATABASES) { + for (ColumnDef columnDef : COLUMN_DEFS) { + when_old_column_is_same_as_new_column_ISA_is_thrown(database, columnDef); + } + } + } + + private void when_old_column_is_same_as_new_column_ISA_is_thrown( + DatabaseAndResult database, + ColumnDef columnDef) { String tableName = "table_" + randomAlphabetic(6).toLowerCase(); - assertThatThrownBy(() -> new RenameColumnsBuilder(database.getDialect(), tableName) - .renameColumn(NEW_COLUMN_NAME, columnDef) - .build()) + RenameColumnsBuilder renameColumnsBuilder = new RenameColumnsBuilder(database.dialect(), tableName) + .renameColumn(NEW_COLUMN_NAME, columnDef); + assertThatThrownBy(renameColumnsBuilder::build) .isInstanceOf(IllegalArgumentException.class) .hasMessageContaining("Column names must be different"); } - @Theory - public void when_new_column_contains_illegal_character_ISA_is_thrown( - @FromDataPoints("database") DatabaseAndResult database, - @FromDataPoints("columnDef") ColumnDef columnDef, - @FromDataPoints("illegalColumnName") String illegalColumnName) { + @Test + public void run_when_new_column_contains_illegal_character_ISA_is_thrown() { + for (DatabaseAndResult database : DATABASES) { + for (ColumnDef columnDef : COLUMN_DEFS) { + for (String illegalColumnName : ILLEGAL_COLUMN_NAME) { + when_new_column_contains_illegal_character_ISA_is_thrown(database, columnDef, illegalColumnName); + } + } + } + } + + private void when_new_column_contains_illegal_character_ISA_is_thrown( + DatabaseAndResult database, + ColumnDef columnDef, + String illegalColumnName) { String tableName = "table_" + randomAlphabetic(6).toLowerCase(); - assertThatThrownBy(() -> new RenameColumnsBuilder(database.getDialect(), tableName) - .renameColumn(illegalColumnName, columnDef) - .build()) + RenameColumnsBuilder renameColumnsBuilder = new RenameColumnsBuilder(database.dialect(), tableName) + .renameColumn(illegalColumnName, columnDef); + + assertThatThrownBy(renameColumnsBuilder::build) .isInstanceOf(IllegalArgumentException.class); } - private static class DatabaseAndResult { - private final Dialect dialect; - private final String templateSql; - - private DatabaseAndResult(Dialect dialect, String templateSql) { - this.dialect = dialect; - this.templateSql = templateSql; - } - - public Dialect getDialect() { - return dialect; - } - - public String getTemplateSql() { - return templateSql; - } + private record DatabaseAndResult(Dialect dialect, String templateSql) { } } diff --git a/server/sonar-web/design-system/package.json b/server/sonar-web/design-system/package.json index 6d51558547c..ff2373a617d 100644 --- a/server/sonar-web/design-system/package.json +++ b/server/sonar-web/design-system/package.json @@ -13,7 +13,7 @@ "lint-report-ci": "yarn install --immutable && eslint --ext js,ts,tsx -f json -o eslint-report/eslint-report.json src || yarn lint", "test": "jest", "ts-check": "tsc --noEmit", - "validate-ci": "yarn install --immutable && yarn ts-check && yarn format-check && yarn test --coverage --ci" + "validate-ci": "yarn install --immutable && yarn ts-check && yarn format-check && NODE_OPTIONS=\"-r dd-trace/ci/init\" yarn test --coverage --ci" }, "devDependencies": { "@babel/core": "7.23.9", @@ -36,6 +36,7 @@ "@typescript-eslint/parser": "6.21.0", "@vitejs/plugin-react": "4.2.1", "autoprefixer": "10.4.17", + "dd-trace": "4.25.0", "eslint": "8.56.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-import": "2.29.1", diff --git a/server/sonar-web/package.json b/server/sonar-web/package.json index 21e1e1ebe45..80ae9124a4a 100644 --- a/server/sonar-web/package.json +++ b/server/sonar-web/package.json @@ -80,6 +80,7 @@ "autoprefixer": "10.4.17", "chalk": "4.1.2", "chokidar": "3.6.0", + "dd-trace": "4.25.0", "design-system": "1.0.0", "esbuild": "0.20.0", "eslint": "8.56.0", @@ -127,7 +128,7 @@ "lint-report-ci": "yarn install --immutable && eslint --ext js,ts,tsx --config .eslintrc-ci -f json -o eslint-report/eslint-report.json src/main/js || yarn lint", "ts-check": "tsc --noEmit", "validate": "yarn dep-check && yarn lint && yarn ts-check && yarn format-check && yarn test", - "validate-ci": "yarn install --immutable && yarn dep-check && yarn test --coverage --maxWorkers=5 --workerIdleMemoryLimit=2G --ci", + "validate-ci": "yarn install --immutable && yarn dep-check && NODE_OPTIONS=\"-r dd-trace/ci/init\" yarn test --coverage --maxWorkers=5 --workerIdleMemoryLimit=2G --ci", "check-ci": "yarn install --immutable && yarn ts-check && yarn format-check && yarn test-eslint-local-rules", "update-cwes": "node scripts/update-cwes.js", "dep-check": "node scripts/validate-package-json.js" diff --git a/server/sonar-web/yarn.lock b/server/sonar-web/yarn.lock index dff8f35ec3d..9d205ad1a8a 100644 --- a/server/sonar-web/yarn.lock +++ b/server/sonar-web/yarn.lock @@ -2458,6 +2458,68 @@ __metadata: languageName: node linkType: hard +"@datadog/native-appsec@npm:7.0.0": + version: 7.0.0 + resolution: "@datadog/native-appsec@npm:7.0.0" + dependencies: + node-gyp: "npm:latest" + node-gyp-build: "npm:^3.9.0" + checksum: 10/ef72d89e9be686c4682e9e2b3cb89cf4ac1ce0130131b067a563a3687ae297740263b0640b3019b27fb6191c408e644f7e1376785b4e1bacf60e1897c433f63a + languageName: node + linkType: hard + +"@datadog/native-iast-rewriter@npm:2.2.2": + version: 2.2.2 + resolution: "@datadog/native-iast-rewriter@npm:2.2.2" + dependencies: + lru-cache: "npm:^7.14.0" + node-gyp-build: "npm:^4.5.0" + checksum: 10/bbddc8866724961a65517f0382f65c71505f386e4bc047bd0ac1be2b00c3f9e1a62e8efca7af1df1230753ee7bdd388ea19b36e56d83fd13912a947189475979 + languageName: node + linkType: hard + +"@datadog/native-iast-taint-tracking@npm:1.6.4": + version: 1.6.4 + resolution: "@datadog/native-iast-taint-tracking@npm:1.6.4" + dependencies: + node-gyp: "npm:latest" + node-gyp-build: "npm:^3.9.0" + checksum: 10/a6af6fb529cf7ee44207da95e59de351af0628cce538ff4571a96ea87d286ba52c161557eaa82625e4c0e9e093ae6971eb5458eb40bfc70cb8f657752606102c + languageName: node + linkType: hard + +"@datadog/native-metrics@npm:^2.0.0": + version: 2.0.0 + resolution: "@datadog/native-metrics@npm:2.0.0" + dependencies: + node-addon-api: "npm:^6.1.0" + node-gyp: "npm:latest" + node-gyp-build: "npm:^3.9.0" + checksum: 10/a5536a4d9754a62a02218e9e3638820495fa3d5adaec724d32869ad6358df4871553cec7d54cedca91dbf9a3cd13a05cde38420292cdb49c8d7eec3ee668d150 + languageName: node + linkType: hard + +"@datadog/pprof@npm:5.0.0": + version: 5.0.0 + resolution: "@datadog/pprof@npm:5.0.0" + dependencies: + delay: "npm:^5.0.0" + node-gyp: "npm:latest" + node-gyp-build: "npm:<4.0" + p-limit: "npm:^3.1.0" + pprof-format: "npm:^2.0.7" + source-map: "npm:^0.7.4" + checksum: 10/525d6d46375372f5d9786731b0167bb323e9a00eb6eaeb743dfddfdfc1601b5e17033fb824d9c255fc2901325973d756e27979f783f14f6809232d0f95cdc14b + languageName: node + linkType: hard + +"@datadog/sketches-js@npm:^2.1.0": + version: 2.1.0 + resolution: "@datadog/sketches-js@npm:2.1.0" + checksum: 10/15dd9014a7bfb605631d38ee39b06155bd926687a1e7087ed776349f316abc4dca48d0781d0bca353816dd8ba6c6558bf6c106f1966dd876ab6e94b7a05c7556 + languageName: node + linkType: hard + "@emotion/babel-plugin-jsx-pragmatic@npm:0.2.1": version: 0.2.1 resolution: "@emotion/babel-plugin-jsx-pragmatic@npm:0.2.1" @@ -3884,6 +3946,31 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/api@npm:^1.0.0": + version: 1.7.0 + resolution: "@opentelemetry/api@npm:1.7.0" + checksum: 10/bcf7afa7051dcd4583898a68f8a57fb4c85b5cedddf7b6eb3616595c0b3bcd7f5448143b8355b00935a755de004d6285489f8e132f34127efe7b1be404622a3e + languageName: node + linkType: hard + +"@opentelemetry/core@npm:^1.14.0": + version: 1.21.0 + resolution: "@opentelemetry/core@npm:1.21.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.21.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10/7d34098c0cc83b3fde3fdd7bfb5ac652bfc793ce51f3af340ba2489e220097b90d9002b0f52da89cb2bda1dcf5fec17bc69109584a7e66118f677dc6d7ecae30 + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.21.0" + checksum: 10/49503a01ea5bb0b067c08c33e5dc8f5ecc5ad269825f1b183a477ddaa496df05f47439ff381e9d5850257c2797afb47f7456fb605b07c4cbec517384c0b0d9b2 + languageName: node + linkType: hard + "@primer/octicons-react@npm:19.8.0": version: 19.8.0 resolution: "@primer/octicons-react@npm:19.8.0" @@ -3893,6 +3980,79 @@ __metadata: languageName: node linkType: hard +"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/aspromise@npm:1.1.2" + checksum: 10/8a938d84fe4889411296db66b29287bd61ea3c14c2d23e7a8325f46a2b8ce899857c5f038d65d7641805e6c1d06b495525c7faf00c44f85a7ee6476649034969 + languageName: node + linkType: hard + +"@protobufjs/base64@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/base64@npm:1.1.2" + checksum: 10/c71b100daeb3c9bdccab5cbc29495b906ba0ae22ceedc200e1ba49717d9c4ab15a6256839cebb6f9c6acae4ed7c25c67e0a95e734f612b258261d1a3098fe342 + languageName: node + linkType: hard + +"@protobufjs/codegen@npm:^2.0.4": + version: 2.0.4 + resolution: "@protobufjs/codegen@npm:2.0.4" + checksum: 10/c6ee5fa172a8464f5253174d3c2353ea520c2573ad7b6476983d9b1346f4d8f2b44aa29feb17a949b83c1816bc35286a5ea265ed9d8fdd2865acfa09668c0447 + languageName: node + linkType: hard + +"@protobufjs/eventemitter@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/eventemitter@npm:1.1.0" + checksum: 10/03af3e99f17ad421283d054c88a06a30a615922a817741b43ca1b13e7c6b37820a37f6eba9980fb5150c54dba6e26cb6f7b64a6f7d8afa83596fafb3afa218c3 + languageName: node + linkType: hard + +"@protobufjs/fetch@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/fetch@npm:1.1.0" + dependencies: + "@protobufjs/aspromise": "npm:^1.1.1" + "@protobufjs/inquire": "npm:^1.1.0" + checksum: 10/67ae40572ad536e4ef94269199f252c024b66e3059850906bdaee161ca1d75c73d04d35cd56f147a8a5a079f5808e342b99e61942c1dae15604ff0600b09a958 + languageName: node + linkType: hard + +"@protobufjs/float@npm:^1.0.2": + version: 1.0.2 + resolution: "@protobufjs/float@npm:1.0.2" + checksum: 10/634c2c989da0ef2f4f19373d64187e2a79f598c5fb7991afb689d29a2ea17c14b796b29725945fa34b9493c17fb799e08ac0a7ccaae460ee1757d3083ed35187 + languageName: node + linkType: hard + +"@protobufjs/inquire@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/inquire@npm:1.1.0" + checksum: 10/c09efa34a5465cb120775e1a482136f2340a58b4abce7e93d72b8b5a9324a0e879275016ef9fcd73d72a4731639c54f2bb755bb82f916e4a78892d1d840bb3d2 + languageName: node + linkType: hard + +"@protobufjs/path@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/path@npm:1.1.2" + checksum: 10/bb709567935fd385a86ad1f575aea98131bbd719c743fb9b6edd6b47ede429ff71a801cecbd64fc72deebf4e08b8f1bd8062793178cdaed3713b8d15771f9b83 + languageName: node + linkType: hard + +"@protobufjs/pool@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/pool@npm:1.1.0" + checksum: 10/b9c7047647f6af28e92aac54f6f7c1f7ff31b201b4bfcc7a415b2861528854fce3ec666d7e7e10fd744da905f7d4aef2205bbcc8944ca0ca7a82e18134d00c46 + languageName: node + linkType: hard + +"@protobufjs/utf8@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/utf8@npm:1.1.0" + checksum: 10/131e289c57534c1d73a0e55782d6751dd821db1583cb2f7f7e017c9d6747addaebe79f28120b2e0185395d990aad347fb14ffa73ef4096fa38508d61a0e64602 + languageName: node + linkType: hard + "@react-spring/animated@npm:~9.7.3": version: 9.7.3 resolution: "@react-spring/animated@npm:9.7.3" @@ -4647,6 +4807,15 @@ __metadata: languageName: node linkType: hard +"@types/node@npm:>=13.7.0": + version: 20.11.17 + resolution: "@types/node@npm:20.11.17" + dependencies: + undici-types: "npm:~5.26.4" + checksum: 10/3342df87258d1c56154bcd4b85180f48675427b235971e6e6e2e037353f5a2ae9aaa05ba5df0fe1e2d2f1022c8d856fd39056b9d7f50ea30c0ca3214137cae1d + languageName: node + linkType: hard + "@types/parse-json@npm:^4.0.0": version: 4.0.0 resolution: "@types/parse-json@npm:4.0.0" @@ -5295,6 +5464,7 @@ __metadata: d3-shape: "npm:3.2.0" d3-zoom: "npm:3.0.0" date-fns: "npm:3.3.1" + dd-trace: "npm:4.25.0" design-system: "npm:1.0.0" diff: "npm:5.1.0" dompurify: "npm:3.0.8" @@ -5374,6 +5544,15 @@ __metadata: languageName: node linkType: hard +"acorn-import-assertions@npm:^1.9.0": + version: 1.9.0 + resolution: "acorn-import-assertions@npm:1.9.0" + peerDependencies: + acorn: ^8 + checksum: 10/af8dd58f6b0c6a43e85849744534b99f2133835c6fcdabda9eea27d0a0da625a0d323c4793ba7cb25cf4507609d0f747c210ccc2fc9b5866de04b0e59c9c5617 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -5399,6 +5578,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.8.2": + version: 8.11.3 + resolution: "acorn@npm:8.11.3" + bin: + acorn: bin/acorn + checksum: 10/b688e7e3c64d9bfb17b596e1b35e4da9d50553713b3b3630cf5690f2b023a84eac90c56851e6912b483fe60e8b4ea28b254c07e92f17ef83d72d78745a8352dd + languageName: node + linkType: hard + "acorn@npm:^8.9.0": version: 8.10.0 resolution: "acorn@npm:8.10.0" @@ -6330,6 +6518,13 @@ __metadata: languageName: node linkType: hard +"cjs-module-lexer@npm:^1.2.2": + version: 1.2.3 + resolution: "cjs-module-lexer@npm:1.2.3" + checksum: 10/f96a5118b0a012627a2b1c13bd2fcb92509778422aaa825c5da72300d6dcadfb47134dd2e9d97dfa31acd674891dd91642742772d19a09a8adc3e56bd2f5928c + languageName: node + linkType: hard + "classnames@npm:*": version: 2.3.1 resolution: "classnames@npm:2.3.1" @@ -6589,6 +6784,13 @@ __metadata: languageName: node linkType: hard +"crypto-randomuuid@npm:^1.0.0": + version: 1.0.0 + resolution: "crypto-randomuuid@npm:1.0.0" + checksum: 10/b98b5723978da8561cf3fab5e8c31476682db80b4bd4592aa9ce0f83bbd85523e8659b49965d7d286de102fdcf327ee5b476695f1d574ba390dfd187c6a0b207 + languageName: node + linkType: hard + "css.escape@npm:^1.5.1": version: 1.5.1 resolution: "css.escape@npm:1.5.1" @@ -6840,6 +7042,55 @@ __metadata: languageName: node linkType: hard +"dc-polyfill@npm:^0.1.2": + version: 0.1.4 + resolution: "dc-polyfill@npm:0.1.4" + checksum: 10/9fbc90911dd3e1201062ce3087302298e03342e81552cee795d024a55805683554bbae29545b302be34bfdd70eb196ec81d18e5498629d0bfe41129d529272b7 + languageName: node + linkType: hard + +"dd-trace@npm:4.25.0": + version: 4.25.0 + resolution: "dd-trace@npm:4.25.0" + dependencies: + "@datadog/native-appsec": "npm:7.0.0" + "@datadog/native-iast-rewriter": "npm:2.2.2" + "@datadog/native-iast-taint-tracking": "npm:1.6.4" + "@datadog/native-metrics": "npm:^2.0.0" + "@datadog/pprof": "npm:5.0.0" + "@datadog/sketches-js": "npm:^2.1.0" + "@opentelemetry/api": "npm:^1.0.0" + "@opentelemetry/core": "npm:^1.14.0" + crypto-randomuuid: "npm:^1.0.0" + dc-polyfill: "npm:^0.1.2" + ignore: "npm:^5.2.4" + import-in-the-middle: "npm:^1.7.3" + int64-buffer: "npm:^0.1.9" + ipaddr.js: "npm:^2.1.0" + istanbul-lib-coverage: "npm:3.2.0" + jest-docblock: "npm:^29.7.0" + koalas: "npm:^1.0.2" + limiter: "npm:1.1.5" + lodash.kebabcase: "npm:^4.1.1" + lodash.pick: "npm:^4.4.0" + lodash.sortby: "npm:^4.7.0" + lodash.uniq: "npm:^4.5.0" + lru-cache: "npm:^7.14.0" + methods: "npm:^1.1.2" + module-details-from-path: "npm:^1.0.3" + msgpack-lite: "npm:^0.1.26" + node-abort-controller: "npm:^3.1.1" + opentracing: "npm:>=0.12.1" + path-to-regexp: "npm:^0.1.2" + pprof-format: "npm:^2.0.7" + protobufjs: "npm:^7.2.5" + retry: "npm:^0.13.1" + semver: "npm:^7.5.4" + tlhunter-sorted-set: "npm:^0.1.0" + checksum: 10/59790128ef26eb71bfadfc2832920af67bf4bc7f94cd06ee07bfeb7a2003924de39c838a04e8b18da7ea011c6707cc427de0462b55a80d72c315ffd32a895223 + languageName: node + linkType: hard + "de-indent@npm:^1.0.2": version: 1.0.2 resolution: "de-indent@npm:1.0.2" @@ -7041,6 +7292,13 @@ __metadata: languageName: node linkType: hard +"delay@npm:^5.0.0": + version: 5.0.0 + resolution: "delay@npm:5.0.0" + checksum: 10/62f151151ecfde0d9afbb8a6be37a6d103c4cb24f35a20ef3fe56f920b0d0d0bb02bc9c0a3084d0179ef669ca332b91155f2ee4d9854622cd2cdba5fc95285f9 + languageName: node + linkType: hard + "delayed-stream@npm:~1.0.0": version: 1.0.0 resolution: "delayed-stream@npm:1.0.0" @@ -7100,6 +7358,7 @@ __metadata: "@typescript-eslint/parser": "npm:6.21.0" "@vitejs/plugin-react": "npm:4.2.1" autoprefixer: "npm:10.4.17" + dd-trace: "npm:4.25.0" eslint: "npm:8.56.0" eslint-plugin-header: "npm:3.1.1" eslint-plugin-import: "npm:2.29.1" @@ -8251,6 +8510,13 @@ __metadata: languageName: node linkType: hard +"event-lite@npm:^0.1.1": + version: 0.1.3 + resolution: "event-lite@npm:0.1.3" + checksum: 10/5185098b4f61285206cf145285079d7d99e7f54611d7ed15c3f867e0136e6b0d8c02d493775f8ac5844bb3eb7bf1ac6ce3a023ac421e0cc3d621399b3d814ea7 + languageName: node + linkType: hard + "eventemitter3@npm:^4.0.0": version: 4.0.7 resolution: "eventemitter3@npm:4.0.7" @@ -9186,6 +9452,13 @@ __metadata: languageName: node linkType: hard +"ieee754@npm:^1.1.8": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: 10/d9f2557a59036f16c282aaeb107832dc957a93d73397d89bbad4eb1130560560eb695060145e8e6b3b498b15ab95510226649a0b8f52ae06583575419fe10fc4 + languageName: node + linkType: hard + "ignore@npm:^5.2.0": version: 5.2.0 resolution: "ignore@npm:5.2.0" @@ -9210,6 +9483,18 @@ __metadata: languageName: node linkType: hard +"import-in-the-middle@npm:^1.7.3": + version: 1.7.3 + resolution: "import-in-the-middle@npm:1.7.3" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-assertions: "npm:^1.9.0" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 10/7176dbb5c8b27bd9684a5ef0bf93c2929f98ee301a58ca75dd443a88f0cfe26fa1cfe80ca7326029cbc74701b61a3733623e019faa14acab1c1c393a89ac057b + languageName: node + linkType: hard + "import-lazy@npm:~4.0.0": version: 4.0.0 resolution: "import-lazy@npm:4.0.0" @@ -9267,6 +9552,13 @@ __metadata: languageName: node linkType: hard +"int64-buffer@npm:^0.1.9": + version: 0.1.10 + resolution: "int64-buffer@npm:0.1.10" + checksum: 10/63c5a8fadb02fb2f7ceee8c5c491b4be8a82d9c2dc89c79d5bf48a0aa4b9015a5077b084be8fe7078e3bb3a335783db72d0f51b9c82f1fe6a79b4d7d051a055d + languageName: node + linkType: hard + "internal-slot@npm:^1.0.3": version: 1.0.3 resolution: "internal-slot@npm:1.0.3" @@ -9335,6 +9627,13 @@ __metadata: languageName: node linkType: hard +"ipaddr.js@npm:^2.1.0": + version: 2.1.0 + resolution: "ipaddr.js@npm:2.1.0" + checksum: 10/42c16d95cf451399707c2c46e605b88db1ea2b1477b25774b5a7ee96852b0bb1efdc01adbff01fedbe702ff246e1aca5c5e915a6f5a1f1485233a5f7c2eb73c2 + languageName: node + linkType: hard + "is-arguments@npm:^1.1.1": version: 1.1.1 resolution: "is-arguments@npm:1.1.1" @@ -9802,6 +10101,13 @@ __metadata: languageName: node linkType: hard +"isarray@npm:^1.0.0, isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: 10/f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab + languageName: node + linkType: hard + "isarray@npm:^2.0.5": version: 2.0.5 resolution: "isarray@npm:2.0.5" @@ -9809,13 +10115,6 @@ __metadata: languageName: node linkType: hard -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10/f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab - languageName: node - linkType: hard - "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -9823,6 +10122,13 @@ __metadata: languageName: node linkType: hard +"istanbul-lib-coverage@npm:3.2.0, istanbul-lib-coverage@npm:^3.2.0": + version: 3.2.0 + resolution: "istanbul-lib-coverage@npm:3.2.0" + checksum: 10/31621b84ad29339242b63d454243f558a7958ee0b5177749bacf1f74be7d95d3fd93853738ef7eebcddfaf3eab014716e51392a8dbd5aa1bdc1b15c2ebc53c24 + languageName: node + linkType: hard + "istanbul-lib-coverage@npm:^3.0.0": version: 3.0.0 resolution: "istanbul-lib-coverage@npm:3.0.0" @@ -9830,13 +10136,6 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.0 - resolution: "istanbul-lib-coverage@npm:3.2.0" - checksum: 10/31621b84ad29339242b63d454243f558a7958ee0b5177749bacf1f74be7d95d3fd93853738ef7eebcddfaf3eab014716e51392a8dbd5aa1bdc1b15c2ebc53c24 - languageName: node - linkType: hard - "istanbul-lib-instrument@npm:^5.0.4": version: 5.1.0 resolution: "istanbul-lib-instrument@npm:5.1.0" @@ -10789,6 +11088,13 @@ __metadata: languageName: node linkType: hard +"koalas@npm:^1.0.2": + version: 1.0.2 + resolution: "koalas@npm:1.0.2" + checksum: 10/a252c98af00376e11ca4387a9cc2ec9772d3f0c821216dff31893e9bc11dfbafeacc5627227e53abc3af7751c5503b2bd895c0a0bbf0255e7fc0975b97499a8e + languageName: node + linkType: hard + "kolorist@npm:^1.8.0": version: 1.8.0 resolution: "kolorist@npm:1.8.0" @@ -10853,6 +11159,13 @@ __metadata: languageName: node linkType: hard +"limiter@npm:1.1.5": + version: 1.1.5 + resolution: "limiter@npm:1.1.5" + checksum: 10/fa96e9912cf33ec36387e41a09694ccac7aaa8b86e1121333c30a3dfdf6265c849c980abd5f1689021bbab9aadca9d6df58d8db6ce5b999c26dd8cefe94168a9 + languageName: node + linkType: hard + "lines-and-columns@npm:^1.1.6": version: 1.1.6 resolution: "lines-and-columns@npm:1.1.6" @@ -10906,6 +11219,13 @@ __metadata: languageName: node linkType: hard +"lodash.kebabcase@npm:^4.1.1": + version: 4.1.1 + resolution: "lodash.kebabcase@npm:4.1.1" + checksum: 10/d84ec5441ef8e5c718c50315f35b0a045a77c7e8ee3e54472c06dc31f6f3602e95551a16c0923d689198b51deb8902c4bbc54fc9b965b26c1f86e21df3a05f34 + languageName: node + linkType: hard + "lodash.merge@npm:4.6.2, lodash.merge@npm:^4.6.2": version: 4.6.2 resolution: "lodash.merge@npm:4.6.2" @@ -10913,6 +11233,27 @@ __metadata: languageName: node linkType: hard +"lodash.pick@npm:^4.4.0": + version: 4.4.0 + resolution: "lodash.pick@npm:4.4.0" + checksum: 10/5a76778aa1c245ce081d19c5a625a44cdf4853f421c8789ec962cb5d73dd21be7cf11ae3bc2123ff5f432326ed0176d674d22ca6e0e8f9eaba5b74b00f632c12 + languageName: node + linkType: hard + +"lodash.sortby@npm:^4.7.0": + version: 4.7.0 + resolution: "lodash.sortby@npm:4.7.0" + checksum: 10/38df19ae28608af2c50ac342fc1f414508309d53e1d58ed9adfb2c3cd17c3af290058c0a0478028d932c5404df3d53349d19fa364ef6bed6145a6bc21320399e + languageName: node + linkType: hard + +"lodash.uniq@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.uniq@npm:4.5.0" + checksum: 10/86246ca64ac0755c612e5df6d93cfe92f9ecac2e5ff054b965efbbb1d9a647b6310969e78545006f70f52760554b03233ad0103324121ae31474c20d5f7a2812 + languageName: node + linkType: hard + "lodash@npm:4.17.21, lodash@npm:^4.17.11, lodash@npm:^4.17.13, lodash@npm:^4.17.15, lodash@npm:^4.17.21, lodash@npm:~4.17.15": version: 4.17.21 resolution: "lodash@npm:4.17.21" @@ -10920,6 +11261,13 @@ __metadata: languageName: node linkType: hard +"long@npm:^5.0.0": + version: 5.2.3 + resolution: "long@npm:5.2.3" + checksum: 10/9167ec6947a825b827c30da169a7384eec6c0c9ec2f0b9c74da2e93d81159bbe39fb09c3f13dae9721d4b807ccfa09797a7dd1012f5d478e3e33ca3c78b608e6 + languageName: node + linkType: hard + "loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": version: 1.4.0 resolution: "loose-envify@npm:1.4.0" @@ -10949,6 +11297,13 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^7.14.0": + version: 7.18.3 + resolution: "lru-cache@npm:7.18.3" + checksum: 10/6029ca5aba3aacb554e919d7ef804fffd4adfc4c83db00fac8248c7c78811fb6d4b6f70f7fd9d55032b3823446546a007edaa66ad1f2377ae833bd983fac5d98 + languageName: node + linkType: hard + "lunr@npm:2.3.9": version: 2.3.9 resolution: "lunr@npm:2.3.9" @@ -11034,6 +11389,13 @@ __metadata: languageName: node linkType: hard +"methods@npm:^1.1.2": + version: 1.1.2 + resolution: "methods@npm:1.1.2" + checksum: 10/a385dd974faa34b5dd021b2bbf78c722881bf6f003bfe6d391d7da3ea1ed625d1ff10ddd13c57531f628b3e785be38d3eed10ad03cebd90b76932413df9a1820 + languageName: node + linkType: hard + "micromatch@npm:^4.0.4": version: 4.0.4 resolution: "micromatch@npm:4.0.4" @@ -11211,6 +11573,13 @@ __metadata: languageName: node linkType: hard +"module-details-from-path@npm:^1.0.3": + version: 1.0.3 + resolution: "module-details-from-path@npm:1.0.3" + checksum: 10/f93226e9154fc8cb91f4609b639167ec7ad9155b30be4924d9717656648a3ae5f181d4e2338434d4c5afc7b5f4c10dd3b64109e5b89a4be70b20a25ba3573d54 + languageName: node + linkType: hard + "ms@npm:2.1.2, ms@npm:^2.1.1": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -11225,6 +11594,20 @@ __metadata: languageName: node linkType: hard +"msgpack-lite@npm:^0.1.26": + version: 0.1.26 + resolution: "msgpack-lite@npm:0.1.26" + dependencies: + event-lite: "npm:^0.1.1" + ieee754: "npm:^1.1.8" + int64-buffer: "npm:^0.1.9" + isarray: "npm:^1.0.0" + bin: + msgpack: ./bin/msgpack + checksum: 10/3e283047204254a0adeb0497ee557a05cc7cfc346a60573a1c67d24425385b739b875231f6944d98bd0d6e72af854d40142957602abcc4ec38e91fc2367c8370 + languageName: node + linkType: hard + "muggle-string@npm:^0.3.1": version: 0.3.1 resolution: "muggle-string@npm:0.3.1" @@ -11275,6 +11658,44 @@ __metadata: languageName: node linkType: hard +"node-abort-controller@npm:^3.1.1": + version: 3.1.1 + resolution: "node-abort-controller@npm:3.1.1" + checksum: 10/0a2cdb7ec0aeaf3cb31e1ca0e192f5add48f1c5c9c9ed822129f9dddbd9432f69b7425982f94ce803c56a2104884530aa67cd57696e5774b2e5b8ec2f58de042 + languageName: node + linkType: hard + +"node-addon-api@npm:^6.1.0": + version: 6.1.0 + resolution: "node-addon-api@npm:6.1.0" + dependencies: + node-gyp: "npm:latest" + checksum: 10/8eea1d4d965930a177a0508695beb0d89b4c1d80bf330646a035357a1e8fc31e0d09686e2374996e96e757b947a7ece319f98ede3146683f162597c0bcb4df90 + languageName: node + linkType: hard + +"node-gyp-build@npm:<4.0, node-gyp-build@npm:^3.9.0": + version: 3.9.0 + resolution: "node-gyp-build@npm:3.9.0" + bin: + node-gyp-build: ./bin.js + node-gyp-build-optional: ./optional.js + node-gyp-build-test: ./build-test.js + checksum: 10/c94f1fc077852ff9b830f8f8f6bcb350441bf5ec5187cad46981eb5f4faad08a17c5fe9fa3450f346361d93c0984fde0e87c9615e52bc69ad4fb4ebf5e26259c + languageName: node + linkType: hard + +"node-gyp-build@npm:^4.5.0": + version: 4.8.0 + resolution: "node-gyp-build@npm:4.8.0" + bin: + node-gyp-build: bin.js + node-gyp-build-optional: optional.js + node-gyp-build-test: build-test.js + checksum: 10/80f410ab412df38e84171d3634a5716b6c6f14ecfa4eb971424d289381fb76f8bcbe1b666419ceb2c81060e558fd7c6d70cc0f60832bcca6a1559098925d9657 + languageName: node + linkType: hard + "node-gyp@npm:latest": version: 8.2.0 resolution: "node-gyp@npm:8.2.0" @@ -11601,6 +12022,13 @@ __metadata: languageName: node linkType: hard +"opentracing@npm:>=0.12.1": + version: 0.14.7 + resolution: "opentracing@npm:0.14.7" + checksum: 10/0159a5a2a40bef0722cd6e0607808355e0e22909fe54f3441fbce3c78183fed0a12f834ca43eff0c93abddb8b1ab89548162b05cd9b340678dfa3b5cb9eb04b8 + languageName: node + linkType: hard + "optionator@npm:^0.8.1": version: 0.8.2 resolution: "optionator@npm:0.8.2" @@ -11746,6 +12174,13 @@ __metadata: languageName: node linkType: hard +"path-to-regexp@npm:^0.1.2": + version: 0.1.7 + resolution: "path-to-regexp@npm:0.1.7" + checksum: 10/701c99e1f08e3400bea4d701cf6f03517474bb1b608da71c78b1eb261415b645c5670dfae49808c89e12cea2dccd113b069f040a80de012da0400191c6dbd1c8 + languageName: node + linkType: hard + "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -11947,6 +12382,13 @@ __metadata: languageName: node linkType: hard +"pprof-format@npm:^2.0.7": + version: 2.0.7 + resolution: "pprof-format@npm:2.0.7" + checksum: 10/ea3ad85a9255c2d65e687159346788236b39d5727d4d80b85dc7dda545eecd1ca91a466e4aa240505781f14f468cb367fd268876b76fedc2bed2ac1d85b5a971 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -12090,6 +12532,26 @@ __metadata: languageName: node linkType: hard +"protobufjs@npm:^7.2.5": + version: 7.2.6 + resolution: "protobufjs@npm:7.2.6" + dependencies: + "@protobufjs/aspromise": "npm:^1.1.2" + "@protobufjs/base64": "npm:^1.1.2" + "@protobufjs/codegen": "npm:^2.0.4" + "@protobufjs/eventemitter": "npm:^1.1.0" + "@protobufjs/fetch": "npm:^1.1.0" + "@protobufjs/float": "npm:^1.0.2" + "@protobufjs/inquire": "npm:^1.1.0" + "@protobufjs/path": "npm:^1.1.2" + "@protobufjs/pool": "npm:^1.1.0" + "@protobufjs/utf8": "npm:^1.1.0" + "@types/node": "npm:>=13.7.0" + long: "npm:^5.0.0" + checksum: 10/81ab853d28c71998d056d6b34f83c4bc5be40cb0b416585f99ed618aed833d64b2cf89359bad7474d345302f2b5e236c4519165f8483d7ece7fd5b0d9ac13f8b + languageName: node + linkType: hard + "proxy-from-env@npm:^1.1.0": version: 1.1.0 resolution: "proxy-from-env@npm:1.1.0" @@ -12835,6 +13297,13 @@ __metadata: languageName: node linkType: hard +"retry@npm:^0.13.1": + version: 0.13.1 + resolution: "retry@npm:0.13.1" + checksum: 10/6125ec2e06d6e47e9201539c887defba4e47f63471db304c59e4b82fc63c8e89ca06a77e9d34939a9a42a76f00774b2f46c0d4a4cbb3e287268bd018ed69426d + languageName: node + linkType: hard + "reusify@npm:^1.0.4": version: 1.0.4 resolution: "reusify@npm:1.0.4" @@ -13191,6 +13660,13 @@ __metadata: languageName: node linkType: hard +"source-map@npm:^0.7.4": + version: 0.7.4 + resolution: "source-map@npm:0.7.4" + checksum: 10/a0f7c9b797eda93139842fd28648e868a9a03ea0ad0d9fa6602a0c1f17b7fb6a7dcca00c144476cccaeaae5042e99a285723b1a201e844ad67221bf5d428f1dc + languageName: node + linkType: hard + "sourcemap-codec@npm:1.4.8": version: 1.4.8 resolution: "sourcemap-codec@npm:1.4.8" @@ -13682,6 +14158,13 @@ __metadata: languageName: node linkType: hard +"tlhunter-sorted-set@npm:^0.1.0": + version: 0.1.0 + resolution: "tlhunter-sorted-set@npm:0.1.0" + checksum: 10/908019aadd169263f63b63e6864a61fe93c08657ac5c8496bd72b291620c88b7a81e18e735cfbf044da2f9439c1f36ee3e740dd806781431214f3b01ed3df0a3 + languageName: node + linkType: hard + "tmpl@npm:1.0.5": version: 1.0.5 resolution: "tmpl@npm:1.0.5" -- 2.39.5