karajan-code 3.4.1 → 3.4.2

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 (699) hide show
  1. package/README.md +1 -1
  2. package/node_modules/@karajan/core/package.json +12 -1
  3. package/package.json +4 -2
  4. package/scripts/verify-pack.mjs +108 -0
  5. package/node_modules/@sec-ant/readable-stream/LICENSE +0 -21
  6. package/node_modules/@sec-ant/readable-stream/README.md +0 -230
  7. package/node_modules/@sec-ant/readable-stream/dist/core/asyncIterablePrototype.d.ts +0 -1
  8. package/node_modules/@sec-ant/readable-stream/dist/core/asyncIterator.d.ts +0 -27
  9. package/node_modules/@sec-ant/readable-stream/dist/core/fromAnyIterable.d.ts +0 -6
  10. package/node_modules/@sec-ant/readable-stream/dist/index/asyncIterator.d.ts +0 -2
  11. package/node_modules/@sec-ant/readable-stream/dist/index/asyncIterator.js +0 -5
  12. package/node_modules/@sec-ant/readable-stream/dist/index/fromAnyIterable.d.ts +0 -2
  13. package/node_modules/@sec-ant/readable-stream/dist/index/fromAnyIterable.js +0 -5
  14. package/node_modules/@sec-ant/readable-stream/dist/index/index.d.ts +0 -2
  15. package/node_modules/@sec-ant/readable-stream/dist/index/index.js +0 -8
  16. package/node_modules/@sec-ant/readable-stream/dist/polyfill/asyncIterator.d.ts +0 -1
  17. package/node_modules/@sec-ant/readable-stream/dist/polyfill/asyncIterator.js +0 -3
  18. package/node_modules/@sec-ant/readable-stream/dist/polyfill/fromAnyIterable.d.ts +0 -1
  19. package/node_modules/@sec-ant/readable-stream/dist/polyfill/fromAnyIterable.js +0 -2
  20. package/node_modules/@sec-ant/readable-stream/dist/polyfill/index.d.ts +0 -2
  21. package/node_modules/@sec-ant/readable-stream/dist/polyfill/index.js +0 -4
  22. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.d.ts +0 -1
  23. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js +0 -89
  24. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.d.ts +0 -1
  25. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js +0 -34
  26. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.d.ts +0 -2
  27. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.js +0 -6
  28. package/node_modules/@sec-ant/readable-stream/dist/types/async-iterator.d.ts +0 -11
  29. package/node_modules/@sec-ant/readable-stream/package.json +0 -96
  30. package/node_modules/@sindresorhus/merge-streams/index.d.ts +0 -44
  31. package/node_modules/@sindresorhus/merge-streams/index.js +0 -265
  32. package/node_modules/@sindresorhus/merge-streams/license +0 -9
  33. package/node_modules/@sindresorhus/merge-streams/package.json +0 -49
  34. package/node_modules/@sindresorhus/merge-streams/readme.md +0 -53
  35. package/node_modules/base64-js/LICENSE +0 -21
  36. package/node_modules/base64-js/README.md +0 -34
  37. package/node_modules/base64-js/base64js.min.js +0 -1
  38. package/node_modules/base64-js/index.d.ts +0 -3
  39. package/node_modules/base64-js/index.js +0 -150
  40. package/node_modules/base64-js/package.json +0 -47
  41. package/node_modules/better-sqlite3/LICENSE +0 -21
  42. package/node_modules/better-sqlite3/README.md +0 -99
  43. package/node_modules/better-sqlite3/binding.gyp +0 -38
  44. package/node_modules/better-sqlite3/deps/common.gypi +0 -68
  45. package/node_modules/better-sqlite3/deps/copy.js +0 -31
  46. package/node_modules/better-sqlite3/deps/defines.gypi +0 -42
  47. package/node_modules/better-sqlite3/deps/download.sh +0 -123
  48. package/node_modules/better-sqlite3/deps/patches/1208.patch +0 -15
  49. package/node_modules/better-sqlite3/deps/sqlite3/sqlite3.c +0 -268879
  50. package/node_modules/better-sqlite3/deps/sqlite3/sqlite3.h +0 -14335
  51. package/node_modules/better-sqlite3/deps/sqlite3/sqlite3ext.h +0 -739
  52. package/node_modules/better-sqlite3/deps/sqlite3.gyp +0 -80
  53. package/node_modules/better-sqlite3/deps/test_extension.c +0 -21
  54. package/node_modules/better-sqlite3/lib/database.js +0 -90
  55. package/node_modules/better-sqlite3/lib/index.js +0 -3
  56. package/node_modules/better-sqlite3/lib/methods/aggregate.js +0 -43
  57. package/node_modules/better-sqlite3/lib/methods/backup.js +0 -67
  58. package/node_modules/better-sqlite3/lib/methods/function.js +0 -31
  59. package/node_modules/better-sqlite3/lib/methods/inspect.js +0 -7
  60. package/node_modules/better-sqlite3/lib/methods/pragma.js +0 -12
  61. package/node_modules/better-sqlite3/lib/methods/serialize.js +0 -16
  62. package/node_modules/better-sqlite3/lib/methods/table.js +0 -189
  63. package/node_modules/better-sqlite3/lib/methods/transaction.js +0 -78
  64. package/node_modules/better-sqlite3/lib/methods/wrappers.js +0 -54
  65. package/node_modules/better-sqlite3/lib/sqlite-error.js +0 -20
  66. package/node_modules/better-sqlite3/lib/util.js +0 -12
  67. package/node_modules/better-sqlite3/package.json +0 -59
  68. package/node_modules/better-sqlite3/src/addon.cpp +0 -47
  69. package/node_modules/better-sqlite3/src/better_sqlite3.cpp +0 -74
  70. package/node_modules/better-sqlite3/src/objects/backup.cpp +0 -120
  71. package/node_modules/better-sqlite3/src/objects/backup.hpp +0 -36
  72. package/node_modules/better-sqlite3/src/objects/database.cpp +0 -417
  73. package/node_modules/better-sqlite3/src/objects/database.hpp +0 -103
  74. package/node_modules/better-sqlite3/src/objects/statement-iterator.cpp +0 -113
  75. package/node_modules/better-sqlite3/src/objects/statement-iterator.hpp +0 -50
  76. package/node_modules/better-sqlite3/src/objects/statement.cpp +0 -383
  77. package/node_modules/better-sqlite3/src/objects/statement.hpp +0 -58
  78. package/node_modules/better-sqlite3/src/util/bind-map.cpp +0 -73
  79. package/node_modules/better-sqlite3/src/util/binder.cpp +0 -193
  80. package/node_modules/better-sqlite3/src/util/constants.cpp +0 -172
  81. package/node_modules/better-sqlite3/src/util/custom-aggregate.cpp +0 -121
  82. package/node_modules/better-sqlite3/src/util/custom-function.cpp +0 -59
  83. package/node_modules/better-sqlite3/src/util/custom-table.cpp +0 -409
  84. package/node_modules/better-sqlite3/src/util/data-converter.cpp +0 -17
  85. package/node_modules/better-sqlite3/src/util/data.cpp +0 -194
  86. package/node_modules/better-sqlite3/src/util/helpers.cpp +0 -109
  87. package/node_modules/better-sqlite3/src/util/macros.cpp +0 -83
  88. package/node_modules/better-sqlite3/src/util/query-macros.cpp +0 -71
  89. package/node_modules/better-sqlite3/src/util/row-builder.cpp +0 -49
  90. package/node_modules/bindings/LICENSE.md +0 -22
  91. package/node_modules/bindings/README.md +0 -98
  92. package/node_modules/bindings/bindings.js +0 -221
  93. package/node_modules/bindings/package.json +0 -28
  94. package/node_modules/bl/.travis.yml +0 -17
  95. package/node_modules/bl/BufferList.js +0 -396
  96. package/node_modules/bl/LICENSE.md +0 -13
  97. package/node_modules/bl/README.md +0 -247
  98. package/node_modules/bl/bl.js +0 -84
  99. package/node_modules/bl/package.json +0 -37
  100. package/node_modules/bl/test/convert.js +0 -21
  101. package/node_modules/bl/test/indexOf.js +0 -492
  102. package/node_modules/bl/test/isBufferList.js +0 -32
  103. package/node_modules/bl/test/test.js +0 -869
  104. package/node_modules/buffer/AUTHORS.md +0 -70
  105. package/node_modules/buffer/LICENSE +0 -21
  106. package/node_modules/buffer/README.md +0 -410
  107. package/node_modules/buffer/index.d.ts +0 -186
  108. package/node_modules/buffer/index.js +0 -1817
  109. package/node_modules/buffer/package.json +0 -96
  110. package/node_modules/chownr/LICENSE +0 -15
  111. package/node_modules/chownr/README.md +0 -3
  112. package/node_modules/chownr/chownr.js +0 -167
  113. package/node_modules/chownr/package.json +0 -29
  114. package/node_modules/cross-spawn/LICENSE +0 -21
  115. package/node_modules/cross-spawn/README.md +0 -89
  116. package/node_modules/cross-spawn/index.js +0 -39
  117. package/node_modules/cross-spawn/lib/enoent.js +0 -59
  118. package/node_modules/cross-spawn/lib/parse.js +0 -91
  119. package/node_modules/cross-spawn/lib/util/escape.js +0 -47
  120. package/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  121. package/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  122. package/node_modules/cross-spawn/package.json +0 -73
  123. package/node_modules/decompress-response/index.d.ts +0 -22
  124. package/node_modules/decompress-response/index.js +0 -58
  125. package/node_modules/decompress-response/license +0 -9
  126. package/node_modules/decompress-response/package.json +0 -56
  127. package/node_modules/decompress-response/readme.md +0 -48
  128. package/node_modules/deep-extend/LICENSE +0 -20
  129. package/node_modules/deep-extend/README.md +0 -91
  130. package/node_modules/deep-extend/index.js +0 -1
  131. package/node_modules/deep-extend/lib/deep-extend.js +0 -150
  132. package/node_modules/deep-extend/package.json +0 -62
  133. package/node_modules/detect-libc/LICENSE +0 -201
  134. package/node_modules/detect-libc/README.md +0 -163
  135. package/node_modules/detect-libc/index.d.ts +0 -14
  136. package/node_modules/detect-libc/lib/detect-libc.js +0 -313
  137. package/node_modules/detect-libc/lib/elf.js +0 -39
  138. package/node_modules/detect-libc/lib/filesystem.js +0 -51
  139. package/node_modules/detect-libc/lib/process.js +0 -24
  140. package/node_modules/detect-libc/package.json +0 -44
  141. package/node_modules/end-of-stream/LICENSE +0 -21
  142. package/node_modules/end-of-stream/README.md +0 -54
  143. package/node_modules/end-of-stream/index.js +0 -96
  144. package/node_modules/end-of-stream/package.json +0 -37
  145. package/node_modules/execa/index.d.ts +0 -27
  146. package/node_modules/execa/index.js +0 -28
  147. package/node_modules/execa/lib/arguments/command.js +0 -20
  148. package/node_modules/execa/lib/arguments/cwd.js +0 -39
  149. package/node_modules/execa/lib/arguments/encoding-option.js +0 -50
  150. package/node_modules/execa/lib/arguments/escape.js +0 -88
  151. package/node_modules/execa/lib/arguments/fd-options.js +0 -108
  152. package/node_modules/execa/lib/arguments/file-url.js +0 -25
  153. package/node_modules/execa/lib/arguments/options.js +0 -96
  154. package/node_modules/execa/lib/arguments/shell.js +0 -11
  155. package/node_modules/execa/lib/arguments/specific.js +0 -111
  156. package/node_modules/execa/lib/convert/add.js +0 -15
  157. package/node_modules/execa/lib/convert/concurrent.js +0 -33
  158. package/node_modules/execa/lib/convert/duplex.js +0 -69
  159. package/node_modules/execa/lib/convert/iterable.js +0 -34
  160. package/node_modules/execa/lib/convert/readable.js +0 -113
  161. package/node_modules/execa/lib/convert/shared.js +0 -46
  162. package/node_modules/execa/lib/convert/writable.js +0 -90
  163. package/node_modules/execa/lib/io/contents.js +0 -116
  164. package/node_modules/execa/lib/io/input-sync.js +0 -44
  165. package/node_modules/execa/lib/io/iterate.js +0 -110
  166. package/node_modules/execa/lib/io/max-buffer.js +0 -89
  167. package/node_modules/execa/lib/io/output-async.js +0 -80
  168. package/node_modules/execa/lib/io/output-sync.js +0 -135
  169. package/node_modules/execa/lib/io/pipeline.js +0 -48
  170. package/node_modules/execa/lib/io/strip-newline.js +0 -12
  171. package/node_modules/execa/lib/ipc/array.js +0 -4
  172. package/node_modules/execa/lib/ipc/buffer-messages.js +0 -47
  173. package/node_modules/execa/lib/ipc/forward.js +0 -56
  174. package/node_modules/execa/lib/ipc/get-each.js +0 -89
  175. package/node_modules/execa/lib/ipc/get-one.js +0 -69
  176. package/node_modules/execa/lib/ipc/graceful.js +0 -72
  177. package/node_modules/execa/lib/ipc/incoming.js +0 -79
  178. package/node_modules/execa/lib/ipc/ipc-input.js +0 -44
  179. package/node_modules/execa/lib/ipc/methods.js +0 -49
  180. package/node_modules/execa/lib/ipc/outgoing.js +0 -47
  181. package/node_modules/execa/lib/ipc/reference.js +0 -44
  182. package/node_modules/execa/lib/ipc/send.js +0 -91
  183. package/node_modules/execa/lib/ipc/strict.js +0 -113
  184. package/node_modules/execa/lib/ipc/validation.js +0 -111
  185. package/node_modules/execa/lib/methods/bind.js +0 -23
  186. package/node_modules/execa/lib/methods/command.js +0 -43
  187. package/node_modules/execa/lib/methods/create.js +0 -65
  188. package/node_modules/execa/lib/methods/main-async.js +0 -194
  189. package/node_modules/execa/lib/methods/main-sync.js +0 -163
  190. package/node_modules/execa/lib/methods/node.js +0 -51
  191. package/node_modules/execa/lib/methods/parameters.js +0 -31
  192. package/node_modules/execa/lib/methods/promise.js +0 -15
  193. package/node_modules/execa/lib/methods/script.js +0 -22
  194. package/node_modules/execa/lib/methods/template.js +0 -153
  195. package/node_modules/execa/lib/pipe/abort.js +0 -20
  196. package/node_modules/execa/lib/pipe/pipe-arguments.js +0 -91
  197. package/node_modules/execa/lib/pipe/sequence.js +0 -24
  198. package/node_modules/execa/lib/pipe/setup.js +0 -72
  199. package/node_modules/execa/lib/pipe/streaming.js +0 -51
  200. package/node_modules/execa/lib/pipe/throw.js +0 -58
  201. package/node_modules/execa/lib/resolve/all-async.js +0 -46
  202. package/node_modules/execa/lib/resolve/all-sync.js +0 -33
  203. package/node_modules/execa/lib/resolve/exit-async.js +0 -54
  204. package/node_modules/execa/lib/resolve/exit-sync.js +0 -25
  205. package/node_modules/execa/lib/resolve/stdio.js +0 -47
  206. package/node_modules/execa/lib/resolve/wait-stream.js +0 -96
  207. package/node_modules/execa/lib/resolve/wait-subprocess.js +0 -146
  208. package/node_modules/execa/lib/return/duration.js +0 -8
  209. package/node_modules/execa/lib/return/early-error.js +0 -60
  210. package/node_modules/execa/lib/return/final-error.js +0 -40
  211. package/node_modules/execa/lib/return/message.js +0 -157
  212. package/node_modules/execa/lib/return/reject.js +0 -13
  213. package/node_modules/execa/lib/return/result.js +0 -186
  214. package/node_modules/execa/lib/stdio/direction.js +0 -76
  215. package/node_modules/execa/lib/stdio/duplicate.js +0 -116
  216. package/node_modules/execa/lib/stdio/handle-async.js +0 -52
  217. package/node_modules/execa/lib/stdio/handle-sync.js +0 -57
  218. package/node_modules/execa/lib/stdio/handle.js +0 -214
  219. package/node_modules/execa/lib/stdio/input-option.js +0 -50
  220. package/node_modules/execa/lib/stdio/native.js +0 -106
  221. package/node_modules/execa/lib/stdio/stdio-option.js +0 -60
  222. package/node_modules/execa/lib/stdio/type.js +0 -173
  223. package/node_modules/execa/lib/terminate/cancel.js +0 -20
  224. package/node_modules/execa/lib/terminate/cleanup.js +0 -16
  225. package/node_modules/execa/lib/terminate/graceful.js +0 -71
  226. package/node_modules/execa/lib/terminate/kill.js +0 -93
  227. package/node_modules/execa/lib/terminate/signal.js +0 -70
  228. package/node_modules/execa/lib/terminate/timeout.js +0 -21
  229. package/node_modules/execa/lib/transform/encoding-transform.js +0 -51
  230. package/node_modules/execa/lib/transform/generator.js +0 -107
  231. package/node_modules/execa/lib/transform/normalize.js +0 -111
  232. package/node_modules/execa/lib/transform/object-mode.js +0 -41
  233. package/node_modules/execa/lib/transform/run-async.js +0 -60
  234. package/node_modules/execa/lib/transform/run-sync.js +0 -50
  235. package/node_modules/execa/lib/transform/split.js +0 -110
  236. package/node_modules/execa/lib/transform/validate.js +0 -43
  237. package/node_modules/execa/lib/utils/abort-signal.js +0 -8
  238. package/node_modules/execa/lib/utils/deferred.js +0 -7
  239. package/node_modules/execa/lib/utils/max-listeners.js +0 -14
  240. package/node_modules/execa/lib/utils/standard-stream.js +0 -6
  241. package/node_modules/execa/lib/utils/uint-array.js +0 -69
  242. package/node_modules/execa/lib/verbose/complete.js +0 -24
  243. package/node_modules/execa/lib/verbose/custom.js +0 -26
  244. package/node_modules/execa/lib/verbose/default.js +0 -54
  245. package/node_modules/execa/lib/verbose/error.js +0 -13
  246. package/node_modules/execa/lib/verbose/info.js +0 -39
  247. package/node_modules/execa/lib/verbose/ipc.js +0 -15
  248. package/node_modules/execa/lib/verbose/log.js +0 -54
  249. package/node_modules/execa/lib/verbose/output.js +0 -60
  250. package/node_modules/execa/lib/verbose/start.js +0 -15
  251. package/node_modules/execa/lib/verbose/values.js +0 -33
  252. package/node_modules/execa/license +0 -9
  253. package/node_modules/execa/package.json +0 -105
  254. package/node_modules/execa/readme.md +0 -461
  255. package/node_modules/execa/types/arguments/encoding-option.d.ts +0 -19
  256. package/node_modules/execa/types/arguments/fd-options.d.ts +0 -8
  257. package/node_modules/execa/types/arguments/options.d.ts +0 -400
  258. package/node_modules/execa/types/arguments/specific.d.ts +0 -52
  259. package/node_modules/execa/types/convert.d.ts +0 -58
  260. package/node_modules/execa/types/ipc.d.ts +0 -156
  261. package/node_modules/execa/types/methods/command.d.ts +0 -114
  262. package/node_modules/execa/types/methods/main-async.d.ts +0 -379
  263. package/node_modules/execa/types/methods/main-sync.d.ts +0 -59
  264. package/node_modules/execa/types/methods/node.d.ts +0 -62
  265. package/node_modules/execa/types/methods/script.d.ts +0 -115
  266. package/node_modules/execa/types/methods/template.d.ts +0 -18
  267. package/node_modules/execa/types/pipe.d.ts +0 -58
  268. package/node_modules/execa/types/return/final-error.d.ts +0 -51
  269. package/node_modules/execa/types/return/ignore.d.ts +0 -26
  270. package/node_modules/execa/types/return/result-all.d.ts +0 -30
  271. package/node_modules/execa/types/return/result-ipc.d.ts +0 -27
  272. package/node_modules/execa/types/return/result-stdio.d.ts +0 -17
  273. package/node_modules/execa/types/return/result-stdout.d.ts +0 -50
  274. package/node_modules/execa/types/return/result.d.ts +0 -203
  275. package/node_modules/execa/types/stdio/array.d.ts +0 -16
  276. package/node_modules/execa/types/stdio/direction.d.ts +0 -12
  277. package/node_modules/execa/types/stdio/option.d.ts +0 -40
  278. package/node_modules/execa/types/stdio/type.d.ts +0 -170
  279. package/node_modules/execa/types/subprocess/all.d.ts +0 -17
  280. package/node_modules/execa/types/subprocess/stdio.d.ts +0 -18
  281. package/node_modules/execa/types/subprocess/stdout.d.ts +0 -22
  282. package/node_modules/execa/types/subprocess/subprocess.d.ts +0 -117
  283. package/node_modules/execa/types/transform/normalize.d.ts +0 -57
  284. package/node_modules/execa/types/transform/object-mode.d.ts +0 -21
  285. package/node_modules/execa/types/utils.d.ts +0 -13
  286. package/node_modules/execa/types/verbose.d.ts +0 -98
  287. package/node_modules/expand-template/.travis.yml +0 -6
  288. package/node_modules/expand-template/LICENSE +0 -21
  289. package/node_modules/expand-template/README.md +0 -43
  290. package/node_modules/expand-template/index.js +0 -26
  291. package/node_modules/expand-template/package.json +0 -29
  292. package/node_modules/expand-template/test.js +0 -67
  293. package/node_modules/figures/index.d.ts +0 -279
  294. package/node_modules/figures/index.js +0 -292
  295. package/node_modules/figures/license +0 -9
  296. package/node_modules/figures/package.json +0 -49
  297. package/node_modules/figures/readme.md +0 -337
  298. package/node_modules/file-uri-to-path/.npmignore +0 -1
  299. package/node_modules/file-uri-to-path/.travis.yml +0 -30
  300. package/node_modules/file-uri-to-path/History.md +0 -21
  301. package/node_modules/file-uri-to-path/LICENSE +0 -20
  302. package/node_modules/file-uri-to-path/README.md +0 -74
  303. package/node_modules/file-uri-to-path/index.d.ts +0 -2
  304. package/node_modules/file-uri-to-path/index.js +0 -66
  305. package/node_modules/file-uri-to-path/package.json +0 -32
  306. package/node_modules/file-uri-to-path/test/test.js +0 -24
  307. package/node_modules/file-uri-to-path/test/tests.json +0 -13
  308. package/node_modules/fs-constants/LICENSE +0 -21
  309. package/node_modules/fs-constants/README.md +0 -26
  310. package/node_modules/fs-constants/browser.js +0 -1
  311. package/node_modules/fs-constants/index.js +0 -1
  312. package/node_modules/fs-constants/package.json +0 -19
  313. package/node_modules/get-stream/license +0 -9
  314. package/node_modules/get-stream/package.json +0 -60
  315. package/node_modules/get-stream/readme.md +0 -303
  316. package/node_modules/get-stream/source/array-buffer.js +0 -84
  317. package/node_modules/get-stream/source/array.js +0 -32
  318. package/node_modules/get-stream/source/buffer.js +0 -19
  319. package/node_modules/get-stream/source/contents.js +0 -121
  320. package/node_modules/get-stream/source/exports.js +0 -5
  321. package/node_modules/get-stream/source/index.d.ts +0 -121
  322. package/node_modules/get-stream/source/index.js +0 -13
  323. package/node_modules/get-stream/source/stream.js +0 -65
  324. package/node_modules/get-stream/source/string.js +0 -41
  325. package/node_modules/get-stream/source/utils.js +0 -11
  326. package/node_modules/github-from-package/.travis.yml +0 -4
  327. package/node_modules/github-from-package/LICENSE +0 -18
  328. package/node_modules/github-from-package/example/package.json +0 -8
  329. package/node_modules/github-from-package/example/url.js +0 -3
  330. package/node_modules/github-from-package/index.js +0 -17
  331. package/node_modules/github-from-package/package.json +0 -30
  332. package/node_modules/github-from-package/readme.markdown +0 -53
  333. package/node_modules/github-from-package/test/a.json +0 -8
  334. package/node_modules/github-from-package/test/b.json +0 -5
  335. package/node_modules/github-from-package/test/c.json +0 -5
  336. package/node_modules/github-from-package/test/d.json +0 -7
  337. package/node_modules/github-from-package/test/e.json +0 -5
  338. package/node_modules/github-from-package/test/url.js +0 -19
  339. package/node_modules/human-signals/LICENSE +0 -201
  340. package/node_modules/human-signals/README.md +0 -171
  341. package/node_modules/human-signals/build/src/core.js +0 -273
  342. package/node_modules/human-signals/build/src/main.d.ts +0 -206
  343. package/node_modules/human-signals/build/src/main.js +0 -70
  344. package/node_modules/human-signals/build/src/realtime.js +0 -16
  345. package/node_modules/human-signals/build/src/signals.js +0 -34
  346. package/node_modules/human-signals/package.json +0 -66
  347. package/node_modules/ieee754/LICENSE +0 -11
  348. package/node_modules/ieee754/README.md +0 -51
  349. package/node_modules/ieee754/index.d.ts +0 -10
  350. package/node_modules/ieee754/index.js +0 -85
  351. package/node_modules/ieee754/package.json +0 -52
  352. package/node_modules/inherits/LICENSE +0 -16
  353. package/node_modules/inherits/README.md +0 -42
  354. package/node_modules/inherits/inherits.js +0 -9
  355. package/node_modules/inherits/inherits_browser.js +0 -27
  356. package/node_modules/inherits/package.json +0 -29
  357. package/node_modules/ini/LICENSE +0 -15
  358. package/node_modules/ini/README.md +0 -102
  359. package/node_modules/ini/ini.js +0 -206
  360. package/node_modules/ini/package.json +0 -33
  361. package/node_modules/is-plain-obj/index.d.ts +0 -35
  362. package/node_modules/is-plain-obj/index.js +0 -8
  363. package/node_modules/is-plain-obj/license +0 -9
  364. package/node_modules/is-plain-obj/package.json +0 -41
  365. package/node_modules/is-plain-obj/readme.md +0 -58
  366. package/node_modules/is-stream/index.d.ts +0 -90
  367. package/node_modules/is-stream/index.js +0 -37
  368. package/node_modules/is-stream/license +0 -9
  369. package/node_modules/is-stream/package.json +0 -48
  370. package/node_modules/is-stream/readme.md +0 -57
  371. package/node_modules/is-unicode-supported/index.d.ts +0 -12
  372. package/node_modules/is-unicode-supported/index.js +0 -21
  373. package/node_modules/is-unicode-supported/license +0 -9
  374. package/node_modules/is-unicode-supported/package.json +0 -47
  375. package/node_modules/is-unicode-supported/readme.md +0 -35
  376. package/node_modules/isexe/.npmignore +0 -2
  377. package/node_modules/isexe/LICENSE +0 -15
  378. package/node_modules/isexe/README.md +0 -51
  379. package/node_modules/isexe/index.js +0 -57
  380. package/node_modules/isexe/mode.js +0 -41
  381. package/node_modules/isexe/package.json +0 -31
  382. package/node_modules/isexe/test/basic.js +0 -221
  383. package/node_modules/isexe/windows.js +0 -42
  384. package/node_modules/mimic-response/index.d.ts +0 -17
  385. package/node_modules/mimic-response/index.js +0 -77
  386. package/node_modules/mimic-response/license +0 -9
  387. package/node_modules/mimic-response/package.json +0 -42
  388. package/node_modules/mimic-response/readme.md +0 -78
  389. package/node_modules/minimist/.eslintrc +0 -29
  390. package/node_modules/minimist/.github/FUNDING.yml +0 -12
  391. package/node_modules/minimist/.nycrc +0 -14
  392. package/node_modules/minimist/CHANGELOG.md +0 -298
  393. package/node_modules/minimist/LICENSE +0 -18
  394. package/node_modules/minimist/README.md +0 -121
  395. package/node_modules/minimist/example/parse.js +0 -4
  396. package/node_modules/minimist/index.js +0 -263
  397. package/node_modules/minimist/package.json +0 -75
  398. package/node_modules/minimist/test/all_bool.js +0 -34
  399. package/node_modules/minimist/test/bool.js +0 -177
  400. package/node_modules/minimist/test/dash.js +0 -43
  401. package/node_modules/minimist/test/default_bool.js +0 -37
  402. package/node_modules/minimist/test/dotted.js +0 -24
  403. package/node_modules/minimist/test/kv_short.js +0 -32
  404. package/node_modules/minimist/test/long.js +0 -33
  405. package/node_modules/minimist/test/num.js +0 -38
  406. package/node_modules/minimist/test/parse.js +0 -209
  407. package/node_modules/minimist/test/parse_modified.js +0 -11
  408. package/node_modules/minimist/test/proto.js +0 -64
  409. package/node_modules/minimist/test/short.js +0 -69
  410. package/node_modules/minimist/test/stop_early.js +0 -17
  411. package/node_modules/minimist/test/unknown.js +0 -104
  412. package/node_modules/minimist/test/whitespace.js +0 -10
  413. package/node_modules/mkdirp-classic/LICENSE +0 -21
  414. package/node_modules/mkdirp-classic/README.md +0 -18
  415. package/node_modules/mkdirp-classic/index.js +0 -98
  416. package/node_modules/mkdirp-classic/package.json +0 -18
  417. package/node_modules/napi-build-utils/.github/workflows/run-npm-tests.yml +0 -31
  418. package/node_modules/napi-build-utils/LICENSE +0 -21
  419. package/node_modules/napi-build-utils/README.md +0 -52
  420. package/node_modules/napi-build-utils/index.js +0 -214
  421. package/node_modules/napi-build-utils/index.md +0 -0
  422. package/node_modules/napi-build-utils/package.json +0 -42
  423. package/node_modules/node-abi/LICENSE +0 -21
  424. package/node_modules/node-abi/README.md +0 -54
  425. package/node_modules/node-abi/abi_registry.json +0 -446
  426. package/node_modules/node-abi/index.js +0 -179
  427. package/node_modules/node-abi/package.json +0 -45
  428. package/node_modules/npm-run-path/index.d.ts +0 -90
  429. package/node_modules/npm-run-path/index.js +0 -55
  430. package/node_modules/npm-run-path/license +0 -9
  431. package/node_modules/npm-run-path/node_modules/path-key/index.d.ts +0 -31
  432. package/node_modules/npm-run-path/node_modules/path-key/index.js +0 -12
  433. package/node_modules/npm-run-path/node_modules/path-key/license +0 -9
  434. package/node_modules/npm-run-path/node_modules/path-key/package.json +0 -41
  435. package/node_modules/npm-run-path/node_modules/path-key/readme.md +0 -57
  436. package/node_modules/npm-run-path/package.json +0 -52
  437. package/node_modules/npm-run-path/readme.md +0 -104
  438. package/node_modules/once/LICENSE +0 -15
  439. package/node_modules/once/README.md +0 -79
  440. package/node_modules/once/once.js +0 -42
  441. package/node_modules/once/package.json +0 -33
  442. package/node_modules/parse-ms/index.d.ts +0 -30
  443. package/node_modules/parse-ms/index.js +0 -45
  444. package/node_modules/parse-ms/license +0 -9
  445. package/node_modules/parse-ms/package.json +0 -47
  446. package/node_modules/parse-ms/readme.md +0 -46
  447. package/node_modules/path-key/index.d.ts +0 -40
  448. package/node_modules/path-key/index.js +0 -16
  449. package/node_modules/path-key/license +0 -9
  450. package/node_modules/path-key/package.json +0 -39
  451. package/node_modules/path-key/readme.md +0 -61
  452. package/node_modules/prebuild-install/CHANGELOG.md +0 -131
  453. package/node_modules/prebuild-install/CONTRIBUTING.md +0 -6
  454. package/node_modules/prebuild-install/LICENSE +0 -21
  455. package/node_modules/prebuild-install/README.md +0 -163
  456. package/node_modules/prebuild-install/asset.js +0 -44
  457. package/node_modules/prebuild-install/bin.js +0 -78
  458. package/node_modules/prebuild-install/download.js +0 -142
  459. package/node_modules/prebuild-install/error.js +0 -14
  460. package/node_modules/prebuild-install/help.txt +0 -16
  461. package/node_modules/prebuild-install/index.js +0 -1
  462. package/node_modules/prebuild-install/log.js +0 -33
  463. package/node_modules/prebuild-install/package.json +0 -67
  464. package/node_modules/prebuild-install/proxy.js +0 -35
  465. package/node_modules/prebuild-install/rc.js +0 -64
  466. package/node_modules/prebuild-install/util.js +0 -143
  467. package/node_modules/pretty-ms/index.d.ts +0 -157
  468. package/node_modules/pretty-ms/index.js +0 -149
  469. package/node_modules/pretty-ms/license +0 -9
  470. package/node_modules/pretty-ms/package.json +0 -55
  471. package/node_modules/pretty-ms/readme.md +0 -179
  472. package/node_modules/pump/.github/FUNDING.yml +0 -2
  473. package/node_modules/pump/.travis.yml +0 -5
  474. package/node_modules/pump/LICENSE +0 -21
  475. package/node_modules/pump/README.md +0 -74
  476. package/node_modules/pump/SECURITY.md +0 -5
  477. package/node_modules/pump/empty.js +0 -1
  478. package/node_modules/pump/index.js +0 -86
  479. package/node_modules/pump/package.json +0 -30
  480. package/node_modules/pump/test-browser.js +0 -66
  481. package/node_modules/pump/test-node.js +0 -53
  482. package/node_modules/rc/LICENSE.APACHE2 +0 -15
  483. package/node_modules/rc/LICENSE.BSD +0 -26
  484. package/node_modules/rc/LICENSE.MIT +0 -24
  485. package/node_modules/rc/README.md +0 -227
  486. package/node_modules/rc/browser.js +0 -7
  487. package/node_modules/rc/cli.js +0 -4
  488. package/node_modules/rc/index.js +0 -53
  489. package/node_modules/rc/lib/utils.js +0 -104
  490. package/node_modules/rc/package.json +0 -29
  491. package/node_modules/rc/test/ini.js +0 -16
  492. package/node_modules/rc/test/nested-env-vars.js +0 -50
  493. package/node_modules/rc/test/test.js +0 -59
  494. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  495. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  496. package/node_modules/readable-stream/LICENSE +0 -47
  497. package/node_modules/readable-stream/README.md +0 -106
  498. package/node_modules/readable-stream/errors-browser.js +0 -127
  499. package/node_modules/readable-stream/errors.js +0 -116
  500. package/node_modules/readable-stream/experimentalWarning.js +0 -17
  501. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -126
  502. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -37
  503. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1027
  504. package/node_modules/readable-stream/lib/_stream_transform.js +0 -190
  505. package/node_modules/readable-stream/lib/_stream_writable.js +0 -641
  506. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -180
  507. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -183
  508. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -96
  509. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -86
  510. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  511. package/node_modules/readable-stream/lib/internal/streams/from.js +0 -52
  512. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -86
  513. package/node_modules/readable-stream/lib/internal/streams/state.js +0 -22
  514. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  515. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  516. package/node_modules/readable-stream/package.json +0 -68
  517. package/node_modules/readable-stream/readable-browser.js +0 -9
  518. package/node_modules/readable-stream/readable.js +0 -16
  519. package/node_modules/safe-buffer/LICENSE +0 -21
  520. package/node_modules/safe-buffer/README.md +0 -584
  521. package/node_modules/safe-buffer/index.d.ts +0 -187
  522. package/node_modules/safe-buffer/index.js +0 -65
  523. package/node_modules/safe-buffer/package.json +0 -51
  524. package/node_modules/semver/LICENSE +0 -15
  525. package/node_modules/semver/README.md +0 -665
  526. package/node_modules/semver/bin/semver.js +0 -191
  527. package/node_modules/semver/classes/comparator.js +0 -143
  528. package/node_modules/semver/classes/index.js +0 -7
  529. package/node_modules/semver/classes/range.js +0 -557
  530. package/node_modules/semver/classes/semver.js +0 -333
  531. package/node_modules/semver/functions/clean.js +0 -8
  532. package/node_modules/semver/functions/cmp.js +0 -54
  533. package/node_modules/semver/functions/coerce.js +0 -62
  534. package/node_modules/semver/functions/compare-build.js +0 -9
  535. package/node_modules/semver/functions/compare-loose.js +0 -5
  536. package/node_modules/semver/functions/compare.js +0 -7
  537. package/node_modules/semver/functions/diff.js +0 -60
  538. package/node_modules/semver/functions/eq.js +0 -5
  539. package/node_modules/semver/functions/gt.js +0 -5
  540. package/node_modules/semver/functions/gte.js +0 -5
  541. package/node_modules/semver/functions/inc.js +0 -21
  542. package/node_modules/semver/functions/lt.js +0 -5
  543. package/node_modules/semver/functions/lte.js +0 -5
  544. package/node_modules/semver/functions/major.js +0 -5
  545. package/node_modules/semver/functions/minor.js +0 -5
  546. package/node_modules/semver/functions/neq.js +0 -5
  547. package/node_modules/semver/functions/parse.js +0 -18
  548. package/node_modules/semver/functions/patch.js +0 -5
  549. package/node_modules/semver/functions/prerelease.js +0 -8
  550. package/node_modules/semver/functions/rcompare.js +0 -5
  551. package/node_modules/semver/functions/rsort.js +0 -5
  552. package/node_modules/semver/functions/satisfies.js +0 -12
  553. package/node_modules/semver/functions/sort.js +0 -5
  554. package/node_modules/semver/functions/valid.js +0 -8
  555. package/node_modules/semver/index.js +0 -91
  556. package/node_modules/semver/internal/constants.js +0 -37
  557. package/node_modules/semver/internal/debug.js +0 -11
  558. package/node_modules/semver/internal/identifiers.js +0 -29
  559. package/node_modules/semver/internal/lrucache.js +0 -42
  560. package/node_modules/semver/internal/parse-options.js +0 -17
  561. package/node_modules/semver/internal/re.js +0 -223
  562. package/node_modules/semver/package.json +0 -78
  563. package/node_modules/semver/preload.js +0 -4
  564. package/node_modules/semver/range.bnf +0 -16
  565. package/node_modules/semver/ranges/gtr.js +0 -6
  566. package/node_modules/semver/ranges/intersects.js +0 -9
  567. package/node_modules/semver/ranges/ltr.js +0 -6
  568. package/node_modules/semver/ranges/max-satisfying.js +0 -27
  569. package/node_modules/semver/ranges/min-satisfying.js +0 -26
  570. package/node_modules/semver/ranges/min-version.js +0 -63
  571. package/node_modules/semver/ranges/outside.js +0 -82
  572. package/node_modules/semver/ranges/simplify.js +0 -49
  573. package/node_modules/semver/ranges/subset.js +0 -249
  574. package/node_modules/semver/ranges/to-comparators.js +0 -10
  575. package/node_modules/semver/ranges/valid.js +0 -13
  576. package/node_modules/shebang-command/index.js +0 -19
  577. package/node_modules/shebang-command/license +0 -9
  578. package/node_modules/shebang-command/package.json +0 -34
  579. package/node_modules/shebang-command/readme.md +0 -34
  580. package/node_modules/shebang-regex/index.d.ts +0 -22
  581. package/node_modules/shebang-regex/index.js +0 -2
  582. package/node_modules/shebang-regex/license +0 -9
  583. package/node_modules/shebang-regex/package.json +0 -35
  584. package/node_modules/shebang-regex/readme.md +0 -33
  585. package/node_modules/signal-exit/LICENSE.txt +0 -16
  586. package/node_modules/signal-exit/README.md +0 -74
  587. package/node_modules/signal-exit/dist/cjs/browser.d.ts +0 -12
  588. package/node_modules/signal-exit/dist/cjs/browser.d.ts.map +0 -1
  589. package/node_modules/signal-exit/dist/cjs/browser.js +0 -10
  590. package/node_modules/signal-exit/dist/cjs/browser.js.map +0 -1
  591. package/node_modules/signal-exit/dist/cjs/index.d.ts +0 -48
  592. package/node_modules/signal-exit/dist/cjs/index.d.ts.map +0 -1
  593. package/node_modules/signal-exit/dist/cjs/index.js +0 -279
  594. package/node_modules/signal-exit/dist/cjs/index.js.map +0 -1
  595. package/node_modules/signal-exit/dist/cjs/package.json +0 -3
  596. package/node_modules/signal-exit/dist/cjs/signals.d.ts +0 -29
  597. package/node_modules/signal-exit/dist/cjs/signals.d.ts.map +0 -1
  598. package/node_modules/signal-exit/dist/cjs/signals.js +0 -42
  599. package/node_modules/signal-exit/dist/cjs/signals.js.map +0 -1
  600. package/node_modules/signal-exit/dist/mjs/browser.d.ts +0 -12
  601. package/node_modules/signal-exit/dist/mjs/browser.d.ts.map +0 -1
  602. package/node_modules/signal-exit/dist/mjs/browser.js +0 -4
  603. package/node_modules/signal-exit/dist/mjs/browser.js.map +0 -1
  604. package/node_modules/signal-exit/dist/mjs/index.d.ts +0 -48
  605. package/node_modules/signal-exit/dist/mjs/index.d.ts.map +0 -1
  606. package/node_modules/signal-exit/dist/mjs/index.js +0 -275
  607. package/node_modules/signal-exit/dist/mjs/index.js.map +0 -1
  608. package/node_modules/signal-exit/dist/mjs/package.json +0 -3
  609. package/node_modules/signal-exit/dist/mjs/signals.d.ts +0 -29
  610. package/node_modules/signal-exit/dist/mjs/signals.d.ts.map +0 -1
  611. package/node_modules/signal-exit/dist/mjs/signals.js +0 -39
  612. package/node_modules/signal-exit/dist/mjs/signals.js.map +0 -1
  613. package/node_modules/signal-exit/package.json +0 -106
  614. package/node_modules/simple-concat/.travis.yml +0 -3
  615. package/node_modules/simple-concat/LICENSE +0 -20
  616. package/node_modules/simple-concat/README.md +0 -44
  617. package/node_modules/simple-concat/index.js +0 -15
  618. package/node_modules/simple-concat/package.json +0 -47
  619. package/node_modules/simple-concat/test/basic.js +0 -41
  620. package/node_modules/simple-get/.github/dependabot.yml +0 -15
  621. package/node_modules/simple-get/.github/workflows/ci.yml +0 -23
  622. package/node_modules/simple-get/LICENSE +0 -20
  623. package/node_modules/simple-get/README.md +0 -333
  624. package/node_modules/simple-get/index.js +0 -108
  625. package/node_modules/simple-get/package.json +0 -67
  626. package/node_modules/sqlite-vec/README.md +0 -1
  627. package/node_modules/sqlite-vec/package.json +0 -1
  628. package/node_modules/sqlite-vec-linux-x64/README.md +0 -1
  629. package/node_modules/sqlite-vec-linux-x64/package.json +0 -1
  630. package/node_modules/string_decoder/LICENSE +0 -48
  631. package/node_modules/string_decoder/README.md +0 -47
  632. package/node_modules/string_decoder/lib/string_decoder.js +0 -296
  633. package/node_modules/string_decoder/package.json +0 -34
  634. package/node_modules/strip-final-newline/index.d.ts +0 -18
  635. package/node_modules/strip-final-newline/index.js +0 -26
  636. package/node_modules/strip-final-newline/license +0 -9
  637. package/node_modules/strip-final-newline/package.json +0 -49
  638. package/node_modules/strip-final-newline/readme.md +0 -34
  639. package/node_modules/strip-json-comments/index.js +0 -70
  640. package/node_modules/strip-json-comments/license +0 -21
  641. package/node_modules/strip-json-comments/package.json +0 -42
  642. package/node_modules/strip-json-comments/readme.md +0 -64
  643. package/node_modules/tar-fs/.travis.yml +0 -6
  644. package/node_modules/tar-fs/LICENSE +0 -21
  645. package/node_modules/tar-fs/README.md +0 -165
  646. package/node_modules/tar-fs/index.js +0 -363
  647. package/node_modules/tar-fs/package.json +0 -41
  648. package/node_modules/tar-fs/test/fixtures/a/hello.txt +0 -1
  649. package/node_modules/tar-fs/test/fixtures/b/a/test.txt +0 -1
  650. package/node_modules/tar-fs/test/fixtures/d/file1 +0 -0
  651. package/node_modules/tar-fs/test/fixtures/d/file2 +0 -0
  652. package/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 +0 -0
  653. package/node_modules/tar-fs/test/fixtures/d/sub-files/file3 +0 -0
  654. package/node_modules/tar-fs/test/fixtures/d/sub-files/file4 +0 -0
  655. package/node_modules/tar-fs/test/fixtures/e/directory/.ignore +0 -0
  656. package/node_modules/tar-fs/test/fixtures/e/file +0 -0
  657. package/node_modules/tar-fs/test/fixtures/invalid.tar +0 -0
  658. package/node_modules/tar-fs/test/index.js +0 -346
  659. package/node_modules/tar-stream/LICENSE +0 -21
  660. package/node_modules/tar-stream/README.md +0 -168
  661. package/node_modules/tar-stream/extract.js +0 -257
  662. package/node_modules/tar-stream/headers.js +0 -295
  663. package/node_modules/tar-stream/index.js +0 -2
  664. package/node_modules/tar-stream/pack.js +0 -255
  665. package/node_modules/tar-stream/package.json +0 -58
  666. package/node_modules/tar-stream/sandbox.js +0 -11
  667. package/node_modules/tunnel-agent/LICENSE +0 -55
  668. package/node_modules/tunnel-agent/README.md +0 -4
  669. package/node_modules/tunnel-agent/index.js +0 -244
  670. package/node_modules/tunnel-agent/package.json +0 -22
  671. package/node_modules/unicorn-magic/default.d.ts +0 -13
  672. package/node_modules/unicorn-magic/default.js +0 -14
  673. package/node_modules/unicorn-magic/license +0 -9
  674. package/node_modules/unicorn-magic/node.d.ts +0 -125
  675. package/node_modules/unicorn-magic/node.js +0 -49
  676. package/node_modules/unicorn-magic/package.json +0 -62
  677. package/node_modules/unicorn-magic/readme.md +0 -25
  678. package/node_modules/util-deprecate/History.md +0 -16
  679. package/node_modules/util-deprecate/LICENSE +0 -24
  680. package/node_modules/util-deprecate/README.md +0 -53
  681. package/node_modules/util-deprecate/browser.js +0 -67
  682. package/node_modules/util-deprecate/node.js +0 -6
  683. package/node_modules/util-deprecate/package.json +0 -27
  684. package/node_modules/which/LICENSE +0 -15
  685. package/node_modules/which/README.md +0 -54
  686. package/node_modules/which/bin/node-which +0 -52
  687. package/node_modules/which/package.json +0 -43
  688. package/node_modules/which/which.js +0 -125
  689. package/node_modules/wrappy/LICENSE +0 -15
  690. package/node_modules/wrappy/README.md +0 -36
  691. package/node_modules/wrappy/package.json +0 -29
  692. package/node_modules/wrappy/wrappy.js +0 -33
  693. package/node_modules/yoctocolors/base.d.ts +0 -47
  694. package/node_modules/yoctocolors/base.js +0 -94
  695. package/node_modules/yoctocolors/index.d.ts +0 -2
  696. package/node_modules/yoctocolors/index.js +0 -2
  697. package/node_modules/yoctocolors/license +0 -9
  698. package/node_modules/yoctocolors/package.json +0 -69
  699. package/node_modules/yoctocolors/readme.md +0 -138
