pnpm 11.23.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 (440) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +12 -0
  3. package/dist/pnpm.mjs +1334 -1180
  4. package/package.json +1 -1
  5. package/artifacts/exe/dist/node-gyp-bin/node-gyp +0 -6
  6. package/artifacts/exe/dist/node-gyp-bin/node-gyp.cmd +0 -5
  7. package/artifacts/exe/dist/node_modules/.bin/node-gyp +0 -50
  8. package/artifacts/exe/dist/node_modules/.bin/node-which +0 -50
  9. package/artifacts/exe/dist/node_modules/.bin/nopt +0 -50
  10. package/artifacts/exe/dist/node_modules/.bin/semver +0 -50
  11. package/artifacts/exe/dist/node_modules/.package-map.json +0 -1
  12. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/LICENSE +0 -15
  13. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +0 -430
  14. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +0 -3
  15. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/index.js +0 -420
  16. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/package.json +0 -3
  17. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/package.json +0 -72
  18. package/artifacts/exe/dist/node_modules/abbrev/LICENSE +0 -46
  19. package/artifacts/exe/dist/node_modules/abbrev/lib/index.js +0 -53
  20. package/artifacts/exe/dist/node_modules/abbrev/package.json +0 -41
  21. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/index.js +0 -93
  22. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/package.json +0 -3
  23. package/artifacts/exe/dist/node_modules/chownr/dist/esm/index.js +0 -85
  24. package/artifacts/exe/dist/node_modules/chownr/dist/esm/package.json +0 -3
  25. package/artifacts/exe/dist/node_modules/chownr/package.json +0 -69
  26. package/artifacts/exe/dist/node_modules/env-paths/index.js +0 -74
  27. package/artifacts/exe/dist/node_modules/env-paths/license +0 -9
  28. package/artifacts/exe/dist/node_modules/env-paths/package.json +0 -45
  29. package/artifacts/exe/dist/node_modules/exponential-backoff/LICENSE +0 -202
  30. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/backoff.js +0 -124
  31. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +0 -25
  32. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +0 -45
  33. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +0 -17
  34. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +0 -3
  35. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +0 -82
  36. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +0 -8
  37. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +0 -15
  38. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +0 -7
  39. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/options.js +0 -31
  40. package/artifacts/exe/dist/node_modules/exponential-backoff/package.json +0 -62
  41. package/artifacts/exe/dist/node_modules/fdir/LICENSE +0 -7
  42. package/artifacts/exe/dist/node_modules/fdir/dist/index.cjs +0 -588
  43. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.cts +0 -155
  44. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.mts +0 -155
  45. package/artifacts/exe/dist/node_modules/fdir/dist/index.mjs +0 -570
  46. package/artifacts/exe/dist/node_modules/fdir/package.json +0 -103
  47. package/artifacts/exe/dist/node_modules/graceful-fs/LICENSE +0 -15
  48. package/artifacts/exe/dist/node_modules/graceful-fs/clone.js +0 -23
  49. package/artifacts/exe/dist/node_modules/graceful-fs/graceful-fs.js +0 -448
  50. package/artifacts/exe/dist/node_modules/graceful-fs/legacy-streams.js +0 -118
  51. package/artifacts/exe/dist/node_modules/graceful-fs/package.json +0 -53
  52. package/artifacts/exe/dist/node_modules/graceful-fs/polyfills.js +0 -355
  53. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.js +0 -56
  54. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.min.js +0 -2
  55. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/options.js +0 -3
  56. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/package.json +0 -3
  57. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/posix.js +0 -67
  58. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/win32.js +0 -63
  59. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.js +0 -16
  60. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.min.js +0 -2
  61. package/artifacts/exe/dist/node_modules/isexe/dist/esm/options.js +0 -2
  62. package/artifacts/exe/dist/node_modules/isexe/dist/esm/package.json +0 -3
  63. package/artifacts/exe/dist/node_modules/isexe/dist/esm/posix.js +0 -62
  64. package/artifacts/exe/dist/node_modules/isexe/dist/esm/win32.js +0 -58
  65. package/artifacts/exe/dist/node_modules/isexe/package.json +0 -78
  66. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/index.js +0 -1038
  67. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/package.json +0 -3
  68. package/artifacts/exe/dist/node_modules/minipass/dist/esm/index.js +0 -1020
  69. package/artifacts/exe/dist/node_modules/minipass/dist/esm/package.json +0 -3
  70. package/artifacts/exe/dist/node_modules/minipass/package.json +0 -77
  71. package/artifacts/exe/dist/node_modules/minizlib/LICENSE +0 -26
  72. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/constants.js +0 -123
  73. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/index.js +0 -416
  74. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/package.json +0 -3
  75. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/constants.js +0 -117
  76. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/index.js +0 -363
  77. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/package.json +0 -3
  78. package/artifacts/exe/dist/node_modules/minizlib/package.json +0 -80
  79. package/artifacts/exe/dist/node_modules/node-gyp/.release-please-manifest.json +0 -3
  80. package/artifacts/exe/dist/node_modules/node-gyp/LICENSE +0 -24
  81. package/artifacts/exe/dist/node_modules/node-gyp/addon.gypi +0 -204
  82. package/artifacts/exe/dist/node_modules/node-gyp/bin/node-gyp.js +0 -145
  83. package/artifacts/exe/dist/node_modules/node-gyp/eslint.config.js +0 -3
  84. package/artifacts/exe/dist/node_modules/node-gyp/gyp/.release-please-manifest.json +0 -3
  85. package/artifacts/exe/dist/node_modules/node-gyp/gyp/LICENSE +0 -28
  86. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/ninja/build.ninja +0 -4
  87. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc +0 -12
  88. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp +0 -8
  89. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp.bat +0 -5
  90. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp_main.py +0 -45
  91. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +0 -365
  92. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +0 -206
  93. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +0 -1283
  94. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +0 -1545
  95. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +0 -59
  96. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +0 -152
  97. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +0 -270
  98. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +0 -607
  99. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +0 -706
  100. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common.py +0 -725
  101. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +0 -186
  102. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +0 -170
  103. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +0 -113
  104. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +0 -55
  105. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
  106. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +0 -805
  107. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +0 -1169
  108. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +0 -1316
  109. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +0 -128
  110. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +0 -104
  111. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +0 -461
  112. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +0 -88
  113. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +0 -55
  114. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +0 -2755
  115. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +0 -3970
  116. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +0 -44
  117. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +0 -2957
  118. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +0 -77
  119. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +0 -1389
  120. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +0 -26
  121. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input.py +0 -3097
  122. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +0 -99
  123. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +0 -765
  124. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +0 -1255
  125. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +0 -174
  126. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +0 -61
  127. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +0 -371
  128. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +0 -1936
  129. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py +0 -54
  130. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +0 -301
  131. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +0 -3180
  132. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +0 -64
  133. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE +0 -3
  134. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.APACHE +0 -177
  135. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.BSD +0 -23
  136. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/__init__.py +0 -15
  137. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py +0 -107
  138. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py +0 -252
  139. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py +0 -83
  140. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_parser.py +0 -359
  141. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_structures.py +0 -61
  142. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py +0 -192
  143. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/markers.py +0 -251
  144. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +0 -807
  145. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/py.typed +0 -0
  146. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/requirements.py +0 -90
  147. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py +0 -1030
  148. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/tags.py +0 -541
  149. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/utils.py +0 -172
  150. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/version.py +0 -563
  151. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pyproject.toml +0 -116
  152. package/artifacts/exe/dist/node_modules/node-gyp/gyp/release-please-config.json +0 -11
  153. package/artifacts/exe/dist/node_modules/node-gyp/gyp/test_gyp.py +0 -260
  154. package/artifacts/exe/dist/node_modules/node-gyp/lib/Find-VisualStudio.cs +0 -250
  155. package/artifacts/exe/dist/node_modules/node-gyp/lib/build.js +0 -230
  156. package/artifacts/exe/dist/node_modules/node-gyp/lib/clean.js +0 -15
  157. package/artifacts/exe/dist/node_modules/node-gyp/lib/configure.js +0 -328
  158. package/artifacts/exe/dist/node_modules/node-gyp/lib/create-config-gypi.js +0 -153
  159. package/artifacts/exe/dist/node_modules/node-gyp/lib/download.js +0 -86
  160. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-node-directory.js +0 -63
  161. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-python.js +0 -304
  162. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-visualstudio.js +0 -606
  163. package/artifacts/exe/dist/node_modules/node-gyp/lib/install.js +0 -411
  164. package/artifacts/exe/dist/node_modules/node-gyp/lib/list.js +0 -26
  165. package/artifacts/exe/dist/node_modules/node-gyp/lib/log.js +0 -168
  166. package/artifacts/exe/dist/node_modules/node-gyp/lib/node-gyp.js +0 -199
  167. package/artifacts/exe/dist/node_modules/node-gyp/lib/process-release.js +0 -144
  168. package/artifacts/exe/dist/node_modules/node-gyp/lib/rebuild.js +0 -12
  169. package/artifacts/exe/dist/node_modules/node-gyp/lib/remove.js +0 -43
  170. package/artifacts/exe/dist/node_modules/node-gyp/lib/util.js +0 -81
  171. package/artifacts/exe/dist/node_modules/node-gyp/macOS_Catalina_acid_test.sh +0 -21
  172. package/artifacts/exe/dist/node_modules/node-gyp/package.json +0 -52
  173. package/artifacts/exe/dist/node_modules/node-gyp/release-please-config.json +0 -40
  174. package/artifacts/exe/dist/node_modules/node-gyp/src/win_delay_load_hook.cc +0 -41
  175. package/artifacts/exe/dist/node_modules/nopt/LICENSE +0 -15
  176. package/artifacts/exe/dist/node_modules/nopt/bin/nopt.js +0 -29
  177. package/artifacts/exe/dist/node_modules/nopt/lib/debug.js +0 -5
  178. package/artifacts/exe/dist/node_modules/nopt/lib/nopt-lib.js +0 -514
  179. package/artifacts/exe/dist/node_modules/nopt/lib/nopt.js +0 -34
  180. package/artifacts/exe/dist/node_modules/nopt/lib/type-defs.js +0 -91
  181. package/artifacts/exe/dist/node_modules/nopt/package.json +0 -52
  182. package/artifacts/exe/dist/node_modules/picomatch/LICENSE +0 -21
  183. package/artifacts/exe/dist/node_modules/picomatch/index.js +0 -17
  184. package/artifacts/exe/dist/node_modules/picomatch/lib/constants.js +0 -184
  185. package/artifacts/exe/dist/node_modules/picomatch/lib/parse.js +0 -1416
  186. package/artifacts/exe/dist/node_modules/picomatch/lib/picomatch.js +0 -361
  187. package/artifacts/exe/dist/node_modules/picomatch/lib/scan.js +0 -391
  188. package/artifacts/exe/dist/node_modules/picomatch/lib/utils.js +0 -72
  189. package/artifacts/exe/dist/node_modules/picomatch/package.json +0 -83
  190. package/artifacts/exe/dist/node_modules/picomatch/posix.js +0 -3
  191. package/artifacts/exe/dist/node_modules/proc-log/LICENSE +0 -15
  192. package/artifacts/exe/dist/node_modules/proc-log/lib/index.js +0 -158
  193. package/artifacts/exe/dist/node_modules/proc-log/package.json +0 -46
  194. package/artifacts/exe/dist/node_modules/semver/LICENSE +0 -15
  195. package/artifacts/exe/dist/node_modules/semver/bin/semver.js +0 -195
  196. package/artifacts/exe/dist/node_modules/semver/classes/comparator.js +0 -143
  197. package/artifacts/exe/dist/node_modules/semver/classes/index.js +0 -7
  198. package/artifacts/exe/dist/node_modules/semver/classes/range.js +0 -577
  199. package/artifacts/exe/dist/node_modules/semver/classes/semver.js +0 -350
  200. package/artifacts/exe/dist/node_modules/semver/functions/clean.js +0 -8
  201. package/artifacts/exe/dist/node_modules/semver/functions/cmp.js +0 -54
  202. package/artifacts/exe/dist/node_modules/semver/functions/coerce.js +0 -62
  203. package/artifacts/exe/dist/node_modules/semver/functions/compare-build.js +0 -9
  204. package/artifacts/exe/dist/node_modules/semver/functions/compare-loose.js +0 -5
  205. package/artifacts/exe/dist/node_modules/semver/functions/compare.js +0 -7
  206. package/artifacts/exe/dist/node_modules/semver/functions/diff.js +0 -60
  207. package/artifacts/exe/dist/node_modules/semver/functions/eq.js +0 -5
  208. package/artifacts/exe/dist/node_modules/semver/functions/gt.js +0 -5
  209. package/artifacts/exe/dist/node_modules/semver/functions/gte.js +0 -5
  210. package/artifacts/exe/dist/node_modules/semver/functions/inc.js +0 -21
  211. package/artifacts/exe/dist/node_modules/semver/functions/lt.js +0 -5
  212. package/artifacts/exe/dist/node_modules/semver/functions/lte.js +0 -5
  213. package/artifacts/exe/dist/node_modules/semver/functions/major.js +0 -5
  214. package/artifacts/exe/dist/node_modules/semver/functions/minor.js +0 -5
  215. package/artifacts/exe/dist/node_modules/semver/functions/neq.js +0 -5
  216. package/artifacts/exe/dist/node_modules/semver/functions/parse.js +0 -18
  217. package/artifacts/exe/dist/node_modules/semver/functions/patch.js +0 -5
  218. package/artifacts/exe/dist/node_modules/semver/functions/prerelease.js +0 -8
  219. package/artifacts/exe/dist/node_modules/semver/functions/rcompare.js +0 -5
  220. package/artifacts/exe/dist/node_modules/semver/functions/rsort.js +0 -5
  221. package/artifacts/exe/dist/node_modules/semver/functions/satisfies.js +0 -12
  222. package/artifacts/exe/dist/node_modules/semver/functions/sort.js +0 -5
  223. package/artifacts/exe/dist/node_modules/semver/functions/truncate.js +0 -48
  224. package/artifacts/exe/dist/node_modules/semver/functions/valid.js +0 -8
  225. package/artifacts/exe/dist/node_modules/semver/index.js +0 -93
  226. package/artifacts/exe/dist/node_modules/semver/internal/constants.js +0 -37
  227. package/artifacts/exe/dist/node_modules/semver/internal/debug.js +0 -11
  228. package/artifacts/exe/dist/node_modules/semver/internal/identifiers.js +0 -29
  229. package/artifacts/exe/dist/node_modules/semver/internal/lrucache.js +0 -42
  230. package/artifacts/exe/dist/node_modules/semver/internal/parse-options.js +0 -17
  231. package/artifacts/exe/dist/node_modules/semver/internal/re.js +0 -223
  232. package/artifacts/exe/dist/node_modules/semver/package.json +0 -78
  233. package/artifacts/exe/dist/node_modules/semver/preload.js +0 -4
  234. package/artifacts/exe/dist/node_modules/semver/range.bnf +0 -17
  235. package/artifacts/exe/dist/node_modules/semver/ranges/gtr.js +0 -6
  236. package/artifacts/exe/dist/node_modules/semver/ranges/intersects.js +0 -9
  237. package/artifacts/exe/dist/node_modules/semver/ranges/ltr.js +0 -6
  238. package/artifacts/exe/dist/node_modules/semver/ranges/max-satisfying.js +0 -27
  239. package/artifacts/exe/dist/node_modules/semver/ranges/min-satisfying.js +0 -26
  240. package/artifacts/exe/dist/node_modules/semver/ranges/min-version.js +0 -63
  241. package/artifacts/exe/dist/node_modules/semver/ranges/outside.js +0 -82
  242. package/artifacts/exe/dist/node_modules/semver/ranges/simplify.js +0 -49
  243. package/artifacts/exe/dist/node_modules/semver/ranges/subset.js +0 -249
  244. package/artifacts/exe/dist/node_modules/semver/ranges/to-comparators.js +0 -10
  245. package/artifacts/exe/dist/node_modules/semver/ranges/valid.js +0 -13
  246. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/create.js +0 -82
  247. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/cwd-error.js +0 -18
  248. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/extract.js +0 -88
  249. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/get-write-flag.js +0 -32
  250. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/header.js +0 -348
  251. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.js +0 -64
  252. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.min.js +0 -4
  253. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/large-numbers.js +0 -99
  254. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/list.js +0 -153
  255. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/make-command.js +0 -52
  256. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mkdir.js +0 -187
  257. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mode-fix.js +0 -29
  258. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-unicode.js +0 -38
  259. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-windows-path.js +0 -12
  260. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/options.js +0 -66
  261. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pack.js +0 -544
  262. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/package.json +0 -3
  263. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/parse.js +0 -655
  264. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/path-reservations.js +0 -170
  265. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pax.js +0 -182
  266. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/process-umask.js +0 -7
  267. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/read-entry.js +0 -136
  268. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/replace.js +0 -227
  269. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-absolute-path.js +0 -29
  270. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +0 -18
  271. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/symlink-error.js +0 -19
  272. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/types.js +0 -70
  273. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/unpack.js +0 -932
  274. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/update.js +0 -33
  275. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/warn-method.js +0 -31
  276. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/winchars.js +0 -14
  277. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/write-entry.js +0 -698
  278. package/artifacts/exe/dist/node_modules/tar/dist/esm/create.js +0 -76
  279. package/artifacts/exe/dist/node_modules/tar/dist/esm/cwd-error.js +0 -14
  280. package/artifacts/exe/dist/node_modules/tar/dist/esm/extract.js +0 -49
  281. package/artifacts/exe/dist/node_modules/tar/dist/esm/get-write-flag.js +0 -26
  282. package/artifacts/exe/dist/node_modules/tar/dist/esm/header.js +0 -311
  283. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.js +0 -20
  284. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.min.js +0 -4
  285. package/artifacts/exe/dist/node_modules/tar/dist/esm/large-numbers.js +0 -94
  286. package/artifacts/exe/dist/node_modules/tar/dist/esm/list.js +0 -113
  287. package/artifacts/exe/dist/node_modules/tar/dist/esm/make-command.js +0 -48
  288. package/artifacts/exe/dist/node_modules/tar/dist/esm/mkdir.js +0 -179
  289. package/artifacts/exe/dist/node_modules/tar/dist/esm/mode-fix.js +0 -25
  290. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-unicode.js +0 -34
  291. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-windows-path.js +0 -9
  292. package/artifacts/exe/dist/node_modules/tar/dist/esm/options.js +0 -54
  293. package/artifacts/exe/dist/node_modules/tar/dist/esm/pack.js +0 -502
  294. package/artifacts/exe/dist/node_modules/tar/dist/esm/package.json +0 -3
  295. package/artifacts/exe/dist/node_modules/tar/dist/esm/parse.js +0 -651
  296. package/artifacts/exe/dist/node_modules/tar/dist/esm/path-reservations.js +0 -166
  297. package/artifacts/exe/dist/node_modules/tar/dist/esm/pax.js +0 -178
  298. package/artifacts/exe/dist/node_modules/tar/dist/esm/process-umask.js +0 -3
  299. package/artifacts/exe/dist/node_modules/tar/dist/esm/read-entry.js +0 -132
  300. package/artifacts/exe/dist/node_modules/tar/dist/esm/replace.js +0 -221
  301. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-absolute-path.js +0 -25
  302. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-trailing-slashes.js +0 -14
  303. package/artifacts/exe/dist/node_modules/tar/dist/esm/symlink-error.js +0 -15
  304. package/artifacts/exe/dist/node_modules/tar/dist/esm/types.js +0 -65
  305. package/artifacts/exe/dist/node_modules/tar/dist/esm/unpack.js +0 -891
  306. package/artifacts/exe/dist/node_modules/tar/dist/esm/update.js +0 -30
  307. package/artifacts/exe/dist/node_modules/tar/dist/esm/warn-method.js +0 -27
  308. package/artifacts/exe/dist/node_modules/tar/dist/esm/winchars.js +0 -9
  309. package/artifacts/exe/dist/node_modules/tar/dist/esm/write-entry.js +0 -656
  310. package/artifacts/exe/dist/node_modules/tar/package.json +0 -298
  311. package/artifacts/exe/dist/node_modules/tinyglobby/LICENSE +0 -21
  312. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.cjs +0 -335
  313. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.cts +0 -148
  314. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.mts +0 -148
  315. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.mjs +0 -307
  316. package/artifacts/exe/dist/node_modules/tinyglobby/package.json +0 -70
  317. package/artifacts/exe/dist/node_modules/undici/LICENSE +0 -21
  318. package/artifacts/exe/dist/node_modules/undici/index-fetch.js +0 -35
  319. package/artifacts/exe/dist/node_modules/undici/index.js +0 -169
  320. package/artifacts/exe/dist/node_modules/undici/lib/api/abort-signal.js +0 -57
  321. package/artifacts/exe/dist/node_modules/undici/lib/api/api-connect.js +0 -108
  322. package/artifacts/exe/dist/node_modules/undici/lib/api/api-pipeline.js +0 -251
  323. package/artifacts/exe/dist/node_modules/undici/lib/api/api-request.js +0 -214
  324. package/artifacts/exe/dist/node_modules/undici/lib/api/api-stream.js +0 -220
  325. package/artifacts/exe/dist/node_modules/undici/lib/api/api-upgrade.js +0 -108
  326. package/artifacts/exe/dist/node_modules/undici/lib/api/index.js +0 -7
  327. package/artifacts/exe/dist/node_modules/undici/lib/api/readable.js +0 -385
  328. package/artifacts/exe/dist/node_modules/undici/lib/api/util.js +0 -93
  329. package/artifacts/exe/dist/node_modules/undici/lib/core/connect.js +0 -240
  330. package/artifacts/exe/dist/node_modules/undici/lib/core/constants.js +0 -118
  331. package/artifacts/exe/dist/node_modules/undici/lib/core/diagnostics.js +0 -202
  332. package/artifacts/exe/dist/node_modules/undici/lib/core/errors.js +0 -425
  333. package/artifacts/exe/dist/node_modules/undici/lib/core/request.js +0 -416
  334. package/artifacts/exe/dist/node_modules/undici/lib/core/symbols.js +0 -67
  335. package/artifacts/exe/dist/node_modules/undici/lib/core/tree.js +0 -152
  336. package/artifacts/exe/dist/node_modules/undici/lib/core/util.js +0 -719
  337. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/agent.js +0 -129
  338. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -209
  339. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1496
  340. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -744
  341. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client.js +0 -623
  342. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -199
  343. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -65
  344. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -160
  345. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -117
  346. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -194
  347. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-stats.js +0 -34
  348. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool.js +0 -107
  349. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -274
  350. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  351. package/artifacts/exe/dist/node_modules/undici/lib/global.js +0 -32
  352. package/artifacts/exe/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -44
  353. package/artifacts/exe/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -232
  354. package/artifacts/exe/dist/node_modules/undici/lib/handler/retry-handler.js +0 -408
  355. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dns.js +0 -375
  356. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dump.js +0 -123
  357. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect-interceptor.js +0 -21
  358. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect.js +0 -24
  359. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/response-error.js +0 -86
  360. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  361. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  362. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/constants.js +0 -278
  363. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -5
  364. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -5
  365. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/utils.js +0 -15
  366. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-agent.js +0 -160
  367. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-client.js +0 -59
  368. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-errors.js +0 -28
  369. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -207
  370. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-pool.js +0 -59
  371. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -23
  372. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-utils.js +0 -367
  373. package/artifacts/exe/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  374. package/artifacts/exe/dist/node_modules/undici/lib/mock/pluralizer.js +0 -29
  375. package/artifacts/exe/dist/node_modules/undici/lib/util/timers.js +0 -423
  376. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cache.js +0 -859
  377. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  378. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/symbols.js +0 -5
  379. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  380. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  381. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/index.js +0 -184
  382. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/parse.js +0 -310
  383. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/util.js +0 -352
  384. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -398
  385. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -480
  386. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/util.js +0 -37
  387. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/LICENSE +0 -21
  388. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/body.js +0 -529
  389. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/constants.js +0 -124
  390. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -744
  391. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +0 -46
  392. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/file.js +0 -126
  393. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -474
  394. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -252
  395. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  396. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/headers.js +0 -687
  397. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/index.js +0 -2272
  398. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/request.js +0 -1037
  399. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/response.js +0 -610
  400. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/symbols.js +0 -9
  401. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/util.js +0 -1632
  402. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/webidl.js +0 -695
  403. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/encoding.js +0 -290
  404. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/filereader.js +0 -344
  405. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/progressevent.js +0 -78
  406. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/symbols.js +0 -10
  407. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/util.js +0 -391
  408. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/connection.js +0 -371
  409. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/constants.js +0 -66
  410. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/events.js +0 -329
  411. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/frame.js +0 -96
  412. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -100
  413. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -513
  414. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/sender.js +0 -104
  415. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/symbols.js +0 -12
  416. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/util.js +0 -322
  417. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -595
  418. package/artifacts/exe/dist/node_modules/undici/package.json +0 -160
  419. package/artifacts/exe/dist/node_modules/undici/scripts/strip-comments.js +0 -8
  420. package/artifacts/exe/dist/node_modules/v8-compile-cache/LICENSE +0 -21
  421. package/artifacts/exe/dist/node_modules/v8-compile-cache/package.json +0 -34
  422. package/artifacts/exe/dist/node_modules/v8-compile-cache/v8-compile-cache.js +0 -373
  423. package/artifacts/exe/dist/node_modules/which/LICENSE +0 -15
  424. package/artifacts/exe/dist/node_modules/which/bin/which.js +0 -52
  425. package/artifacts/exe/dist/node_modules/which/lib/index.js +0 -111
  426. package/artifacts/exe/dist/node_modules/which/package.json +0 -52
  427. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/index.js +0 -384
  428. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/package.json +0 -3
  429. package/artifacts/exe/dist/node_modules/yallist/dist/esm/index.js +0 -379
  430. package/artifacts/exe/dist/node_modules/yallist/dist/esm/package.json +0 -3
  431. package/artifacts/exe/dist/node_modules/yallist/package.json +0 -68
  432. package/artifacts/exe/dist/pnpm.mjs +0 -324459
  433. package/artifacts/exe/dist/pnpmrc +0 -2
  434. package/artifacts/exe/dist/templates/completion.bash +0 -31
  435. package/artifacts/exe/dist/templates/completion.fish +0 -22
  436. package/artifacts/exe/dist/templates/completion.ps1 +0 -193
  437. package/artifacts/exe/dist/templates/completion.zsh +0 -27
  438. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  439. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  440. package/artifacts/exe/dist/worker.js +0 -12149
