install tar-fs

This commit is contained in:
Simon Knott 2024-11-29 11:39:25 +01:00
parent b5bd543cc6
commit 3c08bd3cab
No known key found for this signature in database
GPG key ID: 8CEDC00028084AEC
4 changed files with 333 additions and 0 deletions

86
PR.md Normal file
View file

@ -0,0 +1,86 @@
`tar` dep tree:
```
├─┬ tar@7.4.3
│ ├─┬ @isaacs/fs-minipass@4.0.1
│ │ └── minipass@7.1.2 deduped
│ ├── chownr@3.0.0
│ ├── minipass@7.1.2
│ ├─┬ minizlib@3.0.1
│ │ ├── minipass@7.1.2 deduped
│ │ └─┬ rimraf@5.0.10
│ │ └─┬ glob@10.4.5
│ │ ├─┬ foreground-child@3.3.0
│ │ │ ├─┬ cross-spawn@7.0.6
│ │ │ │ ├── path-key@3.1.1
│ │ │ │ ├─┬ shebang-command@2.0.0
│ │ │ │ │ └── shebang-regex@3.0.0
│ │ │ │ └─┬ which@2.0.2
│ │ │ │ └── isexe@2.0.0
│ │ │ └── signal-exit@4.1.0
│ │ ├─┬ jackspeak@3.4.3
│ │ │ ├─┬ @isaacs/cliui@8.0.2
│ │ │ │ ├─┬ string-width-cjs@npm:string-width@4.2.3
│ │ │ │ │ ├── emoji-regex@8.0.0
│ │ │ │ │ ├── is-fullwidth-code-point@3.0.0
│ │ │ │ │ └─┬ strip-ansi@6.0.1
│ │ │ │ │ └── ansi-regex@5.0.1
│ │ │ │ ├─┬ string-width@5.1.2
│ │ │ │ │ ├── eastasianwidth@0.2.0
│ │ │ │ │ ├── emoji-regex@9.2.2
│ │ │ │ │ └── strip-ansi@7.1.0 deduped
│ │ │ │ ├─┬ strip-ansi-cjs@npm:strip-ansi@6.0.1
│ │ │ │ │ └── ansi-regex@5.0.1
│ │ │ │ ├─┬ strip-ansi@7.1.0
│ │ │ │ │ └── ansi-regex@6.1.0
│ │ │ │ ├─┬ wrap-ansi-cjs@npm:wrap-ansi@7.0.0
│ │ │ │ │ ├─┬ ansi-styles@4.3.0
│ │ │ │ │ │ └─┬ color-convert@2.0.1
│ │ │ │ │ │ └── color-name@1.1.4
│ │ │ │ │ ├─┬ string-width@4.2.3
│ │ │ │ │ │ ├── emoji-regex@8.0.0
│ │ │ │ │ │ ├── is-fullwidth-code-point@3.0.0 deduped
│ │ │ │ │ │ └── strip-ansi@6.0.1 deduped
│ │ │ │ │ └─┬ strip-ansi@6.0.1
│ │ │ │ │ └── ansi-regex@5.0.1
│ │ │ │ └─┬ wrap-ansi@8.1.0
│ │ │ │ ├── ansi-styles@6.2.1
│ │ │ │ ├── string-width@5.1.2 deduped
│ │ │ │ └── strip-ansi@7.1.0 deduped
│ │ │ └── @pkgjs/parseargs@0.11.0
│ │ ├─┬ minimatch@9.0.5
│ │ │ └─┬ brace-expansion@2.0.1
│ │ │ └── balanced-match@1.0.2 deduped
│ │ ├── minipass@7.1.2 deduped
│ │ ├── package-json-from-dist@1.0.1
│ │ └─┬ path-scurry@1.11.1
│ │ ├── lru-cache@10.4.3
│ │ └── minipass@7.1.2 deduped
│ ├── mkdirp@3.0.1
│ └── yallist@5.0.0
```
`tar-fs` dep tree:
```
├─┬ tar-fs@3.0.6
│ ├─┬ bare-fs@2.3.5
│ │ ├── bare-events@2.5.0
│ │ ├── bare-path@2.1.3 deduped
│ │ └─┬ bare-stream@2.4.2
│ │ └── streamx@2.20.2 deduped
│ ├─┬ bare-path@2.1.3
│ │ └── bare-os@2.4.4
│ ├─┬ pump@3.0.0
│ │ ├─┬ end-of-stream@1.4.4
│ │ │ └── once@1.4.0 deduped
│ │ └── once@1.4.0 deduped
│ └─┬ tar-stream@3.1.7
│ ├── b4a@1.6.7
│ ├── fast-fifo@1.3.2
│ └─┬ streamx@2.20.2
│ ├── bare-events@2.5.0 deduped
│ ├── fast-fifo@1.3.2 deduped
│ ├── queue-tick@1.0.1
│ └── text-decoder@1.2.1
```

View file