@@ -1,163 +0,0 @@
1
- import {spawnSync} from 'node:child_process';
2
- import {handleCommand} from '../arguments/command.js';
3
- import {normalizeOptions} from '../arguments/options.js';
4
- import {concatenateShell} from '../arguments/shell.js';
5
- import {makeError, makeEarlyError, makeSuccessResult} from '../return/result.js';
6
- import {handleResult} from '../return/reject.js';
7
- import {handleStdioSync} from '../stdio/handle-sync.js';
8
- import {stripNewline} from '../io/strip-newline.js';
9
- import {addInputOptionsSync} from '../io/input-sync.js';
10
- import {transformOutputSync} from '../io/output-sync.js';
11
- import {getMaxBufferSync} from '../io/max-buffer.js';
12
- import {getAllSync} from '../resolve/all-sync.js';
13
- import {getExitResultSync} from '../resolve/exit-sync.js';
14
-
15
- // Main shared logic for all sync methods: `execaSync()`, `$.sync()`
16
- export const execaCoreSync = (rawFile, rawArguments, rawOptions) => {
17
- const {file, commandArguments, command, escapedCommand, startTime, verboseInfo, options, fileDescriptors} = handleSyncArguments(rawFile, rawArguments, rawOptions);
18
- const result = spawnSubprocessSync({
19
- file,
20
- commandArguments,
21
- options,
22
- command,
23
- escapedCommand,
24
- verboseInfo,
25
- fileDescriptors,
26
- startTime,
27
- });
28
- return handleResult(result, verboseInfo, options);
29
- };
30
-
31
- // Compute arguments to pass to `child_process.spawnSync()`
32
- const handleSyncArguments = (rawFile, rawArguments, rawOptions) => {
33
- const {command, escapedCommand, startTime, verboseInfo} = handleCommand(rawFile, rawArguments, rawOptions);
34
- const syncOptions = normalizeSyncOptions(rawOptions);
35
- const {file, commandArguments, options} = normalizeOptions(rawFile, rawArguments, syncOptions);
36
- validateSyncOptions(options);
37
- const fileDescriptors = handleStdioSync(options, verboseInfo);
38
- return {
39
- file,
40
- commandArguments,
41
- command,
42
- escapedCommand,
43
- startTime,
44
- verboseInfo,
45
- options,
46
- fileDescriptors,
47
- };
48
- };
49
-
50
- // Options normalization logic specific to sync methods
51
- const normalizeSyncOptions = options => options.node && !options.ipc ? {...options, ipc: false} : options;
52
-
53
- // Options validation logic specific to sync methods
54
- const validateSyncOptions = ({ipc, ipcInput, detached, cancelSignal}) => {
55
- if (ipcInput) {
56
- throwInvalidSyncOption('ipcInput');
57
- }
58
-
59
- if (ipc) {
60
- throwInvalidSyncOption('ipc: true');
61
- }
62
-
63
- if (detached) {
64
- throwInvalidSyncOption('detached: true');
65
- }
66
-
67
- if (cancelSignal) {
68
- throwInvalidSyncOption('cancelSignal');
69
- }
70
- };
71
-
72
- const throwInvalidSyncOption = value => {
73
- throw new TypeError(`The "${value}" option cannot be used with synchronous methods.`);
74
- };
75
-
76
- const spawnSubprocessSync = ({file, commandArguments, options, command, escapedCommand, verboseInfo, fileDescriptors, startTime}) => {
77
- const syncResult = runSubprocessSync({
78
- file,
79
- commandArguments,
80
- options,
81
- command,
82
- escapedCommand,
83
- fileDescriptors,
84
- startTime,
85
- });
86
- if (syncResult.failed) {
87
- return syncResult;
88
- }
89
-
90
- const {resultError, exitCode, signal, timedOut, isMaxBuffer} = getExitResultSync(syncResult, options);
91
- const {output, error = resultError} = transformOutputSync({
92
- fileDescriptors,
93
- syncResult,
94
- options,
95
- isMaxBuffer,
96
- verboseInfo,
97
- });
98
- const stdio = output.map((stdioOutput, fdNumber) => stripNewline(stdioOutput, options, fdNumber));
99
- const all = stripNewline(getAllSync(output, options), options, 'all');
100
- return getSyncResult({
101
- error,
102
- exitCode,
103
- signal,
104
- timedOut,
105
- isMaxBuffer,
106
- stdio,
107
- all,
108
- options,
109
- command,
110
- escapedCommand,
111
- startTime,
112
- });
113
- };
114
-
115
- const runSubprocessSync = ({file, commandArguments, options, command, escapedCommand, fileDescriptors, startTime}) => {
116
- try {
117
- addInputOptionsSync(fileDescriptors, options);
118
- const normalizedOptions = normalizeSpawnSyncOptions(options);
119
- return spawnSync(...concatenateShell(file, commandArguments, normalizedOptions));
120
- } catch (error) {
121
- return makeEarlyError({
122
- error,
123
- command,
124
- escapedCommand,
125
- fileDescriptors,
126
- options,
127
- startTime,
128
- isSync: true,
129
- });
130
- }
131
- };
132
-
133
- // The `encoding` option is handled by Execa, not by `child_process.spawnSync()`
134
- const normalizeSpawnSyncOptions = ({encoding, maxBuffer, ...options}) => ({...options, encoding: 'buffer', maxBuffer: getMaxBufferSync(maxBuffer)});
135
-
136
- const getSyncResult = ({error, exitCode, signal, timedOut, isMaxBuffer, stdio, all, options, command, escapedCommand, startTime}) => error === undefined
137
- ? makeSuccessResult({
138
- command,
139
- escapedCommand,
140
- stdio,
141
- all,
142
- ipcOutput: [],
143
- options,
144
- startTime,
145
- })
146
- : makeError({
147
- error,
148
- command,
149
- escapedCommand,
150
- timedOut,
151
- isCanceled: false,
152
- isGracefullyCanceled: false,
153
- isMaxBuffer,
154
- isForcefullyTerminated: false,
155
- exitCode,
156
- signal,
157
- stdio,
158
- all,
159
- ipcOutput: [],
160
- options,
161
- startTime,
162
- isSync: true,
163
- });
@@ -1,51 +0,0 @@
1
- import {execPath, execArgv} from 'node:process';
2
- import path from 'node:path';
3
- import {safeNormalizeFileUrl} from '../arguments/file-url.js';
4
-
5
- // `execaNode()` is a shortcut for `execa(..., {node: true})`
6
- export const mapNode = ({options}) => {
7
- if (options.node === false) {
8
- throw new TypeError('The "node" option cannot be false with `execaNode()`.');
9
- }
10
-
11
- return {options: {...options, node: true}};
12
- };
13
-
14
- // Applies the `node: true` option, and the related `nodePath`/`nodeOptions` options.
15
- // Modifies the file commands/arguments to ensure the same Node binary and flags are re-used.
16
- // Also adds `ipc: true` and `shell: false`.
17
- export const handleNodeOption = (file, commandArguments, {
18
- node: shouldHandleNode = false,
19
- nodePath = execPath,
20
- nodeOptions = execArgv.filter(nodeOption => !nodeOption.startsWith('--inspect')),
21
- cwd,
22
- execPath: formerNodePath,
23
- ...options
24
- }) => {
25
- if (formerNodePath !== undefined) {
26
- throw new TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');
27
- }
28
-
29
- const normalizedNodePath = safeNormalizeFileUrl(nodePath, 'The "nodePath" option');
30
- const resolvedNodePath = path.resolve(cwd, normalizedNodePath);
31
- const newOptions = {
32
- ...options,
33
- nodePath: resolvedNodePath,
34
- node: shouldHandleNode,
35
- cwd,
36
- };
37
-
38
- if (!shouldHandleNode) {
39
- return [file, commandArguments, newOptions];
40
- }
41
-
42
- if (path.basename(file, '.exe') === 'node') {
43
- throw new TypeError('When the "node" option is true, the first argument does not need to be "node".');
44
- }
45
-
46
- return [
47
- resolvedNodePath,
48
- [...nodeOptions, file, ...commandArguments],
49
- {ipc: true, ...newOptions, shell: false},
50
- ];
51
- };
@@ -1,31 +0,0 @@
1
- import isPlainObject from 'is-plain-obj';
2
- import {safeNormalizeFileUrl} from '../arguments/file-url.js';
3
-
4
- // The command `arguments` and `options` are both optional.
5
- // This also does basic validation on them and on the command file.
6
- export const normalizeParameters = (rawFile, rawArguments = [], rawOptions = {}) => {
7
- const filePath = safeNormalizeFileUrl(rawFile, 'First argument');
8
- const [commandArguments, options] = isPlainObject(rawArguments)
9
- ? [[], rawArguments]
10
- : [rawArguments, rawOptions];
11
-
12
- if (!Array.isArray(commandArguments)) {
13
- throw new TypeError(`Second argument must be either an array of arguments or an options object: ${commandArguments}`);
14
- }
15
-
16
- if (commandArguments.some(commandArgument => typeof commandArgument === 'object' && commandArgument !== null)) {
17
- throw new TypeError(`Second argument must be an array of strings: ${commandArguments}`);
18
- }
19
-
20
- const normalizedArguments = commandArguments.map(String);
21
- const nullByteArgument = normalizedArguments.find(normalizedArgument => normalizedArgument.includes('\0'));
22
- if (nullByteArgument !== undefined) {
23
- throw new TypeError(`Arguments cannot contain null bytes ("\\0"): ${nullByteArgument}`);
24
- }
25
-
26
- if (!isPlainObject(options)) {
27
- throw new TypeError(`Last argument must be an options object: ${options}`);
28
- }
29
-
30
- return [filePath, normalizedArguments, options];
31
- };
@@ -1,15 +0,0 @@
1
- // The return value is a mixin of `subprocess` and `Promise`
2
- export const mergePromise = (subprocess, promise) => {
3
- for (const [property, descriptor] of descriptors) {
4
- const value = descriptor.value.bind(promise);
5
- Reflect.defineProperty(subprocess, property, {...descriptor, value});
6
- }
7
- };
8
-
9
- // eslint-disable-next-line unicorn/prefer-top-level-await
10
- const nativePromisePrototype = (async () => {})().constructor.prototype;
11
-
12
- const descriptors = ['then', 'catch', 'finally'].map(property => [
13
- property,
14
- Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property),
15
- ]);
@@ -1,22 +0,0 @@
1
- // Sets `$.sync` and `$.s`
2
- export const setScriptSync = (boundExeca, createNested, boundOptions) => {
3
- boundExeca.sync = createNested(mapScriptSync, boundOptions);
4
- boundExeca.s = boundExeca.sync;
5
- };
6
-
7
- // Main logic for `$`
8
- export const mapScriptAsync = ({options}) => getScriptOptions(options);
9
-
10
- // Main logic for `$.sync`
11
- const mapScriptSync = ({options}) => ({...getScriptOptions(options), isSync: true});
12
-
13
- // `$` is like `execa` but with script-friendly options: `{stdin: 'inherit', preferLocal: true}`
14
- const getScriptOptions = options => ({options: {...getScriptStdinOption(options), ...options}});
15
-
16
- const getScriptStdinOption = ({input, inputFile, stdio}) => input === undefined && inputFile === undefined && stdio === undefined
17
- ? {stdin: 'inherit'}
18
- : {};
19
-
20
- // When using $(...).pipe(...), most script-friendly options should apply to both commands.
21
- // However, some options (like `stdin: 'inherit'`) would create issues with piping, i.e. cannot be deep.
22
- export const deepScriptOptions = {preferLocal: true};
@@ -1,153 +0,0 @@
1
- import {ChildProcess} from 'node:child_process';
2
- import isPlainObject from 'is-plain-obj';
3
- import {isUint8Array, uint8ArrayToString} from '../utils/uint-array.js';
4
-
5
- // Check whether the template string syntax is being used
6
- export const isTemplateString = templates => Array.isArray(templates) && Array.isArray(templates.raw);
7
-
8
- // Convert execa`file ...commandArguments` to execa(file, commandArguments)
9
- export const parseTemplates = (templates, expressions) => {
10
- let tokens = [];
11
-
12
- for (const [index, template] of templates.entries()) {
13
- tokens = parseTemplate({
14
- templates,
15
- expressions,
16
- tokens,
17
- index,
18
- template,
19
- });
20
- }
21
-
22
- if (tokens.length === 0) {
23
- throw new TypeError('Template script must not be empty');
24
- }
25
-
26
- const [file, ...commandArguments] = tokens;
27
- return [file, commandArguments, {}];
28
- };
29
-
30
- const parseTemplate = ({templates, expressions, tokens, index, template}) => {
31
- if (template === undefined) {
32
- throw new TypeError(`Invalid backslash sequence: ${templates.raw[index]}`);
33
- }
34
-
35
- const {nextTokens, leadingWhitespaces, trailingWhitespaces} = splitByWhitespaces(template, templates.raw[index]);
36
- const newTokens = concatTokens(tokens, nextTokens, leadingWhitespaces);
37
-
38
- if (index === expressions.length) {
39
- return newTokens;
40
- }
41
-
42
- const expression = expressions[index];
43
- const expressionTokens = Array.isArray(expression)
44
- ? expression.map(expression => parseExpression(expression))
45
- : [parseExpression(expression)];
46
- return concatTokens(newTokens, expressionTokens, trailingWhitespaces);
47
- };
48
-
49
- // Like `string.split(/[ \t\r\n]+/)` except newlines and tabs are:
50
- // - ignored when input as a backslash sequence like: `echo foo\n bar`
51
- // - not ignored when input directly
52
- // The only way to distinguish those in JavaScript is to use a tagged template and compare:
53
- // - the first array argument, which does not escape backslash sequences
54
- // - its `raw` property, which escapes them
55
- const splitByWhitespaces = (template, rawTemplate) => {
56
- if (rawTemplate.length === 0) {
57
- return {nextTokens: [], leadingWhitespaces: false, trailingWhitespaces: false};
58
- }
59
-
60
- const nextTokens = [];
61
- let templateStart = 0;
62
- const leadingWhitespaces = DELIMITERS.has(rawTemplate[0]);
63
-
64
- for (
65
- let templateIndex = 0, rawIndex = 0;
66
- templateIndex < template.length;
67
- templateIndex += 1, rawIndex += 1
68
- ) {
69
- const rawCharacter = rawTemplate[rawIndex];
70
- if (DELIMITERS.has(rawCharacter)) {
71
- if (templateStart !== templateIndex) {
72
- nextTokens.push(template.slice(templateStart, templateIndex));
73
- }
74
-
75
- templateStart = templateIndex + 1;
76
- } else if (rawCharacter === '\\') {
77
- const nextRawCharacter = rawTemplate[rawIndex + 1];
78
- if (nextRawCharacter === '\n') {
79
- // Handles escaped newlines in templates
80
- templateIndex -= 1;
81
- rawIndex += 1;
82
- } else if (nextRawCharacter === 'u' && rawTemplate[rawIndex + 2] === '{') {
83
- rawIndex = rawTemplate.indexOf('}', rawIndex + 3);
84
- } else {
85
- rawIndex += ESCAPE_LENGTH[nextRawCharacter] ?? 1;
86
- }
87
- }
88
- }
89
-
90
- const trailingWhitespaces = templateStart === template.length;
91
- if (!trailingWhitespaces) {
92
- nextTokens.push(template.slice(templateStart));
93
- }
94
-
95
- return {nextTokens, leadingWhitespaces, trailingWhitespaces};
96
- };
97
-
98
- const DELIMITERS = new Set([' ', '\t', '\r', '\n']);
99
-
100
- // Number of characters in backslash escape sequences: \0 \xXX or \uXXXX
101
- // \cX is allowed in RegExps but not in strings
102
- // Octal sequences are not allowed in strict mode
103
- const ESCAPE_LENGTH = {x: 3, u: 5};
104
-
105
- const concatTokens = (tokens, nextTokens, isSeparated) => isSeparated
106
- || tokens.length === 0
107
- || nextTokens.length === 0
108
- ? [...tokens, ...nextTokens]
109
- : [
110
- ...tokens.slice(0, -1),
111
- `${tokens.at(-1)}${nextTokens[0]}`,
112
- ...nextTokens.slice(1),
113
- ];
114
-
115
- // Handle `${expression}` inside the template string syntax
116
- const parseExpression = expression => {
117
- const typeOfExpression = typeof expression;
118
-
119
- if (typeOfExpression === 'string') {
120
- return expression;
121
- }
122
-
123
- if (typeOfExpression === 'number') {
124
- return String(expression);
125
- }
126
-
127
- if (isPlainObject(expression) && ('stdout' in expression || 'isMaxBuffer' in expression)) {
128
- return getSubprocessResult(expression);
129
- }
130
-
131
- if (expression instanceof ChildProcess || Object.prototype.toString.call(expression) === '[object Promise]') {
132
- // eslint-disable-next-line no-template-curly-in-string
133
- throw new TypeError('Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.');
134
- }
135
-
136
- throw new TypeError(`Unexpected "${typeOfExpression}" in template expression`);
137
- };
138
-
139
- const getSubprocessResult = ({stdout}) => {
140
- if (typeof stdout === 'string') {
141
- return stdout;
142
- }
143
-
144
- if (isUint8Array(stdout)) {
145
- return uint8ArrayToString(stdout);
146
- }
147
-
148
- if (stdout === undefined) {
149
- throw new TypeError('Missing result.stdout in template expression. This is probably due to the previous subprocess\' "stdout" option.');
150
- }
151
-
152
- throw new TypeError(`Unexpected "${typeof stdout}" stdout in template expression`);
153
- };
@@ -1,20 +0,0 @@
1
- import {aborted} from 'node:util';
2
- import {createNonCommandError} from './throw.js';
3
-
4
- // When passing an `unpipeSignal` option, abort piping when the signal is aborted.
5
- // However, do not terminate the subprocesses.
6
- export const unpipeOnAbort = (unpipeSignal, unpipeContext) => unpipeSignal === undefined
7
- ? []
8
- : [unpipeOnSignalAbort(unpipeSignal, unpipeContext)];
9
-
10
- const unpipeOnSignalAbort = async (unpipeSignal, {sourceStream, mergedStream, fileDescriptors, sourceOptions, startTime}) => {
11
- await aborted(unpipeSignal, sourceStream);
12
- await mergedStream.remove(sourceStream);
13
- const error = new Error('Pipe canceled by `unpipeSignal` option.');
14
- throw createNonCommandError({
15
- error,
16
- fileDescriptors,
17
- sourceOptions,
18
- startTime,
19
- });
20
- };
@@ -1,91 +0,0 @@
1
- import {normalizeParameters} from '../methods/parameters.js';
2
- import {getStartTime} from '../return/duration.js';
3
- import {SUBPROCESS_OPTIONS, getToStream, getFromStream} from '../arguments/fd-options.js';
4
- import {isDenoExecPath} from '../arguments/file-url.js';
5
-
6
- // Normalize and validate arguments passed to `source.pipe(destination)`
7
- export const normalizePipeArguments = ({source, sourcePromise, boundOptions, createNested}, ...pipeArguments) => {
8
- const startTime = getStartTime();
9
- const {
10
- destination,
11
- destinationStream,
12
- destinationError,
13
- from,
14
- unpipeSignal,
15
- } = getDestinationStream(boundOptions, createNested, pipeArguments);
16
- const {sourceStream, sourceError} = getSourceStream(source, from);
17
- const {options: sourceOptions, fileDescriptors} = SUBPROCESS_OPTIONS.get(source);
18
- return {
19
- sourcePromise,
20
- sourceStream,
21
- sourceOptions,
22
- sourceError,
23
- destination,
24
- destinationStream,
25
- destinationError,
26
- unpipeSignal,
27
- fileDescriptors,
28
- startTime,
29
- };
30
- };
31
-
32
- const getDestinationStream = (boundOptions, createNested, pipeArguments) => {
33
- try {
34
- const {
35
- destination,
36
- pipeOptions: {from, to, unpipeSignal} = {},
37
- } = getDestination(boundOptions, createNested, ...pipeArguments);
38
- const destinationStream = getToStream(destination, to);
39
- return {
40
- destination,
41
- destinationStream,
42
- from,
43
- unpipeSignal,
44
- };
45
- } catch (error) {
46
- return {destinationError: error};
47
- }
48
- };
49
-
50
- // Piping subprocesses can use three syntaxes:
51
- // - source.pipe('command', commandArguments, pipeOptionsOrDestinationOptions)
52
- // - source.pipe`command commandArgument` or source.pipe(pipeOptionsOrDestinationOptions)`command commandArgument`
53
- // - source.pipe(execa(...), pipeOptions)
54
- const getDestination = (boundOptions, createNested, firstArgument, ...pipeArguments) => {
55
- if (Array.isArray(firstArgument)) {
56
- const destination = createNested(mapDestinationArguments, boundOptions)(firstArgument, ...pipeArguments);
57
- return {destination, pipeOptions: boundOptions};
58
- }
59
-
60
- if (typeof firstArgument === 'string' || firstArgument instanceof URL || isDenoExecPath(firstArgument)) {
61
- if (Object.keys(boundOptions).length > 0) {
62
- throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');
63
- }
64
-
65
- const [rawFile, rawArguments, rawOptions] = normalizeParameters(firstArgument, ...pipeArguments);
66
- const destination = createNested(mapDestinationArguments)(rawFile, rawArguments, rawOptions);
67
- return {destination, pipeOptions: rawOptions};
68
- }
69
-
70
- if (SUBPROCESS_OPTIONS.has(firstArgument)) {
71
- if (Object.keys(boundOptions).length > 0) {
72
- throw new TypeError('Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).');
73
- }
74
-
75
- return {destination: firstArgument, pipeOptions: pipeArguments[0]};
76
- }
77
-
78
- throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${firstArgument}`);
79
- };
80
-
81
- // Force `stdin: 'pipe'` with the destination subprocess
82
- const mapDestinationArguments = ({options}) => ({options: {...options, stdin: 'pipe', piped: true}});
83
-
84
- const getSourceStream = (source, from) => {
85
- try {
86
- const sourceStream = getFromStream(source, from);
87
- return {sourceStream};
88
- } catch (error) {
89
- return {sourceError: error};
90
- }
91
- };
@@ -1,24 +0,0 @@
1
- // Like Bash, we await both subprocesses. This is unlike some other shells which only await the destination subprocess.
2
- // Like Bash with the `pipefail` option, if either subprocess fails, the whole pipe fails.
3
- // Like Bash, if both subprocesses fail, we return the failure of the destination.
4
- // This ensures both subprocesses' errors are present, using `error.pipedFrom`.
5
- export const waitForBothSubprocesses = async subprocessPromises => {
6
- const [
7
- {status: sourceStatus, reason: sourceReason, value: sourceResult = sourceReason},
8
- {status: destinationStatus, reason: destinationReason, value: destinationResult = destinationReason},
9
- ] = await subprocessPromises;
10
-
11
- if (!destinationResult.pipedFrom.includes(sourceResult)) {
12
- destinationResult.pipedFrom.push(sourceResult);
13
- }
14
-
15
- if (destinationStatus === 'rejected') {
16
- throw destinationResult;
17
- }
18
-
19
- if (sourceStatus === 'rejected') {
20
- throw sourceResult;
21
- }
22
-
23
- return destinationResult;
24
- };
@@ -1,72 +0,0 @@
1
- import isPlainObject from 'is-plain-obj';
2
- import {normalizePipeArguments} from './pipe-arguments.js';
3
- import {handlePipeArgumentsError} from './throw.js';
4
- import {waitForBothSubprocesses} from './sequence.js';
5
- import {pipeSubprocessStream} from './streaming.js';
6
- import {unpipeOnAbort} from './abort.js';
7
-
8
- // Pipe a subprocess' `stdout`/`stderr`/`stdio` into another subprocess' `stdin`
9
- export const pipeToSubprocess = (sourceInfo, ...pipeArguments) => {
10
- if (isPlainObject(pipeArguments[0])) {
11
- return pipeToSubprocess.bind(undefined, {
12
- ...sourceInfo,
13
- boundOptions: {...sourceInfo.boundOptions, ...pipeArguments[0]},
14
- });
15
- }
16
-
17
- const {destination, ...normalizedInfo} = normalizePipeArguments(sourceInfo, ...pipeArguments);
18
- const promise = handlePipePromise({...normalizedInfo, destination});
19
- promise.pipe = pipeToSubprocess.bind(undefined, {
20
- ...sourceInfo,
21
- source: destination,
22
- sourcePromise: promise,
23
- boundOptions: {},
24
- });
25
- return promise;
26
- };
27
-
28
- // Asynchronous logic when piping subprocesses
29
- const handlePipePromise = async ({
30
- sourcePromise,
31
- sourceStream,
32
- sourceOptions,
33
- sourceError,
34
- destination,
35
- destinationStream,
36
- destinationError,
37
- unpipeSignal,
38
- fileDescriptors,
39
- startTime,
40
- }) => {
41
- const subprocessPromises = getSubprocessPromises(sourcePromise, destination);
42
- handlePipeArgumentsError({
43
- sourceStream,
44
- sourceError,
45
- destinationStream,
46
- destinationError,
47
- fileDescriptors,
48
- sourceOptions,
49
- startTime,
50
- });
51
- const maxListenersController = new AbortController();
52
- try {
53
- const mergedStream = pipeSubprocessStream(sourceStream, destinationStream, maxListenersController);
54
- return await Promise.race([
55
- waitForBothSubprocesses(subprocessPromises),
56
- ...unpipeOnAbort(unpipeSignal, {
57
- sourceStream,
58
- mergedStream,
59
- sourceOptions,
60
- fileDescriptors,
61
- startTime,
62
- }),
63
- ]);
64
- } finally {
65
- maxListenersController.abort();
66
- }
67
- };
68
-
69
- // `.pipe()` awaits the subprocess promises.
70
- // When invalid arguments are passed to `.pipe()`, we throw an error, which prevents awaiting them.
71
- // We need to ensure this does not create unhandled rejections.
72
- const getSubprocessPromises = (sourcePromise, destination) => Promise.allSettled([sourcePromise, destination]);