@pnpm/exe 12.9.0 → 12.10.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 (606) hide show
  1. package/bin/pnpm.mjs +2 -3
  2. package/dist/node_modules/.bin/get-pnpm +10 -6
  3. package/dist/node_modules/.bin/node-gyp +10 -6
  4. package/dist/node_modules/.bin/node-which +10 -6
  5. package/dist/node_modules/.bin/nopt +10 -6
  6. package/dist/node_modules/.bin/semver +10 -6
  7. package/dist/node_modules/.pnpm-workspace-state-v1.json +14 -13
  8. package/install.js +8 -11
  9. package/package.json +15 -15
  10. package/pn +76 -2
  11. package/pnpm +98 -2
  12. package/pnpx +76 -2
  13. package/pnx +76 -2
  14. package/dist/wasm/LICENSE +0 -22
  15. package/dist/wasm/README.md +0 -140
  16. package/dist/wasm/THIRD-PARTY-NOTICES.md +0 -42
  17. package/dist/wasm/host/atomic-waits.mjs +0 -43
  18. package/dist/wasm/host/cancellation.mjs +0 -6
  19. package/dist/wasm/host/executable-mode.mjs +0 -8
  20. package/dist/wasm/host/file-locks.mjs +0 -40
  21. package/dist/wasm/host/filesystem.mjs +0 -318
  22. package/dist/wasm/host/guest-imports.mjs +0 -45
  23. package/dist/wasm/host/guest-operations.mjs +0 -148
  24. package/dist/wasm/host/lock-registry.mjs +0 -167
  25. package/dist/wasm/host/network.mjs +0 -76
  26. package/dist/wasm/host/operations.mjs +0 -67
  27. package/dist/wasm/host/poll.mjs +0 -74
  28. package/dist/wasm/host/process-stdio.mjs +0 -41
  29. package/dist/wasm/host/process-tree.mjs +0 -54
  30. package/dist/wasm/host/process.mjs +0 -126
  31. package/dist/wasm/host/protocol.mjs +0 -1
  32. package/dist/wasm/host/resources.mjs +0 -76
  33. package/dist/wasm/host/shell-runner.mjs +0 -8
  34. package/dist/wasm/host/shell.mjs +0 -19
  35. package/dist/wasm/host/signals.mjs +0 -49
  36. package/dist/wasm/host/terminal-input.mjs +0 -7
  37. package/dist/wasm/host/terminal-password.mjs +0 -32
  38. package/dist/wasm/host/terminal-session.mjs +0 -114
  39. package/dist/wasm/host/terminal.mjs +0 -61
  40. package/dist/wasm/host/thread-spawn.mjs +0 -21
  41. package/dist/wasm/host/upload.mjs +0 -21
  42. package/dist/wasm/host/wait-for-reply.mjs +0 -7
  43. package/dist/wasm/host/wasi-errno.mjs +0 -81
  44. package/dist/wasm/host/wasi-imports.mjs +0 -58
  45. package/dist/wasm/node_modules/.bin/js-yaml +0 -91
  46. package/dist/wasm/node_modules/.bin/node-which +0 -91
  47. package/dist/wasm/node_modules/.bin/shell +0 -91
  48. package/dist/wasm/node_modules/.pnpm-workspace-state-v1.json +0 -355
  49. package/dist/wasm/node_modules/@emnapi/wasi-threads/LICENSE +0 -21
  50. package/dist/wasm/node_modules/@emnapi/wasi-threads/README.md +0 -203
  51. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.cjs.js +0 -894
  52. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.cjs.min.d.ts +0 -272
  53. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.cjs.min.js +0 -1
  54. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.d.mts +0 -272
  55. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.d.ts +0 -274
  56. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.esm-bundler.js +0 -942
  57. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.js +0 -954
  58. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.min.d.mts +0 -272
  59. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.min.js +0 -1
  60. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.min.mjs +0 -1
  61. package/dist/wasm/node_modules/@emnapi/wasi-threads/dist/wasi-threads.mjs +0 -889
  62. package/dist/wasm/node_modules/@emnapi/wasi-threads/index.js +0 -5
  63. package/dist/wasm/node_modules/@emnapi/wasi-threads/package.json +0 -50
  64. package/dist/wasm/node_modules/@nodelib/fs.scandir/LICENSE +0 -21
  65. package/dist/wasm/node_modules/@nodelib/fs.scandir/README.md +0 -171
  66. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +0 -20
  67. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +0 -19
  68. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/constants.d.ts +0 -4
  69. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/constants.js +0 -17
  70. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/index.d.ts +0 -12
  71. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/index.js +0 -26
  72. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +0 -7
  73. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/async.js +0 -104
  74. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +0 -1
  75. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/common.js +0 -13
  76. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +0 -5
  77. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/providers/sync.js +0 -54
  78. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/settings.d.ts +0 -20
  79. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/settings.js +0 -24
  80. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/types/index.d.ts +0 -20
  81. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/types/index.js +0 -2
  82. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +0 -2
  83. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/utils/fs.js +0 -19
  84. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +0 -2
  85. package/dist/wasm/node_modules/@nodelib/fs.scandir/out/utils/index.js +0 -5
  86. package/dist/wasm/node_modules/@nodelib/fs.scandir/package.json +0 -44
  87. package/dist/wasm/node_modules/@nodelib/fs.stat/LICENSE +0 -21
  88. package/dist/wasm/node_modules/@nodelib/fs.stat/README.md +0 -126
  89. package/dist/wasm/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +0 -13
  90. package/dist/wasm/node_modules/@nodelib/fs.stat/out/adapters/fs.js +0 -17
  91. package/dist/wasm/node_modules/@nodelib/fs.stat/out/index.d.ts +0 -12
  92. package/dist/wasm/node_modules/@nodelib/fs.stat/out/index.js +0 -26
  93. package/dist/wasm/node_modules/@nodelib/fs.stat/out/providers/async.d.ts +0 -4
  94. package/dist/wasm/node_modules/@nodelib/fs.stat/out/providers/async.js +0 -36
  95. package/dist/wasm/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +0 -3
  96. package/dist/wasm/node_modules/@nodelib/fs.stat/out/providers/sync.js +0 -23
  97. package/dist/wasm/node_modules/@nodelib/fs.stat/out/settings.d.ts +0 -16
  98. package/dist/wasm/node_modules/@nodelib/fs.stat/out/settings.js +0 -16
  99. package/dist/wasm/node_modules/@nodelib/fs.stat/out/types/index.d.ts +0 -4
  100. package/dist/wasm/node_modules/@nodelib/fs.stat/out/types/index.js +0 -2
  101. package/dist/wasm/node_modules/@nodelib/fs.stat/package.json +0 -37
  102. package/dist/wasm/node_modules/@nodelib/fs.walk/LICENSE +0 -21
  103. package/dist/wasm/node_modules/@nodelib/fs.walk/README.md +0 -215
  104. package/dist/wasm/node_modules/@nodelib/fs.walk/out/index.d.ts +0 -14
  105. package/dist/wasm/node_modules/@nodelib/fs.walk/out/index.js +0 -34
  106. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/async.d.ts +0 -12
  107. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/async.js +0 -30
  108. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/index.d.ts +0 -4
  109. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/index.js +0 -9
  110. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +0 -12
  111. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/stream.js +0 -34
  112. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +0 -10
  113. package/dist/wasm/node_modules/@nodelib/fs.walk/out/providers/sync.js +0 -14
  114. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/async.d.ts +0 -30
  115. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/async.js +0 -97
  116. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/common.d.ts +0 -7
  117. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/common.js +0 -31
  118. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +0 -6
  119. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/reader.js +0 -11
  120. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +0 -15
  121. package/dist/wasm/node_modules/@nodelib/fs.walk/out/readers/sync.js +0 -59
  122. package/dist/wasm/node_modules/@nodelib/fs.walk/out/settings.d.ts +0 -30
  123. package/dist/wasm/node_modules/@nodelib/fs.walk/out/settings.js +0 -26
  124. package/dist/wasm/node_modules/@nodelib/fs.walk/out/types/index.d.ts +0 -8
  125. package/dist/wasm/node_modules/@nodelib/fs.walk/out/types/index.js +0 -2
  126. package/dist/wasm/node_modules/@nodelib/fs.walk/package.json +0 -44
  127. package/dist/wasm/node_modules/@tybys/wasm-util/LICENSE +0 -21
  128. package/dist/wasm/node_modules/@tybys/wasm-util/README.md +0 -193
  129. package/dist/wasm/node_modules/@tybys/wasm-util/dist/tsdoc-metadata.json +0 -11
  130. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.d.ts +0 -423
  131. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.esm-bundler.js +0 -2932
  132. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.esm.js +0 -2932
  133. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.esm.min.js +0 -1
  134. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.js +0 -2954
  135. package/dist/wasm/node_modules/@tybys/wasm-util/dist/wasm-util.min.js +0 -1
  136. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/asyncify.js +0 -158
  137. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/index.js +0 -13
  138. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/jspi.js +0 -46
  139. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/load.js +0 -97
  140. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/memory.js +0 -35
  141. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/error.js +0 -103
  142. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/fd.js +0 -268
  143. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/fs.js +0 -3
  144. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/index.js +0 -192
  145. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/path.js +0 -316
  146. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/preview1.js +0 -1599
  147. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/rights.js +0 -141
  148. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/types.js +0 -220
  149. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/wasi/util.js +0 -128
  150. package/dist/wasm/node_modules/@tybys/wasm-util/lib/cjs/webassembly.js +0 -13
  151. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/asyncify.mjs +0 -153
  152. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/index.mjs +0 -9
  153. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/jspi.mjs +0 -39
  154. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/load.mjs +0 -89
  155. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/memory.mjs +0 -28
  156. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/error.mjs +0 -97
  157. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/fd.mjs +0 -256
  158. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/fs.mjs +0 -1
  159. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/index.mjs +0 -186
  160. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/path.mjs +0 -310
  161. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/preview1.mjs +0 -1593
  162. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/rights.mjs +0 -135
  163. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/types.mjs +0 -216
  164. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/wasi/util.mjs +0 -113
  165. package/dist/wasm/node_modules/@tybys/wasm-util/lib/mjs/webassembly.mjs +0 -9
  166. package/dist/wasm/node_modules/@tybys/wasm-util/package.json +0 -58
  167. package/dist/wasm/node_modules/@types/braces/LICENSE +0 -21
  168. package/dist/wasm/node_modules/@types/braces/README.md +0 -15
  169. package/dist/wasm/node_modules/@types/braces/index.d.ts +0 -100
  170. package/dist/wasm/node_modules/@types/braces/package.json +0 -36
  171. package/dist/wasm/node_modules/@types/micromatch/LICENSE +0 -21
  172. package/dist/wasm/node_modules/@types/micromatch/README.md +0 -15
  173. package/dist/wasm/node_modules/@types/micromatch/index.d.ts +0 -670
  174. package/dist/wasm/node_modules/@types/micromatch/package.json +0 -28
  175. package/dist/wasm/node_modules/@yarnpkg/fslib/README.md +0 -17
  176. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/AliasFS.d.ts +0 -16
  177. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/AliasFS.js +0 -24
  178. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/CwdFS.d.ts +0 -15
  179. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/CwdFS.js +0 -36
  180. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/FakeFS.d.ts +0 -398
  181. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/FakeFS.js +0 -451
  182. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/JailFS.d.ts +0 -16
  183. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/JailFS.js +0 -35
  184. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/LazyFS.d.ts +0 -13
  185. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/LazyFS.js +0 -26
  186. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/MountFS.d.ts +0 -278
  187. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/MountFS.js +0 -873
  188. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NoFS.d.ts +0 -78
  189. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NoFS.js +0 -229
  190. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NodeFS.d.ts +0 -223
  191. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NodeFS.js +0 -476
  192. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NodePathFS.d.ts +0 -18
  193. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/NodePathFS.js +0 -47
  194. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/PosixFS.d.ts +0 -9
  195. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/PosixFS.js +0 -18
  196. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/ProxiedFS.d.ts +0 -229
  197. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js +0 -255
  198. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/VirtualFS.d.ts +0 -19
  199. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/VirtualFS.js +0 -89
  200. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.d.ts +0 -19
  201. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js +0 -271
  202. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.d.ts +0 -22
  203. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js +0 -65
  204. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.d.ts +0 -59
  205. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js +0 -139
  206. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.d.ts +0 -6
  207. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js +0 -67
  208. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/constants.d.ts +0 -13
  209. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/constants.js +0 -16
  210. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/errors.d.ts +0 -36
  211. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/errors.js +0 -54
  212. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/index.d.ts +0 -48
  213. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/index.js +0 -55
  214. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.d.ts +0 -81
  215. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js +0 -254
  216. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.d.ts +0 -5
  217. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js +0 -265
  218. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/path.d.ts +0 -84
  219. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/path.js +0 -103
  220. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/statUtils.d.ts +0 -81
  221. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/statUtils.js +0 -238
  222. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/xfs.d.ts +0 -18
  223. package/dist/wasm/node_modules/@yarnpkg/fslib/lib/xfs.js +0 -123
  224. package/dist/wasm/node_modules/@yarnpkg/fslib/package.json +0 -42
  225. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/resolution.d.ts +0 -1
  226. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js +0 -530
  227. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/resolution.pegjs +0 -17
  228. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/shell.d.ts +0 -92
  229. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/shell.js +0 -3653
  230. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/shell.pegjs +0 -189
  231. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/syml.d.ts +0 -1
  232. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/syml.js +0 -1911
  233. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/grammars/syml.pegjs +0 -125
  234. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/index.d.ts +0 -6
  235. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/index.js +0 -24
  236. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/resolution.d.ts +0 -12
  237. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/resolution.js +0 -31
  238. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/shell.d.ts +0 -19
  239. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/shell.js +0 -170
  240. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/syml.d.ts +0 -11
  241. package/dist/wasm/node_modules/@yarnpkg/parsers/lib/syml.js +0 -132
  242. package/dist/wasm/node_modules/@yarnpkg/parsers/package.json +0 -46
  243. package/dist/wasm/node_modules/@yarnpkg/shell/README.md +0 -38
  244. package/dist/wasm/node_modules/@yarnpkg/shell/lib/boot-cli-dev.js +0 -3
  245. package/dist/wasm/node_modules/@yarnpkg/shell/lib/cli.d.ts +0 -2
  246. package/dist/wasm/node_modules/@yarnpkg/shell/lib/cli.js +0 -19
  247. package/dist/wasm/node_modules/@yarnpkg/shell/lib/commands/entry.d.ts +0 -8
  248. package/dist/wasm/node_modules/@yarnpkg/shell/lib/commands/entry.js +0 -60
  249. package/dist/wasm/node_modules/@yarnpkg/shell/lib/errors.d.ts +0 -6
  250. package/dist/wasm/node_modules/@yarnpkg/shell/lib/errors.js +0 -13
  251. package/dist/wasm/node_modules/@yarnpkg/shell/lib/globUtils.d.ts +0 -23
  252. package/dist/wasm/node_modules/@yarnpkg/shell/lib/globUtils.js +0 -47
  253. package/dist/wasm/node_modules/@yarnpkg/shell/lib/index.d.ts +0 -56
  254. package/dist/wasm/node_modules/@yarnpkg/shell/lib/index.js +0 -926
  255. package/dist/wasm/node_modules/@yarnpkg/shell/lib/pipe.d.ts +0 -54
  256. package/dist/wasm/node_modules/@yarnpkg/shell/lib/pipe.js +0 -281
  257. package/dist/wasm/node_modules/@yarnpkg/shell/package.json +0 -54
  258. package/dist/wasm/node_modules/ansi-styles/index.d.ts +0 -345
  259. package/dist/wasm/node_modules/ansi-styles/index.js +0 -163
  260. package/dist/wasm/node_modules/ansi-styles/license +0 -9
  261. package/dist/wasm/node_modules/ansi-styles/package.json +0 -56
  262. package/dist/wasm/node_modules/ansi-styles/readme.md +0 -152
  263. package/dist/wasm/node_modules/argparse/CHANGELOG.md +0 -216
  264. package/dist/wasm/node_modules/argparse/LICENSE +0 -254
  265. package/dist/wasm/node_modules/argparse/README.md +0 -84
  266. package/dist/wasm/node_modules/argparse/argparse.js +0 -3707
  267. package/dist/wasm/node_modules/argparse/lib/sub.js +0 -67
  268. package/dist/wasm/node_modules/argparse/lib/textwrap.js +0 -440
  269. package/dist/wasm/node_modules/argparse/package.json +0 -31
  270. package/dist/wasm/node_modules/braces/LICENSE +0 -21
  271. package/dist/wasm/node_modules/braces/README.md +0 -586
  272. package/dist/wasm/node_modules/braces/index.js +0 -170
  273. package/dist/wasm/node_modules/braces/lib/compile.js +0 -60
  274. package/dist/wasm/node_modules/braces/lib/constants.js +0 -57
  275. package/dist/wasm/node_modules/braces/lib/expand.js +0 -113
  276. package/dist/wasm/node_modules/braces/lib/parse.js +0 -331
  277. package/dist/wasm/node_modules/braces/lib/stringify.js +0 -32
  278. package/dist/wasm/node_modules/braces/lib/utils.js +0 -122
  279. package/dist/wasm/node_modules/braces/package.json +0 -77
  280. package/dist/wasm/node_modules/chalk/index.d.ts +0 -415
  281. package/dist/wasm/node_modules/chalk/license +0 -9
  282. package/dist/wasm/node_modules/chalk/package.json +0 -68
  283. package/dist/wasm/node_modules/chalk/readme.md +0 -341
  284. package/dist/wasm/node_modules/chalk/source/index.js +0 -229
  285. package/dist/wasm/node_modules/chalk/source/templates.js +0 -134
  286. package/dist/wasm/node_modules/chalk/source/util.js +0 -39
  287. package/dist/wasm/node_modules/clipanion/README.md +0 -98
  288. package/dist/wasm/node_modules/clipanion/lib/advanced/Cli.d.ts +0 -225
  289. package/dist/wasm/node_modules/clipanion/lib/advanced/Cli.js +0 -406
  290. package/dist/wasm/node_modules/clipanion/lib/advanced/Cli.mjs +0 -398
  291. package/dist/wasm/node_modules/clipanion/lib/advanced/Command.d.ts +0 -144
  292. package/dist/wasm/node_modules/clipanion/lib/advanced/Command.js +0 -91
  293. package/dist/wasm/node_modules/clipanion/lib/advanced/Command.mjs +0 -67
  294. package/dist/wasm/node_modules/clipanion/lib/advanced/HelpCommand.d.ts +0 -11
  295. package/dist/wasm/node_modules/clipanion/lib/advanced/HelpCommand.js +0 -54
  296. package/dist/wasm/node_modules/clipanion/lib/advanced/HelpCommand.mjs +0 -50
  297. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/definitions.d.ts +0 -8
  298. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/definitions.js +0 -17
  299. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/definitions.mjs +0 -13
  300. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/help.d.ts +0 -10
  301. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/help.js +0 -19
  302. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/help.mjs +0 -15
  303. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/index.d.ts +0 -3
  304. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/index.js +0 -13
  305. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/index.mjs +0 -3
  306. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/version.d.ts +0 -10
  307. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/version.js +0 -20
  308. package/dist/wasm/node_modules/clipanion/lib/advanced/builtins/version.mjs +0 -16
  309. package/dist/wasm/node_modules/clipanion/lib/advanced/index.d.ts +0 -7
  310. package/dist/wasm/node_modules/clipanion/lib/advanced/index.js +0 -19
  311. package/dist/wasm/node_modules/clipanion/lib/advanced/index.mjs +0 -8
  312. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Array.d.ts +0 -17
  313. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Array.js +0 -37
  314. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Array.mjs +0 -33
  315. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Boolean.d.ts +0 -14
  316. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Boolean.js +0 -34
  317. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Boolean.mjs +0 -30
  318. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Counter.d.ts +0 -15
  319. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Counter.js +0 -41
  320. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Counter.mjs +0 -37
  321. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Proxy.d.ts +0 -18
  322. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Proxy.js +0 -35
  323. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Proxy.mjs +0 -31
  324. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Rest.d.ts +0 -18
  325. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Rest.js +0 -51
  326. package/dist/wasm/node_modules/clipanion/lib/advanced/options/Rest.mjs +0 -47
  327. package/dist/wasm/node_modules/clipanion/lib/advanced/options/String.d.ts +0 -49
  328. package/dist/wasm/node_modules/clipanion/lib/advanced/options/String.js +0 -84
  329. package/dist/wasm/node_modules/clipanion/lib/advanced/options/String.mjs +0 -80
  330. package/dist/wasm/node_modules/clipanion/lib/advanced/options/index.d.ts +0 -7
  331. package/dist/wasm/node_modules/clipanion/lib/advanced/options/index.js +0 -26
  332. package/dist/wasm/node_modules/clipanion/lib/advanced/options/index.mjs +0 -7
  333. package/dist/wasm/node_modules/clipanion/lib/advanced/options/utils.d.ts +0 -25
  334. package/dist/wasm/node_modules/clipanion/lib/advanced/options/utils.js +0 -59
  335. package/dist/wasm/node_modules/clipanion/lib/advanced/options/utils.mjs +0 -50
  336. package/dist/wasm/node_modules/clipanion/lib/constants.d.ts +0 -11
  337. package/dist/wasm/node_modules/clipanion/lib/constants.js +0 -27
  338. package/dist/wasm/node_modules/clipanion/lib/constants.mjs +0 -13
  339. package/dist/wasm/node_modules/clipanion/lib/core.d.ts +0 -462
  340. package/dist/wasm/node_modules/clipanion/lib/core.js +0 -827
  341. package/dist/wasm/node_modules/clipanion/lib/core.mjs +0 -800
  342. package/dist/wasm/node_modules/clipanion/lib/demos/advanced.d.ts +0 -22
  343. package/dist/wasm/node_modules/clipanion/lib/errors.d.ts +0 -52
  344. package/dist/wasm/node_modules/clipanion/lib/errors.js +0 -70
  345. package/dist/wasm/node_modules/clipanion/lib/errors.mjs +0 -64
  346. package/dist/wasm/node_modules/clipanion/lib/format.d.ts +0 -19
  347. package/dist/wasm/node_modules/clipanion/lib/format.js +0 -74
  348. package/dist/wasm/node_modules/clipanion/lib/format.mjs +0 -68
  349. package/dist/wasm/node_modules/clipanion/package.json +0 -68
  350. package/dist/wasm/node_modules/color-convert/CHANGELOG.md +0 -54
  351. package/dist/wasm/node_modules/color-convert/LICENSE +0 -21
  352. package/dist/wasm/node_modules/color-convert/README.md +0 -68
  353. package/dist/wasm/node_modules/color-convert/conversions.js +0 -839
  354. package/dist/wasm/node_modules/color-convert/index.js +0 -81
  355. package/dist/wasm/node_modules/color-convert/package.json +0 -48
  356. package/dist/wasm/node_modules/color-convert/route.js +0 -97
  357. package/dist/wasm/node_modules/color-name/LICENSE +0 -8
  358. package/dist/wasm/node_modules/color-name/README.md +0 -11
  359. package/dist/wasm/node_modules/color-name/index.js +0 -152
  360. package/dist/wasm/node_modules/color-name/package.json +0 -28
  361. package/dist/wasm/node_modules/cross-spawn/LICENSE +0 -21
  362. package/dist/wasm/node_modules/cross-spawn/README.md +0 -89
  363. package/dist/wasm/node_modules/cross-spawn/index.js +0 -39
  364. package/dist/wasm/node_modules/cross-spawn/lib/enoent.js +0 -59
  365. package/dist/wasm/node_modules/cross-spawn/lib/parse.js +0 -91
  366. package/dist/wasm/node_modules/cross-spawn/lib/util/escape.js +0 -47
  367. package/dist/wasm/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  368. package/dist/wasm/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  369. package/dist/wasm/node_modules/cross-spawn/package.json +0 -73
  370. package/dist/wasm/node_modules/fast-glob/LICENSE +0 -21
  371. package/dist/wasm/node_modules/fast-glob/README.md +0 -830
  372. package/dist/wasm/node_modules/fast-glob/out/index.d.ts +0 -40
  373. package/dist/wasm/node_modules/fast-glob/out/index.js +0 -102
  374. package/dist/wasm/node_modules/fast-glob/out/managers/tasks.d.ts +0 -22
  375. package/dist/wasm/node_modules/fast-glob/out/managers/tasks.js +0 -110
  376. package/dist/wasm/node_modules/fast-glob/out/providers/async.d.ts +0 -9
  377. package/dist/wasm/node_modules/fast-glob/out/providers/async.js +0 -23
  378. package/dist/wasm/node_modules/fast-glob/out/providers/filters/deep.d.ts +0 -16
  379. package/dist/wasm/node_modules/fast-glob/out/providers/filters/deep.js +0 -62
  380. package/dist/wasm/node_modules/fast-glob/out/providers/filters/entry.d.ts +0 -17
  381. package/dist/wasm/node_modules/fast-glob/out/providers/filters/entry.js +0 -85
  382. package/dist/wasm/node_modules/fast-glob/out/providers/filters/error.d.ts +0 -8
  383. package/dist/wasm/node_modules/fast-glob/out/providers/filters/error.js +0 -15
  384. package/dist/wasm/node_modules/fast-glob/out/providers/matchers/matcher.d.ts +0 -33
  385. package/dist/wasm/node_modules/fast-glob/out/providers/matchers/matcher.js +0 -45
  386. package/dist/wasm/node_modules/fast-glob/out/providers/matchers/partial.d.ts +0 -4
  387. package/dist/wasm/node_modules/fast-glob/out/providers/matchers/partial.js +0 -38
  388. package/dist/wasm/node_modules/fast-glob/out/providers/provider.d.ts +0 -19
  389. package/dist/wasm/node_modules/fast-glob/out/providers/provider.js +0 -48
  390. package/dist/wasm/node_modules/fast-glob/out/providers/stream.d.ts +0 -11
  391. package/dist/wasm/node_modules/fast-glob/out/providers/stream.js +0 -31
  392. package/dist/wasm/node_modules/fast-glob/out/providers/sync.d.ts +0 -9
  393. package/dist/wasm/node_modules/fast-glob/out/providers/sync.js +0 -23
  394. package/dist/wasm/node_modules/fast-glob/out/providers/transformers/entry.d.ts +0 -8
  395. package/dist/wasm/node_modules/fast-glob/out/providers/transformers/entry.js +0 -26
  396. package/dist/wasm/node_modules/fast-glob/out/readers/async.d.ts +0 -10
  397. package/dist/wasm/node_modules/fast-glob/out/readers/async.js +0 -35
  398. package/dist/wasm/node_modules/fast-glob/out/readers/reader.d.ts +0 -15
  399. package/dist/wasm/node_modules/fast-glob/out/readers/reader.js +0 -33
  400. package/dist/wasm/node_modules/fast-glob/out/readers/stream.d.ts +0 -14
  401. package/dist/wasm/node_modules/fast-glob/out/readers/stream.js +0 -55
  402. package/dist/wasm/node_modules/fast-glob/out/readers/sync.d.ts +0 -12
  403. package/dist/wasm/node_modules/fast-glob/out/readers/sync.js +0 -43
  404. package/dist/wasm/node_modules/fast-glob/out/settings.d.ts +0 -164
  405. package/dist/wasm/node_modules/fast-glob/out/settings.js +0 -59
  406. package/dist/wasm/node_modules/fast-glob/out/types/index.d.ts +0 -31
  407. package/dist/wasm/node_modules/fast-glob/out/types/index.js +0 -2
  408. package/dist/wasm/node_modules/fast-glob/out/utils/array.d.ts +0 -2
  409. package/dist/wasm/node_modules/fast-glob/out/utils/array.js +0 -22
  410. package/dist/wasm/node_modules/fast-glob/out/utils/errno.d.ts +0 -2
  411. package/dist/wasm/node_modules/fast-glob/out/utils/errno.js +0 -7
  412. package/dist/wasm/node_modules/fast-glob/out/utils/fs.d.ts +0 -4
  413. package/dist/wasm/node_modules/fast-glob/out/utils/fs.js +0 -19
  414. package/dist/wasm/node_modules/fast-glob/out/utils/index.d.ts +0 -8
  415. package/dist/wasm/node_modules/fast-glob/out/utils/index.js +0 -17
  416. package/dist/wasm/node_modules/fast-glob/out/utils/path.d.ts +0 -13
  417. package/dist/wasm/node_modules/fast-glob/out/utils/path.js +0 -68
  418. package/dist/wasm/node_modules/fast-glob/out/utils/pattern.d.ts +0 -49
  419. package/dist/wasm/node_modules/fast-glob/out/utils/pattern.js +0 -206
  420. package/dist/wasm/node_modules/fast-glob/out/utils/stream.d.ts +0 -4
  421. package/dist/wasm/node_modules/fast-glob/out/utils/stream.js +0 -17
  422. package/dist/wasm/node_modules/fast-glob/out/utils/string.d.ts +0 -2
  423. package/dist/wasm/node_modules/fast-glob/out/utils/string.js +0 -11
  424. package/dist/wasm/node_modules/fast-glob/package.json +0 -81
  425. package/dist/wasm/node_modules/fastq/LICENSE +0 -13
  426. package/dist/wasm/node_modules/fastq/README.md +0 -310
  427. package/dist/wasm/node_modules/fastq/SECURITY.md +0 -15
  428. package/dist/wasm/node_modules/fastq/bench.js +0 -66
  429. package/dist/wasm/node_modules/fastq/eslint.config.js +0 -11
  430. package/dist/wasm/node_modules/fastq/example.js +0 -14
  431. package/dist/wasm/node_modules/fastq/example.mjs +0 -9
  432. package/dist/wasm/node_modules/fastq/index.d.ts +0 -59
  433. package/dist/wasm/node_modules/fastq/package.json +0 -49
  434. package/dist/wasm/node_modules/fastq/queue.js +0 -348
  435. package/dist/wasm/node_modules/fastq/test/example.ts +0 -83
  436. package/dist/wasm/node_modules/fastq/test/promise.js +0 -356
  437. package/dist/wasm/node_modules/fastq/test/test.js +0 -808
  438. package/dist/wasm/node_modules/fastq/test/tsconfig.json +0 -11
  439. package/dist/wasm/node_modules/fill-range/LICENSE +0 -21
  440. package/dist/wasm/node_modules/fill-range/README.md +0 -237
  441. package/dist/wasm/node_modules/fill-range/index.js +0 -248
  442. package/dist/wasm/node_modules/fill-range/package.json +0 -74
  443. package/dist/wasm/node_modules/glob-parent/CHANGELOG.md +0 -110
  444. package/dist/wasm/node_modules/glob-parent/LICENSE +0 -15
  445. package/dist/wasm/node_modules/glob-parent/README.md +0 -137
  446. package/dist/wasm/node_modules/glob-parent/index.js +0 -42
  447. package/dist/wasm/node_modules/glob-parent/package.json +0 -48
  448. package/dist/wasm/node_modules/has-flag/index.d.ts +0 -39
  449. package/dist/wasm/node_modules/has-flag/index.js +0 -8
  450. package/dist/wasm/node_modules/has-flag/license +0 -9
  451. package/dist/wasm/node_modules/has-flag/package.json +0 -46
  452. package/dist/wasm/node_modules/has-flag/readme.md +0 -89
  453. package/dist/wasm/node_modules/is-extglob/LICENSE +0 -21
  454. package/dist/wasm/node_modules/is-extglob/README.md +0 -107
  455. package/dist/wasm/node_modules/is-extglob/index.js +0 -20
  456. package/dist/wasm/node_modules/is-extglob/package.json +0 -69
  457. package/dist/wasm/node_modules/is-glob/LICENSE +0 -21
  458. package/dist/wasm/node_modules/is-glob/README.md +0 -206
  459. package/dist/wasm/node_modules/is-glob/index.js +0 -150
  460. package/dist/wasm/node_modules/is-glob/package.json +0 -81
  461. package/dist/wasm/node_modules/is-number/LICENSE +0 -21
  462. package/dist/wasm/node_modules/is-number/README.md +0 -187
  463. package/dist/wasm/node_modules/is-number/index.js +0 -18
  464. package/dist/wasm/node_modules/is-number/package.json +0 -82
  465. package/dist/wasm/node_modules/isexe/.npmignore +0 -2
  466. package/dist/wasm/node_modules/isexe/LICENSE +0 -15
  467. package/dist/wasm/node_modules/isexe/README.md +0 -51
  468. package/dist/wasm/node_modules/isexe/index.js +0 -57
  469. package/dist/wasm/node_modules/isexe/mode.js +0 -41
  470. package/dist/wasm/node_modules/isexe/package.json +0 -31
  471. package/dist/wasm/node_modules/isexe/test/basic.js +0 -221
  472. package/dist/wasm/node_modules/isexe/windows.js +0 -42
  473. package/dist/wasm/node_modules/js-yaml/LICENSE +0 -21
  474. package/dist/wasm/node_modules/js-yaml/README.md +0 -246
  475. package/dist/wasm/node_modules/js-yaml/bin/js-yaml.js +0 -126
  476. package/dist/wasm/node_modules/js-yaml/dist/js-yaml.js +0 -3874
  477. package/dist/wasm/node_modules/js-yaml/dist/js-yaml.min.js +0 -2
  478. package/dist/wasm/node_modules/js-yaml/dist/js-yaml.mjs +0 -3851
  479. package/dist/wasm/node_modules/js-yaml/index.js +0 -30
  480. package/dist/wasm/node_modules/js-yaml/lib/common.js +0 -59
  481. package/dist/wasm/node_modules/js-yaml/lib/dumper.js +0 -979
  482. package/dist/wasm/node_modules/js-yaml/lib/exception.js +0 -55
  483. package/dist/wasm/node_modules/js-yaml/lib/loader.js +0 -1733
  484. package/dist/wasm/node_modules/js-yaml/lib/schema/core.js +0 -11
  485. package/dist/wasm/node_modules/js-yaml/lib/schema/default.js +0 -22
  486. package/dist/wasm/node_modules/js-yaml/lib/schema/failsafe.js +0 -17
  487. package/dist/wasm/node_modules/js-yaml/lib/schema/json.js +0 -19
  488. package/dist/wasm/node_modules/js-yaml/lib/schema.js +0 -121
  489. package/dist/wasm/node_modules/js-yaml/lib/snippet.js +0 -101
  490. package/dist/wasm/node_modules/js-yaml/lib/type/binary.js +0 -125
  491. package/dist/wasm/node_modules/js-yaml/lib/type/bool.js +0 -35
  492. package/dist/wasm/node_modules/js-yaml/lib/type/float.js +0 -97
  493. package/dist/wasm/node_modules/js-yaml/lib/type/int.js +0 -156
  494. package/dist/wasm/node_modules/js-yaml/lib/type/map.js +0 -8
  495. package/dist/wasm/node_modules/js-yaml/lib/type/merge.js +0 -12
  496. package/dist/wasm/node_modules/js-yaml/lib/type/null.js +0 -35
  497. package/dist/wasm/node_modules/js-yaml/lib/type/omap.js +0 -44
  498. package/dist/wasm/node_modules/js-yaml/lib/type/pairs.js +0 -53
  499. package/dist/wasm/node_modules/js-yaml/lib/type/seq.js +0 -8
  500. package/dist/wasm/node_modules/js-yaml/lib/type/set.js +0 -29
  501. package/dist/wasm/node_modules/js-yaml/lib/type/str.js +0 -8
  502. package/dist/wasm/node_modules/js-yaml/lib/type/timestamp.js +0 -88
  503. package/dist/wasm/node_modules/js-yaml/lib/type.js +0 -65
  504. package/dist/wasm/node_modules/js-yaml/package.json +0 -65
  505. package/dist/wasm/node_modules/merge2/LICENSE +0 -21
  506. package/dist/wasm/node_modules/merge2/README.md +0 -144
  507. package/dist/wasm/node_modules/merge2/index.js +0 -144
  508. package/dist/wasm/node_modules/merge2/package.json +0 -43
  509. package/dist/wasm/node_modules/micromatch/LICENSE +0 -21
  510. package/dist/wasm/node_modules/micromatch/README.md +0 -1024
  511. package/dist/wasm/node_modules/micromatch/index.js +0 -474
  512. package/dist/wasm/node_modules/micromatch/package.json +0 -119
  513. package/dist/wasm/node_modules/path-key/index.d.ts +0 -40
  514. package/dist/wasm/node_modules/path-key/index.js +0 -16
  515. package/dist/wasm/node_modules/path-key/license +0 -9
  516. package/dist/wasm/node_modules/path-key/package.json +0 -39
  517. package/dist/wasm/node_modules/path-key/readme.md +0 -61
  518. package/dist/wasm/node_modules/picomatch/LICENSE +0 -21
  519. package/dist/wasm/node_modules/picomatch/README.md +0 -716
  520. package/dist/wasm/node_modules/picomatch/index.js +0 -3
  521. package/dist/wasm/node_modules/picomatch/lib/constants.js +0 -184
  522. package/dist/wasm/node_modules/picomatch/lib/parse.js +0 -1392
  523. package/dist/wasm/node_modules/picomatch/lib/picomatch.js +0 -342
  524. package/dist/wasm/node_modules/picomatch/lib/scan.js +0 -391
  525. package/dist/wasm/node_modules/picomatch/lib/utils.js +0 -64
  526. package/dist/wasm/node_modules/picomatch/package.json +0 -81
  527. package/dist/wasm/node_modules/queue-microtask/LICENSE +0 -20
  528. package/dist/wasm/node_modules/queue-microtask/README.md +0 -90
  529. package/dist/wasm/node_modules/queue-microtask/index.d.ts +0 -2
  530. package/dist/wasm/node_modules/queue-microtask/index.js +0 -9
  531. package/dist/wasm/node_modules/queue-microtask/package.json +0 -55
  532. package/dist/wasm/node_modules/reusify/.github/dependabot.yml +0 -7
  533. package/dist/wasm/node_modules/reusify/.github/workflows/ci.yml +0 -96
  534. package/dist/wasm/node_modules/reusify/LICENSE +0 -22
  535. package/dist/wasm/node_modules/reusify/README.md +0 -139
  536. package/dist/wasm/node_modules/reusify/SECURITY.md +0 -15
  537. package/dist/wasm/node_modules/reusify/benchmarks/createNoCodeFunction.js +0 -30
  538. package/dist/wasm/node_modules/reusify/benchmarks/fib.js +0 -13
  539. package/dist/wasm/node_modules/reusify/benchmarks/reuseNoCodeFunction.js +0 -38
  540. package/dist/wasm/node_modules/reusify/eslint.config.js +0 -14
  541. package/dist/wasm/node_modules/reusify/package.json +0 -50
  542. package/dist/wasm/node_modules/reusify/reusify.d.ts +0 -14
  543. package/dist/wasm/node_modules/reusify/reusify.js +0 -33
  544. package/dist/wasm/node_modules/reusify/test.js +0 -66
  545. package/dist/wasm/node_modules/reusify/tsconfig.json +0 -11
  546. package/dist/wasm/node_modules/run-parallel/LICENSE +0 -20
  547. package/dist/wasm/node_modules/run-parallel/README.md +0 -85
  548. package/dist/wasm/node_modules/run-parallel/index.js +0 -51
  549. package/dist/wasm/node_modules/run-parallel/package.json +0 -58
  550. package/dist/wasm/node_modules/shebang-command/index.js +0 -19
  551. package/dist/wasm/node_modules/shebang-command/license +0 -9
  552. package/dist/wasm/node_modules/shebang-command/package.json +0 -34
  553. package/dist/wasm/node_modules/shebang-command/readme.md +0 -34
  554. package/dist/wasm/node_modules/shebang-regex/index.d.ts +0 -22
  555. package/dist/wasm/node_modules/shebang-regex/index.js +0 -2
  556. package/dist/wasm/node_modules/shebang-regex/license +0 -9
  557. package/dist/wasm/node_modules/shebang-regex/package.json +0 -35
  558. package/dist/wasm/node_modules/shebang-regex/readme.md +0 -33
  559. package/dist/wasm/node_modules/supports-color/browser.js +0 -5
  560. package/dist/wasm/node_modules/supports-color/index.js +0 -135
  561. package/dist/wasm/node_modules/supports-color/license +0 -9
  562. package/dist/wasm/node_modules/supports-color/package.json +0 -53
  563. package/dist/wasm/node_modules/supports-color/readme.md +0 -76
  564. package/dist/wasm/node_modules/to-regex-range/LICENSE +0 -21
  565. package/dist/wasm/node_modules/to-regex-range/README.md +0 -305
  566. package/dist/wasm/node_modules/to-regex-range/index.js +0 -288
  567. package/dist/wasm/node_modules/to-regex-range/package.json +0 -88
  568. package/dist/wasm/node_modules/tslib/CopyrightNotice.txt +0 -15
  569. package/dist/wasm/node_modules/tslib/LICENSE.txt +0 -12
  570. package/dist/wasm/node_modules/tslib/README.md +0 -164
  571. package/dist/wasm/node_modules/tslib/SECURITY.md +0 -41
  572. package/dist/wasm/node_modules/tslib/modules/index.d.ts +0 -38
  573. package/dist/wasm/node_modules/tslib/modules/index.js +0 -70
  574. package/dist/wasm/node_modules/tslib/modules/package.json +0 -3
  575. package/dist/wasm/node_modules/tslib/package.json +0 -47
  576. package/dist/wasm/node_modules/tslib/tslib.d.ts +0 -460
  577. package/dist/wasm/node_modules/tslib/tslib.es6.html +0 -1
  578. package/dist/wasm/node_modules/tslib/tslib.es6.js +0 -402
  579. package/dist/wasm/node_modules/tslib/tslib.es6.mjs +0 -401
  580. package/dist/wasm/node_modules/tslib/tslib.html +0 -1
  581. package/dist/wasm/node_modules/tslib/tslib.js +0 -484
  582. package/dist/wasm/node_modules/typanion/README.md +0 -117
  583. package/dist/wasm/node_modules/typanion/lib/index.d.ts +0 -5
  584. package/dist/wasm/node_modules/typanion/lib/index.js +0 -1305
  585. package/dist/wasm/node_modules/typanion/lib/index.mjs +0 -1249
  586. package/dist/wasm/node_modules/typanion/lib/internal/format.d.ts +0 -5
  587. package/dist/wasm/node_modules/typanion/lib/internal/regexps.d.ts +0 -5
  588. package/dist/wasm/node_modules/typanion/lib/internal/tools.d.ts +0 -5
  589. package/dist/wasm/node_modules/typanion/lib/predicates/cascadingPredicates.d.ts +0 -114
  590. package/dist/wasm/node_modules/typanion/lib/predicates/helperPredicates.d.ts +0 -80
  591. package/dist/wasm/node_modules/typanion/lib/predicates/typePredicates.d.ts +0 -205
  592. package/dist/wasm/node_modules/typanion/lib/tools.d.ts +0 -90
  593. package/dist/wasm/node_modules/typanion/lib/types.d.ts +0 -22
  594. package/dist/wasm/node_modules/typanion/package.json +0 -40
  595. package/dist/wasm/node_modules/which/CHANGELOG.md +0 -166
  596. package/dist/wasm/node_modules/which/LICENSE +0 -15
  597. package/dist/wasm/node_modules/which/README.md +0 -54
  598. package/dist/wasm/node_modules/which/bin/node-which +0 -52
  599. package/dist/wasm/node_modules/which/package.json +0 -43
  600. package/dist/wasm/node_modules/which/which.js +0 -125
  601. package/dist/wasm/package.json +0 -10
  602. package/dist/wasm/pnpm.mjs +0 -8
  603. package/dist/wasm/pnpm.wasm +0 -4
  604. package/dist/wasm/pnpx.mjs +0 -8
  605. package/dist/wasm/run.mjs +0 -147
  606. package/dist/wasm/worker.mjs +0 -56