@ -9,10 +9,12 @@
"version": "0.0.1", "version": "0.0.1",
"dependencies": { "dependencies": {
"extract-zip": "2.0.1", "extract-zip": "2.0.1",
"tar-fs": "^3.0.6",
"yauzl": "2.10.0", "yauzl": "2.10.0",
"yazl": "2.5.1" "yazl": "2.5.1"
}, },
"devDependencies": { "devDependencies": {
"@types/tar-fs": "^2.0.4",
"@types/yauzl": "^2.10.0", "@types/yauzl": "^2.10.0",
"@types/yazl": "^2.4.2" "@types/yazl": "^2.4.2"
} }
@ -23,6 +25,27 @@
"integrity": "sha512-aveCYRQbgTH9Pssp1voEP7HiuWlD2jW2BO56w+bVrJn04i61yh6mRfoKO6hEYQD9vF+W8Chkwc6j1M36uPkx4g==", "integrity": "sha512-aveCYRQbgTH9Pssp1voEP7HiuWlD2jW2BO56w+bVrJn04i61yh6mRfoKO6hEYQD9vF+W8Chkwc6j1M36uPkx4g==",
"devOptional": true "devOptional": true
}, },
"node_modules/@types/tar-fs": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@types/tar-fs/-/tar-fs-2.0.4.tgz",
"integrity": "sha512-ipPec0CjTmVDWE+QKr9cTmIIoTl7dFG/yARCM5MqK8i6CNLIG1P8x4kwDsOQY1ChZOZjH0wO9nvfgBvWl4R3kA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/node": "*",
"@types/tar-stream": "*"
}
},
"node_modules/@types/tar-stream": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/@types/tar-stream/-/tar-stream-3.1.3.tgz",
"integrity": "sha512-Zbnx4wpkWBMBSu5CytMbrT5ZpMiF55qgM+EpHzR4yIDu7mv52cej8hTkOc6K+LzpkOAbxwn/m7j3iO+/l42YkQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/node": "*"
}
},
"node_modules/@types/yauzl": { "node_modules/@types/yauzl": {
"version": "2.10.0", "version": "2.10.0",
"resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
@ -41,6 +64,58 @@
"@types/node": "*" "@types/node": "*"
} }
}, },
"node_modules/b4a": {
"version": "1.6.7",
"resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz",
"integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==",
"license": "Apache-2.0"
},
"node_modules/bare-events": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.0.tgz",
"integrity": "sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==",
"license": "Apache-2.0",
"optional": true
},
"node_modules/bare-fs": {
"version": "2.3.5",
"resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.5.tgz",
"integrity": "sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
"bare-events": "^2.0.0",
"bare-path": "^2.0.0",
"bare-stream": "^2.0.0"
}
},
"node_modules/bare-os": {
"version": "2.4.4",
"resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.4.4.tgz",
"integrity": "sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==",
"license": "Apache-2.0",
"optional": true
},
"node_modules/bare-path": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/bare-path/-/bare-path-2.1.3.tgz",
"integrity": "sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
"bare-os": "^2.1.0"
}
},
"node_modules/bare-stream": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.4.2.tgz",
"integrity": "sha512-XZ4ln/KV4KT+PXdIWTKjsLY+quqCaEtqqtgGJVPw9AoM73By03ij64YjepK0aQvHSWDb6AfAZwqKaFu68qkrdA==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
"streamx": "^2.20.0"
}
},
"node_modules/buffer-crc32": { "node_modules/buffer-crc32": {
"version": "0.2.13", "version": "0.2.13",
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
@ -92,6 +167,12 @@
"@types/yauzl": "^2.9.1" "@types/yauzl": "^2.9.1"
} }
}, },
"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==",
"license": "MIT"
},
"node_modules/fd-slicer": { "node_modules/fd-slicer": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
@ -141,6 +222,57 @@
"once": "^1.3.1" "once": "^1.3.1"
} }
}, },
"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==",
"license": "MIT"
},
"node_modules/streamx": {
"version": "2.20.2",
"resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.2.tgz",
"integrity": "sha512-aDGDLU+j9tJcUdPGOaHmVF1u/hhI+CsGkT02V3OKlHDV7IukOI+nTWAGkiZEKCO35rWN1wIr4tS7YFr1f4qSvA==",
"license": "MIT",
"dependencies": {
"fast-fifo": "^1.3.2",
"queue-tick": "^1.0.1",
"text-decoder": "^1.1.0"
},
"optionalDependencies": {
"bare-events": "^2.2.0"
}
},
"node_modules/tar-fs": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz",
"integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==",
"license": "MIT",
"dependencies": {
"pump": "^3.0.0",
"tar-stream": "^3.1.5"
},
"optionalDependencies": {
"bare-fs": "^2.1.1",
"bare-path": "^2.1.0"
}
},
"node_modules/tar-stream": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz",
"integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==",
"license": "MIT",
"dependencies": {
"b4a": "^1.6.4",
"fast-fifo": "^1.2.0",
"streamx": "^2.15.0"
}
},
"node_modules/text-decoder": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.1.tgz",
"integrity": "sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==",
"license": "Apache-2.0"
},
"node_modules/wrappy": { "node_modules/wrappy": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
@ -171,6 +303,25 @@
"integrity": "sha512-aveCYRQbgTH9Pssp1voEP7HiuWlD2jW2BO56w+bVrJn04i61yh6mRfoKO6hEYQD9vF+W8Chkwc6j1M36uPkx4g==", "integrity": "sha512-aveCYRQbgTH9Pssp1voEP7HiuWlD2jW2BO56w+bVrJn04i61yh6mRfoKO6hEYQD9vF+W8Chkwc6j1M36uPkx4g==",
"devOptional": true "devOptional": true
}, },
"@types/tar-fs": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@types/tar-fs/-/tar-fs-2.0.4.tgz",
"integrity": "sha512-ipPec0CjTmVDWE+QKr9cTmIIoTl7dFG/yARCM5MqK8i6CNLIG1P8x4kwDsOQY1ChZOZjH0wO9nvfgBvWl4R3kA==",
"dev": true,
"requires": {
"@types/node": "*",
"@types/tar-stream": "*"
}
},
"@types/tar-stream": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/@types/tar-stream/-/tar-stream-3.1.3.tgz",
"integrity": "sha512-Zbnx4wpkWBMBSu5CytMbrT5ZpMiF55qgM+EpHzR4yIDu7mv52cej8hTkOc6K+LzpkOAbxwn/m7j3iO+/l42YkQ==",
"dev": true,
"requires": {
"@types/node": "*"
}
},
"@types/yauzl": { "@types/yauzl": {
"version": "2.10.0", "version": "2.10.0",
"resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
@ -189,6 +340,52 @@
"@types/node": "*" "@types/node": "*"
} }
}, },
"b4a": {
"version": "1.6.7",
"resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz",
"integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg=="
},
"bare-events": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.0.tgz",
"integrity": "sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==",
"optional": true
},
"bare-fs": {
"version": "2.3.5",
"resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.5.tgz",
"integrity": "sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==",
"optional": true,
"requires": {
"bare-events": "^2.0.0",
"bare-path": "^2.0.0",
"bare-stream": "^2.0.0"
}
},
"bare-os": {
"version": "2.4.4",
"resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.4.4.tgz",
"integrity": "sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==",
"optional": true
},
"bare-path": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/bare-path/-/bare-path-2.1.3.tgz",
"integrity": "sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==",
"optional": true,
"requires": {
"bare-os": "^2.1.0"
}
},
"bare-stream": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.4.2.tgz",
"integrity": "sha512-XZ4ln/KV4KT+PXdIWTKjsLY+quqCaEtqqtgGJVPw9AoM73By03ij64YjepK0aQvHSWDb6AfAZwqKaFu68qkrdA==",
"optional": true,
"requires": {
"streamx": "^2.20.0"
}
},
"buffer-crc32": { "buffer-crc32": {
"version": "0.2.13", "version": "0.2.13",
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
@ -221,6 +418,11 @@
"yauzl": "^2.10.0" "yauzl": "^2.10.0"
} }
}, },
"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=="
},
"fd-slicer": { "fd-slicer": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
@ -264,6 +466,48 @@
"once": "^1.3.1" "once": "^1.3.1"
} }
}, },
"queue-tick": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
"integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag=="
},
"streamx": {
"version": "2.20.2",
"resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.2.tgz",
"integrity": "sha512-aDGDLU+j9tJcUdPGOaHmVF1u/hhI+CsGkT02V3OKlHDV7IukOI+nTWAGkiZEKCO35rWN1wIr4tS7YFr1f4qSvA==",
"requires": {
"bare-events": "^2.2.0",
"fast-fifo": "^1.3.2",
"queue-tick": "^1.0.1",
"text-decoder": "^1.1.0"
}
},
"tar-fs": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz",
"integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==",
"requires": {
"bare-fs": "^2.1.1",
"bare-path": "^2.1.0",
"pump": "^3.0.0",
"tar-stream": "^3.1.5"
}
},
"tar-stream": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz",
"integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==",
"requires": {
"b4a": "^1.6.4",
"fast-fifo": "^1.2.0",
"streamx": "^2.15.0"
}
},
"text-decoder": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.1.tgz",
"integrity": "sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ=="
},
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",

View file

@ -10,10 +10,12 @@
}, },
"dependencies": { "dependencies": {
"extract-zip": "2.0.1", "extract-zip": "2.0.1",
"tar-fs": "^3.0.6",
"yauzl": "2.10.0", "yauzl": "2.10.0",
"yazl": "2.5.1" "yazl": "2.5.1"
}, },
"devDependencies": { "devDependencies": {
"@types/tar-fs": "^2.0.4",
"@types/yauzl": "^2.10.0", "@types/yauzl": "^2.10.0",
"@types/yazl": "^2.4.2" "@types/yazl": "^2.4.2"
} }

View file

@ -18,3 +18,4 @@ export * as yazl from 'yazl';
export * as yauzl from 'yauzl'; export * as yauzl from 'yauzl';
import extractZip from 'extract-zip'; import extractZip from 'extract-zip';
export const extract = extractZip; export const extract = extractZip;
export * as tarFs from 'tar-fs';