pxnpm 3.0.7 → 4.0.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 (737) hide show
  1. package/LICENSE +3 -2
  2. package/README.md +223 -48
  3. package/bin/pnpm.cjs +26 -0
  4. package/bin/pnpx.cjs +5 -0
  5. package/dist/node-gyp-bin/node-gyp +6 -0
  6. package/dist/node-gyp-bin/node-gyp.cmd +5 -0
  7. package/dist/node_modules/.modules.yaml +317 -0
  8. package/dist/node_modules/.pnpm/lock.yaml +952 -0
  9. package/dist/node_modules/@gar/promisify/index.js +36 -0
  10. package/dist/node_modules/@gar/promisify/package.json +32 -0
  11. package/dist/node_modules/@npmcli/fs/lib/common/get-options.js +20 -0
  12. package/dist/node_modules/@npmcli/fs/lib/common/node.js +9 -0
  13. package/dist/node_modules/@npmcli/fs/lib/common/owner-sync.js +96 -0
  14. package/dist/node_modules/@npmcli/fs/lib/common/owner.js +96 -0
  15. package/dist/node_modules/@npmcli/fs/lib/copy-file.js +16 -0
  16. package/dist/node_modules/@npmcli/fs/lib/cp/LICENSE +15 -0
  17. package/dist/node_modules/@npmcli/fs/lib/cp/index.js +22 -0
  18. package/dist/node_modules/@npmcli/fs/lib/cp/polyfill.js +428 -0
  19. package/dist/node_modules/@npmcli/fs/lib/errors.js +129 -0
  20. package/dist/node_modules/@npmcli/fs/lib/fs.js +14 -0
  21. package/dist/node_modules/@npmcli/fs/lib/index.js +12 -0
  22. package/dist/node_modules/@npmcli/fs/lib/mkdir.js +19 -0
  23. package/dist/node_modules/@npmcli/fs/lib/mkdtemp.js +23 -0
  24. package/dist/node_modules/@npmcli/fs/lib/rm/index.js +22 -0
  25. package/dist/node_modules/@npmcli/fs/lib/rm/polyfill.js +239 -0
  26. package/dist/node_modules/@npmcli/fs/lib/with-owner-sync.js +21 -0
  27. package/dist/node_modules/@npmcli/fs/lib/with-owner.js +21 -0
  28. package/dist/node_modules/@npmcli/fs/lib/with-temp-dir.js +41 -0
  29. package/dist/node_modules/@npmcli/fs/lib/write-file.js +14 -0
  30. package/dist/node_modules/@npmcli/fs/package.json +50 -0
  31. package/dist/node_modules/@npmcli/move-file/lib/index.js +185 -0
  32. package/dist/node_modules/@npmcli/move-file/package.json +47 -0
  33. package/dist/node_modules/@tootallnate/once/LICENSE +21 -0
  34. package/dist/node_modules/@tootallnate/once/dist/index.js +24 -0
  35. package/dist/node_modules/@tootallnate/once/dist/index.js.map +1 -0
  36. package/dist/node_modules/@tootallnate/once/dist/overloaded-parameters.js +3 -0
  37. package/dist/node_modules/@tootallnate/once/dist/overloaded-parameters.js.map +1 -0
  38. package/dist/node_modules/@tootallnate/once/dist/types.js +3 -0
  39. package/dist/node_modules/@tootallnate/once/dist/types.js.map +1 -0
  40. package/dist/node_modules/@tootallnate/once/package.json +52 -0
  41. package/dist/node_modules/abbrev/LICENSE +46 -0
  42. package/dist/node_modules/abbrev/abbrev.js +61 -0
  43. package/dist/node_modules/abbrev/package.json +21 -0
  44. package/dist/node_modules/agent-base/dist/src/index.js +203 -0
  45. package/dist/node_modules/agent-base/dist/src/index.js.map +1 -0
  46. package/dist/node_modules/agent-base/dist/src/promisify.js +18 -0
  47. package/dist/node_modules/agent-base/dist/src/promisify.js.map +1 -0
  48. package/dist/node_modules/agent-base/package.json +64 -0
  49. package/dist/node_modules/agentkeepalive/LICENSE +23 -0
  50. package/dist/node_modules/agentkeepalive/browser.js +5 -0
  51. package/dist/node_modules/agentkeepalive/index.js +5 -0
  52. package/dist/node_modules/agentkeepalive/lib/agent.js +402 -0
  53. package/dist/node_modules/agentkeepalive/lib/constants.js +14 -0
  54. package/dist/node_modules/agentkeepalive/lib/https_agent.js +51 -0
  55. package/dist/node_modules/agentkeepalive/package.json +56 -0
  56. package/dist/node_modules/aggregate-error/index.js +47 -0
  57. package/dist/node_modules/aggregate-error/license +9 -0
  58. package/dist/node_modules/aggregate-error/package.json +41 -0
  59. package/dist/node_modules/ansi-regex/index.js +10 -0
  60. package/dist/node_modules/ansi-regex/license +9 -0
  61. package/dist/node_modules/ansi-regex/package.json +55 -0
  62. package/dist/node_modules/aproba/LICENSE +14 -0
  63. package/dist/node_modules/aproba/index.js +105 -0
  64. package/dist/node_modules/aproba/package.json +35 -0
  65. package/dist/node_modules/are-we-there-yet/lib/index.js +4 -0
  66. package/dist/node_modules/are-we-there-yet/lib/tracker-base.js +11 -0
  67. package/dist/node_modules/are-we-there-yet/lib/tracker-group.js +116 -0
  68. package/dist/node_modules/are-we-there-yet/lib/tracker-stream.js +36 -0
  69. package/dist/node_modules/are-we-there-yet/lib/tracker.js +32 -0
  70. package/dist/node_modules/are-we-there-yet/package.json +56 -0
  71. package/dist/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  72. package/dist/node_modules/balanced-match/index.js +62 -0
  73. package/dist/node_modules/balanced-match/package.json +48 -0
  74. package/dist/node_modules/brace-expansion/LICENSE +21 -0
  75. package/dist/node_modules/brace-expansion/index.js +201 -0
  76. package/dist/node_modules/brace-expansion/package.json +47 -0
  77. package/dist/node_modules/cacache/lib/content/path.js +29 -0
  78. package/dist/node_modules/cacache/lib/content/read.js +241 -0
  79. package/dist/node_modules/cacache/lib/content/rm.js +20 -0
  80. package/dist/node_modules/cacache/lib/content/write.js +189 -0
  81. package/dist/node_modules/cacache/lib/entry-index.js +404 -0
  82. package/dist/node_modules/cacache/lib/get.js +225 -0
  83. package/dist/node_modules/cacache/lib/index.js +45 -0
  84. package/dist/node_modules/cacache/lib/memoization.js +72 -0
  85. package/dist/node_modules/cacache/lib/put.js +80 -0
  86. package/dist/node_modules/cacache/lib/rm.js +31 -0
  87. package/dist/node_modules/cacache/lib/util/fix-owner.js +145 -0
  88. package/dist/node_modules/cacache/lib/util/hash-to-segments.js +7 -0
  89. package/dist/node_modules/cacache/lib/util/move-file.js +56 -0
  90. package/dist/node_modules/cacache/lib/util/tmp.js +33 -0
  91. package/dist/node_modules/cacache/lib/verify.js +257 -0
  92. package/dist/node_modules/cacache/node_modules/brace-expansion/.github/FUNDING.yml +2 -0
  93. package/dist/node_modules/cacache/node_modules/brace-expansion/LICENSE +21 -0
  94. package/dist/node_modules/cacache/node_modules/brace-expansion/index.js +203 -0
  95. package/dist/node_modules/cacache/node_modules/brace-expansion/package.json +46 -0
  96. package/dist/node_modules/cacache/node_modules/glob/LICENSE +15 -0
  97. package/dist/node_modules/cacache/node_modules/glob/common.js +244 -0
  98. package/dist/node_modules/cacache/node_modules/glob/glob.js +790 -0
  99. package/dist/node_modules/cacache/node_modules/glob/package.json +55 -0
  100. package/dist/node_modules/cacache/node_modules/glob/sync.js +486 -0
  101. package/dist/node_modules/cacache/node_modules/minimatch/LICENSE +15 -0
  102. package/dist/node_modules/cacache/node_modules/minimatch/lib/path.js +4 -0
  103. package/dist/node_modules/cacache/node_modules/minimatch/minimatch.js +944 -0
  104. package/dist/node_modules/cacache/node_modules/minimatch/package.json +35 -0
  105. package/dist/node_modules/cacache/package.json +84 -0
  106. package/dist/node_modules/chownr/LICENSE +15 -0
  107. package/dist/node_modules/chownr/chownr.js +167 -0
  108. package/dist/node_modules/chownr/package.json +32 -0
  109. package/dist/node_modules/clean-stack/index.js +40 -0
  110. package/dist/node_modules/clean-stack/license +9 -0
  111. package/dist/node_modules/clean-stack/package.json +39 -0
  112. package/dist/node_modules/color-support/LICENSE +15 -0
  113. package/dist/node_modules/color-support/bin.js +3 -0
  114. package/dist/node_modules/color-support/browser.js +14 -0
  115. package/dist/node_modules/color-support/index.js +134 -0
  116. package/dist/node_modules/color-support/package.json +36 -0
  117. package/dist/node_modules/concat-map/LICENSE +18 -0
  118. package/dist/node_modules/concat-map/README.markdown +62 -0
  119. package/dist/node_modules/concat-map/index.js +13 -0
  120. package/dist/node_modules/concat-map/package.json +43 -0
  121. package/dist/node_modules/console-control-strings/LICENSE +13 -0
  122. package/dist/node_modules/console-control-strings/README.md~ +140 -0
  123. package/dist/node_modules/console-control-strings/index.js +125 -0
  124. package/dist/node_modules/console-control-strings/package.json +27 -0
  125. package/dist/node_modules/debug/LICENSE +20 -0
  126. package/dist/node_modules/debug/node_modules/ms/index.js +162 -0
  127. package/dist/node_modules/debug/node_modules/ms/package.json +37 -0
  128. package/dist/node_modules/debug/package.json +59 -0
  129. package/dist/node_modules/debug/src/browser.js +269 -0
  130. package/dist/node_modules/debug/src/common.js +274 -0
  131. package/dist/node_modules/debug/src/index.js +10 -0
  132. package/dist/node_modules/debug/src/node.js +263 -0
  133. package/dist/node_modules/delegates/License +20 -0
  134. package/dist/node_modules/delegates/index.js +121 -0
  135. package/dist/node_modules/delegates/package.json +13 -0
  136. package/dist/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  137. package/dist/node_modules/emoji-regex/es2015/index.js +6 -0
  138. package/dist/node_modules/emoji-regex/es2015/text.js +6 -0
  139. package/dist/node_modules/emoji-regex/index.js +6 -0
  140. package/dist/node_modules/emoji-regex/package.json +50 -0
  141. package/dist/node_modules/emoji-regex/text.js +6 -0
  142. package/dist/node_modules/encoding/.prettierrc.js +8 -0
  143. package/dist/node_modules/encoding/LICENSE +16 -0
  144. package/dist/node_modules/encoding/lib/encoding.js +83 -0
  145. package/dist/node_modules/encoding/package.json +18 -0
  146. package/dist/node_modules/env-paths/index.js +74 -0
  147. package/dist/node_modules/env-paths/license +9 -0
  148. package/dist/node_modules/env-paths/package.json +45 -0
  149. package/dist/node_modules/err-code/.eslintrc.json +7 -0
  150. package/dist/node_modules/err-code/bower.json +30 -0
  151. package/dist/node_modules/err-code/index.js +47 -0
  152. package/dist/node_modules/err-code/index.umd.js +51 -0
  153. package/dist/node_modules/err-code/package.json +34 -0
  154. package/dist/node_modules/exponential-backoff/LICENSE +202 -0
  155. package/dist/node_modules/exponential-backoff/dist/backoff.js +118 -0
  156. package/dist/node_modules/exponential-backoff/dist/backoff.js.map +1 -0
  157. package/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +25 -0
  158. package/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js.map +1 -0
  159. package/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +45 -0
  160. package/dist/node_modules/exponential-backoff/dist/delay/delay.base.js.map +1 -0
  161. package/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +17 -0
  162. package/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js.map +1 -0
  163. package/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +3 -0
  164. package/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js.map +1 -0
  165. package/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +82 -0
  166. package/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js.map +1 -0
  167. package/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +8 -0
  168. package/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js.map +1 -0
  169. package/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +15 -0
  170. package/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js.map +1 -0
  171. package/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +7 -0
  172. package/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js.map +1 -0
  173. package/dist/node_modules/exponential-backoff/dist/options.js +31 -0
  174. package/dist/node_modules/exponential-backoff/dist/options.js.map +1 -0
  175. package/dist/node_modules/exponential-backoff/package.json +61 -0
  176. package/dist/node_modules/fs-minipass/LICENSE +15 -0
  177. package/dist/node_modules/fs-minipass/index.js +422 -0
  178. package/dist/node_modules/fs-minipass/package.json +39 -0
  179. package/dist/node_modules/fs.realpath/LICENSE +43 -0
  180. package/dist/node_modules/fs.realpath/index.js +66 -0
  181. package/dist/node_modules/fs.realpath/old.js +303 -0
  182. package/dist/node_modules/fs.realpath/package.json +26 -0
  183. package/dist/node_modules/gauge/lib/base-theme.js +18 -0
  184. package/dist/node_modules/gauge/lib/error.js +24 -0
  185. package/dist/node_modules/gauge/lib/has-color.js +4 -0
  186. package/dist/node_modules/gauge/lib/index.js +289 -0
  187. package/dist/node_modules/gauge/lib/plumbing.js +50 -0
  188. package/dist/node_modules/gauge/lib/process.js +3 -0
  189. package/dist/node_modules/gauge/lib/progress-bar.js +41 -0
  190. package/dist/node_modules/gauge/lib/render-template.js +222 -0
  191. package/dist/node_modules/gauge/lib/set-immediate.js +7 -0
  192. package/dist/node_modules/gauge/lib/set-interval.js +3 -0
  193. package/dist/node_modules/gauge/lib/spin.js +5 -0
  194. package/dist/node_modules/gauge/lib/template-item.js +87 -0
  195. package/dist/node_modules/gauge/lib/theme-set.js +122 -0
  196. package/dist/node_modules/gauge/lib/themes.js +56 -0
  197. package/dist/node_modules/gauge/lib/wide-truncate.js +31 -0
  198. package/dist/node_modules/gauge/package.json +66 -0
  199. package/dist/node_modules/glob/LICENSE +21 -0
  200. package/dist/node_modules/glob/common.js +238 -0
  201. package/dist/node_modules/glob/glob.js +790 -0
  202. package/dist/node_modules/glob/package.json +55 -0
  203. package/dist/node_modules/glob/sync.js +486 -0
  204. package/dist/node_modules/graceful-fs/LICENSE +15 -0
  205. package/dist/node_modules/graceful-fs/clone.js +23 -0
  206. package/dist/node_modules/graceful-fs/graceful-fs.js +448 -0
  207. package/dist/node_modules/graceful-fs/legacy-streams.js +118 -0
  208. package/dist/node_modules/graceful-fs/package.json +53 -0
  209. package/dist/node_modules/graceful-fs/polyfills.js +355 -0
  210. package/dist/node_modules/has-unicode/LICENSE +14 -0
  211. package/dist/node_modules/has-unicode/index.js +16 -0
  212. package/dist/node_modules/has-unicode/package.json +30 -0
  213. package/dist/node_modules/http-cache-semantics/LICENSE +9 -0
  214. package/dist/node_modules/http-cache-semantics/index.js +674 -0
  215. package/dist/node_modules/http-cache-semantics/package.json +18 -0
  216. package/dist/node_modules/http-proxy-agent/dist/agent.js +145 -0
  217. package/dist/node_modules/http-proxy-agent/dist/agent.js.map +1 -0
  218. package/dist/node_modules/http-proxy-agent/dist/index.js +14 -0
  219. package/dist/node_modules/http-proxy-agent/dist/index.js.map +1 -0
  220. package/dist/node_modules/http-proxy-agent/package.json +57 -0
  221. package/dist/node_modules/https-proxy-agent/dist/agent.js +177 -0
  222. package/dist/node_modules/https-proxy-agent/dist/agent.js.map +1 -0
  223. package/dist/node_modules/https-proxy-agent/dist/index.js +14 -0
  224. package/dist/node_modules/https-proxy-agent/dist/index.js.map +1 -0
  225. package/dist/node_modules/https-proxy-agent/dist/parse-proxy-response.js +66 -0
  226. package/dist/node_modules/https-proxy-agent/dist/parse-proxy-response.js.map +1 -0
  227. package/dist/node_modules/https-proxy-agent/package.json +56 -0
  228. package/dist/node_modules/humanize-ms/LICENSE +17 -0
  229. package/dist/node_modules/humanize-ms/index.js +24 -0
  230. package/dist/node_modules/humanize-ms/package.json +37 -0
  231. package/dist/node_modules/iconv-lite/.github/dependabot.yml +11 -0
  232. package/dist/node_modules/iconv-lite/.idea/codeStyles/Project.xml +47 -0
  233. package/dist/node_modules/iconv-lite/.idea/codeStyles/codeStyleConfig.xml +5 -0
  234. package/dist/node_modules/iconv-lite/.idea/iconv-lite.iml +12 -0
  235. package/dist/node_modules/iconv-lite/.idea/inspectionProfiles/Project_Default.xml +6 -0
  236. package/dist/node_modules/iconv-lite/.idea/modules.xml +8 -0
  237. package/dist/node_modules/iconv-lite/.idea/vcs.xml +6 -0
  238. package/dist/node_modules/iconv-lite/LICENSE +21 -0
  239. package/dist/node_modules/iconv-lite/encodings/dbcs-codec.js +597 -0
  240. package/dist/node_modules/iconv-lite/encodings/dbcs-data.js +188 -0
  241. package/dist/node_modules/iconv-lite/encodings/index.js +23 -0
  242. package/dist/node_modules/iconv-lite/encodings/internal.js +198 -0
  243. package/dist/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  244. package/dist/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  245. package/dist/node_modules/iconv-lite/encodings/sbcs-data.js +179 -0
  246. package/dist/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  247. package/dist/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  248. package/dist/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  249. package/dist/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  250. package/dist/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  251. package/dist/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  252. package/dist/node_modules/iconv-lite/encodings/tables/gbk-added.json +56 -0
  253. package/dist/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  254. package/dist/node_modules/iconv-lite/encodings/utf16.js +197 -0
  255. package/dist/node_modules/iconv-lite/encodings/utf32.js +319 -0
  256. package/dist/node_modules/iconv-lite/encodings/utf7.js +290 -0
  257. package/dist/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  258. package/dist/node_modules/iconv-lite/lib/index.js +180 -0
  259. package/dist/node_modules/iconv-lite/lib/streams.js +109 -0
  260. package/dist/node_modules/iconv-lite/package.json +44 -0
  261. package/dist/node_modules/imurmurhash/imurmurhash.js +138 -0
  262. package/dist/node_modules/imurmurhash/imurmurhash.min.js +12 -0
  263. package/dist/node_modules/imurmurhash/package.json +40 -0
  264. package/dist/node_modules/indent-string/index.js +35 -0
  265. package/dist/node_modules/indent-string/license +9 -0
  266. package/dist/node_modules/indent-string/package.json +37 -0
  267. package/dist/node_modules/infer-owner/LICENSE +15 -0
  268. package/dist/node_modules/infer-owner/index.js +71 -0
  269. package/dist/node_modules/infer-owner/package.json +26 -0
  270. package/dist/node_modules/inflight/LICENSE +15 -0
  271. package/dist/node_modules/inflight/inflight.js +54 -0
  272. package/dist/node_modules/inflight/package.json +29 -0
  273. package/dist/node_modules/inherits/LICENSE +16 -0
  274. package/dist/node_modules/inherits/inherits.js +9 -0
  275. package/dist/node_modules/inherits/inherits_browser.js +27 -0
  276. package/dist/node_modules/inherits/package.json +29 -0
  277. package/dist/node_modules/ip-address/LICENSE +19 -0
  278. package/dist/node_modules/ip-address/dist/address-error.d.ts.map +1 -0
  279. package/dist/node_modules/ip-address/dist/address-error.js +14 -0
  280. package/dist/node_modules/ip-address/dist/address-error.js.map +1 -0
  281. package/dist/node_modules/ip-address/dist/common.d.ts.map +1 -0
  282. package/dist/node_modules/ip-address/dist/common.js +26 -0
  283. package/dist/node_modules/ip-address/dist/common.js.map +1 -0
  284. package/dist/node_modules/ip-address/dist/ip-address.d.ts.map +1 -0
  285. package/dist/node_modules/ip-address/dist/ip-address.js +35 -0
  286. package/dist/node_modules/ip-address/dist/ip-address.js.map +1 -0
  287. package/dist/node_modules/ip-address/dist/ipv4.d.ts.map +1 -0
  288. package/dist/node_modules/ip-address/dist/ipv4.js +326 -0
  289. package/dist/node_modules/ip-address/dist/ipv4.js.map +1 -0
  290. package/dist/node_modules/ip-address/dist/ipv6.d.ts.map +1 -0
  291. package/dist/node_modules/ip-address/dist/ipv6.js +998 -0
  292. package/dist/node_modules/ip-address/dist/ipv6.js.map +1 -0
  293. package/dist/node_modules/ip-address/dist/v4/constants.d.ts.map +1 -0
  294. package/dist/node_modules/ip-address/dist/v4/constants.js +8 -0
  295. package/dist/node_modules/ip-address/dist/v4/constants.js.map +1 -0
  296. package/dist/node_modules/ip-address/dist/v6/constants.d.ts.map +1 -0
  297. package/dist/node_modules/ip-address/dist/v6/constants.js +76 -0
  298. package/dist/node_modules/ip-address/dist/v6/constants.js.map +1 -0
  299. package/dist/node_modules/ip-address/dist/v6/helpers.d.ts.map +1 -0
  300. package/dist/node_modules/ip-address/dist/v6/helpers.js +48 -0
  301. package/dist/node_modules/ip-address/dist/v6/helpers.js.map +1 -0
  302. package/dist/node_modules/ip-address/dist/v6/regular-expressions.d.ts.map +1 -0
  303. package/dist/node_modules/ip-address/dist/v6/regular-expressions.js +96 -0
  304. package/dist/node_modules/ip-address/dist/v6/regular-expressions.js.map +1 -0
  305. package/dist/node_modules/ip-address/package.json +87 -0
  306. package/dist/node_modules/is-fullwidth-code-point/index.js +50 -0
  307. package/dist/node_modules/is-fullwidth-code-point/license +9 -0
  308. package/dist/node_modules/is-fullwidth-code-point/package.json +42 -0
  309. package/dist/node_modules/is-lambda/LICENSE +21 -0
  310. package/dist/node_modules/is-lambda/index.js +6 -0
  311. package/dist/node_modules/is-lambda/package.json +35 -0
  312. package/dist/node_modules/is-lambda/test.js +16 -0
  313. package/dist/node_modules/isexe/LICENSE +15 -0
  314. package/dist/node_modules/isexe/index.js +57 -0
  315. package/dist/node_modules/isexe/mode.js +41 -0
  316. package/dist/node_modules/isexe/package.json +31 -0
  317. package/dist/node_modules/isexe/windows.js +42 -0
  318. package/dist/node_modules/jsbn/LICENSE +40 -0
  319. package/dist/node_modules/jsbn/example.html +11 -0
  320. package/dist/node_modules/jsbn/example.js +5 -0
  321. package/dist/node_modules/jsbn/index.js +1361 -0
  322. package/dist/node_modules/jsbn/package.json +21 -0
  323. package/dist/node_modules/lru-cache/LICENSE +15 -0
  324. package/dist/node_modules/lru-cache/index.js +1227 -0
  325. package/dist/node_modules/lru-cache/index.mjs +1227 -0
  326. package/dist/node_modules/lru-cache/package.json +96 -0
  327. package/dist/node_modules/make-fetch-happen/LICENSE +16 -0
  328. package/dist/node_modules/make-fetch-happen/lib/agent.js +214 -0
  329. package/dist/node_modules/make-fetch-happen/lib/cache/entry.js +444 -0
  330. package/dist/node_modules/make-fetch-happen/lib/cache/errors.js +11 -0
  331. package/dist/node_modules/make-fetch-happen/lib/cache/index.js +49 -0
  332. package/dist/node_modules/make-fetch-happen/lib/cache/key.js +17 -0
  333. package/dist/node_modules/make-fetch-happen/lib/cache/policy.js +161 -0
  334. package/dist/node_modules/make-fetch-happen/lib/dns.js +49 -0
  335. package/dist/node_modules/make-fetch-happen/lib/fetch.js +118 -0
  336. package/dist/node_modules/make-fetch-happen/lib/index.js +41 -0
  337. package/dist/node_modules/make-fetch-happen/lib/options.js +52 -0
  338. package/dist/node_modules/make-fetch-happen/lib/pipeline.js +41 -0
  339. package/dist/node_modules/make-fetch-happen/lib/remote.js +121 -0
  340. package/dist/node_modules/make-fetch-happen/package.json +79 -0
  341. package/dist/node_modules/minimatch/LICENSE +15 -0
  342. package/dist/node_modules/minimatch/minimatch.js +947 -0
  343. package/dist/node_modules/minimatch/package.json +33 -0
  344. package/dist/node_modules/minipass/LICENSE +15 -0
  345. package/dist/node_modules/minipass/index.js +649 -0
  346. package/dist/node_modules/minipass/package.json +56 -0
  347. package/dist/node_modules/minipass-collect/LICENSE +15 -0
  348. package/dist/node_modules/minipass-collect/index.js +71 -0
  349. package/dist/node_modules/minipass-collect/package.json +29 -0
  350. package/dist/node_modules/minipass-fetch/LICENSE +28 -0
  351. package/dist/node_modules/minipass-fetch/lib/abort-error.js +17 -0
  352. package/dist/node_modules/minipass-fetch/lib/blob.js +97 -0
  353. package/dist/node_modules/minipass-fetch/lib/body.js +350 -0
  354. package/dist/node_modules/minipass-fetch/lib/fetch-error.js +32 -0
  355. package/dist/node_modules/minipass-fetch/lib/headers.js +267 -0
  356. package/dist/node_modules/minipass-fetch/lib/index.js +365 -0
  357. package/dist/node_modules/minipass-fetch/lib/request.js +281 -0
  358. package/dist/node_modules/minipass-fetch/lib/response.js +90 -0
  359. package/dist/node_modules/minipass-fetch/package.json +67 -0
  360. package/dist/node_modules/minipass-flush/LICENSE +15 -0
  361. package/dist/node_modules/minipass-flush/index.js +39 -0
  362. package/dist/node_modules/minipass-flush/package.json +39 -0
  363. package/dist/node_modules/minipass-pipeline/LICENSE +15 -0
  364. package/dist/node_modules/minipass-pipeline/index.js +128 -0
  365. package/dist/node_modules/minipass-pipeline/package.json +29 -0
  366. package/dist/node_modules/minipass-sized/LICENSE +15 -0
  367. package/dist/node_modules/minipass-sized/index.js +67 -0
  368. package/dist/node_modules/minipass-sized/package-lock.json +3464 -0
  369. package/dist/node_modules/minipass-sized/package.json +39 -0
  370. package/dist/node_modules/minizlib/LICENSE +26 -0
  371. package/dist/node_modules/minizlib/constants.js +115 -0
  372. package/dist/node_modules/minizlib/index.js +348 -0
  373. package/dist/node_modules/minizlib/package.json +42 -0
  374. package/dist/node_modules/mkdirp/LICENSE +21 -0
  375. package/dist/node_modules/mkdirp/bin/cmd.js +68 -0
  376. package/dist/node_modules/mkdirp/index.js +31 -0
  377. package/dist/node_modules/mkdirp/lib/find-made.js +29 -0
  378. package/dist/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  379. package/dist/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  380. package/dist/node_modules/mkdirp/lib/opts-arg.js +23 -0
  381. package/dist/node_modules/mkdirp/lib/path-arg.js +29 -0
  382. package/dist/node_modules/mkdirp/lib/use-native.js +10 -0
  383. package/dist/node_modules/mkdirp/package.json +44 -0
  384. package/dist/node_modules/mkdirp/readme.markdown +266 -0
  385. package/dist/node_modules/ms/index.js +162 -0
  386. package/dist/node_modules/ms/package.json +38 -0
  387. package/dist/node_modules/negotiator/LICENSE +24 -0
  388. package/dist/node_modules/negotiator/index.js +82 -0
  389. package/dist/node_modules/negotiator/lib/charset.js +169 -0
  390. package/dist/node_modules/negotiator/lib/encoding.js +184 -0
  391. package/dist/node_modules/negotiator/lib/language.js +179 -0
  392. package/dist/node_modules/negotiator/lib/mediaType.js +294 -0
  393. package/dist/node_modules/negotiator/package.json +42 -0
  394. package/dist/node_modules/node-gyp/.github/workflows/release-please-v9.yml +57 -0
  395. package/dist/node_modules/node-gyp/.github/workflows/release-please.yml +56 -0
  396. package/dist/node_modules/node-gyp/.github/workflows/tests.yml +59 -0
  397. package/dist/node_modules/node-gyp/.github/workflows/visual-studio.yml +37 -0
  398. package/dist/node_modules/node-gyp/LICENSE +24 -0
  399. package/dist/node_modules/node-gyp/addon.gypi +204 -0
  400. package/dist/node_modules/node-gyp/bin/node-gyp.js +140 -0
  401. package/dist/node_modules/node-gyp/gyp/.flake8 +4 -0
  402. package/dist/node_modules/node-gyp/gyp/.github/workflows/Python_tests.yml +36 -0
  403. package/dist/node_modules/node-gyp/gyp/.github/workflows/node-gyp.yml +45 -0
  404. package/dist/node_modules/node-gyp/gyp/.github/workflows/nodejs-windows.yml +32 -0
  405. package/dist/node_modules/node-gyp/gyp/.github/workflows/release-please.yml +16 -0
  406. package/dist/node_modules/node-gyp/gyp/LICENSE +28 -0
  407. package/dist/node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc +12 -0
  408. package/dist/node_modules/node-gyp/gyp/gyp +8 -0
  409. package/dist/node_modules/node-gyp/gyp/gyp.bat +5 -0
  410. package/dist/node_modules/node-gyp/gyp/gyp_main.py +45 -0
  411. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +367 -0
  412. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +206 -0
  413. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +1270 -0
  414. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +1547 -0
  415. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +59 -0
  416. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +153 -0
  417. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +271 -0
  418. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +574 -0
  419. package/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +690 -0
  420. package/dist/node_modules/node-gyp/gyp/pylib/gyp/common.py +661 -0
  421. package/dist/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +78 -0
  422. package/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +165 -0
  423. package/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +109 -0
  424. package/dist/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +55 -0
  425. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
  426. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +808 -0
  427. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +1173 -0
  428. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +1321 -0
  429. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +120 -0
  430. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +103 -0
  431. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +464 -0
  432. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +89 -0
  433. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +58 -0
  434. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +2714 -0
  435. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +3981 -0
  436. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +44 -0
  437. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +2936 -0
  438. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +55 -0
  439. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +1394 -0
  440. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +25 -0
  441. package/dist/node_modules/node-gyp/gyp/pylib/gyp/input.py +3130 -0
  442. package/dist/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +98 -0
  443. package/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +771 -0
  444. package/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +1271 -0
  445. package/dist/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +174 -0
  446. package/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +61 -0
  447. package/dist/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +374 -0
  448. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +1939 -0
  449. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +302 -0
  450. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +3197 -0
  451. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +65 -0
  452. package/dist/node_modules/node-gyp/gyp/pyproject.toml +41 -0
  453. package/dist/node_modules/node-gyp/gyp/test_gyp.py +261 -0
  454. package/dist/node_modules/node-gyp/gyp/tools/README +15 -0
  455. package/dist/node_modules/node-gyp/gyp/tools/Xcode/README +5 -0
  456. package/dist/node_modules/node-gyp/gyp/tools/Xcode/Specifications/gyp.pbfilespec +27 -0
  457. package/dist/node_modules/node-gyp/gyp/tools/Xcode/Specifications/gyp.xclangspec +226 -0
  458. package/dist/node_modules/node-gyp/gyp/tools/emacs/README +12 -0
  459. package/dist/node_modules/node-gyp/gyp/tools/emacs/gyp-tests.el +63 -0
  460. package/dist/node_modules/node-gyp/gyp/tools/emacs/gyp.el +275 -0
  461. package/dist/node_modules/node-gyp/gyp/tools/emacs/run-unit-tests.sh +7 -0
  462. package/dist/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp +1105 -0
  463. package/dist/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp.fontified +1107 -0
  464. package/dist/node_modules/node-gyp/gyp/tools/graphviz.py +102 -0
  465. package/dist/node_modules/node-gyp/gyp/tools/pretty_gyp.py +156 -0
  466. package/dist/node_modules/node-gyp/gyp/tools/pretty_sln.py +181 -0
  467. package/dist/node_modules/node-gyp/gyp/tools/pretty_vcproj.py +339 -0
  468. package/dist/node_modules/node-gyp/lib/Find-VisualStudio.cs +250 -0
  469. package/dist/node_modules/node-gyp/lib/build.js +213 -0
  470. package/dist/node_modules/node-gyp/lib/clean.js +15 -0
  471. package/dist/node_modules/node-gyp/lib/configure.js +360 -0
  472. package/dist/node_modules/node-gyp/lib/create-config-gypi.js +147 -0
  473. package/dist/node_modules/node-gyp/lib/find-node-directory.js +63 -0
  474. package/dist/node_modules/node-gyp/lib/find-python.js +344 -0
  475. package/dist/node_modules/node-gyp/lib/find-visualstudio.js +463 -0
  476. package/dist/node_modules/node-gyp/lib/install.js +458 -0
  477. package/dist/node_modules/node-gyp/lib/list.js +27 -0
  478. package/dist/node_modules/node-gyp/lib/node-gyp.js +215 -0
  479. package/dist/node_modules/node-gyp/lib/process-release.js +147 -0
  480. package/dist/node_modules/node-gyp/lib/rebuild.js +13 -0
  481. package/dist/node_modules/node-gyp/lib/remove.js +46 -0
  482. package/dist/node_modules/node-gyp/lib/util.js +64 -0
  483. package/dist/node_modules/node-gyp/macOS_Catalina_acid_test.sh +21 -0
  484. package/dist/node_modules/node-gyp/package.json +51 -0
  485. package/dist/node_modules/node-gyp/src/win_delay_load_hook.cc +39 -0
  486. package/dist/node_modules/node-gyp/update-gyp.py +64 -0
  487. package/dist/node_modules/nopt/LICENSE +15 -0
  488. package/dist/node_modules/nopt/bin/nopt.js +56 -0
  489. package/dist/node_modules/nopt/lib/nopt.js +515 -0
  490. package/dist/node_modules/nopt/package.json +53 -0
  491. package/dist/node_modules/npmlog/lib/log.js +404 -0
  492. package/dist/node_modules/npmlog/package.json +51 -0
  493. package/dist/node_modules/once/LICENSE +15 -0
  494. package/dist/node_modules/once/once.js +42 -0
  495. package/dist/node_modules/once/package.json +33 -0
  496. package/dist/node_modules/p-map/index.js +81 -0
  497. package/dist/node_modules/p-map/license +9 -0
  498. package/dist/node_modules/p-map/package.json +53 -0
  499. package/dist/node_modules/path-is-absolute/index.js +20 -0
  500. package/dist/node_modules/path-is-absolute/license +21 -0
  501. package/dist/node_modules/path-is-absolute/package.json +43 -0
  502. package/dist/node_modules/promise-inflight/LICENSE +14 -0
  503. package/dist/node_modules/promise-inflight/inflight.js +36 -0
  504. package/dist/node_modules/promise-inflight/package.json +24 -0
  505. package/dist/node_modules/promise-retry/LICENSE +19 -0
  506. package/dist/node_modules/promise-retry/index.js +52 -0
  507. package/dist/node_modules/promise-retry/package.json +37 -0
  508. package/dist/node_modules/readable-stream/LICENSE +47 -0
  509. package/dist/node_modules/readable-stream/errors-browser.js +127 -0
  510. package/dist/node_modules/readable-stream/errors.js +116 -0
  511. package/dist/node_modules/readable-stream/experimentalWarning.js +17 -0
  512. package/dist/node_modules/readable-stream/lib/_stream_duplex.js +126 -0
  513. package/dist/node_modules/readable-stream/lib/_stream_passthrough.js +37 -0
  514. package/dist/node_modules/readable-stream/lib/_stream_readable.js +1027 -0
  515. package/dist/node_modules/readable-stream/lib/_stream_transform.js +190 -0
  516. package/dist/node_modules/readable-stream/lib/_stream_writable.js +641 -0
  517. package/dist/node_modules/readable-stream/lib/internal/streams/async_iterator.js +180 -0
  518. package/dist/node_modules/readable-stream/lib/internal/streams/buffer_list.js +183 -0
  519. package/dist/node_modules/readable-stream/lib/internal/streams/destroy.js +96 -0
  520. package/dist/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +86 -0
  521. package/dist/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -0
  522. package/dist/node_modules/readable-stream/lib/internal/streams/from.js +52 -0
  523. package/dist/node_modules/readable-stream/lib/internal/streams/pipeline.js +86 -0
  524. package/dist/node_modules/readable-stream/lib/internal/streams/state.js +22 -0
  525. package/dist/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  526. package/dist/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  527. package/dist/node_modules/readable-stream/package.json +68 -0
  528. package/dist/node_modules/readable-stream/readable-browser.js +9 -0
  529. package/dist/node_modules/readable-stream/readable.js +16 -0
  530. package/dist/node_modules/retry/License +21 -0
  531. package/dist/node_modules/retry/equation.gif +0 -0
  532. package/dist/node_modules/retry/index.js +1 -0
  533. package/dist/node_modules/retry/lib/retry.js +100 -0
  534. package/dist/node_modules/retry/lib/retry_operation.js +158 -0
  535. package/dist/node_modules/retry/package.json +32 -0
  536. package/dist/node_modules/rimraf/LICENSE +15 -0
  537. package/dist/node_modules/rimraf/bin.js +68 -0
  538. package/dist/node_modules/rimraf/package.json +32 -0
  539. package/dist/node_modules/rimraf/rimraf.js +360 -0
  540. package/dist/node_modules/safe-buffer/LICENSE +21 -0
  541. package/dist/node_modules/safe-buffer/index.js +65 -0
  542. package/dist/node_modules/safe-buffer/package.json +51 -0
  543. package/dist/node_modules/safer-buffer/LICENSE +21 -0
  544. package/dist/node_modules/safer-buffer/dangerous.js +58 -0
  545. package/dist/node_modules/safer-buffer/package.json +34 -0
  546. package/dist/node_modules/safer-buffer/safer.js +77 -0
  547. package/dist/node_modules/safer-buffer/tests.js +406 -0
  548. package/dist/node_modules/semver/LICENSE +15 -0
  549. package/dist/node_modules/semver/bin/semver.js +197 -0
  550. package/dist/node_modules/semver/classes/comparator.js +141 -0
  551. package/dist/node_modules/semver/classes/index.js +5 -0
  552. package/dist/node_modules/semver/classes/range.js +539 -0
  553. package/dist/node_modules/semver/classes/semver.js +302 -0
  554. package/dist/node_modules/semver/functions/clean.js +6 -0
  555. package/dist/node_modules/semver/functions/cmp.js +52 -0
  556. package/dist/node_modules/semver/functions/coerce.js +52 -0
  557. package/dist/node_modules/semver/functions/compare-build.js +7 -0
  558. package/dist/node_modules/semver/functions/compare-loose.js +3 -0
  559. package/dist/node_modules/semver/functions/compare.js +5 -0
  560. package/dist/node_modules/semver/functions/diff.js +65 -0
  561. package/dist/node_modules/semver/functions/eq.js +3 -0
  562. package/dist/node_modules/semver/functions/gt.js +3 -0
  563. package/dist/node_modules/semver/functions/gte.js +3 -0
  564. package/dist/node_modules/semver/functions/inc.js +19 -0
  565. package/dist/node_modules/semver/functions/lt.js +3 -0
  566. package/dist/node_modules/semver/functions/lte.js +3 -0
  567. package/dist/node_modules/semver/functions/major.js +3 -0
  568. package/dist/node_modules/semver/functions/minor.js +3 -0
  569. package/dist/node_modules/semver/functions/neq.js +3 -0
  570. package/dist/node_modules/semver/functions/parse.js +16 -0
  571. package/dist/node_modules/semver/functions/patch.js +3 -0
  572. package/dist/node_modules/semver/functions/prerelease.js +6 -0
  573. package/dist/node_modules/semver/functions/rcompare.js +3 -0
  574. package/dist/node_modules/semver/functions/rsort.js +3 -0
  575. package/dist/node_modules/semver/functions/satisfies.js +10 -0
  576. package/dist/node_modules/semver/functions/sort.js +3 -0
  577. package/dist/node_modules/semver/functions/valid.js +6 -0
  578. package/dist/node_modules/semver/index.js +89 -0
  579. package/dist/node_modules/semver/internal/constants.js +35 -0
  580. package/dist/node_modules/semver/internal/debug.js +9 -0
  581. package/dist/node_modules/semver/internal/identifiers.js +23 -0
  582. package/dist/node_modules/semver/internal/parse-options.js +15 -0
  583. package/dist/node_modules/semver/internal/re.js +212 -0
  584. package/dist/node_modules/semver/node_modules/lru-cache/LICENSE +15 -0
  585. package/dist/node_modules/semver/node_modules/lru-cache/index.js +334 -0
  586. package/dist/node_modules/semver/node_modules/lru-cache/package.json +34 -0
  587. package/dist/node_modules/semver/package.json +87 -0
  588. package/dist/node_modules/semver/preload.js +2 -0
  589. package/dist/node_modules/semver/range.bnf +16 -0
  590. package/dist/node_modules/semver/ranges/gtr.js +4 -0
  591. package/dist/node_modules/semver/ranges/intersects.js +7 -0
  592. package/dist/node_modules/semver/ranges/ltr.js +4 -0
  593. package/dist/node_modules/semver/ranges/max-satisfying.js +25 -0
  594. package/dist/node_modules/semver/ranges/min-satisfying.js +24 -0
  595. package/dist/node_modules/semver/ranges/min-version.js +61 -0
  596. package/dist/node_modules/semver/ranges/outside.js +80 -0
  597. package/dist/node_modules/semver/ranges/simplify.js +47 -0
  598. package/dist/node_modules/semver/ranges/subset.js +247 -0
  599. package/dist/node_modules/semver/ranges/to-comparators.js +8 -0
  600. package/dist/node_modules/semver/ranges/valid.js +11 -0
  601. package/dist/node_modules/set-blocking/LICENSE.txt +14 -0
  602. package/dist/node_modules/set-blocking/index.js +7 -0
  603. package/dist/node_modules/set-blocking/package.json +42 -0
  604. package/dist/node_modules/signal-exit/LICENSE.txt +16 -0
  605. package/dist/node_modules/signal-exit/index.js +202 -0
  606. package/dist/node_modules/signal-exit/package.json +38 -0
  607. package/dist/node_modules/signal-exit/signals.js +53 -0
  608. package/dist/node_modules/smart-buffer/.prettierrc.yaml +5 -0
  609. package/dist/node_modules/smart-buffer/LICENSE +20 -0
  610. package/dist/node_modules/smart-buffer/build/smartbuffer.js +1233 -0
  611. package/dist/node_modules/smart-buffer/build/smartbuffer.js.map +1 -0
  612. package/dist/node_modules/smart-buffer/build/utils.js +108 -0
  613. package/dist/node_modules/smart-buffer/build/utils.js.map +1 -0
  614. package/dist/node_modules/smart-buffer/package.json +79 -0
  615. package/dist/node_modules/socks/.eslintrc.cjs +11 -0
  616. package/dist/node_modules/socks/.prettierrc.yaml +7 -0
  617. package/dist/node_modules/socks/LICENSE +20 -0
  618. package/dist/node_modules/socks/build/client/socksclient.js +793 -0
  619. package/dist/node_modules/socks/build/client/socksclient.js.map +1 -0
  620. package/dist/node_modules/socks/build/common/constants.js +108 -0
  621. package/dist/node_modules/socks/build/common/constants.js.map +1 -0
  622. package/dist/node_modules/socks/build/common/helpers.js +162 -0
  623. package/dist/node_modules/socks/build/common/helpers.js.map +1 -0
  624. package/dist/node_modules/socks/build/common/receivebuffer.js +43 -0
  625. package/dist/node_modules/socks/build/common/receivebuffer.js.map +1 -0
  626. package/dist/node_modules/socks/build/common/util.js +25 -0
  627. package/dist/node_modules/socks/build/common/util.js.map +1 -0
  628. package/dist/node_modules/socks/build/index.js +18 -0
  629. package/dist/node_modules/socks/build/index.js.map +1 -0
  630. package/dist/node_modules/socks/package.json +58 -0
  631. package/dist/node_modules/socks-proxy-agent/dist/index.js +197 -0
  632. package/dist/node_modules/socks-proxy-agent/dist/index.js.map +1 -0
  633. package/dist/node_modules/socks-proxy-agent/package.json +181 -0
  634. package/dist/node_modules/sprintf-js/LICENSE +24 -0
  635. package/dist/node_modules/sprintf-js/dist/angular-sprintf.min.js +3 -0
  636. package/dist/node_modules/sprintf-js/dist/angular-sprintf.min.js.map +1 -0
  637. package/dist/node_modules/sprintf-js/dist/sprintf.min.js +3 -0
  638. package/dist/node_modules/sprintf-js/dist/sprintf.min.js.map +1 -0
  639. package/dist/node_modules/sprintf-js/package.json +35 -0
  640. package/dist/node_modules/sprintf-js/src/angular-sprintf.js +24 -0
  641. package/dist/node_modules/sprintf-js/src/sprintf.js +231 -0
  642. package/dist/node_modules/ssri/lib/index.js +524 -0
  643. package/dist/node_modules/ssri/package.json +63 -0
  644. package/dist/node_modules/string-width/index.js +47 -0
  645. package/dist/node_modules/string-width/license +9 -0
  646. package/dist/node_modules/string-width/package.json +56 -0
  647. package/dist/node_modules/string_decoder/LICENSE +48 -0
  648. package/dist/node_modules/string_decoder/lib/string_decoder.js +296 -0
  649. package/dist/node_modules/string_decoder/package.json +34 -0
  650. package/dist/node_modules/strip-ansi/index.js +4 -0
  651. package/dist/node_modules/strip-ansi/license +9 -0
  652. package/dist/node_modules/strip-ansi/package.json +54 -0
  653. package/dist/node_modules/tar/LICENSE +15 -0
  654. package/dist/node_modules/tar/index.js +18 -0
  655. package/dist/node_modules/tar/lib/create.js +111 -0
  656. package/dist/node_modules/tar/lib/extract.js +113 -0
  657. package/dist/node_modules/tar/lib/get-write-flag.js +20 -0
  658. package/dist/node_modules/tar/lib/header.js +304 -0
  659. package/dist/node_modules/tar/lib/high-level-opt.js +29 -0
  660. package/dist/node_modules/tar/lib/large-numbers.js +104 -0
  661. package/dist/node_modules/tar/lib/list.js +139 -0
  662. package/dist/node_modules/tar/lib/mkdir.js +229 -0
  663. package/dist/node_modules/tar/lib/mode-fix.js +27 -0
  664. package/dist/node_modules/tar/lib/normalize-unicode.js +12 -0
  665. package/dist/node_modules/tar/lib/normalize-windows-path.js +8 -0
  666. package/dist/node_modules/tar/lib/pack.js +432 -0
  667. package/dist/node_modules/tar/lib/parse.js +552 -0
  668. package/dist/node_modules/tar/lib/path-reservations.js +156 -0
  669. package/dist/node_modules/tar/lib/pax.js +150 -0
  670. package/dist/node_modules/tar/lib/read-entry.js +107 -0
  671. package/dist/node_modules/tar/lib/replace.js +246 -0
  672. package/dist/node_modules/tar/lib/strip-absolute-path.js +24 -0
  673. package/dist/node_modules/tar/lib/strip-trailing-slashes.js +13 -0
  674. package/dist/node_modules/tar/lib/types.js +44 -0
  675. package/dist/node_modules/tar/lib/unpack.js +906 -0
  676. package/dist/node_modules/tar/lib/update.js +40 -0
  677. package/dist/node_modules/tar/lib/warn-mixin.js +24 -0
  678. package/dist/node_modules/tar/lib/winchars.js +23 -0
  679. package/dist/node_modules/tar/lib/write-entry.js +546 -0
  680. package/dist/node_modules/tar/node_modules/minipass/LICENSE +15 -0
  681. package/dist/node_modules/tar/node_modules/minipass/index.js +702 -0
  682. package/dist/node_modules/tar/node_modules/minipass/index.mjs +702 -0
  683. package/dist/node_modules/tar/node_modules/minipass/package.json +76 -0
  684. package/dist/node_modules/tar/package.json +70 -0
  685. package/dist/node_modules/unique-filename/LICENSE +5 -0
  686. package/dist/node_modules/unique-filename/lib/index.js +7 -0
  687. package/dist/node_modules/unique-filename/package.json +48 -0
  688. package/dist/node_modules/unique-slug/LICENSE +15 -0
  689. package/dist/node_modules/unique-slug/lib/index.js +11 -0
  690. package/dist/node_modules/unique-slug/package.json +44 -0
  691. package/dist/node_modules/util-deprecate/LICENSE +24 -0
  692. package/dist/node_modules/util-deprecate/browser.js +67 -0
  693. package/dist/node_modules/util-deprecate/node.js +6 -0
  694. package/dist/node_modules/util-deprecate/package.json +27 -0
  695. package/dist/node_modules/v8-compile-cache/LICENSE +21 -0
  696. package/dist/node_modules/v8-compile-cache/package.json +34 -0
  697. package/dist/node_modules/v8-compile-cache/v8-compile-cache.js +373 -0
  698. package/dist/node_modules/which/LICENSE +15 -0
  699. package/dist/node_modules/which/bin/node-which +52 -0
  700. package/dist/node_modules/which/package.json +43 -0
  701. package/dist/node_modules/which/which.js +125 -0
  702. package/dist/node_modules/wide-align/LICENSE +14 -0
  703. package/dist/node_modules/wide-align/align.js +65 -0
  704. package/dist/node_modules/wide-align/package.json +33 -0
  705. package/dist/node_modules/wrappy/LICENSE +15 -0
  706. package/dist/node_modules/wrappy/package.json +29 -0
  707. package/dist/node_modules/wrappy/wrappy.js +33 -0
  708. package/dist/node_modules/yallist/LICENSE +15 -0
  709. package/dist/node_modules/yallist/iterator.js +8 -0
  710. package/dist/node_modules/yallist/package.json +29 -0
  711. package/dist/node_modules/yallist/yallist.js +426 -0
  712. package/dist/pnpm.cjs +218856 -0
  713. package/dist/pnpmrc +4 -0
  714. package/dist/reflink.darwin-arm64-MYEHQQCP.node +0 -0
  715. package/dist/reflink.darwin-x64-CDTBYYIZ.node +0 -0
  716. package/dist/reflink.win32-arm64-msvc-IYGSKCGJ.node +0 -0
  717. package/dist/reflink.win32-x64-msvc-5E6AAURT.node +0 -0
  718. package/dist/scripts/bash.sh +30 -0
  719. package/dist/scripts/fish.sh +22 -0
  720. package/dist/scripts/zsh.sh +18 -0
  721. package/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  722. package/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  723. package/dist/worker.js +16631 -0
  724. package/package.json +162 -57
  725. package/bin/pxnpm +0 -27
  726. package/bin/pxnpm-check +0 -38
  727. package/bin/pxnpm-doc +0 -46
  728. package/bin/pxnpm-search +0 -9
  729. package/bin/pxnpm-sync +0 -175
  730. package/bin/pxnpm-update +0 -26
  731. package/bin/pxnpm-user +0 -10
  732. package/bin/pxnpm-web +0 -8
  733. package/lib/config.js +0 -138
  734. package/lib/help.js +0 -40
  735. package/lib/origin_npm.js +0 -113
  736. package/lib/parse_argv.js +0 -150
  737. package/lib/utils.js +0 -16
