From 6aa3175139a12c8bf1b57f2203cf429e8cec630f Mon Sep 17 00:00:00 2001 From: prabhu Date: Tue, 1 Oct 2024 09:11:19 +0100 Subject: [PATCH] feat: Ignore parent component for types with empty components (#1399) * Bug fix Signed-off-by: Prabhu Subramanian * Add tests Signed-off-by: Prabhu Subramanian --------- Signed-off-by: Prabhu Subramanian --- lib/cli/index.js | 57 +++++++++-------- lib/helpers/utils.js | 32 +++++++++- lib/helpers/utils.test.js | 96 +++++++++++++++++++++++++++++ test/data/mvn-metrics-tree.txt | 58 ++++++++++++++++++ test/data/mvn-sbstarter-tree.txt | 102 +++++++++++++++++++++++++++++++ types/lib/cli/index.d.ts.map | 2 +- types/lib/helpers/utils.d.ts.map | 2 +- 7 files changed, 319 insertions(+), 30 deletions(-) create mode 100644 test/data/mvn-metrics-tree.txt create mode 100644 test/data/mvn-sbstarter-tree.txt diff --git a/lib/cli/index.js b/lib/cli/index.js index c9163e333..c130fc9b1 100644 --- a/lib/cli/index.js +++ b/lib/cli/index.js @@ -1315,6 +1315,7 @@ export async function createJavaBom(path, options) { mvnArgs = mvnArgs.concat("-DschemaVersion=1.4"); } const firstPom = pomFiles.length ? pomFiles[0] : undefined; + let mavenCmd = getMavenCommand(path, path); for (const f of pomFiles) { const basePath = dirname(f); const settingsXml = join(basePath, "settings.xml"); @@ -1323,7 +1324,9 @@ export async function createJavaBom(path, options) { `maven settings.xml found in ${basePath}. Please set the MVN_ARGS environment variable based on the full mvn build command used for this project.\nExample: MVN_ARGS='--settings ${settingsXml}'`, ); } - const mavenCmd = getMavenCommand(basePath, path); + if (mavenCmd?.endsWith("mvn")) { + mavenCmd = getMavenCommand(basePath, path); + } // Should we attempt to resolve class names if (options.resolveClass || options.deep) { const tmpjarNSMapping = await collectMvnDependencies( @@ -5693,7 +5696,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "rust"], options)) { bomData = await createRustBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} rust packages at ${path}`, @@ -5717,7 +5720,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "php"], options)) { bomData = createPHPBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} php packages at ${path}`, @@ -5735,7 +5738,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "ruby"], options)) { bomData = await createRubyBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} ruby packages at ${path}`, @@ -5775,7 +5778,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "dart"], options)) { bomData = await createDartBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} pub packages at ${path}`, @@ -5793,7 +5796,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "haskell"], options)) { bomData = createHaskellBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} hackage packages at ${path}`, @@ -5811,7 +5814,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "elixir"], options)) { bomData = createElixirBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} mix packages at ${path}`, @@ -5829,7 +5832,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "c"], options)) { bomData = createCppBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} cpp packages at ${path}`, @@ -5847,7 +5850,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "clojure"], options)) { bomData = createClojureBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} clojure packages at ${path}`, @@ -5865,7 +5868,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "github"], options)) { bomData = createGitHubBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} GitHub action packages at ${path}`, @@ -5883,7 +5886,7 @@ export async function createMultiXBom(pathList, options) { } if (hasAnyProjectType(["oci", "cloudbuild"], options)) { bomData = createCloudBuildBom(path, options); - if (bomData?.bomJson?.components) { + if (bomData?.bomJson?.components?.length) { if (DEBUG_MODE) { console.log( `Found ${bomData.bomJson.components.length} CloudBuild configuration at ${path}`, @@ -5917,22 +5920,22 @@ export async function createMultiXBom(pathList, options) { } } } - // Jar scanning is enabled by default - // See #330 - bomData = await createJarBom(path, options); - if (bomData?.bomJson?.components?.length) { - if (DEBUG_MODE) { - console.log( - `Found ${bomData.bomJson.components.length} jar packages at ${path}`, - ); - } - components = components.concat(bomData.bomJson.components); - dependencies = dependencies.concat(bomData.bomJson.dependencies); - if ( - bomData.parentComponent && - Object.keys(bomData.parentComponent).length - ) { - parentSubComponents.push(bomData.parentComponent); + if (hasAnyProjectType(["oci", "jar", "war", "ear"], options)) { + bomData = await createJarBom(path, options); + if (bomData?.bomJson?.components?.length) { + if (DEBUG_MODE) { + console.log( + `Found ${bomData.bomJson.components.length} jar packages at ${path}`, + ); + } + components = components.concat(bomData.bomJson.components); + dependencies = dependencies.concat(bomData.bomJson.dependencies); + if ( + bomData.parentComponent && + Object.keys(bomData.parentComponent).length + ) { + parentSubComponents.push(bomData.parentComponent); + } } } // Collect any crypto keys diff --git a/lib/helpers/utils.js b/lib/helpers/utils.js index 06180109d..ba9962118 100644 --- a/lib/helpers/utils.js +++ b/lib/helpers/utils.js @@ -398,6 +398,23 @@ export function hasAnyProjectType(projectTypes, options, defaultStatus = true) { ) { return defaultStatus; } + // If only exclude type is specified, then do not allow oci type + if ( + (projectTypes?.length === 1 || !defaultStatus) && + !options.projectType?.length && + options.excludeType?.length + ) { + const ret = + !projectTypes.includes("oci") && + !projectTypes.includes("oci-dir") && + !projectTypes.includes("os") && + !projectTypes.includes("docker") && + !options.excludeType.includes("oci"); + if (ret && DEBUG_MODE) { + console.log("Project types", projectTypes); + } + return ret; + } const allProjectTypes = [...projectTypes]; // Convert the project types into base types const baseProjectTypes = []; @@ -439,6 +456,9 @@ export function hasAnyProjectType(projectTypes, options, defaultStatus = true) { .length ); } + if (shouldInclude && DEBUG_MODE) { + console.log("Project types", projectTypes); + } return shouldInclude; } @@ -2433,6 +2453,7 @@ export function parseMavenTree(rawOutput, pomFile) { const tmpA = rawOutput.split("\n"); let last_level = 0; let last_purl = ""; + let first_purl = undefined; const stack = []; tmpA.forEach((l) => { l = l.replace("\r", ""); @@ -2485,6 +2506,9 @@ export function parseMavenTree(rawOutput, pomFile) { null, ).toString(); const key = purlString; + if (!first_purl) { + first_purl = purlString; + } if (!keys_cache[key]) { keys_cache[key] = key; const properties = []; @@ -2540,7 +2564,9 @@ export function parseMavenTree(rawOutput, pomFile) { for (let i = level; i <= last_level; i++) { stack.pop(); } - const last_stack = stack[stack.length - 1]; + const last_stack = stack.length + ? stack[stack.length - 1] + : first_purl; const cnodes = level_trees[last_stack] || []; cnodes.push(purlString); level_trees[last_stack] = cnodes; @@ -2558,7 +2584,11 @@ export function parseMavenTree(rawOutput, pomFile) { dependsOn: level_trees[lk], }); } + const parentComponent = deps?.length + ? { ...deps[0], type: "application" } + : {}; return { + parentComponent, pkgList: deps, dependenciesList, }; diff --git a/lib/helpers/utils.test.js b/lib/helpers/utils.test.js index eaa5553ee..a8c546cf8 100644 --- a/lib/helpers/utils.test.js +++ b/lib/helpers/utils.test.js @@ -819,6 +819,56 @@ test("parse maven tree", () => { "pkg:maven/example.group/org.tycho.demo.rootfiles.win@1.0.0-SNAPSHOT?type=p2-installable-unit", ], }); + parsedList = parseMavenTree( + readFileSync("./test/data/mvn-metrics-tree.txt", { + encoding: "utf-8", + }), + ); + expect(parsedList.pkgList.length).toEqual(58); + expect(parsedList.parentComponent["bom-ref"]).toEqual( + "pkg:maven/org.apache.dubbo/dubbo-metrics@3.3.0?type=pom", + ); + expect(parsedList.dependenciesList.length).toEqual(58); + expect(parsedList.dependenciesList[0]).toEqual({ + ref: "pkg:maven/org.apache.dubbo/dubbo-metrics@3.3.0?type=pom", + dependsOn: [ + "pkg:maven/org.apache.dubbo/dubbo-test-check@3.3.0?type=jar", + "pkg:maven/org.junit.jupiter/junit-jupiter-engine@5.9.3?type=jar", + "pkg:maven/org.junit.jupiter/junit-jupiter-params@5.9.3?type=jar", + "pkg:maven/org.awaitility/awaitility@4.2.0?type=jar", + "pkg:maven/org.hamcrest/hamcrest@2.2?type=jar", + "pkg:maven/org.mockito/mockito-core@4.11.0?type=jar", + "pkg:maven/org.mockito/mockito-inline@4.11.0?type=jar", + ], + }); + parsedList = parseMavenTree( + readFileSync("./test/data/mvn-sbstarter-tree.txt", { + encoding: "utf-8", + }), + ); + expect(parsedList.pkgList.length).toEqual(90); + expect(parsedList.parentComponent["bom-ref"]).toEqual( + "pkg:maven/org.apache.dubbo/dubbo-spring-boot-starter@3.3.0?type=jar", + ); + expect(parsedList.dependenciesList.length).toEqual(90); + expect(parsedList.dependenciesList[0]).toEqual({ + ref: "pkg:maven/org.apache.dubbo/dubbo-spring-boot-starter@3.3.0?type=jar", + dependsOn: [ + "pkg:maven/org.yaml/snakeyaml@1.30?type=jar", + "pkg:maven/org.apache.dubbo/dubbo-spring-boot-autoconfigure@3.3.0?type=jar", + "pkg:maven/org.junit.vintage/junit-vintage-engine@5.8.2?type=jar", + "pkg:maven/net.bytebuddy/byte-buddy@1.15.0?type=jar", + "pkg:maven/net.bytebuddy/byte-buddy-agent@1.15.0?type=jar", + "pkg:maven/org.apache.dubbo/dubbo-test-check@3.3.0?type=jar", + "pkg:maven/org.apache.logging.log4j/log4j-slf4j-impl@2.17.2?type=jar", + "pkg:maven/org.junit.jupiter/junit-jupiter-engine@5.8.2?type=jar", + "pkg:maven/org.junit.jupiter/junit-jupiter-params@5.8.2?type=jar", + "pkg:maven/org.awaitility/awaitility@4.2.0?type=jar", + "pkg:maven/org.hamcrest/hamcrest@2.2?type=jar", + "pkg:maven/org.mockito/mockito-core@4.11.0?type=jar", + "pkg:maven/org.mockito/mockito-inline@4.11.0?type=jar", + ], + }); }); // Slow test @@ -4917,4 +4967,50 @@ test("hasAnyProjectType tests", () => { excludeType: ["js"], }), ).toBeFalsy(); + expect( + hasAnyProjectType(["universal"], { + projectType: undefined, + excludeType: ["github"], + }), + ).toBeTruthy(); + expect( + hasAnyProjectType(["oci"], { + projectType: undefined, + excludeType: ["github"], + }), + ).toBeFalsy(); + expect( + hasAnyProjectType(["os"], { + projectType: undefined, + excludeType: ["jar"], + }), + ).toBeFalsy(); + expect( + hasAnyProjectType(["docker"], { + projectType: undefined, + excludeType: ["jar"], + }), + ).toBeFalsy(); + expect( + hasAnyProjectType(["oci", "java"], { + projectType: undefined, + excludeType: ["jar"], + }), + ).toBeTruthy(); + expect( + hasAnyProjectType(["oci", "ear"], { + projectType: undefined, + excludeType: ["jar"], + }), + ).toBeFalsy(); + expect( + hasAnyProjectType( + ["docker", "oci", "container", "os"], + { + projectType: undefined, + excludeType: ["github"], + }, + false, + ), + ).toBeFalsy(); }); diff --git a/test/data/mvn-metrics-tree.txt b/test/data/mvn-metrics-tree.txt new file mode 100644 index 000000000..717337d78 --- /dev/null +++ b/test/data/mvn-metrics-tree.txt @@ -0,0 +1,58 @@ +org.apache.dubbo:dubbo-metrics:pom:3.3.0 ++- org.apache.dubbo:dubbo-test-check:jar:3.3.0:test +| +- org.apache.dubbo:dubbo-common:jar:3.3.0:test +| | +- org.javassist:javassist:jar:3.30.2-GA:test +| | +- com.alibaba.fastjson2:fastjson2:jar:2.0.52:test +| | +- commons-io:commons-io:jar:2.16.1:test +| | \- javax.annotation:javax.annotation-api:jar:1.3.2:test +| +- org.junit.platform:junit-platform-launcher:jar:1.9.3:test +| +- org.apache.commons:commons-lang3:jar:3.17.0:test +| +- org.apache.zookeeper:zookeeper:jar:3.7.2:test +| | +- org.apache.zookeeper:zookeeper-jute:jar:3.7.2:test +| | \- org.slf4j:slf4j-api:jar:1.7.36:test +| +- org.apache.curator:curator-framework:jar:5.1.0:test +| | \- org.apache.curator:curator-client:jar:5.1.0:test +| | \- com.google.guava:guava:jar:27.0.1-jre:test +| | +- com.google.guava:failureaccess:jar:1.0.1:test +| | +- com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:test +| | +- com.google.code.findbugs:jsr305:jar:3.0.2:test +| | +- org.checkerframework:checker-qual:jar:2.5.2:test +| | +- com.google.errorprone:error_prone_annotations:jar:2.2.0:test +| | +- com.google.j2objc:j2objc-annotations:jar:1.1:test +| | \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.17:test +| +- org.apache.commons:commons-compress:jar:1.27.1:test +| | \- commons-codec:commons-codec:jar:1.16.0:test +| +- org.apache.commons:commons-exec:jar:1.4.0:test +| \- org.asynchttpclient:async-http-client:jar:2.12.3:test +| +- org.asynchttpclient:async-http-client-netty-utils:jar:2.12.3:test +| | \- io.netty:netty-buffer:jar:4.1.112.Final:test +| +- io.netty:netty-codec-http:jar:4.1.112.Final:test +| | +- io.netty:netty-common:jar:4.1.112.Final:test +| | +- io.netty:netty-transport:jar:4.1.112.Final:test +| | \- io.netty:netty-codec:jar:4.1.112.Final:test +| +- io.netty:netty-handler:jar:4.1.112.Final:test +| | +- io.netty:netty-resolver:jar:4.1.112.Final:test +| | \- io.netty:netty-transport-native-unix-common:jar:4.1.112.Final:test +| +- io.netty:netty-codec-socks:jar:4.1.112.Final:test +| +- io.netty:netty-handler-proxy:jar:4.1.112.Final:test +| +- io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.112.Final:test +| | \- io.netty:netty-transport-classes-epoll:jar:4.1.112.Final:test +| +- io.netty:netty-transport-native-kqueue:jar:osx-x86_64:4.1.112.Final:test +| | \- io.netty:netty-transport-classes-kqueue:jar:4.1.112.Final:test +| +- org.reactivestreams:reactive-streams:jar:1.0.4:test +| +- com.typesafe.netty:netty-reactive-streams:jar:2.0.4:test +| \- com.sun.activation:jakarta.activation:jar:1.2.2:test ++- org.junit.jupiter:junit-jupiter-engine:jar:5.9.3:test +| +- org.junit.platform:junit-platform-engine:jar:1.9.3:test +| | +- org.opentest4j:opentest4j:jar:1.2.0:test +| | \- org.junit.platform:junit-platform-commons:jar:1.9.3:test +| +- org.junit.jupiter:junit-jupiter-api:jar:5.9.3:test +| \- org.apiguardian:apiguardian-api:jar:1.1.2:test ++- org.junit.jupiter:junit-jupiter-params:jar:5.9.3:test ++- org.awaitility:awaitility:jar:4.2.0:test ++- org.hamcrest:hamcrest:jar:2.2:test ++- org.mockito:mockito-core:jar:4.11.0:test +| +- net.bytebuddy:byte-buddy:jar:1.15.1:test +| +- net.bytebuddy:byte-buddy-agent:jar:1.15.1:test +| \- org.objenesis:objenesis:jar:3.3:test +\- org.mockito:mockito-inline:jar:4.11.0:test diff --git a/test/data/mvn-sbstarter-tree.txt b/test/data/mvn-sbstarter-tree.txt new file mode 100644 index 000000000..54fe7ba47 --- /dev/null +++ b/test/data/mvn-sbstarter-tree.txt @@ -0,0 +1,102 @@ +org.apache.dubbo:dubbo-spring-boot-starter:jar:3.3.0 ++- org.springframework.boot:spring-boot-starter:jar:2.7.18:compile (optional) +| +- org.springframework.boot:spring-boot:jar:2.7.18:compile (optional) +| | \- org.springframework:spring-context:jar:5.3.31:compile (optional) +| | +- org.springframework:spring-aop:jar:5.3.31:compile (optional) +| | +- org.springframework:spring-beans:jar:5.3.31:compile (optional) +| | \- org.springframework:spring-expression:jar:5.3.31:compile (optional) +| +- org.springframework.boot:spring-boot-autoconfigure:jar:2.7.18:compile (optional) +| +- org.springframework.boot:spring-boot-starter-logging:jar:2.7.18:compile (optional) +| | \- org.slf4j:jul-to-slf4j:jar:1.7.36:compile (optional) +| +- jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile (optional) +| +- org.springframework:spring-core:jar:5.3.31:compile (optional) +| | \- org.springframework:spring-jcl:jar:5.3.31:compile (optional) +| \- org.yaml:snakeyaml:jar:1.30:compile ++- org.apache.dubbo:dubbo-spring-boot-autoconfigure:jar:3.3.0:compile +| +- org.apache.dubbo:dubbo-spring-boot-autoconfigure-compatible:jar:3.3.0:compile +| \- org.apache.dubbo:dubbo:jar:3.3.0:compile +| +- org.javassist:javassist:jar:3.30.2-GA:compile +| +- io.netty:netty-all:jar:4.1.101.Final:compile +| | +- io.netty:netty-buffer:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-dns:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-haproxy:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-http2:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-memcache:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-mqtt:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-redis:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-smtp:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-stomp:jar:4.1.101.Final:compile +| | +- io.netty:netty-codec-xml:jar:4.1.101.Final:compile +| | +- io.netty:netty-common:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-native-unix-common:jar:4.1.101.Final:compile +| | +- io.netty:netty-handler-ssl-ocsp:jar:4.1.101.Final:compile +| | +- io.netty:netty-resolver:jar:4.1.101.Final:compile +| | +- io.netty:netty-resolver-dns:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-rxtx:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-sctp:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-udt:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-classes-epoll:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-classes-kqueue:jar:4.1.101.Final:compile +| | +- io.netty:netty-resolver-dns-classes-macos:jar:4.1.101.Final:compile +| | +- io.netty:netty-transport-native-epoll:jar:linux-aarch_64:4.1.101.Final:runtime +| | +- io.netty:netty-transport-native-kqueue:jar:osx-aarch_64:4.1.101.Final:runtime +| | +- io.netty:netty-resolver-dns-native-macos:jar:osx-x86_64:4.1.101.Final:runtime +| | \- io.netty:netty-resolver-dns-native-macos:jar:osx-aarch_64:4.1.101.Final:runtime +| +- org.apache.dubbo:hessian-lite:jar:4.0.3:compile +| +- com.alibaba.fastjson2:fastjson2:jar:2.0.52:compile +| \- com.google.protobuf:protobuf-java:jar:3.25.4:compile ++- org.junit.vintage:junit-vintage-engine:jar:5.8.2:test +| +- org.junit.platform:junit-platform-engine:jar:1.8.2:test +| | +- org.opentest4j:opentest4j:jar:1.2.0:test +| | \- org.junit.platform:junit-platform-commons:jar:1.8.2:test +| +- junit:junit:jar:4.13.2:test +| | \- org.hamcrest:hamcrest-core:jar:2.2:test +| \- org.apiguardian:apiguardian-api:jar:1.1.2:test ++- net.bytebuddy:byte-buddy:jar:1.15.0:test ++- net.bytebuddy:byte-buddy-agent:jar:1.15.0:test ++- org.apache.dubbo:dubbo-test-check:jar:3.3.0:test +| +- org.apache.dubbo:dubbo-common:jar:3.3.0:test +| | +- commons-io:commons-io:jar:2.16.1:test +| | \- javax.annotation:javax.annotation-api:jar:1.3.2:test +| +- org.junit.platform:junit-platform-launcher:jar:1.8.2:test +| +- org.apache.commons:commons-lang3:jar:3.12.0:test +| +- org.apache.zookeeper:zookeeper:jar:3.7.2:test +| | \- org.apache.zookeeper:zookeeper-jute:jar:3.7.2:test +| +- org.apache.curator:curator-framework:jar:5.1.0:test +| | \- org.apache.curator:curator-client:jar:5.1.0:test +| | \- com.google.guava:guava:jar:27.0.1-jre:test +| | +- com.google.guava:failureaccess:jar:1.0.1:test +| | +- com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:test +| | +- com.google.code.findbugs:jsr305:jar:3.0.2:test +| | +- org.checkerframework:checker-qual:jar:2.5.2:test +| | +- com.google.errorprone:error_prone_annotations:jar:2.2.0:test +| | +- com.google.j2objc:j2objc-annotations:jar:1.1:test +| | \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.17:test +| +- org.apache.commons:commons-compress:jar:1.27.1:test +| | \- commons-codec:commons-codec:jar:1.15:test +| +- org.apache.commons:commons-exec:jar:1.4.0:test +| \- org.asynchttpclient:async-http-client:jar:2.12.3:test +| +- org.asynchttpclient:async-http-client-netty-utils:jar:2.12.3:test +| +- io.netty:netty-codec-http:jar:4.1.101.Final:compile +| +- io.netty:netty-handler:jar:4.1.101.Final:compile +| +- io.netty:netty-codec-socks:jar:4.1.101.Final:compile +| +- io.netty:netty-handler-proxy:jar:4.1.101.Final:compile +| +- io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.101.Final:runtime +| +- io.netty:netty-transport-native-kqueue:jar:osx-x86_64:4.1.101.Final:runtime +| +- org.reactivestreams:reactive-streams:jar:1.0.4:test +| +- com.typesafe.netty:netty-reactive-streams:jar:2.0.4:test +| \- com.sun.activation:jakarta.activation:jar:1.2.2:test ++- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.17.2:test +| +- org.slf4j:slf4j-api:jar:1.7.36:compile +| +- org.apache.logging.log4j:log4j-api:jar:2.17.2:test +| \- org.apache.logging.log4j:log4j-core:jar:2.17.2:test ++- org.junit.jupiter:junit-jupiter-engine:jar:5.8.2:test +| \- org.junit.jupiter:junit-jupiter-api:jar:5.8.2:test ++- org.junit.jupiter:junit-jupiter-params:jar:5.8.2:test ++- org.awaitility:awaitility:jar:4.2.0:test ++- org.hamcrest:hamcrest:jar:2.2:test ++- org.mockito:mockito-core:jar:4.11.0:test +| \- org.objenesis:objenesis:jar:3.3:test +\- org.mockito:mockito-inline:jar:4.11.0:test diff --git a/types/lib/cli/index.d.ts.map b/types/lib/cli/index.d.ts.map index 5e78ecfee..8dcff0e6e 100644 --- a/types/lib/cli/index.d.ts.map +++ b/types/lib/cli/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/cli/index.js"],"names":[],"mappings":"AA0wBA;;;;;;;;GAQG;AACH,gFAFW,MAAM,SAchB;AAyUD;;;;;;;GAOG;AACH,mCALW,MAAM,qBAiEhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM;;;;EAKhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM;;;;EAkBhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAu4BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA2chB;AAED;;;;;;;;;;GAUG;AACH,+DAyEC;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA6bhB;AAED;;;;;GAKG;AACH,kCAHW,MAAM,8BA6YhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAqIhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAiDhB;AAED;;;;;GAKG;AACH,mCAHW,MAAM,qBA+KhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM,qBAsHhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,0CAHW,MAAM,qBAuBhB;AAED;;;;;GAKG;AACH,oEAkDC;AAED;;;;;GAKG;AACH,uCAHW,MAAM,8BA4ChB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,qCAHW,MAAM,8BAwFhB;AAED;;;;;GAKG;AACH,iDAHW,MAAM,qBAiUhB;AAED;;;;;GAKG;AACH,mCAHW,MAAM,qBAwJhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAmFhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA6XhB;AAED;;;;;GAKG;AACH,2CAHW,MAAM;;;;;;;;;;;;;;;;;;;;GAoChB;AAED;;;;;;;;KA+DC;AAED;;;;;;GAMG;AACH,yDA2CC;AAED;;;;;;;;;GASG;AACH,2GA6BC;AAED;;;;;GAKG;AACH,0CAHW,MAAM,EAAE,8BAmclB;AAED;;;;;GAKG;AACH,iCAHW,MAAM,8BAiUhB;AAED;;;;;GAKG;AACH,gCAHW,MAAM,qBAsOhB;AAED;;;;;;GAMG;AACH,wDAFY,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAAC,CAwHxE"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/cli/index.js"],"names":[],"mappings":"AA0wBA;;;;;;;;GAQG;AACH,gFAFW,MAAM,SAchB;AAyUD;;;;;;;GAOG;AACH,mCALW,MAAM,qBAiEhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM;;;;EAKhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM;;;;EAkBhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BA04BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA2chB;AAED;;;;;;;;;;GAUG;AACH,+DAyEC;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA6bhB;AAED;;;;;GAKG;AACH,kCAHW,MAAM,8BA6YhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAqIhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAiDhB;AAED;;;;;GAKG;AACH,mCAHW,MAAM,qBA+KhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM,qBAsHhB;AAED;;;;;GAKG;AACH,uCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,0CAHW,MAAM,qBAuBhB;AAED;;;;;GAKG;AACH,oEAkDC;AAED;;;;;GAKG;AACH,uCAHW,MAAM,8BA4ChB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,qBA2BhB;AAED;;;;;GAKG;AACH,qCAHW,MAAM,8BAwFhB;AAED;;;;;GAKG;AACH,iDAHW,MAAM,qBAiUhB;AAED;;;;;GAKG;AACH,mCAHW,MAAM,qBAwJhB;AAED;;;;;GAKG;AACH,oCAHW,MAAM,8BAmFhB;AAED;;;;;GAKG;AACH,sCAHW,MAAM,8BA6XhB;AAED;;;;;GAKG;AACH,2CAHW,MAAM;;;;;;;;;;;;;;;;;;;;GAoChB;AAED;;;;;;;;KA+DC;AAED;;;;;;GAMG;AACH,yDA2CC;AAED;;;;;;;;;GASG;AACH,2GA6BC;AAED;;;;;GAKG;AACH,0CAHW,MAAM,EAAE,8BAmclB;AAED;;;;;GAKG;AACH,iCAHW,MAAM,8BAiUhB;AAED;;;;;GAKG;AACH,gCAHW,MAAM,qBAsOhB;AAED;;;;;;GAMG;AACH,wDAFY,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAAC,CAwHxE"} \ No newline at end of file diff --git a/types/lib/helpers/utils.d.ts.map b/types/lib/helpers/utils.d.ts.map index 436487d3d..3f1456a35 100644 --- a/types/lib/helpers/utils.d.ts.map +++ b/types/lib/helpers/utils.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/helpers/utils.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/helpers/utils.js"],"names":[],"mappings":"AA+JA,yCAYC;AAED,2CAQC;AA8KD;;;;;;;GAOG;AACH,4EAoBC;AAED;;;;;;GAMG;AACH,mGAsEC;AAED;;;;;;;;GAQG;AACH,yGASC;AAgBD;;;;;GAKG;AACH,qCAHW,MAAM,WACN,MAAM,0BAqBhB;AAED;;;;;;GAMG;AACH,+CAJW,MAAM,WACN,MAAM,+BAoBhB;AAYD;;;;GAIG;AACH,gCAFa,MAAM,CAIlB;AAED;;;;;;IAMI;AACJ,iDAJW,MAAM,GACJ,OAAO,CAiBnB;AAED;;;;;;;;;GASG;AACH,iEA2BC;AAED;;;;;GAKG;AACH,6CAqDC;AAED;;;;;;GAMG;AACH,sEA0DC;AAED;;;;GAIG;AACH,4EAoCC;AAED;;;GAGG;AACH;;EAUC;AAED,sEA0BC;AAED;;;;GAIG;AACH,+DA4CC;AAED;;;;;GAKG;AACH,0CAHW,MAAM,WACN,OAAO,kBAkFjB;AAED;;;;;GAKG;AACH,0CAHW,MAAM,YACN,MAAM;;;GAqVhB;AAED;;;;;;;GAOG;AACH,6CAFW,MAAM,MA2DhB;AAwBD;;;;GAIG;AACH,4CAFW,MAAM;;;GAkOhB;AAED;;;;GAIG;AACH,4CAFW,MAAM,kBAiEhB;AAuCD;;;;;GAKG;AACH,wCAHW,MAAM,oBACN,MAAM;;;;;;;;;GA0dhB;AAED;;;;GAIG;AACH,8CAFW,MAAM,kBA+ChB;AAED;;;;GAIG;AACH,sCAFW,MAAM,kBAgFhB;AAED;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;IAqDC;AAED;;;;;;GAMG;AACH,0CALW,MAAM,WACN,MAAM,OA0JhB;AAED;;;;;;GAMG;AACH,0CALW,MAAM,oBACN,MAAM,kBACN,GAAG,mBACH,MAAM;;;;;;;;;GA+NhB;AAED;;;GAGG;AACH,uCAFW,MAAM,SAoChB;AAED;;;GAGG;AACH,wCAFW,MAAM,OAahB;AAED,yEAwBC;AAED;;;;GAIG;AACH,+CAFW,MAAM;;;EAwDhB;AAED;;;;;GAKG;AACH,iDAHW,MAAM,qBACN,MAAM;;;;;;;;EAmDhB;AAED;;;;;;;GAOG;AACH,qDALW,MAAM,0BAGJ,MAAM,CA6ClB;AAED;;;GAGG;AACH,iDAFW,MAAM,SA4ChB;AAED;;;GAGG;AACH,8CAFW,MAAM,SAsDhB;AAED;;;GAGG;AACH,2CAFW,MAAM,SAiBhB;AAED;;GAEG;AACH,kDAoCC;AAED;;;;GAIG;AACH,oCAFW,MAAM,OAchB;AAED;;;;GAIG;AACH,kDAUC;AAED;;;;;GAKG;AACH,mFAmGC;AAED;;;;;;;;;GASG;AACH,sFAMC;AAED;;;;;;;;;GASG;AACH,gFAFY,MAAO,SAAS,CA8B3B;AAED;;;;;;;;;GASG;AACH,0EAFY,OAAO,QAAQ,CAU1B;AAED;;;;GAIG;AACH,4DAFW,WAAY,SAYtB;AAED;;;;;;;;;GASG;AACH,+FAFY,OAAO,QAAQ,CAc1B;AAED;;;;GAIG;AACH;;;EAqBC;AAED;;;;;GAKG;AACH,iFAFW,GAAC,OA0BX;AAED;;;;;GAKG;AACH,sFAsNC;AAED;;;;GAIG;AACH,qDAmBC;AAED;;;;GAIG;AACH,gEAeC;AAED;;;;GAIG;AACH,6CAFW,MAAM,MAmEhB;AAED;;;;;;GAMG;AACH,6DAHW,MAAM,iBACN,MAAM;;;;;;;;;;;GAmKhB;AAED;;;;;GAKG;AACH,mFAgKC;AAED;;;;;;GAMG;AACH,kCAJW,MAAM;;;;;;;;GA2EhB;AAED;;;;GAIG;AACH,mEAqBC;AAgBD;;;;GAIG;AACH;;;;;;;;;EA8KC;AAED;;;;GAIG;AACH;;;;;;EAcC;AAED;;;;GAIG;AACH,+DAFY,SAAO,SAAS,CAc3B;AAED;;;;GAIG;AACH,uDAoBC;AAED;;;;GAIG;AACH,oDAFY,QAAQ,CASnB;AAED;;;;;GAKG;AACH,oEAFY,SAAO,SAAS,CAc3B;AAED;;;;;;GAMG;AACH,oEAFY,OAAO,QAAQ,CA8D1B;AAED;;;;GAIG;AACH,iEAgDC;AAED,+FA4BC;AAED;;;;;;;GAOG;AACH,sEA4FC;AAED;;;;;GAKG;AACH,0CAHW,MAAM;;;GA0DhB;AA4BD;;;;;;;;;;GAUG;AACH,2CARW,MAAM,aACN,MAAM;;;;;;;;GAkMhB;AAED;;;;GAIG;AACH,yCAHW,MAAM,OAehB;AAED;;;;GAIG;AACH,0CAHW,MAAM,kBAuChB;AAED,+DA+CC;AAED,uEAwBC;AA6BD;;;;GAIG;AACH,oEAmGC;AAED;;;;GAIG;AACH,8CAFW,MAAM,kBAgChB;AAED;;;;;GAKG;AACH,kDAHW,MAAM,YACN,MAAM;;;;;;;;;;;;;;GAuPhB;AAED;;;;GAIG;AACH,kEAqEC;AAED;;;;GAIG;AACH,gEA0DC;AA0BD;;;;;;;;;;;;;;;;;GAiBG;AACH,mEALW,OAAO,4BAiLjB;AAED;;;;;;;;GAQG;AACH,+DALW,OAAO,4BAsIjB;AAED;;;IAwIC;AAED,wEA0BC;AAED,mEAqCC;AAED,0DAkBC;AAED,wDA+DC;AAED,0FAkEC;AAmBD;;IAiEC;AAED;;IA2DC;AAED,2DAiEC;AAED,yDAaC;AAaD,gDA+EC;AAED,yDAkDC;AAED,sDA0BC;AAED,sDAyBC;AAED,6DAwCC;AAED,yDAmCC;AAyCD,qFA2HC;AAED,8DA0BC;AAED,sDAiCC;AAED,yDAgCC;AAED,qDAkDC;AAED;;;;;GAKG;AACH,mDASC;AAED;;;;;;GAMG;AACH,4EAyJC;AAED,kEAoDC;AAED;;;;;;;;GAQG;AACH,kGA2RC;AAED;;;EAoNC;AAED;;;;EAsHC;AAED;;;EA+GC;AAED;;;;;GAKG;AACH,+CAHW,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2IhB;AAED;;;;;;EA+HC;AAED;;;;GAIG;AACH,0CAFW,MAAM;;;;;;;;;;;;;;;;;;;;;IAqDhB;AAmBD;;;;;GAKG;AACH,yCAHW,MAAM,YAQhB;AAED;;;;;GAKG;AACH,wCAHW,MAAM,YAchB;AAED;;;;;GAKG;AACH,wCAHW,MAAM,YAQhB;AAED;;;;;GAKG;AACH,yCAHW,MAAM,YAQhB;AAED;;;;;GAKG;AACH,2CAHW,MAAM,YAQhB;AAED;;;;;;;GAOG;AACH;;;;;;;;;;IA2IC;AA2CD;;;;GAIG;AACH,0FAHW,MAAM,WACN,MAAM,UAuDhB;AAED;;;;GAIG;AACH,8CAHW,MAAM,WACN,MAAM;;;;;;EAqBhB;AAED;;;GAGG;AACH,iDAFW,MAAM;;;;;;;;;;;;;;;;;;;;;IAwDhB;AAED;;;;;;;GAOG;AACH,iDALW,MAAM,YACN,MAAM,YACN,OAAO,oBACP,OAAO,eA6DjB;AAED,wIAgCC;AAED;;;;;;;GAOG;AACH,sCALW,MAAM,eACN,MAAM,eA6JhB;AAED;;;;;;;;;;;;;;;;;;;;;;IA6DC;AAED;;;;;;;EA8BC;AAED,uDAeC;AAED,2DAeC;AAED,2CAIC;AAED;;;;;;GAMG;AACH,uDAJW,MAAM,MAgBhB;AAED;;;;;;GAMG;AACH,uCAJW,MAAM,QACN,MAAM,GACJ,OAAO,QAAQ,CAU3B;AAED;;;;;;;;GAQG;AACH,2CANW,MAAM,WACN,MAAM,iBACN,MAAM,kBAqThB;AAED;;;;;;;GAOG;AACH,iDAFW,MAAM,OAehB;AAED;;;;;;;;;;;GAWG;AACH,uCAHW,MAAM,UACN,MAAM,UAYhB;AAED;;;;;;GAMG;AACH,2CAHW,MAAM,uBACN,MAAM,WAgBhB;AAED;;;;GAIG;AACH,4CAFW,MAAM,UAIhB;AAED;;;;;;;;GAQG;AACH,sCANW,MAAM,eACN,MAAM,oBACN,MAAM,gBAgChB;AAED;;;;;;GAMG;AACH,uCAJW,MAAM,kBA2EhB;AAED;;;;;GAKG;AACH,0CAHW,MAAM,YACN,MAAM,UAiChB;AAED;;;;;;;;GAQG;AACH,6DANW,MAAM,EAAE,qBACR,MAAM,EAAE,6BACR,MAAM,EAAE,GAEN,MAAM,EAAE,CAkBpB;AAED;;;;;;GAMG;AAEH,uDALW,MAAM,iBACN,MAAM,EAAE,GACN,GAAG,CAsCf;AAED;;;;;;GAMG;AACH,iDAJW,MAAM,YACN,MAAM,GACJ,MAAM,CA0ClB;AAED;;;;;GAKG;AACH,yCAHW,MAAM,YACN,MAAM,UAsEhB;AAED;;GAEG;AACH,sCAmBC;AAED,0DA2EC;AAED;;;;;;;;GAQG;AACH,oCANW,MAAM,YACN,MAAM,gBACN,MAAM,eACN,MAAM,OA6ChB;AAqFD;;;;;;;;;GASG;AACH,2CAPW,MAAM,kBACN,MAAM,eACN,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyYhB;AAED;;;;;;;;;;;GAWG;AACH,gDAPW,MAAM,+BAEN,MAAM;;;;;;;;;;;;;;;;EA4KhB;AAGD;;;;;EAmBC;AAED;;;;;;GAMG;AACH,kEAHW,MAAM,cACN,MAAM,6BA0IhB;AAED,qDASC;AAED;;;;;;;EA2GC;AAED;;;EA6PC;AAED,sEA6BC;AAED;;;;;;;GAOG;AACH,mCALW,MAAM,WACN,MAAM;;;;;;;EAuQhB;AAED;;;;;;GAMG;AACH,2CAHW,MAAM,OAKhB;AAED,qDA0CC;AA8HD;;;;GAIG;AACH;;;GAkHC;AAED,yEA0GC;AAED;;;;;;GAMG;AACH,mDAkBC;AAED;;;;;;;;;;GAUG;AACH,0DAqBC;AAED;;;;;;GAMG;AACH,sFAiBC;AAED;;;;;;;GAOG;AACH,2EAgCC;AAtsYD,gCAEc;AACd,4BAA4C;AAC5C,4BAA6C;AAC7C,2BAAmE;AAsBnE,iCAEE;AAqBF,iCAIyC;AAGzC,gCACmE;AAGnE,gCACsE;AAGtE,8BAA+B;AAK/B,4CAEmE;AAGnE,6CAE6D;AAG7D,oCAEoD;AAGpD,uCAEuD;AAYvD,8BAAyC;AAczC,gCAA6C;AAU7C,8BAAiC;AAIjC,4BAA6B;AAI7B,2BAA2B;AAI3B,4BAA6B;AAI7B,2BAA2B;AAI3B,6BAA+B;AAI/B,0BAAyB;AAIzB,6BAA+B;AAM/B,2BAA2B;AAK3B,4BAA6B;AAK7B,6BAA+B;AAM/B,kDAWE;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsGE;;;;AA4IF,8BAQG;AAwuJH,8CAUE"} \ No newline at end of file