@@ -1,318 +0,0 @@
1
- import fs from 'node:fs'
2
- import { Buffer } from 'node:buffer'
3
- import path from 'node:path'
4
- import process from 'node:process'
5
- import { TextDecoder } from 'node:util'
6
-
7
- import { WASI } from '@tybys/wasm-util'
8
-
9
- import { createFileLocks } from './file-locks.mjs'
10
- import { hasExecutableMode } from './executable-mode.mjs'
11
- import { createPoll } from './poll.mjs'
12
- import { errno } from './wasi-errno.mjs'
13
-
14
- const readRights = 2n | 4n | 16n | 32n | 2097152n
15
- const writeRights = readRights | 1n | 64n | 4194304n
16
- // Node does not expose Linux O_PATH through fs.constants.
17
- const linuxOPath = 0o10000000
18
-
19
- export function createWasiFilesystem (options, memory) {
20
- const locks = createFileLocks()
21
- const leases = createDescriptorLeases(locks)
22
- const sqliteFiles = new Map()
23
- const randomDevices = new Set()
24
- const descriptors = new Map([[0, 0], [1, 1], [2, 2]])
25
- const rootDescriptor = Object.keys(options.preopens ?? {}).indexOf('/') + 3
26
- const state = { leases, sqliteFiles, randomDevices, descriptors, constructing: true, nextPreopen: 3 }
27
- const wasi = new WASI({ ...options, fs: createFilesystemAdapter(state) })
28
- const polling = createPoll(memory)
29
- wasi.wasiImport.poll_oneoff = polling.poll
30
- state.constructing = false
31
- const open = trackPathOpens(wasi, state, memory)
32
- trackAbsoluteSymlinks(wasi, state, { options, memory })
33
- trackDescriptorChanges(wasi, descriptors)
34
- function resolveDescriptor (descriptor) {
35
- const native = descriptors.get(descriptor)
36
- if (native == null) throw Object.assign(new Error('Unknown WASI file descriptor'), { code: 'EBADF' })
37
- return native
38
- }
39
- const imports = createFilesystemImports({ memory, resolveDescriptor, open, rootDescriptor, options, locks, sqliteFiles })
40
- return { wasi, imports, resolveDescriptor, cancelPending: polling.close, acquireDescriptor (descriptor) {
41
- return leases.acquire(resolveDescriptor(descriptor))
42
- }, close () {
43
- polling.close()
44
- for (const descriptor of descriptors.keys()) {
45
- if (descriptor > 2) wasi.wasiImport.fd_close(descriptor)
46
- }
47
- } }
48
- }
49
-
50
- function trackPathOpens (wasi, state, memory) {
51
- const originalOpen = wasi.wasiImport.path_open
52
- function open (args, mode) {
53
- state.opening = { mode, follow: (args[1] & 1) !== 0 }
54
- try {
55
- new DataView(memory.buffer).getUint32(args[8] >>> 0, true)
56
- const result = originalOpen(...args)
57
- if (result === 0) {
58
- const descriptor = new DataView(memory.buffer).getUint32(args[8], true)
59
- state.descriptors.set(descriptor, state.opening.descriptor)
60
- }
61
- return result
62
- } catch (error) {
63
- return errorNumber(error)
64
- } finally {
65
- state.opening = undefined
66
- }
67
- }
68
- wasi.wasiImport.path_open = (...args) => open(args)
69
- return open
70
- }
71
-
72
- function trackAbsoluteSymlinks (wasi, state, { options, memory }) {
73
- const symlink = wasi.wasiImport.path_symlink
74
- wasi.wasiImport.path_symlink = (target, length, descriptor, link, linkLength) => {
75
- if (options.preopens?.['/'] !== '/' || new Uint8Array(memory.buffer)[target >>> 0] !== 47) {
76
- return symlink(target, length, descriptor, link, linkLength)
77
- }
78
- try {
79
- state.symlinkTarget = new TextDecoder('utf-8', { fatal: true }).decode(Uint8Array.from(new Uint8Array(memory.buffer, target >>> 0, length >>> 0)))
80
- return symlink(target + 1, length - 1, descriptor, link, linkLength)
81
- } catch (error) {
82
- return errorNumber(error)
83
- } finally {
84
- state.symlinkTarget = undefined
85
- }
86
- }
87
- }
88
-
89
- function createFilesystemAdapter (state) {
90
- const { leases, sqliteFiles, randomDevices, descriptors } = state
91
- return {
92
- ...fs,
93
- closeSync (descriptor) {
94
- randomDevices.delete(descriptor)
95
- leases.close(descriptor)
96
- },
97
- readSync (descriptor, buffer, offset, length, position) {
98
- if (!randomDevices.has(descriptor)) return fs.readSync(descriptor, buffer, offset, length, position)
99
- // WebContainer random devices use WebCrypto, which rejects shared views.
100
- const temporary = Buffer.alloc(Math.min(length, 65536))
101
- const count = fs.readSync(descriptor, temporary, 0, temporary.length, position)
102
- buffer.set(temporary.subarray(0, count), offset)
103
- return count
104
- },
105
- openSync (file, flags, mode) {
106
- if (state.opening && !state.opening.follow) flags |= fs.constants.O_NOFOLLOW
107
- const database = sqliteFiles.get(file)
108
- const sqliteMode = database ? fs.statSync(database).mode & 0o777 : undefined
109
- const descriptor = fs.openSync(file, flags, state.opening?.mode ?? sqliteMode ?? mode)
110
- if (file === '/dev/urandom' || file === '/dev/random') randomDevices.add(descriptor)
111
- if (state.constructing) descriptors.set(state.nextPreopen++, descriptor)
112
- else if (state.opening) state.opening.descriptor = descriptor
113
- return descriptor
114
- },
115
- symlinkSync (target, file, ...args) {
116
- fs.symlinkSync(state.symlinkTarget ?? target, file, ...args)
117
- },
118
- readlinkSync (file, ...args) {
119
- const target = fs.readlinkSync(file, ...args)
120
- return state.opening?.follow ? path.resolve(path.dirname(file), target) : target
121
- },
122
- }
123
- }
124
-
125
- function createDescriptorLeases (locks) {
126
- const active = new Map()
127
- function close (descriptor) {
128
- const state = active.get(descriptor)
129
- if (state) {
130
- state.closed = true
131
- return
132
- }
133
- fs.closeSync(descriptor)
134
- locks.release(descriptor)
135
- }
136
- return { close, acquire (descriptor) {
137
- let state = active.get(descriptor)
138
- if (!state) {
139
- state = { count: 0, closed: false }
140
- active.set(descriptor, state)
141
- }
142
- state.count++
143
- let released = false
144
- return { fd: descriptor, release () {
145
- if (released) return
146
- released = true
147
- if (--state.count !== 0) return
148
- active.delete(descriptor)
149
- if (state.closed) close(descriptor)
150
- } }
151
- } }
152
- }
153
-
154
- function trackDescriptorChanges (wasi, descriptors) {
155
- const close = wasi.wasiImport.fd_close
156
- wasi.wasiImport.fd_close = descriptor => {
157
- if (!descriptors.has(descriptor)) return errno.EBADF
158
- const result = close(descriptor)
159
- if (result === 0) {
160
- descriptors.delete(descriptor)
161
- }
162
- return result
163
- }
164
- const renumber = wasi.wasiImport.fd_renumber
165
- wasi.wasiImport.fd_renumber = (source, destination) => {
166
- if (!descriptors.has(source) || !descriptors.has(destination)) return errno.EBADF
167
- const result = renumber(source, destination)
168
- if (result === 0 && source !== destination) {
169
- descriptors.set(destination, descriptors.get(source))
170
- descriptors.delete(source)
171
- }
172
- return result
173
- }
174
- }
175
-
176
- function createFilesystemImports ({ memory, resolveDescriptor, open, rootDescriptor, options, locks, sqliteFiles }) {
177
- function guestPath (pointer, length) {
178
- const value = new TextDecoder('utf-8', { fatal: true }).decode(Uint8Array.from(new Uint8Array(memory.buffer, pointer >>> 0, length >>> 0)))
179
- if (!value.startsWith('/') || value.includes('\0')) throw Object.assign(new Error('Expected an absolute guest path'), { code: 'EINVAL' })
180
- const root = options.preopens?.['/']
181
- if (root !== '/') throw Object.assign(new Error('Filesystem extensions require the host root preopen'), { code: 'EACCES' })
182
- return path.resolve(root, `.${value}`)
183
- }
184
- function descendantComponents (directory, template) {
185
- const suffix = path.relative(template, directory)
186
- if (!suffix || suffix === '..' || suffix.startsWith(`..${path.sep}`) || path.isAbsolute(suffix)) {
187
- throw Object.assign(new Error('Permission target is not below its template'), { code: 'EINVAL' })
188
- }
189
- return suffix.split(path.sep)
190
- }
191
- return {
192
- ...createOpenImports({ options, rootDescriptor, open }),
193
- open_directory_nofollow_beneath (pointer, length, templatePointer, templateLength, output) {
194
- try {
195
- const directory = guestPath(pointer, length)
196
- const template = guestPath(templatePointer, templateLength)
197
- let current = template
198
- for (const component of descendantComponents(directory, template)) {
199
- current = path.join(current, component)
200
- const metadata = fs.lstatSync(current)
201
- if (metadata.isSymbolicLink()) return errno.ELOOP
202
- if (!metadata.isDirectory()) return errno.ENOTDIR
203
- }
204
- return open([rootDescriptor, 0, pointer, length, 0, readRights, 0n, 4, output])
205
- } catch (error) {
206
- return errorNumber(error)
207
- }
208
- },
209
- grant_directory_mode_beneath (pointer, length, templatePointer, templateLength, extra) {
210
- if ('webcontainer' in process.versions) return errno.ENOTSUP
211
- if (process.platform !== 'linux' || !fs.existsSync('/proc/self/fd')) return errno.ENOTSUP
212
- if (extra < 0 || extra > 0o7777) return errno.EINVAL
213
- try {
214
- const directory = guestPath(pointer, length)
215
- const template = guestPath(templatePointer, templateLength)
216
- const components = descendantComponents(directory, template)
217
- let descriptor = fs.openSync(template, linuxOPath | fs.constants.O_DIRECTORY)
218
- try {
219
- for (const component of components) {
220
- const child = fs.openSync(`/proc/self/fd/${descriptor}/${component}`, linuxOPath | fs.constants.O_DIRECTORY | fs.constants.O_NOFOLLOW)
221
- fs.closeSync(descriptor)
222
- descriptor = child
223
- }
224
- const metadata = fs.fstatSync(descriptor)
225
- if (metadata.uid !== process.getuid()) return errno.EACCES
226
- const current = metadata.mode & 0o7777
227
- if ((current | extra) !== current) fs.chmodSync(`/proc/self/fd/${descriptor}`, current | extra)
228
- return 0
229
- } finally {
230
- fs.closeSync(descriptor)
231
- }
232
- } catch (error) {
233
- return errorNumber(error)
234
- }
235
- },
236
- try_lock (descriptor, exclusive) {
237
- try { return locks.tryLock(resolveDescriptor(descriptor), exclusive !== 0) } catch (error) { return errorNumber(error) }
238
- },
239
- sqlite_register: checked((pointer, length, registered) => {
240
- const database = guestPath(pointer, length)
241
- for (const suffix of ['-journal', '-wal', '-shm']) {
242
- const file = database + suffix
243
- if (registered) sqliteFiles.set(file, database)
244
- else sqliteFiles.delete(file)
245
- }
246
- }),
247
- path_access_executable: checked((pointer, length) => executableAccess(guestPath(pointer, length))),
248
- check_owner: checked(descriptor => {
249
- if (fs.fstatSync(resolveDescriptor(descriptor)).uid !== process.getuid()) {
250
- throw Object.assign(new Error('WASM SQLite stores must belong to the current user'), { code: 'EACCES' })
251
- }
252
- }),
253
- fchmod: checked((descriptor, mode) => fs.fchmodSync(resolveDescriptor(descriptor), mode)),
254
- fmode: checked((descriptor, output) => {
255
- new DataView(memory.buffer).setUint32(output >>> 0, fs.fstatSync(resolveDescriptor(descriptor)).mode, true)
256
- }),
257
- lmode: checked((pointer, length, output) => {
258
- new DataView(memory.buffer).setUint32(output >>> 0, fs.lstatSync(guestPath(pointer, length)).mode, true)
259
- }),
260
- umask () { return process.umask() },
261
- uid () { return process.getuid() },
262
- secure_directory: checked((pointer, length) => secureDirectory(guestPath(pointer, length))),
263
- }
264
- }
265
-
266
- function executableAccess (file) {
267
- fs.accessSync(file, fs.constants.X_OK)
268
- // WebContainer accessSync ignores X_OK, although stat exposes permission bits.
269
- if (!hasExecutableMode(fs.statSync(file))) {
270
- throw Object.assign(new Error(`File is not executable: ${file}`), { code: 'EACCES' })
271
- }
272
- }
273
-
274
- function secureDirectory (directory) {
275
- fs.mkdirSync(directory, { recursive: true, mode: 0o700 })
276
- const descriptor = fs.openSync(directory, fs.constants.O_RDONLY | fs.constants.O_DIRECTORY | fs.constants.O_NOFOLLOW)
277
- try {
278
- const metadata = fs.fstatSync(descriptor)
279
- if (metadata.uid !== process.getuid()) throw Object.assign(new Error('Lock directory has a different owner'), { code: 'EACCES' })
280
- fs.fchmodSync(descriptor, 0o700)
281
- } finally {
282
- fs.closeSync(descriptor)
283
- }
284
- }
285
-
286
- function createOpenImports ({ options, rootDescriptor, open }) {
287
- return {
288
- create_new (pointer, length, mode, output) {
289
- if (mode < 0 || mode > 0o7777) return errno.EINVAL
290
- if (options.preopens?.['/'] !== '/') return errno.EACCES
291
- return open([rootDescriptor, 0, pointer, length, 1 | 4, writeRights, 0n, 0, output], mode)
292
- },
293
- open_nofollow (pointer, length, output) {
294
- if (options.preopens?.['/'] !== '/') return errno.EACCES
295
- return open([rootDescriptor, 0, pointer, length, 0, readRights, 0n, 4, output])
296
- },
297
- open_lock (pointer, length, output) {
298
- if (options.preopens?.['/'] !== '/') return errno.EACCES
299
- return open([rootDescriptor, 0, pointer, length, 0, writeRights, 0n, 4, output])
300
- },
301
- }
302
- }
303
-
304
- function checked (operation) {
305
- return (...args) => {
306
- try {
307
- operation(...args)
308
- return 0
309
- } catch (error) {
310
- return errorNumber(error)
311
- }
312
- }
313
- }
314
-
315
- function errorNumber (error) {
316
- if (error instanceof RangeError) return errno.EFAULT
317
- return errno[error.code] ?? errno.EIO
318
- }
@@ -1,45 +0,0 @@
1
- import { RESPONSE_CAPACITY } from './protocol.mjs'
2
- import { waitForReply } from './wait-for-reply.mjs'
3
-
4
- export function createGuestImports (memory, postMessage, checkCancelled) {
5
- const buffer = new SharedArrayBuffer(RESPONSE_CAPACITY + 12)
6
- const header = new Int32Array(buffer, 0, 3)
7
-
8
- function call (method, args) {
9
- Atomics.store(header, 0, 0)
10
- postMessage({ pnpmHostRpc: { method, args, buffer } })
11
- waitForReply(header, 0, checkCancelled)
12
- return Atomics.load(header, 1)
13
- }
14
-
15
- function view (pointer, length) {
16
- return new Uint8Array(memory.buffer, pointer >>> 0, length >>> 0)
17
- }
18
-
19
- return {
20
- operation_start (pointer, length) {
21
- if ((length >>> 0) > RESPONSE_CAPACITY) return -2
22
- const bytes = Uint8Array.from(view(pointer, length))
23
- const request = JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(bytes))
24
- return call('start', [request])
25
- },
26
- response_len (id) {
27
- return call('length', [id])
28
- },
29
- response_read (id, pointer, length) {
30
- const target = view(pointer, length)
31
- const result = call('read', [id, target.length])
32
- if (result >= 0) target.set(new Uint8Array(buffer, 12, Atomics.load(header, 2)))
33
- return result
34
- },
35
- operation_cancel (id) {
36
- call('cancel', [id])
37
- },
38
- resource_close (handle) {
39
- return call('close-resource', [handle])
40
- },
41
- wait_completion () {
42
- return call('wait', [])
43
- },
44
- }
45
- }
@@ -1,148 +0,0 @@
1
- import { createHostServices } from './operations.mjs'
2
- import { RESPONSE_CAPACITY } from './protocol.mjs'
3
-
4
- export function createGuestOperations (services = createHostServices()) {
5
- const pending = new Map()
6
- const completed = []
7
- const waiters = []
8
- const inFlight = new Set()
9
- const cleanupErrors = []
10
- let nextId = 1
11
- let closed = false
12
-
13
- function start (request) {
14
- if (closed || nextId > 0x7fffffff) return -2
15
- const id = nextId++
16
- const entry = { controller: new AbortController(), response: null, operation: request.operation, result: null }
17
- pending.set(id, entry)
18
- if (request.operation === 'process.write') request.bytes = Uint8Array.from(request.bytes)
19
- if (request.operation === 'network.request' && Array.isArray(request.body)) request.body = Uint8Array.from(request.body)
20
- const task = Promise.resolve().then(() => services.dispatch(request, { signal: entry.controller.signal })).then(
21
- value => settle(id, entry, { ok: true, value }),
22
- error => settle(id, entry, { ok: false, error: { message: error.message, code: errorCode(error) } }),
23
- )
24
- track(task)
25
- return id
26
- }
27
-
28
- function track (task) {
29
- inFlight.add(task)
30
- task.then(() => inFlight.delete(task), error => {
31
- inFlight.delete(task)
32
- cleanupErrors.push(error)
33
- })
34
- }
35
-
36
- async function releaseResult (operation, result) {
37
- if (!result?.ok) return
38
- const handles = ['network.request', 'upload.create', 'terminal.open'].includes(operation) ? [result.value.handle]
39
- : ['process.spawn', 'shell.spawn'].includes(operation) ? [result.value.stdout, result.value.stderr, result.value.handle] : []
40
- await Promise.all(handles.filter(handle => handle != null)
41
- .map(handle => services.dispatch({ operation: 'resource.close', handle })))
42
- }
43
-
44
- async function settle (id, entry, result) {
45
- if (!pending.has(id)) return closed ? undefined : releaseResult(entry.operation, result)
46
- let bytes
47
- try {
48
- bytes = new TextEncoder().encode(JSON.stringify(result, (_key, value) => value instanceof Uint8Array ? [...value] : value))
49
- if (bytes.length > RESPONSE_CAPACITY) throw new Error('WASM host response exceeds the transfer limit')
50
- } catch (error) {
51
- try {
52
- await releaseResult(entry.operation, result)
53
- } catch (cleanupError) {
54
- cleanupErrors.push(cleanupError)
55
- }
56
- result = { ok: false, error: { message: error.message } }
57
- bytes = new TextEncoder().encode(JSON.stringify(result))
58
- }
59
- if (!pending.has(id)) return
60
- entry.result = result
61
- entry.response = bytes
62
- const waiter = waiters.shift()
63
- if (waiter) waiter(id)
64
- else completed.push(id)
65
- }
66
-
67
- async function dispatch (method, args) {
68
- switch (method) {
69
- case 'start': return start(args[0])
70
- case 'length': return pending.get(args[0])?.response?.length ?? (pending.has(args[0]) ? -1 : -2)
71
- case 'read': {
72
- const entry = pending.get(args[0])
73
- if (!entry?.response || entry.response.length > args[1]) return -2
74
- pending.delete(args[0])
75
- return entry.response
76
- }
77
- case 'cancel': {
78
- const entry = pending.get(args[0])
79
- pending.delete(args[0])
80
- entry?.controller.abort()
81
- if (entry?.result) await releaseResult(entry.operation, entry.result)
82
- return 0
83
- }
84
- case 'close-resource': {
85
- await services.dispatch({ operation: 'resource.close', handle: args[0] })
86
- return 0
87
- }
88
- case 'wait': {
89
- while (completed.length > 0) {
90
- const id = completed.shift()
91
- if (pending.has(id)) return id
92
- }
93
- return closed ? 0 : new Promise(resolve => waiters.push(resolve))
94
- }
95
- default: throw new Error(`Unknown guest operation: ${method}`)
96
- }
97
- }
98
-
99
- return {
100
- dispatch,
101
- attach (worker) {
102
- const listener = message => {
103
- if (!message.pnpmHostRpc) return
104
- const { method, args, buffer } = message.pnpmHostRpc
105
- respond(buffer, dispatch(method, args)).catch(error => worker.emit('error', error))
106
- }
107
- worker.on('message', listener)
108
- return () => worker.off('message', listener)
109
- },
110
- async close () {
111
- closed = true
112
- for (const entry of pending.values()) entry.controller.abort()
113
- pending.clear()
114
- for (const waiter of waiters.splice(0)) waiter(0)
115
- try {
116
- await services.close()
117
- } finally {
118
- await Promise.allSettled([...inFlight])
119
- }
120
- if (cleanupErrors.length) throw new AggregateError(cleanupErrors, 'Failed to clean up cancelled WASM operations')
121
- },
122
- }
123
- }
124
-
125
- async function respond (buffer, response) {
126
- const header = new Int32Array(buffer, 0, 3)
127
- Atomics.store(header, 1, -2)
128
- Atomics.store(header, 2, 0)
129
- try {
130
- const value = await response
131
- if (value instanceof Uint8Array) {
132
- new Uint8Array(buffer, 12).set(value)
133
- Atomics.store(header, 1, value.length)
134
- Atomics.store(header, 2, value.length)
135
- } else {
136
- Atomics.store(header, 1, value)
137
- Atomics.store(header, 2, 0)
138
- }
139
- } finally {
140
- Atomics.store(header, 0, 1)
141
- Atomics.notify(header, 0)
142
- }
143
- }
144
-
145
- function errorCode (error) {
146
- const code = error.code ?? error.cause?.code
147
- return typeof code === 'string' ? code : undefined
148
- }
@@ -1,167 +0,0 @@
1
- import { randomUUID } from 'node:crypto'
2
- import fs from 'node:fs'
3
- import { createConnection, createServer } from 'node:net'
4
- import os from 'node:os'
5
- import path from 'node:path'
6
- import process from 'node:process'
7
-
8
- const mutexPort = 29753
9
- const tokens = new Set()
10
- let listener
11
- let acquiring = 0
12
-
13
- // The rendezvous port protects only registry updates. Held file locks use
14
- // ephemeral ports, so unrelated nested locks cannot collide or reverse order.
15
- export async function acquireFileLease (identity, exclusive, previous) {
16
- acquiring++
17
- try {
18
- return await acquireRegisteredLease(identity, exclusive, previous)
19
- } finally {
20
- acquiring--
21
- closeIdleListener()
22
- }
23
- }
24
-
25
- async function acquireRegisteredLease (identity, exclusive, previous) {
26
- const mutex = await listen(createServer(socket => socket.destroy()), mutexPort)
27
- if (!mutex) return undefined
28
- let token
29
- try {
30
- const file = registryPath(identity)
31
- const owners = await liveOwners(file)
32
- if (owners.some(owner => owner.token !== previous?.token && (exclusive || owner.exclusive))) return undefined
33
- const server = await leaseListener()
34
- token = previous?.token ?? randomUUID()
35
- tokens.add(token)
36
- const owner = { port: server.address().port, token, exclusive, pid: process.pid }
37
- writeOwners(file, [...owners.filter(entry => entry.token !== token), owner])
38
- return { token, exclusive, release () { tokens.delete(token); closeIdleListener() } }
39
- } catch (error) {
40
- if (token && token !== previous?.token) tokens.delete(token)
41
- throw error
42
- } finally {
43
- await new Promise(resolve => mutex.close(resolve))
44
- }
45
- }
46
-
47
- function registryPath (identity) {
48
- const directory = path.join(os.tmpdir(), `pnpm-wasm-file-locks-${process.getuid()}`)
49
- fs.mkdirSync(directory, { recursive: true, mode: 0o700 })
50
- const descriptor = fs.openSync(directory, fs.constants.O_RDONLY | fs.constants.O_DIRECTORY | fs.constants.O_NOFOLLOW)
51
- try {
52
- if (fs.fstatSync(descriptor).uid !== process.getuid()) throw new Error('WASM lock registry belongs to another user')
53
- fs.fchmodSync(descriptor, 0o700)
54
- } finally {
55
- fs.closeSync(descriptor)
56
- }
57
- return path.join(directory, identity.replace(':', '-'))
58
- }
59
-
60
- async function liveOwners (file) {
61
- let descriptor
62
- try {
63
- descriptor = fs.openSync(file, fs.constants.O_RDONLY | fs.constants.O_NOFOLLOW | fs.constants.O_NONBLOCK)
64
- } catch (error) {
65
- if (error.code === 'ENOENT') return []
66
- throw error
67
- }
68
- let owners
69
- try {
70
- const metadata = fs.fstatSync(descriptor)
71
- if (!metadata.isFile() || metadata.size > 1024 * 1024) throw new Error('Invalid WASM lock ownership record')
72
- owners = JSON.parse(fs.readFileSync(descriptor, 'utf8'))
73
- } finally {
74
- fs.closeSync(descriptor)
75
- }
76
- if (!Array.isArray(owners) || owners.length > 4096 || !owners.every(validOwner)) throw new Error('Invalid WASM lock ownership record')
77
- const live = await Promise.all(owners.map(async owner => await isAlive(owner) ? owner : undefined))
78
- return live.filter(Boolean)
79
- }
80
-
81
- function validOwner (owner) {
82
- return Number.isInteger(owner?.port) && owner.port > 0 && owner.port < 65536 &&
83
- typeof owner.token === 'string' && /^[\da-f-]{36}$/.test(owner.token) && typeof owner.exclusive === 'boolean' &&
84
- (owner.pid == null || (Number.isSafeInteger(owner.pid) && owner.pid > 0))
85
- }
86
-
87
- function writeOwners (file, owners) {
88
- const temporary = `${file}.${randomUUID()}`
89
- try {
90
- fs.writeFileSync(temporary, JSON.stringify(owners), { flag: 'wx', mode: 0o600 })
91
- fs.renameSync(temporary, file)
92
- } catch (error) {
93
- try { fs.unlinkSync(temporary) } catch (cleanup) { if (cleanup.code !== 'ENOENT') throw cleanup }
94
- throw error
95
- }
96
- }
97
-
98
- async function leaseListener () {
99
- listener ??= listen(createServer(socket => {
100
- let request = ''
101
- socket.setTimeout(1000, () => socket.destroy())
102
- socket.on('error', () => { /* A probing process may exit before receiving the response. */ })
103
- socket.on('data', chunk => {
104
- request += chunk.toString()
105
- if (request.length > 37) return socket.destroy()
106
- if (request.endsWith('\n')) socket.end(tokens.has(request.trim()) ? 'alive\n' : 'released\n')
107
- })
108
- }), 0)
109
- return listener
110
- }
111
-
112
- function listen (server, port) {
113
- return new Promise((resolve, reject) => {
114
- server.once('error', error => {
115
- if (error.code === 'EADDRINUSE') resolve(undefined)
116
- else reject(error)
117
- })
118
- server.listen({ host: '127.0.0.1', port, exclusive: true }, () => {
119
- server.unref()
120
- resolve(server)
121
- })
122
- })
123
- }
124
-
125
- function isAlive (owner) {
126
- if (owner.pid != null && processIsAbsent(owner.pid)) return Promise.resolve(false)
127
- return new Promise((resolve, reject) => {
128
- const socket = createConnection({ host: '127.0.0.1', port: owner.port })
129
- let response = ''
130
- function finish (value) {
131
- socket.destroy()
132
- resolve(value)
133
- }
134
- // A slow live owner must never be reaped. Only refusal or an explicit
135
- // different token proves that this ownership record is abandoned.
136
- socket.setTimeout(1000, () => finish(true))
137
- socket.on('connect', () => socket.write(`${owner.token}\n`))
138
- socket.on('data', chunk => {
139
- response += chunk.toString()
140
- if (response.endsWith('\n') || response.length > 32) finish(response !== 'released\n')
141
- })
142
- socket.on('end', () => finish(response !== 'released\n'))
143
- socket.on('error', error => {
144
- socket.destroy()
145
- if (error.code === 'ECONNREFUSED') resolve(false)
146
- else if (error.code === 'ECONNRESET') resolve(true)
147
- else reject(error)
148
- })
149
- })
150
- }
151
-
152
- function processIsAbsent (pid) {
153
- try {
154
- process.kill(pid, 0)
155
- } catch (error) {
156
- if (error.code === 'ESRCH') return true
157
- if (!['EPERM', 'EINVAL', 'ENOSYS'].includes(error.code)) throw error
158
- }
159
- return false
160
- }
161
-
162
- function closeIdleListener () {
163
- if (tokens.size || acquiring || !listener) return
164
- const closing = listener
165
- listener = undefined
166
- void closing.then(server => server.close(), () => { /* The acquisition already reports a failed listener. */ })
167
- }