@@ -1,411 +0,0 @@
1
- 'use strict'
2
-
3
- const { createWriteStream, promises: fs } = require('graceful-fs')
4
- const os = require('os')
5
- const { backOff } = require('exponential-backoff')
6
- const tar = require('tar')
7
- const path = require('path')
8
- const { Transform, promises: { pipeline } } = require('stream')
9
- const crypto = require('crypto')
10
- const log = require('./log')
11
- const semver = require('semver')
12
- const { download } = require('./download')
13
- const processRelease = require('./process-release')
14
-
15
- const win = process.platform === 'win32'
16
-
17
- async function install (gyp, argv) {
18
- log.stdout()
19
- const release = processRelease(argv, gyp, process.version, process.release)
20
- // Detecting target_arch based on logic from create-cnfig-gyp.js. Used on Windows only.
21
- const arch = win ? (gyp.opts.target_arch || gyp.opts.arch || process.arch || 'ia32') : ''
22
- // Used to prevent downloading tarball if only new node.lib is required on Windows.
23
- let shouldDownloadTarball = true
24
-
25
- // Determine which node dev files version we are installing
26
- log.verbose('install', 'input version string %j', release.version)
27
-
28
- if (!release.semver) {
29
- // could not parse the version string with semver
30
- throw new Error('Invalid version number: ' + release.version)
31
- }
32
-
33
- if (semver.lt(release.version, '0.8.0')) {
34
- throw new Error('Minimum target version is `0.8.0` or greater. Got: ' + release.version)
35
- }
36
-
37
- // 0.x.y-pre versions are not published yet and cannot be installed. Bail.
38
- if (release.semver.prerelease[0] === 'pre') {
39
- log.verbose('detected "pre" node version', release.version)
40
- if (!gyp.opts.nodedir) {
41
- throw new Error('"pre" versions of node cannot be installed, use the --nodedir flag instead')
42
- }
43
- log.verbose('--nodedir flag was passed; skipping install', gyp.opts.nodedir)
44
- return
45
- }
46
-
47
- // flatten version into String
48
- log.verbose('install', 'installing version: %s', release.versionDir)
49
-
50
- // the directory where the dev files will be installed
51
- const devDir = path.resolve(gyp.devDir, release.versionDir)
52
-
53
- // If '--ensure' was passed, then don't *always* install the version;
54
- // check if it is already installed, and only install when needed
55
- if (gyp.opts.ensure) {
56
- log.verbose('install', '--ensure was passed, so won\'t reinstall if already installed')
57
- try {
58
- await fs.stat(devDir)
59
- } catch (err) {
60
- if (err.code === 'ENOENT') {
61
- log.verbose('install', 'version not already installed, continuing with install', release.version)
62
- try {
63
- return await go()
64
- } catch (err) {
65
- return rollback(err)
66
- }
67
- } else if (err.code === 'EACCES') {
68
- return eaccesFallback(err)
69
- }
70
- throw err
71
- }
72
- log.verbose('install', 'version is already installed, need to check "installVersion"')
73
- const installVersionFile = path.resolve(devDir, 'installVersion')
74
- let installVersion = 0
75
- try {
76
- const ver = await fs.readFile(installVersionFile, 'ascii')
77
- installVersion = parseInt(ver, 10) || 0
78
- } catch (err) {
79
- if (err.code !== 'ENOENT') {
80
- throw err
81
- }
82
- }
83
- log.verbose('got "installVersion"', installVersion)
84
- log.verbose('needs "installVersion"', gyp.package.installVersion)
85
- if (installVersion < gyp.package.installVersion) {
86
- log.verbose('install', 'version is no good; reinstalling')
87
- try {
88
- return await go()
89
- } catch (err) {
90
- return rollback(err)
91
- }
92
- }
93
- log.verbose('install', 'version is good')
94
- if (win) {
95
- log.verbose('on Windows; need to check node.lib')
96
- const nodeLibPath = path.resolve(devDir, arch, 'node.lib')
97
- try {
98
- await fs.stat(nodeLibPath)
99
- } catch (err) {
100
- if (err.code === 'ENOENT') {
101
- log.verbose('install', `version not already installed for ${arch}, continuing with install`, release.version)
102
- try {
103
- shouldDownloadTarball = false
104
- return await go()
105
- } catch (err) {
106
- return rollback(err)
107
- }
108
- } else if (err.code === 'EACCES') {
109
- return eaccesFallback(err)
110
- }
111
- throw err
112
- }
113
- }
114
- } else {
115
- try {
116
- return await go()
117
- } catch (err) {
118
- return rollback(err)
119
- }
120
- }
121
-
122
- async function copyDirectory (src, dest) {
123
- try {
124
- await fs.stat(src)
125
- } catch {
126
- throw new Error(`Missing source directory for copy: ${src}`)
127
- }
128
- await fs.mkdir(dest, { recursive: true })
129
- const entries = await fs.readdir(src, { withFileTypes: true })
130
- for (const entry of entries) {
131
- if (entry.isDirectory()) {
132
- await copyDirectory(path.join(src, entry.name), path.join(dest, entry.name))
133
- } else if (entry.isFile()) {
134
- // with parallel installs, copying files may cause file errors on
135
- // Windows so use an exponential backoff to resolve collisions
136
- await backOff(async () => {
137
- try {
138
- await fs.copyFile(path.join(src, entry.name), path.join(dest, entry.name))
139
- } catch (err) {
140
- // if ensure, check if file already exists and that's good enough
141
- if (gyp.opts.ensure && err.code === 'EBUSY') {
142
- try {
143
- await fs.stat(path.join(dest, entry.name))
144
- return
145
- } catch {}
146
- }
147
- throw err
148
- }
149
- })
150
- } else {
151
- throw new Error('Unexpected file directory entry type')
152
- }
153
- }
154
- }
155
-
156
- async function go () {
157
- log.verbose('ensuring devDir is created', devDir)
158
-
159
- // first create the dir for the node dev files
160
- try {
161
- const created = await fs.mkdir(devDir, { recursive: true })
162
-
163
- if (created) {
164
- log.verbose('created devDir', created)
165
- }
166
- } catch (err) {
167
- if (err.code === 'EACCES') {
168
- return eaccesFallback(err)
169
- }
170
-
171
- throw err
172
- }
173
-
174
- // now download the node tarball
175
- const tarPath = gyp.opts.tarball
176
- let extractErrors = false
177
- let extractCount = 0
178
- const contentShasums = {}
179
- const expectShasums = {}
180
-
181
- // checks if a file to be extracted from the tarball is valid.
182
- // only .h header files and the gyp files get extracted
183
- function isValid (path) {
184
- const isValid = valid(path)
185
- if (isValid) {
186
- log.verbose('extracted file from tarball', path)
187
- extractCount++
188
- } else {
189
- // invalid
190
- log.silly('ignoring from tarball', path)
191
- }
192
- return isValid
193
- }
194
-
195
- function onwarn (code, message) {
196
- extractErrors = true
197
- log.error('error while extracting tarball', code, message)
198
- }
199
-
200
- // download the tarball and extract!
201
- // Omitted on Windows if only new node.lib is required
202
-
203
- // there can be file errors from tar if parallel installs
204
- // are happening (not uncommon with multiple native modules) so
205
- // extract the tarball to a temp directory first and then copy over
206
- const tarExtractDir = await fs.mkdtemp(path.join(os.tmpdir(), 'node-gyp-tmp-'))
207
-
208
- try {
209
- if (shouldDownloadTarball) {
210
- if (tarPath) {
211
- await tar.extract({
212
- file: tarPath,
213
- strip: 1,
214
- filter: isValid,
215
- onwarn,
216
- cwd: tarExtractDir
217
- })
218
- } else {
219
- try {
220
- const res = await download(gyp, release.tarballUrl)
221
-
222
- if (res.status !== 200) {
223
- throw new Error(`${res.status} response downloading ${release.tarballUrl}`)
224
- }
225
-
226
- await pipeline(
227
- res.body,
228
- // content checksum
229
- new ShaSum((_, checksum) => {
230
- const filename = path.basename(release.tarballUrl).trim()
231
- contentShasums[filename] = checksum
232
- log.verbose('content checksum', filename, checksum)
233
- }),
234
- tar.extract({
235
- strip: 1,
236
- cwd: tarExtractDir,
237
- filter: isValid,
238
- onwarn
239
- })
240
- )
241
- } catch (err) {
242
- // something went wrong downloading the tarball?
243
- if (err.code === 'ENOTFOUND') {
244
- throw new Error('This is most likely not a problem with node-gyp or the package itself and\n' +
245
- 'is related to network connectivity. In most cases you are behind a proxy or have bad \n' +
246
- 'network settings.')
247
- }
248
- throw err
249
- }
250
- }
251
-
252
- // invoked after the tarball has finished being extracted
253
- if (extractErrors || extractCount === 0) {
254
- throw new Error('There was a fatal problem while downloading/extracting the tarball')
255
- }
256
-
257
- log.verbose('tarball', 'done parsing tarball')
258
- }
259
-
260
- const installVersionPath = path.resolve(tarExtractDir, 'installVersion')
261
- await Promise.all([
262
- // need to download node.lib
263
- ...(win ? [downloadNodeLib()] : []),
264
- // write the "installVersion" file
265
- fs.writeFile(installVersionPath, gyp.package.installVersion + '\n'),
266
- // Only download SHASUMS.txt if we downloaded something in need of SHA verification
267
- ...(!tarPath || win ? [downloadShasums()] : [])
268
- ])
269
-
270
- log.verbose('download contents checksum', JSON.stringify(contentShasums))
271
- // check content shasums
272
- for (const k in contentShasums) {
273
- log.verbose('validating download checksum for ' + k, '(%s == %s)', contentShasums[k], expectShasums[k])
274
- if (contentShasums[k] !== expectShasums[k]) {
275
- throw new Error(k + ' local checksum ' + contentShasums[k] + ' not match remote ' + expectShasums[k])
276
- }
277
- }
278
-
279
- // copy over the files from the temp tarball extract directory to devDir
280
- await copyDirectory(tarExtractDir, devDir)
281
- } finally {
282
- try {
283
- // try to cleanup temp dir
284
- await fs.rm(tarExtractDir, { recursive: true, maxRetries: 3 })
285
- } catch {
286
- log.warn('failed to clean up temp tarball extract directory')
287
- }
288
- }
289
-
290
- async function downloadShasums () {
291
- log.verbose('check download content checksum, need to download `SHASUMS256.txt`...')
292
- log.verbose('checksum url', release.shasumsUrl)
293
-
294
- const res = await download(gyp, release.shasumsUrl)
295
-
296
- if (res.status !== 200) {
297
- throw new Error(`${res.status} status code downloading checksum`)
298
- }
299
-
300
- for (const line of (await res.text()).trim().split('\n')) {
301
- const items = line.trim().split(/\s+/)
302
- if (items.length !== 2) {
303
- return
304
- }
305
-
306
- // 0035d18e2dcf9aad669b1c7c07319e17abfe3762 ./node-v0.11.4.tar.gz
307
- const name = items[1].replace(/^\.\//, '')
308
- expectShasums[name] = items[0]
309
- }
310
-
311
- log.verbose('checksum data', JSON.stringify(expectShasums))
312
- }
313
-
314
- async function downloadNodeLib () {
315
- log.verbose('on Windows; need to download `' + release.name + '.lib`...')
316
- const dir = path.resolve(tarExtractDir, arch)
317
- const targetLibPath = path.resolve(dir, release.name + '.lib')
318
- const { libUrl, libPath } = release[arch]
319
- const name = `${arch} ${release.name}.lib`
320
- log.verbose(name, 'dir', dir)
321
- log.verbose(name, 'url', libUrl)
322
-
323
- await fs.mkdir(dir, { recursive: true })
324
- log.verbose('streaming', name, 'to:', targetLibPath)
325
-
326
- const res = await download(gyp, libUrl)
327
-
328
- // Since only required node.lib is downloaded throw error if it is not fetched
329
- if (res.status !== 200) {
330
- throw new Error(`${res.status} status code downloading ${name}`)
331
- }
332
-
333
- return pipeline(
334
- res.body,
335
- new ShaSum((_, checksum) => {
336
- contentShasums[libPath] = checksum
337
- log.verbose('content checksum', libPath, checksum)
338
- }),
339
- createWriteStream(targetLibPath)
340
- )
341
- } // downloadNodeLib()
342
- } // go()
343
-
344
- /**
345
- * Checks if a given filename is "valid" for this installation.
346
- */
347
-
348
- function valid (file) {
349
- // header files
350
- const extname = path.extname(file)
351
- return extname === '.h' || extname === '.gypi'
352
- }
353
-
354
- async function rollback (err) {
355
- log.warn('install', 'got an error, rolling back install')
356
- // roll-back the install if anything went wrong
357
- await gyp.commands.remove([release.versionDir])
358
- throw err
359
- }
360
-
361
- /**
362
- * The EACCES fallback is a workaround for npm's `sudo` behavior, where
363
- * it drops the permissions before invoking any child processes (like
364
- * node-gyp). So what happens is the "nobody" user doesn't have
365
- * permission to create the dev dir. As a fallback, make the tmpdir() be
366
- * the dev dir for this installation. This is not ideal, but at least
367
- * the compilation will succeed...
368
- */
369
-
370
- async function eaccesFallback (err) {
371
- const noretry = '--node_gyp_internal_noretry'
372
- if (argv.indexOf(noretry) !== -1) {
373
- throw err
374
- }
375
- const tmpdir = os.tmpdir()
376
- gyp.devDir = path.resolve(tmpdir, '.node-gyp')
377
- let userString = ''
378
- try {
379
- // os.userInfo can fail on some systems, it's not critical here
380
- userString = ` ("${os.userInfo().username}")`
381
- } catch (e) {}
382
- log.warn('EACCES', 'current user%s does not have permission to access the dev dir "%s"', userString, devDir)
383
- log.warn('EACCES', 'attempting to reinstall using temporary dev dir "%s"', gyp.devDir)
384
- if (process.cwd() === tmpdir) {
385
- log.verbose('tmpdir == cwd', 'automatically will remove dev files after to save disk space')
386
- gyp.todo.push({ name: 'remove', args: argv })
387
- }
388
- return gyp.commands.install([noretry].concat(argv))
389
- }
390
- }
391
-
392
- class ShaSum extends Transform {
393
- constructor (callback) {
394
- super()
395
- this._callback = callback
396
- this._digester = crypto.createHash('sha256')
397
- }
398
-
399
- _transform (chunk, _, callback) {
400
- this._digester.update(chunk)
401
- callback(null, chunk)
402
- }
403
-
404
- _flush (callback) {
405
- this._callback(null, this._digester.digest('hex'))
406
- callback()
407
- }
408
- }
409
-
410
- module.exports = install
411
- module.exports.usage = 'Install node development files for the specified node version.'
@@ -1,26 +0,0 @@
1
- 'use strict'
2
-
3
- const fs = require('graceful-fs').promises
4
- const log = require('./log')
5
-
6
- async function list (gyp, args) {
7
- const devDir = gyp.devDir
8
- log.verbose('list', 'using node-gyp dir:', devDir)
9
-
10
- let versions = []
11
- try {
12
- const dir = await fs.readdir(devDir)
13
- if (Array.isArray(dir)) {
14
- versions = dir.filter((v) => v !== 'current')
15
- }
16
- } catch (err) {
17
- if (err && err.code !== 'ENOENT') {
18
- throw err
19
- }
20
- }
21
-
22
- return versions
23
- }
24
-
25
- module.exports = list
26
- module.exports.usage = 'Prints a listing of the currently installed node development files'
@@ -1,168 +0,0 @@
1
- 'use strict'
2
-
3
- const { log } = require('proc-log')
4
- const { format } = require('util')
5
-
6
- // helper to emit log messages with a predefined prefix
7
- const withPrefix = (prefix) => log.LEVELS.reduce((acc, level) => {
8
- acc[level] = (...args) => log[level](prefix, ...args)
9
- return acc
10
- }, {})
11
-
12
- // very basic ansi color generator
13
- const COLORS = {
14
- wrap: (str, colors) => {
15
- const codes = colors.filter(c => typeof c === 'number')
16
- return `\x1b[${codes.join(';')}m${str}\x1b[0m`
17
- },
18
- inverse: 7,
19
- fg: {
20
- black: 30,
21
- red: 31,
22
- green: 32,
23
- yellow: 33,
24
- blue: 34,
25
- magenta: 35,
26
- cyan: 36,
27
- white: 37
28
- },
29
- bg: {
30
- black: 40,
31
- red: 41,
32
- green: 42,
33
- yellow: 43,
34
- blue: 44,
35
- magenta: 45,
36
- cyan: 46,
37
- white: 47
38
- }
39
- }
40
-
41
- class Logger {
42
- #buffer = []
43
- #paused = null
44
- #level = null
45
- #stream = null
46
-
47
- // ordered from loudest to quietest
48
- #levels = [{
49
- id: 'silly',
50
- display: 'sill',
51
- style: { inverse: true }
52
- }, {
53
- id: 'verbose',
54
- display: 'verb',
55
- style: { fg: 'cyan', bg: 'black' }
56
- }, {
57
- id: 'info',
58
- style: { fg: 'green' }
59
- }, {
60
- id: 'http',
61
- style: { fg: 'green', bg: 'black' }
62
- }, {
63
- id: 'notice',
64
- style: { fg: 'cyan', bg: 'black' }
65
- }, {
66
- id: 'warn',
67
- display: 'WARN',
68
- style: { fg: 'black', bg: 'yellow' }
69
- }, {
70
- id: 'error',
71
- display: 'ERR!',
72
- style: { fg: 'red', bg: 'black' }
73
- }]
74
-
75
- constructor (stream) {
76
- process.on('log', (...args) => this.#onLog(...args))
77
- this.#levels = new Map(this.#levels.map((level, index) => [level.id, { ...level, index }]))
78
- this.level = 'info'
79
- this.stream = stream
80
- log.pause()
81
- }
82
-
83
- get stream () {
84
- return this.#stream
85
- }
86
-
87
- set stream (stream) {
88
- this.#stream = stream
89
- }
90
-
91
- get level () {
92
- return this.#levels.get(this.#level) ?? null
93
- }
94
-
95
- set level (level) {
96
- this.#level = this.#levels.get(level)?.id ?? null
97
- }
98
-
99
- isVisible (level) {
100
- return this.level?.index <= this.#levels.get(level)?.index ?? -1
101
- }
102
-
103
- #onLog (...args) {
104
- const [level] = args
105
-
106
- if (level === 'pause') {
107
- this.#paused = true
108
- return
109
- }
110
-
111
- if (level === 'resume') {
112
- this.#paused = false
113
- this.#buffer.forEach((b) => this.#log(...b))
114
- this.#buffer.length = 0
115
- return
116
- }
117
-
118
- if (this.#paused) {
119
- this.#buffer.push(args)
120
- return
121
- }
122
-
123
- this.#log(...args)
124
- }
125
-
126
- #color (str, { fg, bg, inverse }) {
127
- if (!this.#stream?.isTTY) {
128
- return str
129
- }
130
-
131
- return COLORS.wrap(str, [
132
- COLORS.fg[fg],
133
- COLORS.bg[bg],
134
- inverse && COLORS.inverse
135
- ])
136
- }
137
-
138
- #log (levelId, msgPrefix, ...args) {
139
- if (!this.isVisible(levelId) || typeof this.#stream?.write !== 'function') {
140
- return
141
- }
142
-
143
- const level = this.#levels.get(levelId)
144
-
145
- const prefixParts = [
146
- this.#color('gyp', { fg: 'white', bg: 'black' }),
147
- this.#color(level.display ?? level.id, level.style)
148
- ]
149
- if (msgPrefix) {
150
- prefixParts.push(this.#color(msgPrefix, { fg: 'magenta' }))
151
- }
152
-
153
- const prefix = prefixParts.join(' ').trim() + ' '
154
- const lines = format(...args).split(/\r?\n/).map(l => prefix + l.trim())
155
-
156
- this.#stream.write(lines.join('\n') + '\n')
157
- }
158
- }
159
-
160
- // used to suppress logs in tests
161
- const NULL_LOGGER = !!process.env.NODE_GYP_NULL_LOGGER
162
-
163
- module.exports = {
164
- logger: new Logger(NULL_LOGGER ? null : process.stderr),
165
- stdout: NULL_LOGGER ? () => {} : (...args) => console.log(...args),
166
- withPrefix,
167
- ...log
168
- }