pnpm 11.22.0 → 11.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (441) hide show
  1. package/CHANGELOG.md +234 -0
  2. package/README.md +12 -0
  3. package/dist/pnpm.mjs +9230 -7674
  4. package/dist/worker.js +40 -8
  5. package/package.json +1 -1
  6. package/artifacts/exe/dist/node-gyp-bin/node-gyp +0 -6
  7. package/artifacts/exe/dist/node-gyp-bin/node-gyp.cmd +0 -5
  8. package/artifacts/exe/dist/node_modules/.bin/node-gyp +0 -50
  9. package/artifacts/exe/dist/node_modules/.bin/node-which +0 -50
  10. package/artifacts/exe/dist/node_modules/.bin/nopt +0 -50
  11. package/artifacts/exe/dist/node_modules/.bin/semver +0 -50
  12. package/artifacts/exe/dist/node_modules/.package-map.json +0 -1
  13. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/LICENSE +0 -15
  14. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +0 -430
  15. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +0 -3
  16. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/index.js +0 -420
  17. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/package.json +0 -3
  18. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/package.json +0 -72
  19. package/artifacts/exe/dist/node_modules/abbrev/LICENSE +0 -46
  20. package/artifacts/exe/dist/node_modules/abbrev/lib/index.js +0 -53
  21. package/artifacts/exe/dist/node_modules/abbrev/package.json +0 -41
  22. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/index.js +0 -93
  23. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/package.json +0 -3
  24. package/artifacts/exe/dist/node_modules/chownr/dist/esm/index.js +0 -85
  25. package/artifacts/exe/dist/node_modules/chownr/dist/esm/package.json +0 -3
  26. package/artifacts/exe/dist/node_modules/chownr/package.json +0 -69
  27. package/artifacts/exe/dist/node_modules/env-paths/index.js +0 -74
  28. package/artifacts/exe/dist/node_modules/env-paths/license +0 -9
  29. package/artifacts/exe/dist/node_modules/env-paths/package.json +0 -45
  30. package/artifacts/exe/dist/node_modules/exponential-backoff/LICENSE +0 -202
  31. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/backoff.js +0 -124
  32. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +0 -25
  33. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +0 -45
  34. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +0 -17
  35. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +0 -3
  36. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +0 -82
  37. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +0 -8
  38. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +0 -15
  39. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +0 -7
  40. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/options.js +0 -31
  41. package/artifacts/exe/dist/node_modules/exponential-backoff/package.json +0 -62
  42. package/artifacts/exe/dist/node_modules/fdir/LICENSE +0 -7
  43. package/artifacts/exe/dist/node_modules/fdir/dist/index.cjs +0 -588
  44. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.cts +0 -155
  45. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.mts +0 -155
  46. package/artifacts/exe/dist/node_modules/fdir/dist/index.mjs +0 -570
  47. package/artifacts/exe/dist/node_modules/fdir/package.json +0 -103
  48. package/artifacts/exe/dist/node_modules/graceful-fs/LICENSE +0 -15
  49. package/artifacts/exe/dist/node_modules/graceful-fs/clone.js +0 -23
  50. package/artifacts/exe/dist/node_modules/graceful-fs/graceful-fs.js +0 -448
  51. package/artifacts/exe/dist/node_modules/graceful-fs/legacy-streams.js +0 -118
  52. package/artifacts/exe/dist/node_modules/graceful-fs/package.json +0 -53
  53. package/artifacts/exe/dist/node_modules/graceful-fs/polyfills.js +0 -355
  54. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.js +0 -56
  55. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.min.js +0 -2
  56. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/options.js +0 -3
  57. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/package.json +0 -3
  58. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/posix.js +0 -67
  59. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/win32.js +0 -63
  60. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.js +0 -16
  61. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.min.js +0 -2
  62. package/artifacts/exe/dist/node_modules/isexe/dist/esm/options.js +0 -2
  63. package/artifacts/exe/dist/node_modules/isexe/dist/esm/package.json +0 -3
  64. package/artifacts/exe/dist/node_modules/isexe/dist/esm/posix.js +0 -62
  65. package/artifacts/exe/dist/node_modules/isexe/dist/esm/win32.js +0 -58
  66. package/artifacts/exe/dist/node_modules/isexe/package.json +0 -78
  67. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/index.js +0 -1038
  68. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/package.json +0 -3
  69. package/artifacts/exe/dist/node_modules/minipass/dist/esm/index.js +0 -1020
  70. package/artifacts/exe/dist/node_modules/minipass/dist/esm/package.json +0 -3
  71. package/artifacts/exe/dist/node_modules/minipass/package.json +0 -77
  72. package/artifacts/exe/dist/node_modules/minizlib/LICENSE +0 -26
  73. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/constants.js +0 -123
  74. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/index.js +0 -416
  75. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/package.json +0 -3
  76. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/constants.js +0 -117
  77. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/index.js +0 -363
  78. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/package.json +0 -3
  79. package/artifacts/exe/dist/node_modules/minizlib/package.json +0 -80
  80. package/artifacts/exe/dist/node_modules/node-gyp/.release-please-manifest.json +0 -3
  81. package/artifacts/exe/dist/node_modules/node-gyp/LICENSE +0 -24
  82. package/artifacts/exe/dist/node_modules/node-gyp/addon.gypi +0 -204
  83. package/artifacts/exe/dist/node_modules/node-gyp/bin/node-gyp.js +0 -145
  84. package/artifacts/exe/dist/node_modules/node-gyp/eslint.config.js +0 -3
  85. package/artifacts/exe/dist/node_modules/node-gyp/gyp/.release-please-manifest.json +0 -3
  86. package/artifacts/exe/dist/node_modules/node-gyp/gyp/LICENSE +0 -28
  87. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/ninja/build.ninja +0 -4
  88. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc +0 -12
  89. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp +0 -8
  90. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp.bat +0 -5
  91. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp_main.py +0 -45
  92. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +0 -365
  93. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +0 -206
  94. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +0 -1283
  95. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +0 -1545
  96. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +0 -59
  97. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +0 -152
  98. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +0 -270
  99. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +0 -607
  100. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +0 -706
  101. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common.py +0 -725
  102. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +0 -186
  103. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +0 -170
  104. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +0 -113
  105. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +0 -55
  106. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
  107. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +0 -805
  108. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +0 -1169
  109. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +0 -1316
  110. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +0 -128
  111. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +0 -104
  112. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +0 -461
  113. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +0 -88
  114. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +0 -55
  115. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +0 -2755
  116. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +0 -3970
  117. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +0 -44
  118. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +0 -2957
  119. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +0 -77
  120. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +0 -1389
  121. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +0 -26
  122. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input.py +0 -3097
  123. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +0 -99
  124. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +0 -765
  125. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +0 -1255
  126. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +0 -174
  127. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +0 -61
  128. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +0 -371
  129. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +0 -1936
  130. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py +0 -54
  131. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +0 -301
  132. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +0 -3180
  133. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +0 -64
  134. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE +0 -3
  135. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.APACHE +0 -177
  136. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.BSD +0 -23
  137. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/__init__.py +0 -15
  138. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py +0 -107
  139. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py +0 -252
  140. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py +0 -83
  141. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_parser.py +0 -359
  142. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_structures.py +0 -61
  143. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py +0 -192
  144. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/markers.py +0 -251
  145. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +0 -807
  146. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/py.typed +0 -0
  147. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/requirements.py +0 -90
  148. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py +0 -1030
  149. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/tags.py +0 -541
  150. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/utils.py +0 -172
  151. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/version.py +0 -563
  152. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pyproject.toml +0 -116
  153. package/artifacts/exe/dist/node_modules/node-gyp/gyp/release-please-config.json +0 -11
  154. package/artifacts/exe/dist/node_modules/node-gyp/gyp/test_gyp.py +0 -260
  155. package/artifacts/exe/dist/node_modules/node-gyp/lib/Find-VisualStudio.cs +0 -250
  156. package/artifacts/exe/dist/node_modules/node-gyp/lib/build.js +0 -230
  157. package/artifacts/exe/dist/node_modules/node-gyp/lib/clean.js +0 -15
  158. package/artifacts/exe/dist/node_modules/node-gyp/lib/configure.js +0 -328
  159. package/artifacts/exe/dist/node_modules/node-gyp/lib/create-config-gypi.js +0 -153
  160. package/artifacts/exe/dist/node_modules/node-gyp/lib/download.js +0 -86
  161. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-node-directory.js +0 -63
  162. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-python.js +0 -304
  163. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-visualstudio.js +0 -606
  164. package/artifacts/exe/dist/node_modules/node-gyp/lib/install.js +0 -411
  165. package/artifacts/exe/dist/node_modules/node-gyp/lib/list.js +0 -26
  166. package/artifacts/exe/dist/node_modules/node-gyp/lib/log.js +0 -168
  167. package/artifacts/exe/dist/node_modules/node-gyp/lib/node-gyp.js +0 -199
  168. package/artifacts/exe/dist/node_modules/node-gyp/lib/process-release.js +0 -144
  169. package/artifacts/exe/dist/node_modules/node-gyp/lib/rebuild.js +0 -12
  170. package/artifacts/exe/dist/node_modules/node-gyp/lib/remove.js +0 -43
  171. package/artifacts/exe/dist/node_modules/node-gyp/lib/util.js +0 -81
  172. package/artifacts/exe/dist/node_modules/node-gyp/macOS_Catalina_acid_test.sh +0 -21
  173. package/artifacts/exe/dist/node_modules/node-gyp/package.json +0 -52
  174. package/artifacts/exe/dist/node_modules/node-gyp/release-please-config.json +0 -40
  175. package/artifacts/exe/dist/node_modules/node-gyp/src/win_delay_load_hook.cc +0 -41
  176. package/artifacts/exe/dist/node_modules/nopt/LICENSE +0 -15
  177. package/artifacts/exe/dist/node_modules/nopt/bin/nopt.js +0 -29
  178. package/artifacts/exe/dist/node_modules/nopt/lib/debug.js +0 -5
  179. package/artifacts/exe/dist/node_modules/nopt/lib/nopt-lib.js +0 -514
  180. package/artifacts/exe/dist/node_modules/nopt/lib/nopt.js +0 -34
  181. package/artifacts/exe/dist/node_modules/nopt/lib/type-defs.js +0 -91
  182. package/artifacts/exe/dist/node_modules/nopt/package.json +0 -52
  183. package/artifacts/exe/dist/node_modules/picomatch/LICENSE +0 -21
  184. package/artifacts/exe/dist/node_modules/picomatch/index.js +0 -17
  185. package/artifacts/exe/dist/node_modules/picomatch/lib/constants.js +0 -184
  186. package/artifacts/exe/dist/node_modules/picomatch/lib/parse.js +0 -1416
  187. package/artifacts/exe/dist/node_modules/picomatch/lib/picomatch.js +0 -361
  188. package/artifacts/exe/dist/node_modules/picomatch/lib/scan.js +0 -391
  189. package/artifacts/exe/dist/node_modules/picomatch/lib/utils.js +0 -72
  190. package/artifacts/exe/dist/node_modules/picomatch/package.json +0 -83
  191. package/artifacts/exe/dist/node_modules/picomatch/posix.js +0 -3
  192. package/artifacts/exe/dist/node_modules/proc-log/LICENSE +0 -15
  193. package/artifacts/exe/dist/node_modules/proc-log/lib/index.js +0 -158
  194. package/artifacts/exe/dist/node_modules/proc-log/package.json +0 -46
  195. package/artifacts/exe/dist/node_modules/semver/LICENSE +0 -15
  196. package/artifacts/exe/dist/node_modules/semver/bin/semver.js +0 -195
  197. package/artifacts/exe/dist/node_modules/semver/classes/comparator.js +0 -143
  198. package/artifacts/exe/dist/node_modules/semver/classes/index.js +0 -7
  199. package/artifacts/exe/dist/node_modules/semver/classes/range.js +0 -577
  200. package/artifacts/exe/dist/node_modules/semver/classes/semver.js +0 -350
  201. package/artifacts/exe/dist/node_modules/semver/functions/clean.js +0 -8
  202. package/artifacts/exe/dist/node_modules/semver/functions/cmp.js +0 -54
  203. package/artifacts/exe/dist/node_modules/semver/functions/coerce.js +0 -62
  204. package/artifacts/exe/dist/node_modules/semver/functions/compare-build.js +0 -9
  205. package/artifacts/exe/dist/node_modules/semver/functions/compare-loose.js +0 -5
  206. package/artifacts/exe/dist/node_modules/semver/functions/compare.js +0 -7
  207. package/artifacts/exe/dist/node_modules/semver/functions/diff.js +0 -60
  208. package/artifacts/exe/dist/node_modules/semver/functions/eq.js +0 -5
  209. package/artifacts/exe/dist/node_modules/semver/functions/gt.js +0 -5
  210. package/artifacts/exe/dist/node_modules/semver/functions/gte.js +0 -5
  211. package/artifacts/exe/dist/node_modules/semver/functions/inc.js +0 -21
  212. package/artifacts/exe/dist/node_modules/semver/functions/lt.js +0 -5
  213. package/artifacts/exe/dist/node_modules/semver/functions/lte.js +0 -5
  214. package/artifacts/exe/dist/node_modules/semver/functions/major.js +0 -5
  215. package/artifacts/exe/dist/node_modules/semver/functions/minor.js +0 -5
  216. package/artifacts/exe/dist/node_modules/semver/functions/neq.js +0 -5
  217. package/artifacts/exe/dist/node_modules/semver/functions/parse.js +0 -18
  218. package/artifacts/exe/dist/node_modules/semver/functions/patch.js +0 -5
  219. package/artifacts/exe/dist/node_modules/semver/functions/prerelease.js +0 -8
  220. package/artifacts/exe/dist/node_modules/semver/functions/rcompare.js +0 -5
  221. package/artifacts/exe/dist/node_modules/semver/functions/rsort.js +0 -5
  222. package/artifacts/exe/dist/node_modules/semver/functions/satisfies.js +0 -12
  223. package/artifacts/exe/dist/node_modules/semver/functions/sort.js +0 -5
  224. package/artifacts/exe/dist/node_modules/semver/functions/truncate.js +0 -48
  225. package/artifacts/exe/dist/node_modules/semver/functions/valid.js +0 -8
  226. package/artifacts/exe/dist/node_modules/semver/index.js +0 -93
  227. package/artifacts/exe/dist/node_modules/semver/internal/constants.js +0 -37
  228. package/artifacts/exe/dist/node_modules/semver/internal/debug.js +0 -11
  229. package/artifacts/exe/dist/node_modules/semver/internal/identifiers.js +0 -29
  230. package/artifacts/exe/dist/node_modules/semver/internal/lrucache.js +0 -42
  231. package/artifacts/exe/dist/node_modules/semver/internal/parse-options.js +0 -17
  232. package/artifacts/exe/dist/node_modules/semver/internal/re.js +0 -223
  233. package/artifacts/exe/dist/node_modules/semver/package.json +0 -78
  234. package/artifacts/exe/dist/node_modules/semver/preload.js +0 -4
  235. package/artifacts/exe/dist/node_modules/semver/range.bnf +0 -17
  236. package/artifacts/exe/dist/node_modules/semver/ranges/gtr.js +0 -6
  237. package/artifacts/exe/dist/node_modules/semver/ranges/intersects.js +0 -9
  238. package/artifacts/exe/dist/node_modules/semver/ranges/ltr.js +0 -6
  239. package/artifacts/exe/dist/node_modules/semver/ranges/max-satisfying.js +0 -27
  240. package/artifacts/exe/dist/node_modules/semver/ranges/min-satisfying.js +0 -26
  241. package/artifacts/exe/dist/node_modules/semver/ranges/min-version.js +0 -63
  242. package/artifacts/exe/dist/node_modules/semver/ranges/outside.js +0 -82
  243. package/artifacts/exe/dist/node_modules/semver/ranges/simplify.js +0 -49
  244. package/artifacts/exe/dist/node_modules/semver/ranges/subset.js +0 -249
  245. package/artifacts/exe/dist/node_modules/semver/ranges/to-comparators.js +0 -10
  246. package/artifacts/exe/dist/node_modules/semver/ranges/valid.js +0 -13
  247. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/create.js +0 -82
  248. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/cwd-error.js +0 -18
  249. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/extract.js +0 -88
  250. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/get-write-flag.js +0 -32
  251. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/header.js +0 -348
  252. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.js +0 -64
  253. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.min.js +0 -4
  254. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/large-numbers.js +0 -99
  255. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/list.js +0 -153
  256. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/make-command.js +0 -52
  257. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mkdir.js +0 -187
  258. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mode-fix.js +0 -29
  259. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-unicode.js +0 -38
  260. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-windows-path.js +0 -12
  261. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/options.js +0 -66
  262. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pack.js +0 -544
  263. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/package.json +0 -3
  264. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/parse.js +0 -655
  265. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/path-reservations.js +0 -170
  266. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pax.js +0 -182
  267. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/process-umask.js +0 -7
  268. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/read-entry.js +0 -136
  269. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/replace.js +0 -227
  270. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-absolute-path.js +0 -29
  271. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +0 -18
  272. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/symlink-error.js +0 -19
  273. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/types.js +0 -70
  274. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/unpack.js +0 -932
  275. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/update.js +0 -33
  276. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/warn-method.js +0 -31
  277. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/winchars.js +0 -14
  278. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/write-entry.js +0 -698
  279. package/artifacts/exe/dist/node_modules/tar/dist/esm/create.js +0 -76
  280. package/artifacts/exe/dist/node_modules/tar/dist/esm/cwd-error.js +0 -14
  281. package/artifacts/exe/dist/node_modules/tar/dist/esm/extract.js +0 -49
  282. package/artifacts/exe/dist/node_modules/tar/dist/esm/get-write-flag.js +0 -26
  283. package/artifacts/exe/dist/node_modules/tar/dist/esm/header.js +0 -311
  284. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.js +0 -20
  285. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.min.js +0 -4
  286. package/artifacts/exe/dist/node_modules/tar/dist/esm/large-numbers.js +0 -94
  287. package/artifacts/exe/dist/node_modules/tar/dist/esm/list.js +0 -113
  288. package/artifacts/exe/dist/node_modules/tar/dist/esm/make-command.js +0 -48
  289. package/artifacts/exe/dist/node_modules/tar/dist/esm/mkdir.js +0 -179
  290. package/artifacts/exe/dist/node_modules/tar/dist/esm/mode-fix.js +0 -25
  291. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-unicode.js +0 -34
  292. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-windows-path.js +0 -9
  293. package/artifacts/exe/dist/node_modules/tar/dist/esm/options.js +0 -54
  294. package/artifacts/exe/dist/node_modules/tar/dist/esm/pack.js +0 -502
  295. package/artifacts/exe/dist/node_modules/tar/dist/esm/package.json +0 -3
  296. package/artifacts/exe/dist/node_modules/tar/dist/esm/parse.js +0 -651
  297. package/artifacts/exe/dist/node_modules/tar/dist/esm/path-reservations.js +0 -166
  298. package/artifacts/exe/dist/node_modules/tar/dist/esm/pax.js +0 -178
  299. package/artifacts/exe/dist/node_modules/tar/dist/esm/process-umask.js +0 -3
  300. package/artifacts/exe/dist/node_modules/tar/dist/esm/read-entry.js +0 -132
  301. package/artifacts/exe/dist/node_modules/tar/dist/esm/replace.js +0 -221
  302. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-absolute-path.js +0 -25
  303. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-trailing-slashes.js +0 -14
  304. package/artifacts/exe/dist/node_modules/tar/dist/esm/symlink-error.js +0 -15
  305. package/artifacts/exe/dist/node_modules/tar/dist/esm/types.js +0 -65
  306. package/artifacts/exe/dist/node_modules/tar/dist/esm/unpack.js +0 -891
  307. package/artifacts/exe/dist/node_modules/tar/dist/esm/update.js +0 -30
  308. package/artifacts/exe/dist/node_modules/tar/dist/esm/warn-method.js +0 -27
  309. package/artifacts/exe/dist/node_modules/tar/dist/esm/winchars.js +0 -9
  310. package/artifacts/exe/dist/node_modules/tar/dist/esm/write-entry.js +0 -656
  311. package/artifacts/exe/dist/node_modules/tar/package.json +0 -298
  312. package/artifacts/exe/dist/node_modules/tinyglobby/LICENSE +0 -21
  313. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.cjs +0 -335
  314. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.cts +0 -148
  315. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.mts +0 -148
  316. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.mjs +0 -307
  317. package/artifacts/exe/dist/node_modules/tinyglobby/package.json +0 -70
  318. package/artifacts/exe/dist/node_modules/undici/LICENSE +0 -21
  319. package/artifacts/exe/dist/node_modules/undici/index-fetch.js +0 -35
  320. package/artifacts/exe/dist/node_modules/undici/index.js +0 -169
  321. package/artifacts/exe/dist/node_modules/undici/lib/api/abort-signal.js +0 -57
  322. package/artifacts/exe/dist/node_modules/undici/lib/api/api-connect.js +0 -108
  323. package/artifacts/exe/dist/node_modules/undici/lib/api/api-pipeline.js +0 -251
  324. package/artifacts/exe/dist/node_modules/undici/lib/api/api-request.js +0 -214
  325. package/artifacts/exe/dist/node_modules/undici/lib/api/api-stream.js +0 -220
  326. package/artifacts/exe/dist/node_modules/undici/lib/api/api-upgrade.js +0 -108
  327. package/artifacts/exe/dist/node_modules/undici/lib/api/index.js +0 -7
  328. package/artifacts/exe/dist/node_modules/undici/lib/api/readable.js +0 -385
  329. package/artifacts/exe/dist/node_modules/undici/lib/api/util.js +0 -93
  330. package/artifacts/exe/dist/node_modules/undici/lib/core/connect.js +0 -240
  331. package/artifacts/exe/dist/node_modules/undici/lib/core/constants.js +0 -118
  332. package/artifacts/exe/dist/node_modules/undici/lib/core/diagnostics.js +0 -202
  333. package/artifacts/exe/dist/node_modules/undici/lib/core/errors.js +0 -425
  334. package/artifacts/exe/dist/node_modules/undici/lib/core/request.js +0 -416
  335. package/artifacts/exe/dist/node_modules/undici/lib/core/symbols.js +0 -67
  336. package/artifacts/exe/dist/node_modules/undici/lib/core/tree.js +0 -152
  337. package/artifacts/exe/dist/node_modules/undici/lib/core/util.js +0 -719
  338. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/agent.js +0 -129
  339. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -209
  340. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1496
  341. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -744
  342. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client.js +0 -623
  343. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -199
  344. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -65
  345. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -160
  346. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -117
  347. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -194
  348. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-stats.js +0 -34
  349. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool.js +0 -107
  350. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -274
  351. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  352. package/artifacts/exe/dist/node_modules/undici/lib/global.js +0 -32
  353. package/artifacts/exe/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -44
  354. package/artifacts/exe/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -232
  355. package/artifacts/exe/dist/node_modules/undici/lib/handler/retry-handler.js +0 -408
  356. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dns.js +0 -375
  357. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dump.js +0 -123
  358. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect-interceptor.js +0 -21
  359. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect.js +0 -24
  360. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/response-error.js +0 -86
  361. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  362. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  363. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/constants.js +0 -278
  364. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -5
  365. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -5
  366. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/utils.js +0 -15
  367. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-agent.js +0 -160
  368. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-client.js +0 -59
  369. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-errors.js +0 -28
  370. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -207
  371. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-pool.js +0 -59
  372. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -23
  373. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-utils.js +0 -367
  374. package/artifacts/exe/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  375. package/artifacts/exe/dist/node_modules/undici/lib/mock/pluralizer.js +0 -29
  376. package/artifacts/exe/dist/node_modules/undici/lib/util/timers.js +0 -423
  377. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cache.js +0 -859
  378. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  379. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/symbols.js +0 -5
  380. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  381. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  382. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/index.js +0 -184
  383. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/parse.js +0 -310
  384. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/util.js +0 -352
  385. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -398
  386. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -480
  387. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/util.js +0 -37
  388. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/LICENSE +0 -21
  389. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/body.js +0 -529
  390. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/constants.js +0 -124
  391. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -744
  392. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +0 -46
  393. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/file.js +0 -126
  394. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -474
  395. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -252
  396. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  397. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/headers.js +0 -687
  398. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/index.js +0 -2272
  399. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/request.js +0 -1037
  400. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/response.js +0 -610
  401. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/symbols.js +0 -9
  402. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/util.js +0 -1632
  403. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/webidl.js +0 -695
  404. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/encoding.js +0 -290
  405. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/filereader.js +0 -344
  406. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/progressevent.js +0 -78
  407. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/symbols.js +0 -10
  408. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/util.js +0 -391
  409. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/connection.js +0 -371
  410. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/constants.js +0 -66
  411. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/events.js +0 -329
  412. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/frame.js +0 -96
  413. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -100
  414. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -513
  415. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/sender.js +0 -104
  416. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/symbols.js +0 -12
  417. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/util.js +0 -322
  418. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -595
  419. package/artifacts/exe/dist/node_modules/undici/package.json +0 -160
  420. package/artifacts/exe/dist/node_modules/undici/scripts/strip-comments.js +0 -8
  421. package/artifacts/exe/dist/node_modules/v8-compile-cache/LICENSE +0 -21
  422. package/artifacts/exe/dist/node_modules/v8-compile-cache/package.json +0 -34
  423. package/artifacts/exe/dist/node_modules/v8-compile-cache/v8-compile-cache.js +0 -373
  424. package/artifacts/exe/dist/node_modules/which/LICENSE +0 -15
  425. package/artifacts/exe/dist/node_modules/which/bin/which.js +0 -52
  426. package/artifacts/exe/dist/node_modules/which/lib/index.js +0 -111
  427. package/artifacts/exe/dist/node_modules/which/package.json +0 -52
  428. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/index.js +0 -384
  429. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/package.json +0 -3
  430. package/artifacts/exe/dist/node_modules/yallist/dist/esm/index.js +0 -379
  431. package/artifacts/exe/dist/node_modules/yallist/dist/esm/package.json +0 -3
  432. package/artifacts/exe/dist/node_modules/yallist/package.json +0 -68
  433. package/artifacts/exe/dist/pnpm.mjs +0 -323057
  434. package/artifacts/exe/dist/pnpmrc +0 -2
  435. package/artifacts/exe/dist/templates/completion.bash +0 -31
  436. package/artifacts/exe/dist/templates/completion.fish +0 -22
  437. package/artifacts/exe/dist/templates/completion.ps1 +0 -193
  438. package/artifacts/exe/dist/templates/completion.zsh +0 -27
  439. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  440. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  441. package/artifacts/exe/dist/worker.js +0 -12117