@@ -0,0 +1,147 @@
1
+ 'use strict'
2
+
3
+ const fs = require('graceful-fs')
4
+ const log = require('npmlog')
5
+ const path = require('path')
6
+
7
+ function parseConfigGypi (config) {
8
+ // translated from tools/js2c.py of Node.js
9
+ // 1. string comments
10
+ config = config.replace(/#.*/g, '')
11
+ // 2. join multiline strings
12
+ config = config.replace(/'$\s+'/mg, '')
13
+ // 3. normalize string literals from ' into "
14
+ config = config.replace(/'/g, '"')
15
+ return JSON.parse(config)
16
+ }
17
+
18
+ async function getBaseConfigGypi ({ gyp, nodeDir }) {
19
+ // try reading $nodeDir/include/node/config.gypi first when:
20
+ // 1. --dist-url or --nodedir is specified
21
+ // 2. and --force-process-config is not specified
22
+ const useCustomHeaders = gyp.opts.nodedir || gyp.opts.disturl || gyp.opts['dist-url']
23
+ const shouldReadConfigGypi = useCustomHeaders && !gyp.opts['force-process-config']
24
+ if (shouldReadConfigGypi && nodeDir) {
25
+ try {
26
+ const baseConfigGypiPath = path.resolve(nodeDir, 'include/node/config.gypi')
27
+ const baseConfigGypi = await fs.promises.readFile(baseConfigGypiPath)
28
+ return parseConfigGypi(baseConfigGypi.toString())
29
+ } catch (err) {
30
+ log.warn('read config.gypi', err.message)
31
+ }
32
+ }
33
+
34
+ // fallback to process.config if it is invalid
35
+ return JSON.parse(JSON.stringify(process.config))
36
+ }
37
+
38
+ async function getCurrentConfigGypi ({ gyp, nodeDir, vsInfo }) {
39
+ const config = await getBaseConfigGypi({ gyp, nodeDir })
40
+ if (!config.target_defaults) {
41
+ config.target_defaults = {}
42
+ }
43
+ if (!config.variables) {
44
+ config.variables = {}
45
+ }
46
+
47
+ const defaults = config.target_defaults
48
+ const variables = config.variables
49
+
50
+ // don't inherit the "defaults" from the base config.gypi.
51
+ // doing so could cause problems in cases where the `node` executable was
52
+ // compiled on a different machine (with different lib/include paths) than
53
+ // the machine where the addon is being built to
54
+ defaults.cflags = []
55
+ defaults.defines = []
56
+ defaults.include_dirs = []
57
+ defaults.libraries = []
58
+
59
+ // set the default_configuration prop
60
+ if ('debug' in gyp.opts) {
61
+ defaults.default_configuration = gyp.opts.debug ? 'Debug' : 'Release'
62
+ }
63
+
64
+ if (!defaults.default_configuration) {
65
+ defaults.default_configuration = 'Release'
66
+ }
67
+
68
+ // set the target_arch variable
69
+ variables.target_arch = gyp.opts.arch || process.arch || 'ia32'
70
+ if (variables.target_arch === 'arm64') {
71
+ defaults.msvs_configuration_platform = 'ARM64'
72
+ defaults.xcode_configuration_platform = 'arm64'
73
+ }
74
+
75
+ // set the node development directory
76
+ variables.nodedir = nodeDir
77
+
78
+ // disable -T "thin" static archives by default
79
+ variables.standalone_static_library = gyp.opts.thin ? 0 : 1
80
+
81
+ if (process.platform === 'win32') {
82
+ defaults.msbuild_toolset = vsInfo.toolset
83
+ if (vsInfo.sdk) {
84
+ defaults.msvs_windows_target_platform_version = vsInfo.sdk
85
+ }
86
+ if (variables.target_arch === 'arm64') {
87
+ if (vsInfo.versionMajor > 15 ||
88
+ (vsInfo.versionMajor === 15 && vsInfo.versionMajor >= 9)) {
89
+ defaults.msvs_enable_marmasm = 1
90
+ } else {
91
+ log.warn('Compiling ARM64 assembly is only available in\n' +
92
+ 'Visual Studio 2017 version 15.9 and above')
93
+ }
94
+ }
95
+ variables.msbuild_path = vsInfo.msBuild
96
+ }
97
+
98
+ // loop through the rest of the opts and add the unknown ones as variables.
99
+ // this allows for module-specific configure flags like:
100
+ //
101
+ // $ node-gyp configure --shared-libxml2
102
+ Object.keys(gyp.opts).forEach(function (opt) {
103
+ if (opt === 'argv') {
104
+ return
105
+ }
106
+ if (opt in gyp.configDefs) {
107
+ return
108
+ }
109
+ variables[opt.replace(/-/g, '_')] = gyp.opts[opt]
110
+ })
111
+
112
+ return config
113
+ }
114
+
115
+ async function createConfigGypi ({ gyp, buildDir, nodeDir, vsInfo }) {
116
+ const configFilename = 'config.gypi'
117
+ const configPath = path.resolve(buildDir, configFilename)
118
+
119
+ log.verbose('build/' + configFilename, 'creating config file')
120
+
121
+ const config = await getCurrentConfigGypi({ gyp, nodeDir, vsInfo })
122
+
123
+ // ensures that any boolean values in config.gypi get stringified
124
+ function boolsToString (k, v) {
125
+ if (typeof v === 'boolean') {
126
+ return String(v)
127
+ }
128
+ return v
129
+ }
130
+
131
+ log.silly('build/' + configFilename, config)
132
+
133
+ // now write out the config.gypi file to the build/ dir
134
+ const prefix = '# Do not edit. File was generated by node-gyp\'s "configure" step'
135
+
136
+ const json = JSON.stringify(config, boolsToString, 2)
137
+ log.verbose('build/' + configFilename, 'writing out config file: %s', configPath)
138
+ await fs.promises.writeFile(configPath, [prefix, json, ''].join('\n'))
139
+
140
+ return configPath
141
+ }
142
+
143
+ module.exports = createConfigGypi
144
+ module.exports.test = {
145
+ parseConfigGypi: parseConfigGypi,
146
+ getCurrentConfigGypi: getCurrentConfigGypi
147
+ }
@@ -0,0 +1,63 @@
1
+ 'use strict'
2
+
3
+ const path = require('path')
4
+ const log = require('npmlog')
5
+
6
+ function findNodeDirectory (scriptLocation, processObj) {
7
+ // set dirname and process if not passed in
8
+ // this facilitates regression tests
9
+ if (scriptLocation === undefined) {
10
+ scriptLocation = __dirname
11
+ }
12
+ if (processObj === undefined) {
13
+ processObj = process
14
+ }
15
+
16
+ // Have a look to see what is above us, to try and work out where we are
17
+ var npmParentDirectory = path.join(scriptLocation, '../../../..')
18
+ log.verbose('node-gyp root', 'npm_parent_directory is ' +
19
+ path.basename(npmParentDirectory))
20
+ var nodeRootDir = ''
21
+
22
+ log.verbose('node-gyp root', 'Finding node root directory')
23
+ if (path.basename(npmParentDirectory) === 'deps') {
24
+ // We are in a build directory where this script lives in
25
+ // deps/npm/node_modules/node-gyp/lib
26
+ nodeRootDir = path.join(npmParentDirectory, '..')
27
+ log.verbose('node-gyp root', 'in build directory, root = ' +
28
+ nodeRootDir)
29
+ } else if (path.basename(npmParentDirectory) === 'node_modules') {
30
+ // We are in a node install directory where this script lives in
31
+ // lib/node_modules/npm/node_modules/node-gyp/lib or
32
+ // node_modules/npm/node_modules/node-gyp/lib depending on the
33
+ // platform
34
+ if (processObj.platform === 'win32') {
35
+ nodeRootDir = path.join(npmParentDirectory, '..')
36
+ } else {
37
+ nodeRootDir = path.join(npmParentDirectory, '../..')
38
+ }
39
+ log.verbose('node-gyp root', 'in install directory, root = ' +
40
+ nodeRootDir)
41
+ } else {
42
+ // We don't know where we are, try working it out from the location
43
+ // of the node binary
44
+ var nodeDir = path.dirname(processObj.execPath)
45
+ var directoryUp = path.basename(nodeDir)
46
+ if (directoryUp === 'bin') {
47
+ nodeRootDir = path.join(nodeDir, '..')
48
+ } else if (directoryUp === 'Release' || directoryUp === 'Debug') {
49
+ // If we are a recently built node, and the directory structure
50
+ // is that of a repository. If we are on Windows then we only need
51
+ // to go one level up, everything else, two
52
+ if (processObj.platform === 'win32') {
53
+ nodeRootDir = path.join(nodeDir, '..')
54
+ } else {
55
+ nodeRootDir = path.join(nodeDir, '../..')
56
+ }
57
+ }
58
+ // Else return the default blank, "".
59
+ }
60
+ return nodeRootDir
61
+ }
62
+
63
+ module.exports = findNodeDirectory
@@ -0,0 +1,344 @@
1
+ 'use strict'
2
+
3
+ const log = require('npmlog')
4
+ const semver = require('semver')
5
+ const cp = require('child_process')
6
+ const extend = require('util')._extend // eslint-disable-line
7
+ const win = process.platform === 'win32'
8
+ const logWithPrefix = require('./util').logWithPrefix
9
+
10
+ const systemDrive = process.env.SystemDrive || 'C:'
11
+ const username = process.env.USERNAME || process.env.USER || getOsUserInfo()
12
+ const localAppData = process.env.LOCALAPPDATA || `${systemDrive}\\${username}\\AppData\\Local`
13
+ const foundLocalAppData = process.env.LOCALAPPDATA || username
14
+ const programFiles = process.env.ProgramW6432 || process.env.ProgramFiles || `${systemDrive}\\Program Files`
15
+ const programFilesX86 = process.env['ProgramFiles(x86)'] || `${programFiles} (x86)`
16
+
17
+ const winDefaultLocationsArray = []
18
+ for (const majorMinor of ['39', '38', '37', '36']) {
19
+ if (foundLocalAppData) {
20
+ winDefaultLocationsArray.push(
21
+ `${localAppData}\\Programs\\Python\\Python${majorMinor}\\python.exe`,
22
+ `${programFiles}\\Python${majorMinor}\\python.exe`,
23
+ `${localAppData}\\Programs\\Python\\Python${majorMinor}-32\\python.exe`,
24
+ `${programFiles}\\Python${majorMinor}-32\\python.exe`,
25
+ `${programFilesX86}\\Python${majorMinor}-32\\python.exe`
26
+ )
27
+ } else {
28
+ winDefaultLocationsArray.push(
29
+ `${programFiles}\\Python${majorMinor}\\python.exe`,
30
+ `${programFiles}\\Python${majorMinor}-32\\python.exe`,
31
+ `${programFilesX86}\\Python${majorMinor}-32\\python.exe`
32
+ )
33
+ }
34
+ }
35
+
36
+ function getOsUserInfo () {
37
+ try {
38
+ return require('os').userInfo().username
39
+ } catch (e) {}
40
+ }
41
+
42
+ function PythonFinder (configPython, callback) {
43
+ this.callback = callback
44
+ this.configPython = configPython
45
+ this.errorLog = []
46
+ }
47
+
48
+ PythonFinder.prototype = {
49
+ log: logWithPrefix(log, 'find Python'),
50
+ argsExecutable: ['-c', 'import sys; print(sys.executable);'],
51
+ argsVersion: ['-c', 'import sys; print("%s.%s.%s" % sys.version_info[:3]);'],
52
+ semverRange: '>=3.6.0',
53
+
54
+ // These can be overridden for testing:
55
+ execFile: cp.execFile,
56
+ env: process.env,
57
+ win: win,
58
+ pyLauncher: 'py.exe',
59
+ winDefaultLocations: winDefaultLocationsArray,
60
+
61
+ // Logs a message at verbose level, but also saves it to be displayed later
62
+ // at error level if an error occurs. This should help diagnose the problem.
63
+ addLog: function addLog (message) {
64
+ this.log.verbose(message)
65
+ this.errorLog.push(message)
66
+ },
67
+
68
+ // Find Python by trying a sequence of possibilities.
69
+ // Ignore errors, keep trying until Python is found.
70
+ findPython: function findPython () {
71
+ const SKIP = 0; const FAIL = 1
72
+ var toCheck = getChecks.apply(this)
73
+
74
+ function getChecks () {
75
+ if (this.env.NODE_GYP_FORCE_PYTHON) {
76
+ return [{
77
+ before: () => {
78
+ this.addLog(
79
+ 'checking Python explicitly set from NODE_GYP_FORCE_PYTHON')
80
+ this.addLog('- process.env.NODE_GYP_FORCE_PYTHON is ' +
81
+ `"${this.env.NODE_GYP_FORCE_PYTHON}"`)
82
+ },
83
+ check: this.checkCommand,
84
+ arg: this.env.NODE_GYP_FORCE_PYTHON
85
+ }]
86
+ }
87
+
88
+ var checks = [
89
+ {
90
+ before: () => {
91
+ if (!this.configPython) {
92
+ this.addLog(
93
+ 'Python is not set from command line or npm configuration')
94
+ return SKIP
95
+ }
96
+ this.addLog('checking Python explicitly set from command line or ' +
97
+ 'npm configuration')
98
+ this.addLog('- "--python=" or "npm config get python" is ' +
99
+ `"${this.configPython}"`)
100
+ },
101
+ check: this.checkCommand,
102
+ arg: this.configPython
103
+ },
104
+ {
105
+ before: () => {
106
+ if (!this.env.PYTHON) {
107
+ this.addLog('Python is not set from environment variable ' +
108
+ 'PYTHON')
109
+ return SKIP
110
+ }
111
+ this.addLog('checking Python explicitly set from environment ' +
112
+ 'variable PYTHON')
113
+ this.addLog(`- process.env.PYTHON is "${this.env.PYTHON}"`)
114
+ },
115
+ check: this.checkCommand,
116
+ arg: this.env.PYTHON
117
+ },
118
+ {
119
+ before: () => { this.addLog('checking if "python3" can be used') },
120
+ check: this.checkCommand,
121
+ arg: 'python3'
122
+ },
123
+ {
124
+ before: () => { this.addLog('checking if "python" can be used') },
125
+ check: this.checkCommand,
126
+ arg: 'python'
127
+ }
128
+ ]
129
+
130
+ if (this.win) {
131
+ for (var i = 0; i < this.winDefaultLocations.length; ++i) {
132
+ const location = this.winDefaultLocations[i]
133
+ checks.push({
134
+ before: () => {
135
+ this.addLog('checking if Python is ' +
136
+ `${location}`)
137
+ },
138
+ check: this.checkExecPath,
139
+ arg: location
140
+ })
141
+ }
142
+ checks.push({
143
+ before: () => {
144
+ this.addLog(
145
+ 'checking if the py launcher can be used to find Python 3')
146
+ },
147
+ check: this.checkPyLauncher
148
+ })
149
+ }
150
+
151
+ return checks
152
+ }
153
+
154
+ function runChecks (err) {
155
+ this.log.silly('runChecks: err = %j', (err && err.stack) || err)
156
+
157
+ const check = toCheck.shift()
158
+ if (!check) {
159
+ return this.fail()
160
+ }
161
+
162
+ const before = check.before.apply(this)
163
+ if (before === SKIP) {
164
+ return runChecks.apply(this)
165
+ }
166
+ if (before === FAIL) {
167
+ return this.fail()
168
+ }
169
+
170
+ const args = [runChecks.bind(this)]
171
+ if (check.arg) {
172
+ args.unshift(check.arg)
173
+ }
174
+ check.check.apply(this, args)
175
+ }
176
+
177
+ runChecks.apply(this)
178
+ },
179
+
180
+ // Check if command is a valid Python to use.
181
+ // Will exit the Python finder on success.
182
+ // If on Windows, run in a CMD shell to support BAT/CMD launchers.
183
+ checkCommand: function checkCommand (command, errorCallback) {
184
+ var exec = command
185
+ var args = this.argsExecutable
186
+ var shell = false
187
+ if (this.win) {
188
+ // Arguments have to be manually quoted
189
+ exec = `"${exec}"`
190
+ args = args.map(a => `"${a}"`)
191
+ shell = true
192
+ }
193
+
194
+ this.log.verbose(`- executing "${command}" to get executable path`)
195
+ this.run(exec, args, shell, function (err, execPath) {
196
+ // Possible outcomes:
197
+ // - Error: not in PATH, not executable or execution fails
198
+ // - Gibberish: the next command to check version will fail
199
+ // - Absolute path to executable
200
+ if (err) {
201
+ this.addLog(`- "${command}" is not in PATH or produced an error`)
202
+ return errorCallback(err)
203
+ }
204
+ this.addLog(`- executable path is "${execPath}"`)
205
+ this.checkExecPath(execPath, errorCallback)
206
+ }.bind(this))
207
+ },
208
+
209
+ // Check if the py launcher can find a valid Python to use.
210
+ // Will exit the Python finder on success.
211
+ // Distributions of Python on Windows by default install with the "py.exe"
212
+ // Python launcher which is more likely to exist than the Python executable
213
+ // being in the $PATH.
214
+ // Because the Python launcher supports Python 2 and Python 3, we should
215
+ // explicitly request a Python 3 version. This is done by supplying "-3" as
216
+ // the first command line argument. Since "py.exe -3" would be an invalid
217
+ // executable for "execFile", we have to use the launcher to figure out
218
+ // where the actual "python.exe" executable is located.
219
+ checkPyLauncher: function checkPyLauncher (errorCallback) {
220
+ this.log.verbose(
221
+ `- executing "${this.pyLauncher}" to get Python 3 executable path`)
222
+ this.run(this.pyLauncher, ['-3', ...this.argsExecutable], false,
223
+ function (err, execPath) {
224
+ // Possible outcomes: same as checkCommand
225
+ if (err) {
226
+ this.addLog(
227
+ `- "${this.pyLauncher}" is not in PATH or produced an error`)
228
+ return errorCallback(err)
229
+ }
230
+ this.addLog(`- executable path is "${execPath}"`)
231
+ this.checkExecPath(execPath, errorCallback)
232
+ }.bind(this))
233
+ },
234
+
235
+ // Check if a Python executable is the correct version to use.
236
+ // Will exit the Python finder on success.
237
+ checkExecPath: function checkExecPath (execPath, errorCallback) {
238
+ this.log.verbose(`- executing "${execPath}" to get version`)
239
+ this.run(execPath, this.argsVersion, false, function (err, version) {
240
+ // Possible outcomes:
241
+ // - Error: executable can not be run (likely meaning the command wasn't
242
+ // a Python executable and the previous command produced gibberish)
243
+ // - Gibberish: somehow the last command produced an executable path,
244
+ // this will fail when verifying the version
245
+ // - Version of the Python executable
246
+ if (err) {
247
+ this.addLog(`- "${execPath}" could not be run`)
248
+ return errorCallback(err)
249
+ }
250
+ this.addLog(`- version is "${version}"`)
251
+
252
+ const range = new semver.Range(this.semverRange)
253
+ var valid = false
254
+ try {
255
+ valid = range.test(version)
256
+ } catch (err) {
257
+ this.log.silly('range.test() threw:\n%s', err.stack)
258
+ this.addLog(`- "${execPath}" does not have a valid version`)
259
+ this.addLog('- is it a Python executable?')
260
+ return errorCallback(err)
261
+ }
262
+
263
+ if (!valid) {
264
+ this.addLog(`- version is ${version} - should be ${this.semverRange}`)
265
+ this.addLog('- THIS VERSION OF PYTHON IS NOT SUPPORTED')
266
+ return errorCallback(new Error(
267
+ `Found unsupported Python version ${version}`))
268
+ }
269
+ this.succeed(execPath, version)
270
+ }.bind(this))
271
+ },
272
+
273
+ // Run an executable or shell command, trimming the output.
274
+ run: function run (exec, args, shell, callback) {
275
+ var env = extend({}, this.env)
276
+ env.TERM = 'dumb'
277
+ const opts = { env: env, shell: shell }
278
+
279
+ this.log.silly('execFile: exec = %j', exec)
280
+ this.log.silly('execFile: args = %j', args)
281
+ this.log.silly('execFile: opts = %j', opts)
282
+ try {
283
+ this.execFile(exec, args, opts, execFileCallback.bind(this))
284
+ } catch (err) {
285
+ this.log.silly('execFile: threw:\n%s', err.stack)
286
+ return callback(err)
287
+ }
288
+
289
+ function execFileCallback (err, stdout, stderr) {
290
+ this.log.silly('execFile result: err = %j', (err && err.stack) || err)
291
+ this.log.silly('execFile result: stdout = %j', stdout)
292
+ this.log.silly('execFile result: stderr = %j', stderr)
293
+ if (err) {
294
+ return callback(err)
295
+ }
296
+ const execPath = stdout.trim()
297
+ callback(null, execPath)
298
+ }
299
+ },
300
+
301
+ succeed: function succeed (execPath, version) {
302
+ this.log.info(`using Python version ${version} found at "${execPath}"`)
303
+ process.nextTick(this.callback.bind(null, null, execPath))
304
+ },
305
+
306
+ fail: function fail () {
307
+ const errorLog = this.errorLog.join('\n')
308
+
309
+ const pathExample = this.win ? 'C:\\Path\\To\\python.exe'
310
+ : '/path/to/pythonexecutable'
311
+ // For Windows 80 col console, use up to the column before the one marked
312
+ // with X (total 79 chars including logger prefix, 58 chars usable here):
313
+ // X
314
+ const info = [
315
+ '**********************************************************',
316
+ 'You need to install the latest version of Python.',
317
+ 'Node-gyp should be able to find and use Python. If not,',
318
+ 'you can try one of the following options:',
319
+ `- Use the switch --python="${pathExample}"`,
320
+ ' (accepted by both node-gyp and npm)',
321
+ '- Set the environment variable PYTHON',
322
+ '- Set the npm configuration variable python:',
323
+ ` npm config set python "${pathExample}"`,
324
+ 'For more information consult the documentation at:',
325
+ 'https://github.com/nodejs/node-gyp#installation',
326
+ '**********************************************************'
327
+ ].join('\n')
328
+
329
+ this.log.error(`\n${errorLog}\n\n${info}\n`)
330
+ process.nextTick(this.callback.bind(null, new Error(
331
+ 'Could not find any Python installation to use')))
332
+ }
333
+ }
334
+
335
+ function findPython (configPython, callback) {
336
+ var finder = new PythonFinder(configPython, callback)
337
+ finder.findPython()
338
+ }
339
+
340
+ module.exports = findPython
341
+ module.exports.test = {
342
+ PythonFinder: PythonFinder,
343
+ findPython: findPython
344
+ }