From e084c240b3c539eafea6ae41dbfd79e40e320491 Mon Sep 17 00:00:00 2001 From: Ahmed Agabani <70949530+ahmed-agabani-snyk@users.noreply.github.com> Date: Wed, 20 Dec 2023 08:51:29 +0000 Subject: [PATCH] feat: large layer support (#4972) --- package-lock.json | 173 +++++++++++++++++++++++++++++----------------- package.json | 6 +- 2 files changed, 111 insertions(+), 68 deletions(-) diff --git a/package-lock.json b/package-lock.json index c54f2dee45..258e07b20f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,7 +18,7 @@ "@snyk/cloud-config-parser": "^1.14.5", "@snyk/code-client": "^4.23.3", "@snyk/dep-graph": "^2.7.4", - "@snyk/docker-registry-v2-client": "^2.10.0", + "@snyk/docker-registry-v2-client": "^2.11.0", "@snyk/fix": "file:packages/snyk-fix", "@snyk/gemfile": "1.2.0", "@snyk/snyk-cocoapods-plugin": "2.5.3", @@ -67,7 +67,7 @@ "semver": "^6.0.0", "snyk-config": "^5.0.0", "snyk-cpp-plugin": "2.24.0", - "snyk-docker-plugin": "^6.7.9", + "snyk-docker-plugin": "^6.8.0", "snyk-go-plugin": "1.23.0", "snyk-gradle-plugin": "4.0.1", "snyk-module": "3.1.0", @@ -2778,9 +2778,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/@snyk/docker-registry-v2-client": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.10.1.tgz", - "integrity": "sha512-+mk983F/on2lL/W9bThRsCUU+56AyGY6TSZQQgKAaVbsyv3BrS6iln6J5NEWMd6WW4/+RdsV+qlMWdGwSUsCVg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.11.0.tgz", + "integrity": "sha512-X3eJWJzdwjUHb2alXg0njY1CilDx9og1O242f2Qx4BiUxnw73VPjKnOinU9QQNcImIxSjLAaTxwZczm/oC0WcQ==", "dependencies": { "needle": "^3.2.0", "parse-link-header": "^2.0.0", @@ -3139,42 +3139,36 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/@snyk/snyk-docker-pull": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.10.1.tgz", - "integrity": "sha512-wTOYeHNySAyKTysvU3Zfv3IIUfGllTpeRxOhOtsOGpo8OyBRlFTSSlnoSywBeWAuGyfxkvHB6O9FX1bySMdIYw==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.11.0.tgz", + "integrity": "sha512-QBCRcEEqpeA0MWXD+BZ7YFdURBfrVJ77YFRLmi6jCZCnvNID0jGnz2QKZrfAT4GboB72VXYcmrSjo6+kXpBa8Q==", "dependencies": { - "@snyk/docker-registry-v2-client": "^2.9.0", + "@snyk/docker-registry-v2-client": "^2.11.0", "child-process": "^1.0.2", - "tar-stream": "^2.2.0", - "tmp": "^0.2.1" + "tar-fs": "^3.0.4" }, "engines": { "node": ">=12" } }, - "node_modules/@snyk/snyk-docker-pull/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/@snyk/snyk-docker-pull/node_modules/tar-fs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^3.1.5" } }, - "node_modules/@snyk/snyk-docker-pull/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "node_modules/@snyk/snyk-docker-pull/node_modules/tar-stream": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, "node_modules/@snyk/snyk-hex-plugin": { @@ -6275,6 +6269,11 @@ "follow-redirects": "^1.14.0" } }, + "node_modules/b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==" + }, "node_modules/babel-jest": { "version": "27.4.6", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.4.6.tgz", @@ -10130,6 +10129,11 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" + }, "node_modules/fast-glob": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", @@ -15996,8 +16000,7 @@ "node_modules/mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" }, "node_modules/mock-fs": { "version": "4.14.0", @@ -18468,6 +18471,11 @@ } ] }, + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==" + }, "node_modules/quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -19960,15 +19968,15 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/snyk-docker-plugin": { - "version": "6.7.9", - "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-6.7.9.tgz", - "integrity": "sha512-nKWiud5JuBClYUirTHmeKlz/h4wDebqUh9k8ARHJWGu7mvRK6Uu3z0qjSUnUGNvBVcZfRcdL3F6mGmx+6Uf9zA==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-6.8.0.tgz", + "integrity": "sha512-AxEA3LO0/VZE6VO2em6ZxcYAzEeJKfFOCMEYIfsj74C3ukW7gsk/VLNvTcB10ZoxYtUVqHxYlJlr+RgXFdH8DQ==", "dependencies": { "@snyk/composer-lockfile-parser": "^1.4.1", "@snyk/dep-graph": "^2.8.0", - "@snyk/docker-registry-v2-client": "^2.10.1", + "@snyk/docker-registry-v2-client": "^2.11.0", "@snyk/rpm-parser": "3.1.0", - "@snyk/snyk-docker-pull": "^3.10.1", + "@snyk/snyk-docker-pull": "^3.11.0", "adm-zip": "^0.5.5", "chalk": "^2.4.2", "debug": "^4.1.1", @@ -19981,7 +19989,7 @@ "packageurl-js": "1.2.0", "semver": "^7.5.4", "shescape": "^1.7.4", - "snyk-nodejs-lockfile-parser": "^1.52.6", + "snyk-nodejs-lockfile-parser": "^1.52.7", "snyk-poetry-lockfile-parser": "^1.4.0", "tar-stream": "^2.1.0", "tmp": "^0.2.1", @@ -21303,6 +21311,15 @@ "wrappy": "1" } }, + "node_modules/streamx": { + "version": "2.15.6", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", + "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", + "dependencies": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, "node_modules/strict-uri-encode": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", @@ -26148,9 +26165,9 @@ } }, "@snyk/docker-registry-v2-client": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.10.1.tgz", - "integrity": "sha512-+mk983F/on2lL/W9bThRsCUU+56AyGY6TSZQQgKAaVbsyv3BrS6iln6J5NEWMd6WW4/+RdsV+qlMWdGwSUsCVg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.11.0.tgz", + "integrity": "sha512-X3eJWJzdwjUHb2alXg0njY1CilDx9og1O242f2Qx4BiUxnw73VPjKnOinU9QQNcImIxSjLAaTxwZczm/oC0WcQ==", "requires": { "needle": "^3.2.0", "parse-link-header": "^2.0.0", @@ -26540,30 +26557,33 @@ } }, "@snyk/snyk-docker-pull": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.10.1.tgz", - "integrity": "sha512-wTOYeHNySAyKTysvU3Zfv3IIUfGllTpeRxOhOtsOGpo8OyBRlFTSSlnoSywBeWAuGyfxkvHB6O9FX1bySMdIYw==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.11.0.tgz", + "integrity": "sha512-QBCRcEEqpeA0MWXD+BZ7YFdURBfrVJ77YFRLmi6jCZCnvNID0jGnz2QKZrfAT4GboB72VXYcmrSjo6+kXpBa8Q==", "requires": { - "@snyk/docker-registry-v2-client": "^2.9.0", + "@snyk/docker-registry-v2-client": "^2.11.0", "child-process": "^1.0.2", - "tar-stream": "^2.2.0", - "tmp": "^0.2.1" + "tar-fs": "^3.0.4" }, "dependencies": { - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "tar-fs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "requires": { - "glob": "^7.1.3" + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^3.1.5" } }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "tar-stream": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "requires": { - "rimraf": "^3.0.0" + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } } } @@ -28919,6 +28939,11 @@ "follow-redirects": "^1.14.0" } }, + "b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==" + }, "babel-jest": { "version": "27.4.6", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.4.6.tgz", @@ -31863,6 +31888,11 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, + "fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" + }, "fast-glob": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", @@ -36303,8 +36333,7 @@ "mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" }, "mock-fs": { "version": "4.14.0", @@ -38142,6 +38171,11 @@ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, + "queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==" + }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -39284,15 +39318,15 @@ } }, "snyk-docker-plugin": { - "version": "6.7.9", - "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-6.7.9.tgz", - "integrity": "sha512-nKWiud5JuBClYUirTHmeKlz/h4wDebqUh9k8ARHJWGu7mvRK6Uu3z0qjSUnUGNvBVcZfRcdL3F6mGmx+6Uf9zA==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-6.8.0.tgz", + "integrity": "sha512-AxEA3LO0/VZE6VO2em6ZxcYAzEeJKfFOCMEYIfsj74C3ukW7gsk/VLNvTcB10ZoxYtUVqHxYlJlr+RgXFdH8DQ==", "requires": { "@snyk/composer-lockfile-parser": "^1.4.1", "@snyk/dep-graph": "^2.8.0", - "@snyk/docker-registry-v2-client": "^2.10.1", + "@snyk/docker-registry-v2-client": "^2.11.0", "@snyk/rpm-parser": "3.1.0", - "@snyk/snyk-docker-pull": "^3.10.1", + "@snyk/snyk-docker-pull": "^3.11.0", "adm-zip": "^0.5.5", "chalk": "^2.4.2", "debug": "^4.1.1", @@ -39305,7 +39339,7 @@ "packageurl-js": "1.2.0", "semver": "^7.5.4", "shescape": "^1.7.4", - "snyk-nodejs-lockfile-parser": "^1.52.6", + "snyk-nodejs-lockfile-parser": "^1.52.7", "snyk-poetry-lockfile-parser": "^1.4.0", "tar-stream": "^2.1.0", "tmp": "^0.2.1", @@ -40407,6 +40441,15 @@ } } }, + "streamx": { + "version": "2.15.6", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", + "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", + "requires": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, "strict-uri-encode": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", diff --git a/package.json b/package.json index 0ff766994c..5014a233bc 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "@snyk/cloud-config-parser": "^1.14.5", "@snyk/code-client": "^4.23.3", "@snyk/dep-graph": "^2.7.4", - "@snyk/docker-registry-v2-client": "^2.10.0", + "@snyk/docker-registry-v2-client": "^2.11.0", "@snyk/fix": "file:packages/snyk-fix", "@snyk/gemfile": "1.2.0", "@snyk/snyk-cocoapods-plugin": "2.5.3", @@ -114,13 +114,13 @@ "semver": "^6.0.0", "snyk-config": "^5.0.0", "snyk-cpp-plugin": "2.24.0", - "snyk-docker-plugin": "^6.7.9", + "snyk-docker-plugin": "^6.8.0", "snyk-go-plugin": "1.23.0", "snyk-gradle-plugin": "4.0.1", "snyk-module": "3.1.0", "snyk-mvn-plugin": "3.1.0", - "snyk-nuget-plugin": "2.3.3", "snyk-nodejs-lockfile-parser": "1.52.10", + "snyk-nuget-plugin": "2.3.3", "snyk-php-plugin": "1.9.2", "snyk-policy": "^1.25.0", "snyk-python-plugin": "^2.0.5",