@@ -1,651 +0,0 @@
1
- // this[BUFFER] is the remainder of a chunk if we're waiting for
2
- // the full 512 bytes of a header to come in. We will Buffer.concat()
3
- // it to the next write(), which is a mem copy, but a small one.
4
- //
5
- // this[QUEUE] is a list of entries that haven't been emitted
6
- // yet this can only get filled up if the user keeps write()ing after
7
- // a write() returns false, or does a write() with more than one entry
8
- //
9
- // We don't buffer chunks, we always parse them and either create an
10
- // entry, or push it into the active entry. The ReadEntry class knows
11
- // to throw data away if .ignore=true
12
- //
13
- // Shift entry off the buffer when it emits 'end', and emit 'entry' for
14
- // the next one in the list.
15
- //
16
- // At any time, we're pushing body chunks into the entry at WRITEENTRY,
17
- // and waiting for 'end' on the entry at READENTRY
18
- //
19
- // ignored entries get .resume() called on them straight away
20
- import { EventEmitter as EE } from 'events';
21
- import { BrotliDecompress, Unzip, ZstdDecompress } from 'minizlib';
22
- import { Header } from './header.js';
23
- import { Pax } from './pax.js';
24
- import { ReadEntry } from './read-entry.js';
25
- import { warnMethod } from './warn-method.js';
26
- const maxMetaEntrySize = 1024 * 1024;
27
- const gzipHeader = Buffer.from([0x1f, 0x8b]);
28
- const zstdHeader = Buffer.from([0x28, 0xb5, 0x2f, 0xfd]);
29
- const ZIP_HEADER_LEN = Math.max(gzipHeader.length, zstdHeader.length);
30
- const STATE = Symbol('state');
31
- const WRITEENTRY = Symbol('writeEntry');
32
- const READENTRY = Symbol('readEntry');
33
- const NEXTENTRY = Symbol('nextEntry');
34
- const PROCESSENTRY = Symbol('processEntry');
35
- const EX = Symbol('extendedHeader');
36
- const GEX = Symbol('globalExtendedHeader');
37
- const META = Symbol('meta');
38
- const EMITMETA = Symbol('emitMeta');
39
- const BUFFER = Symbol('buffer');
40
- const QUEUE = Symbol('queue');
41
- const ENDED = Symbol('ended');
42
- const EMITTEDEND = Symbol('emittedEnd');
43
- const EMIT = Symbol('emit');
44
- const UNZIP = Symbol('unzip');
45
- const CONSUMECHUNK = Symbol('consumeChunk');
46
- const CONSUMECHUNKSUB = Symbol('consumeChunkSub');
47
- const CONSUMEBODY = Symbol('consumeBody');
48
- const CONSUMEMETA = Symbol('consumeMeta');
49
- const CONSUMEHEADER = Symbol('consumeHeader');
50
- const CONSUMING = Symbol('consuming');
51
- const BUFFERCONCAT = Symbol('bufferConcat');
52
- const MAYBEEND = Symbol('maybeEnd');
53
- const WRITING = Symbol('writing');
54
- const ABORTED = Symbol('aborted');
55
- const DONE = Symbol('onDone');
56
- const SAW_VALID_ENTRY = Symbol('sawValidEntry');
57
- const SAW_NULL_BLOCK = Symbol('sawNullBlock');
58
- const SAW_EOF = Symbol('sawEOF');
59
- const CLOSESTREAM = Symbol('closeStream');
60
- const MAX_DECOMPRESSION_RATIO = 1000;
61
- const COMPRESSEDBYTESREAD = Symbol('compressedBytesRead');
62
- const DECOMPRESSEDBYTESREAD = Symbol('decompressedBytesRead');
63
- const CHECKDECOMPRESSIONRATIO = Symbol('checkDecompressionRatio');
64
- const noop = () => true;
65
- export class Parser extends EE {
66
- file;
67
- strict;
68
- maxMetaEntrySize;
69
- filter;
70
- brotli;
71
- zstd;
72
- maxDecompressionRatio;
73
- writable = true;
74
- readable = false;
75
- [QUEUE] = [];
76
- [BUFFER];
77
- [READENTRY];
78
- [WRITEENTRY];
79
- [STATE] = 'begin';
80
- [META] = '';
81
- [EX];
82
- [GEX];
83
- [ENDED] = false;
84
- [UNZIP];
85
- [ABORTED] = false;
86
- [SAW_VALID_ENTRY];
87
- [SAW_NULL_BLOCK] = false;
88
- [SAW_EOF] = false;
89
- [WRITING] = false;
90
- [CONSUMING] = false;
91
- [EMITTEDEND] = false;
92
- [COMPRESSEDBYTESREAD] = 0;
93
- [DECOMPRESSEDBYTESREAD] = 0;
94
- constructor(opt = {}) {
95
- super();
96
- this.file = opt.file || '';
97
- // these BADARCHIVE errors can't be detected early. listen on DONE.
98
- this.on(DONE, () => {
99
- if (this[STATE] === 'begin' || this[SAW_VALID_ENTRY] === false) {
100
- // either less than 1 block of data, or all entries were invalid.
101
- // Either way, probably not even a tarball.
102
- this.warn('TAR_BAD_ARCHIVE', 'Unrecognized archive format');
103
- }
104
- });
105
- if (opt.ondone) {
106
- this.on(DONE, opt.ondone);
107
- }
108
- else {
109
- this.on(DONE, () => {
110
- this.emit('prefinish');
111
- this.emit('finish');
112
- this.emit('end');
113
- });
114
- }
115
- this.strict = !!opt.strict;
116
- this.maxDecompressionRatio =
117
- typeof opt.maxDecompressionRatio === 'number' ?
118
- opt.maxDecompressionRatio
119
- : MAX_DECOMPRESSION_RATIO;
120
- this.maxMetaEntrySize = opt.maxMetaEntrySize || maxMetaEntrySize;
121
- this.filter = typeof opt.filter === 'function' ? opt.filter : noop;
122
- // Unlike gzip, brotli doesn't have any magic bytes to identify it
123
- // Users need to explicitly tell us they're extracting a brotli file
124
- // Or we infer from the file extension
125
- const isTBR = opt.file &&
126
- (opt.file.endsWith('.tar.br') || opt.file.endsWith('.tbr'));
127
- // if it's a tbr file it MIGHT be brotli, but we don't know until
128
- // we look at it and verify it's not a valid tar file.
129
- this.brotli =
130
- !(opt.gzip || opt.zstd) && opt.brotli !== undefined ? opt.brotli
131
- : isTBR ? undefined
132
- : false;
133
- // zstd has magic bytes to identify it, but we also support explicit options
134
- // and file extension detection
135
- const isTZST = opt.file &&
136
- (opt.file.endsWith('.tar.zst') || opt.file.endsWith('.tzst'));
137
- this.zstd =
138
- !(opt.gzip || opt.brotli) && opt.zstd !== undefined ? opt.zstd
139
- : isTZST ? true
140
- : undefined;
141
- // have to set this so that streams are ok piping into it
142
- this.on('end', () => this[CLOSESTREAM]());
143
- if (typeof opt.onwarn === 'function') {
144
- this.on('warn', opt.onwarn);
145
- }
146
- if (typeof opt.onReadEntry === 'function') {
147
- this.on('entry', opt.onReadEntry);
148
- }
149
- }
150
- warn(code, message, data = {}) {
151
- warnMethod(this, code, message, data);
152
- }
153
- [CONSUMEHEADER](chunk, position) {
154
- if (this[SAW_VALID_ENTRY] === undefined) {
155
- this[SAW_VALID_ENTRY] = false;
156
- }
157
- let header;
158
- try {
159
- header = new Header(chunk, position, this[EX], this[GEX]);
160
- }
161
- catch (er) {
162
- return this.warn('TAR_ENTRY_INVALID', er);
163
- }
164
- if (header.nullBlock) {
165
- if (this[SAW_NULL_BLOCK]) {
166
- this[SAW_EOF] = true;
167
- // ending an archive with no entries. pointless, but legal.
168
- if (this[STATE] === 'begin') {
169
- this[STATE] = 'header';
170
- }
171
- this[EMIT]('eof');
172
- }
173
- else {
174
- this[SAW_NULL_BLOCK] = true;
175
- this[EMIT]('nullBlock');
176
- }
177
- }
178
- else {
179
- this[SAW_NULL_BLOCK] = false;
180
- if (!header.cksumValid) {
181
- this.warn('TAR_ENTRY_INVALID', 'checksum failure', { header });
182
- }
183
- else if (!header.path) {
184
- this.warn('TAR_ENTRY_INVALID', 'path is required', { header });
185
- }
186
- else {
187
- const type = header.type;
188
- if (/^(Symbolic)?Link$/.test(type) && !header.linkpath) {
189
- this.warn('TAR_ENTRY_INVALID', 'linkpath required', {
190
- header,
191
- });
192
- }
193
- else if (!/^(Symbolic)?Link$/.test(type) &&
194
- !/^(Global)?ExtendedHeader$/.test(type) &&
195
- header.linkpath) {
196
- this.warn('TAR_ENTRY_INVALID', 'linkpath forbidden', {
197
- header,
198
- });
199
- }
200
- else {
201
- const entry = (this[WRITEENTRY] = new ReadEntry(header, this[EX], this[GEX]));
202
- // we do this for meta & ignored entries as well, because they
203
- // are still valid tar, or else we wouldn't know to ignore them
204
- if (!this[SAW_VALID_ENTRY]) {
205
- if (entry.remain) {
206
- // this might be the one!
207
- const onend = () => {
208
- if (!entry.invalid) {
209
- this[SAW_VALID_ENTRY] = true;
210
- }
211
- };
212
- entry.on('end', onend);
213
- }
214
- else {
215
- this[SAW_VALID_ENTRY] = true;
216
- }
217
- }
218
- if (entry.meta) {
219
- if (entry.size > this.maxMetaEntrySize) {
220
- entry.ignore = true;
221
- this[EMIT]('ignoredEntry', entry);
222
- this[STATE] = 'ignore';
223
- entry.resume();
224
- }
225
- else if (entry.size > 0) {
226
- this[META] = '';
227
- entry.on('data', c => (this[META] += c));
228
- this[STATE] = 'meta';
229
- }
230
- }
231
- else {
232
- this[EX] = undefined;
233
- entry.ignore = entry.ignore || !this.filter(entry.path, entry);
234
- if (entry.ignore) {
235
- // probably valid, just not something we care about
236
- this[EMIT]('ignoredEntry', entry);
237
- this[STATE] = entry.remain ? 'ignore' : 'header';
238
- entry.resume();
239
- }
240
- else {
241
- if (entry.remain) {
242
- this[STATE] = 'body';
243
- }
244
- else {
245
- this[STATE] = 'header';
246
- entry.end();
247
- }
248
- if (!this[READENTRY]) {
249
- this[QUEUE].push(entry);
250
- this[NEXTENTRY]();
251
- }
252
- else {
253
- this[QUEUE].push(entry);
254
- }
255
- }
256
- }
257
- }
258
- }
259
- }
260
- }
261
- [CLOSESTREAM]() {
262
- queueMicrotask(() => this.emit('close'));
263
- }
264
- [PROCESSENTRY](entry) {
265
- let go = true;
266
- if (!entry) {
267
- this[READENTRY] = undefined;
268
- go = false;
269
- }
270
- else if (Array.isArray(entry)) {
271
- const [ev, ...args] = entry;
272
- this.emit(ev, ...args);
273
- }
274
- else {
275
- this[READENTRY] = entry;
276
- this.emit('entry', entry);
277
- if (!entry.emittedEnd) {
278
- entry.on('end', () => this[NEXTENTRY]());
279
- go = false;
280
- }
281
- }
282
- return go;
283
- }
284
- [NEXTENTRY]() {
285
- do { } while (this[PROCESSENTRY](this[QUEUE].shift()));
286
- if (this[QUEUE].length === 0) {
287
- // At this point, there's nothing in the queue, but we may have an
288
- // entry which is being consumed (readEntry).
289
- // If we don't, then we definitely can handle more data.
290
- // If we do, and either it's flowing, or it has never had any data
291
- // written to it, then it needs more.
292
- // The only other possibility is that it has returned false from a
293
- // write() call, so we wait for the next drain to continue.
294
- const re = this[READENTRY];
295
- const drainNow = !re || re.flowing || re.size === re.remain;
296
- if (drainNow) {
297
- if (!this[WRITING]) {
298
- this.emit('drain');
299
- }
300
- }
301
- else {
302
- re.once('drain', () => this.emit('drain'));
303
- }
304
- }
305
- }
306
- [CONSUMEBODY](chunk, position) {
307
- // write up to but no more than writeEntry.blockRemain
308
- const entry = this[WRITEENTRY];
309
- /* c8 ignore start */
310
- if (!entry) {
311
- throw new Error('attempt to consume body without entry??');
312
- }
313
- const br = entry.blockRemain ?? 0;
314
- /* c8 ignore stop */
315
- const c = br >= chunk.length && position === 0 ?
316
- chunk
317
- : chunk.subarray(position, position + br);
318
- entry.write(c);
319
- if (!entry.blockRemain) {
320
- this[STATE] = 'header';
321
- this[WRITEENTRY] = undefined;
322
- entry.end();
323
- }
324
- return c.length;
325
- }
326
- [CONSUMEMETA](chunk, position) {
327
- const entry = this[WRITEENTRY];
328
- const ret = this[CONSUMEBODY](chunk, position);
329
- // if we finished, then the entry is reset
330
- if (!this[WRITEENTRY] && entry) {
331
- this[EMITMETA](entry);
332
- }
333
- return ret;
334
- }
335
- [EMIT](ev, data, extra) {
336
- if (this[QUEUE].length === 0 && !this[READENTRY]) {
337
- this.emit(ev, data, extra);
338
- }
339
- else {
340
- this[QUEUE].push([ev, data, extra]);
341
- }
342
- }
343
- [EMITMETA](entry) {
344
- this[EMIT]('meta', this[META]);
345
- switch (entry.type) {
346
- case 'ExtendedHeader':
347
- case 'OldExtendedHeader':
348
- this[EX] = Pax.parse(this[META], this[EX], false);
349
- break;
350
- case 'GlobalExtendedHeader':
351
- this[GEX] = Pax.parse(this[META], this[GEX], true);
352
- break;
353
- case 'NextFileHasLongPath':
354
- case 'OldGnuLongPath': {
355
- const ex = this[EX] ?? Object.create(null);
356
- this[EX] = ex;
357
- ex.path = this[META].replace(/\0.*/, '');
358
- break;
359
- }
360
- case 'NextFileHasLongLinkpath': {
361
- const ex = this[EX] || Object.create(null);
362
- this[EX] = ex;
363
- ex.linkpath = this[META].replace(/\0.*/, '');
364
- break;
365
- }
366
- /* c8 ignore start */
367
- default:
368
- throw new Error('unknown meta: ' + entry.type);
369
- /* c8 ignore stop */
370
- }
371
- }
372
- abort(error) {
373
- if (this[ABORTED]) {
374
- return;
375
- }
376
- if (this[UNZIP]) {
377
- // fully nerf the decompressor and close its underlying binding
378
- const u = this[UNZIP];
379
- /* c8 ignore start */
380
- u.write = () => true;
381
- u.end = () => u;
382
- u.emit = () => false;
383
- /* c8 ignore stop */
384
- u.destroy?.();
385
- }
386
- this[ABORTED] = true;
387
- this.emit('abort', error);
388
- // always throws, even in non-strict mode
389
- this.warn('TAR_ABORT', error, { recoverable: false });
390
- }
391
- [CHECKDECOMPRESSIONRATIO](chunk) {
392
- this[DECOMPRESSEDBYTESREAD] += chunk.length;
393
- const ratio = this[DECOMPRESSEDBYTESREAD] / this[COMPRESSEDBYTESREAD];
394
- if (ratio > this.maxDecompressionRatio) {
395
- this.abort(new Error(`max decompression ratio exceeded: ${ratio.toFixed(2)} > ${this.maxDecompressionRatio}`));
396
- return false;
397
- }
398
- return true;
399
- }
400
- write(chunk, encoding, cb) {
401
- if (typeof encoding === 'function') {
402
- cb = encoding;
403
- encoding = undefined;
404
- }
405
- if (typeof chunk === 'string') {
406
- chunk = Buffer.from(chunk,
407
- /* c8 ignore next */
408
- typeof encoding === 'string' ? encoding : 'utf8');
409
- }
410
- if (this[ABORTED]) {
411
- /* c8 ignore next */
412
- cb?.();
413
- return false;
414
- }
415
- // first write, might be gzipped, zstd, or brotli compressed
416
- const needSniff = this[UNZIP] === undefined ||
417
- (this.brotli === undefined && this[UNZIP] === false);
418
- if (needSniff && chunk) {
419
- if (this[BUFFER]) {
420
- chunk = Buffer.concat([this[BUFFER], chunk]);
421
- this[BUFFER] = undefined;
422
- }
423
- if (chunk.length < ZIP_HEADER_LEN) {
424
- this[BUFFER] = chunk;
425
- /* c8 ignore next */
426
- cb?.();
427
- return true;
428
- }
429
- // look for gzip header
430
- for (let i = 0; this[UNZIP] === undefined && i < gzipHeader.length; i++) {
431
- if (chunk[i] !== gzipHeader[i]) {
432
- this[UNZIP] = false;
433
- }
434
- }
435
- // look for zstd header if gzip header not found
436
- let isZstd = false;
437
- if (this[UNZIP] === false && this.zstd !== false) {
438
- isZstd = true;
439
- for (let i = 0; i < zstdHeader.length; i++) {
440
- if (chunk[i] !== zstdHeader[i]) {
441
- isZstd = false;
442
- break;
443
- }
444
- }
445
- }
446
- const maybeBrotli = this.brotli === undefined && !isZstd;
447
- if (this[UNZIP] === false && maybeBrotli) {
448
- // read the first header to see if it's a valid tar file. If so,
449
- // we can safely assume that it's not actually brotli, despite the
450
- // .tbr or .tar.br file extension.
451
- // if we ended before getting a full chunk, yes, def brotli
452
- if (chunk.length < 512) {
453
- if (this[ENDED]) {
454
- this.brotli = true;
455
- }
456
- else {
457
- this[BUFFER] = chunk;
458
- /* c8 ignore next */
459
- cb?.();
460
- return true;
461
- }
462
- }
463
- else {
464
- // if it's tar, it's pretty reliably not brotli, chances of
465
- // that happening are astronomical.
466
- try {
467
- new Header(chunk.subarray(0, 512));
468
- this.brotli = false;
469
- }
470
- catch (_) {
471
- this.brotli = true;
472
- }
473
- }
474
- }
475
- if (this[UNZIP] === undefined ||
476
- (this[UNZIP] === false && (this.brotli || isZstd))) {
477
- const ended = this[ENDED];
478
- this[ENDED] = false;
479
- this[UNZIP] =
480
- this[UNZIP] === undefined ? new Unzip({})
481
- : isZstd ? new ZstdDecompress({})
482
- : new BrotliDecompress({});
483
- this[UNZIP].on('data', chunk => {
484
- if (this[CHECKDECOMPRESSIONRATIO](chunk)) {
485
- this[CONSUMECHUNK](chunk);
486
- }
487
- });
488
- this[UNZIP].on('error', er => {
489
- if (!this[ABORTED]) {
490
- this.abort(er);
491
- }
492
- });
493
- this[UNZIP].on('end', () => {
494
- this[ENDED] = true;
495
- this[CONSUMECHUNK]();
496
- });
497
- this[WRITING] = true;
498
- this[COMPRESSEDBYTESREAD] += chunk.length;
499
- const ret = !!this[UNZIP][ended ? 'end' : 'write'](chunk);
500
- this[WRITING] = false;
501
- cb?.();
502
- return ret;
503
- }
504
- }
505
- this[WRITING] = true;
506
- if (this[UNZIP]) {
507
- this[COMPRESSEDBYTESREAD] += chunk.length;
508
- this[UNZIP].write(chunk);
509
- }
510
- else {
511
- this[CONSUMECHUNK](chunk);
512
- }
513
- this[WRITING] = false;
514
- // return false if there's a queue, or if the current entry isn't flowing
515
- const ret = this[QUEUE].length > 0 ? false
516
- : this[READENTRY] ? this[READENTRY].flowing
517
- : true;
518
- // if we have no queue, then that means a clogged READENTRY
519
- if (!ret && this[QUEUE].length === 0) {
520
- this[READENTRY]?.once('drain', () => this.emit('drain'));
521
- }
522
- /* c8 ignore next */
523
- cb?.();
524
- return ret;
525
- }
526
- [BUFFERCONCAT](c) {
527
- if (c && !this[ABORTED]) {
528
- this[BUFFER] = this[BUFFER] ? Buffer.concat([this[BUFFER], c]) : c;
529
- }
530
- }
531
- [MAYBEEND]() {
532
- if (this[ENDED] &&
533
- !this[EMITTEDEND] &&
534
- !this[ABORTED] &&
535
- !this[CONSUMING]) {
536
- this[EMITTEDEND] = true;
537
- const entry = this[WRITEENTRY];
538
- if (entry?.blockRemain) {
539
- // truncated, likely a damaged file
540
- const have = this[BUFFER] ? this[BUFFER].length : 0;
541
- this.warn('TAR_BAD_ARCHIVE', `Truncated input (needed ${entry.blockRemain} more bytes, only ${have} available)`, { entry });
542
- if (this[BUFFER]) {
543
- entry.write(this[BUFFER]);
544
- }
545
- entry.end();
546
- }
547
- this[EMIT](DONE);
548
- }
549
- }
550
- [CONSUMECHUNK](chunk) {
551
- if (this[CONSUMING] && chunk) {
552
- this[BUFFERCONCAT](chunk);
553
- }
554
- else if (!chunk && !this[BUFFER]) {
555
- this[MAYBEEND]();
556
- }
557
- else if (chunk) {
558
- this[CONSUMING] = true;
559
- if (this[BUFFER]) {
560
- this[BUFFERCONCAT](chunk);
561
- const c = this[BUFFER];
562
- this[BUFFER] = undefined;
563
- this[CONSUMECHUNKSUB](c);
564
- }
565
- else {
566
- this[CONSUMECHUNKSUB](chunk);
567
- }
568
- while (this[BUFFER] &&
569
- this[BUFFER]?.length >= 512 &&
570
- !this[ABORTED] &&
571
- !this[SAW_EOF]) {
572
- const c = this[BUFFER];
573
- this[BUFFER] = undefined;
574
- this[CONSUMECHUNKSUB](c);
575
- }
576
- this[CONSUMING] = false;
577
- }
578
- if (!this[BUFFER] || this[ENDED]) {
579
- this[MAYBEEND]();
580
- }
581
- }
582
- [CONSUMECHUNKSUB](chunk) {
583
- // we know that we are in CONSUMING mode, so anything written goes into
584
- // the buffer. Advance the position and put any remainder in the buffer.
585
- let position = 0;
586
- const length = chunk.length;
587
- while (position + 512 <= length && !this[ABORTED] && !this[SAW_EOF]) {
588
- switch (this[STATE]) {
589
- case 'begin':
590
- case 'header':
591
- this[CONSUMEHEADER](chunk, position);
592
- position += 512;
593
- break;
594
- case 'ignore':
595
- case 'body':
596
- position += this[CONSUMEBODY](chunk, position);
597
- break;
598
- case 'meta':
599
- position += this[CONSUMEMETA](chunk, position);
600
- break;
601
- /* c8 ignore start */
602
- default:
603
- throw new Error('invalid state: ' + this[STATE]);
604
- /* c8 ignore stop */
605
- }
606
- }
607
- if (position < length) {
608
- this[BUFFER] =
609
- this[BUFFER] ?
610
- Buffer.concat([chunk.subarray(position), this[BUFFER]])
611
- : chunk.subarray(position);
612
- }
613
- }
614
- end(chunk, encoding, cb) {
615
- if (typeof chunk === 'function') {
616
- cb = chunk;
617
- encoding = undefined;
618
- chunk = undefined;
619
- }
620
- if (typeof encoding === 'function') {
621
- cb = encoding;
622
- encoding = undefined;
623
- }
624
- if (typeof chunk === 'string') {
625
- chunk = Buffer.from(chunk, encoding);
626
- }
627
- if (cb)
628
- this.once('finish', cb);
629
- if (!this[ABORTED]) {
630
- if (this[UNZIP]) {
631
- /* c8 ignore start */
632
- if (chunk) {
633
- this[COMPRESSEDBYTESREAD] += chunk.length;
634
- this[UNZIP].write(chunk);
635
- }
636
- /* c8 ignore stop */
637
- this[UNZIP].end();
638
- }
639
- else {
640
- this[ENDED] = true;
641
- if (this.brotli === undefined || this.zstd === undefined)
642
- chunk = chunk || Buffer.alloc(0);
643
- if (chunk)
644
- this.write(chunk);
645
- this[MAYBEEND]();
646
- }
647
- }
648
- return this;
649
- }
650
- }
651
- //# sourceMappingURL=parse.js.map