pnpm 11.22.0 → 11.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (441) hide show
  1. package/CHANGELOG.md +234 -0
  2. package/README.md +12 -0
  3. package/dist/pnpm.mjs +9230 -7674
  4. package/dist/worker.js +40 -8
  5. package/package.json +1 -1
  6. package/artifacts/exe/dist/node-gyp-bin/node-gyp +0 -6
  7. package/artifacts/exe/dist/node-gyp-bin/node-gyp.cmd +0 -5
  8. package/artifacts/exe/dist/node_modules/.bin/node-gyp +0 -50
  9. package/artifacts/exe/dist/node_modules/.bin/node-which +0 -50
  10. package/artifacts/exe/dist/node_modules/.bin/nopt +0 -50
  11. package/artifacts/exe/dist/node_modules/.bin/semver +0 -50
  12. package/artifacts/exe/dist/node_modules/.package-map.json +0 -1
  13. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/LICENSE +0 -15
  14. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +0 -430
  15. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +0 -3
  16. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/index.js +0 -420
  17. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/dist/esm/package.json +0 -3
  18. package/artifacts/exe/dist/node_modules/@isaacs/fs-minipass/package.json +0 -72
  19. package/artifacts/exe/dist/node_modules/abbrev/LICENSE +0 -46
  20. package/artifacts/exe/dist/node_modules/abbrev/lib/index.js +0 -53
  21. package/artifacts/exe/dist/node_modules/abbrev/package.json +0 -41
  22. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/index.js +0 -93
  23. package/artifacts/exe/dist/node_modules/chownr/dist/commonjs/package.json +0 -3
  24. package/artifacts/exe/dist/node_modules/chownr/dist/esm/index.js +0 -85
  25. package/artifacts/exe/dist/node_modules/chownr/dist/esm/package.json +0 -3
  26. package/artifacts/exe/dist/node_modules/chownr/package.json +0 -69
  27. package/artifacts/exe/dist/node_modules/env-paths/index.js +0 -74
  28. package/artifacts/exe/dist/node_modules/env-paths/license +0 -9
  29. package/artifacts/exe/dist/node_modules/env-paths/package.json +0 -45
  30. package/artifacts/exe/dist/node_modules/exponential-backoff/LICENSE +0 -202
  31. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/backoff.js +0 -124
  32. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +0 -25
  33. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +0 -45
  34. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +0 -17
  35. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +0 -3
  36. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +0 -82
  37. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +0 -8
  38. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +0 -15
  39. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +0 -7
  40. package/artifacts/exe/dist/node_modules/exponential-backoff/dist/options.js +0 -31
  41. package/artifacts/exe/dist/node_modules/exponential-backoff/package.json +0 -62
  42. package/artifacts/exe/dist/node_modules/fdir/LICENSE +0 -7
  43. package/artifacts/exe/dist/node_modules/fdir/dist/index.cjs +0 -588
  44. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.cts +0 -155
  45. package/artifacts/exe/dist/node_modules/fdir/dist/index.d.mts +0 -155
  46. package/artifacts/exe/dist/node_modules/fdir/dist/index.mjs +0 -570
  47. package/artifacts/exe/dist/node_modules/fdir/package.json +0 -103
  48. package/artifacts/exe/dist/node_modules/graceful-fs/LICENSE +0 -15
  49. package/artifacts/exe/dist/node_modules/graceful-fs/clone.js +0 -23
  50. package/artifacts/exe/dist/node_modules/graceful-fs/graceful-fs.js +0 -448
  51. package/artifacts/exe/dist/node_modules/graceful-fs/legacy-streams.js +0 -118
  52. package/artifacts/exe/dist/node_modules/graceful-fs/package.json +0 -53
  53. package/artifacts/exe/dist/node_modules/graceful-fs/polyfills.js +0 -355
  54. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.js +0 -56
  55. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/index.min.js +0 -2
  56. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/options.js +0 -3
  57. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/package.json +0 -3
  58. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/posix.js +0 -67
  59. package/artifacts/exe/dist/node_modules/isexe/dist/commonjs/win32.js +0 -63
  60. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.js +0 -16
  61. package/artifacts/exe/dist/node_modules/isexe/dist/esm/index.min.js +0 -2
  62. package/artifacts/exe/dist/node_modules/isexe/dist/esm/options.js +0 -2
  63. package/artifacts/exe/dist/node_modules/isexe/dist/esm/package.json +0 -3
  64. package/artifacts/exe/dist/node_modules/isexe/dist/esm/posix.js +0 -62
  65. package/artifacts/exe/dist/node_modules/isexe/dist/esm/win32.js +0 -58
  66. package/artifacts/exe/dist/node_modules/isexe/package.json +0 -78
  67. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/index.js +0 -1038
  68. package/artifacts/exe/dist/node_modules/minipass/dist/commonjs/package.json +0 -3
  69. package/artifacts/exe/dist/node_modules/minipass/dist/esm/index.js +0 -1020
  70. package/artifacts/exe/dist/node_modules/minipass/dist/esm/package.json +0 -3
  71. package/artifacts/exe/dist/node_modules/minipass/package.json +0 -77
  72. package/artifacts/exe/dist/node_modules/minizlib/LICENSE +0 -26
  73. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/constants.js +0 -123
  74. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/index.js +0 -416
  75. package/artifacts/exe/dist/node_modules/minizlib/dist/commonjs/package.json +0 -3
  76. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/constants.js +0 -117
  77. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/index.js +0 -363
  78. package/artifacts/exe/dist/node_modules/minizlib/dist/esm/package.json +0 -3
  79. package/artifacts/exe/dist/node_modules/minizlib/package.json +0 -80
  80. package/artifacts/exe/dist/node_modules/node-gyp/.release-please-manifest.json +0 -3
  81. package/artifacts/exe/dist/node_modules/node-gyp/LICENSE +0 -24
  82. package/artifacts/exe/dist/node_modules/node-gyp/addon.gypi +0 -204
  83. package/artifacts/exe/dist/node_modules/node-gyp/bin/node-gyp.js +0 -145
  84. package/artifacts/exe/dist/node_modules/node-gyp/eslint.config.js +0 -3
  85. package/artifacts/exe/dist/node_modules/node-gyp/gyp/.release-please-manifest.json +0 -3
  86. package/artifacts/exe/dist/node_modules/node-gyp/gyp/LICENSE +0 -28
  87. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/ninja/build.ninja +0 -4
  88. package/artifacts/exe/dist/node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc +0 -12
  89. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp +0 -8
  90. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp.bat +0 -5
  91. package/artifacts/exe/dist/node_modules/node-gyp/gyp/gyp_main.py +0 -45
  92. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +0 -365
  93. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +0 -206
  94. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +0 -1283
  95. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +0 -1545
  96. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +0 -59
  97. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +0 -152
  98. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +0 -270
  99. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +0 -607
  100. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +0 -706
  101. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common.py +0 -725
  102. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +0 -186
  103. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +0 -170
  104. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +0 -113
  105. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +0 -55
  106. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
  107. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +0 -805
  108. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +0 -1169
  109. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +0 -1316
  110. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +0 -128
  111. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +0 -104
  112. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +0 -461
  113. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +0 -88
  114. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +0 -55
  115. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +0 -2755
  116. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +0 -3970
  117. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +0 -44
  118. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +0 -2957
  119. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +0 -77
  120. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +0 -1389
  121. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +0 -26
  122. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input.py +0 -3097
  123. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +0 -99
  124. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +0 -765
  125. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +0 -1255
  126. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +0 -174
  127. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +0 -61
  128. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +0 -371
  129. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +0 -1936
  130. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py +0 -54
  131. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +0 -301
  132. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +0 -3180
  133. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +0 -64
  134. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE +0 -3
  135. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.APACHE +0 -177
  136. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.BSD +0 -23
  137. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/__init__.py +0 -15
  138. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py +0 -107
  139. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py +0 -252
  140. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py +0 -83
  141. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_parser.py +0 -359
  142. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_structures.py +0 -61
  143. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py +0 -192
  144. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/markers.py +0 -251
  145. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +0 -807
  146. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/py.typed +0 -0
  147. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/requirements.py +0 -90
  148. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py +0 -1030
  149. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/tags.py +0 -541
  150. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/utils.py +0 -172
  151. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pylib/packaging/version.py +0 -563
  152. package/artifacts/exe/dist/node_modules/node-gyp/gyp/pyproject.toml +0 -116
  153. package/artifacts/exe/dist/node_modules/node-gyp/gyp/release-please-config.json +0 -11
  154. package/artifacts/exe/dist/node_modules/node-gyp/gyp/test_gyp.py +0 -260
  155. package/artifacts/exe/dist/node_modules/node-gyp/lib/Find-VisualStudio.cs +0 -250
  156. package/artifacts/exe/dist/node_modules/node-gyp/lib/build.js +0 -230
  157. package/artifacts/exe/dist/node_modules/node-gyp/lib/clean.js +0 -15
  158. package/artifacts/exe/dist/node_modules/node-gyp/lib/configure.js +0 -328
  159. package/artifacts/exe/dist/node_modules/node-gyp/lib/create-config-gypi.js +0 -153
  160. package/artifacts/exe/dist/node_modules/node-gyp/lib/download.js +0 -86
  161. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-node-directory.js +0 -63
  162. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-python.js +0 -304
  163. package/artifacts/exe/dist/node_modules/node-gyp/lib/find-visualstudio.js +0 -606
  164. package/artifacts/exe/dist/node_modules/node-gyp/lib/install.js +0 -411
  165. package/artifacts/exe/dist/node_modules/node-gyp/lib/list.js +0 -26
  166. package/artifacts/exe/dist/node_modules/node-gyp/lib/log.js +0 -168
  167. package/artifacts/exe/dist/node_modules/node-gyp/lib/node-gyp.js +0 -199
  168. package/artifacts/exe/dist/node_modules/node-gyp/lib/process-release.js +0 -144
  169. package/artifacts/exe/dist/node_modules/node-gyp/lib/rebuild.js +0 -12
  170. package/artifacts/exe/dist/node_modules/node-gyp/lib/remove.js +0 -43
  171. package/artifacts/exe/dist/node_modules/node-gyp/lib/util.js +0 -81
  172. package/artifacts/exe/dist/node_modules/node-gyp/macOS_Catalina_acid_test.sh +0 -21
  173. package/artifacts/exe/dist/node_modules/node-gyp/package.json +0 -52
  174. package/artifacts/exe/dist/node_modules/node-gyp/release-please-config.json +0 -40
  175. package/artifacts/exe/dist/node_modules/node-gyp/src/win_delay_load_hook.cc +0 -41
  176. package/artifacts/exe/dist/node_modules/nopt/LICENSE +0 -15
  177. package/artifacts/exe/dist/node_modules/nopt/bin/nopt.js +0 -29
  178. package/artifacts/exe/dist/node_modules/nopt/lib/debug.js +0 -5
  179. package/artifacts/exe/dist/node_modules/nopt/lib/nopt-lib.js +0 -514
  180. package/artifacts/exe/dist/node_modules/nopt/lib/nopt.js +0 -34
  181. package/artifacts/exe/dist/node_modules/nopt/lib/type-defs.js +0 -91
  182. package/artifacts/exe/dist/node_modules/nopt/package.json +0 -52
  183. package/artifacts/exe/dist/node_modules/picomatch/LICENSE +0 -21
  184. package/artifacts/exe/dist/node_modules/picomatch/index.js +0 -17
  185. package/artifacts/exe/dist/node_modules/picomatch/lib/constants.js +0 -184
  186. package/artifacts/exe/dist/node_modules/picomatch/lib/parse.js +0 -1416
  187. package/artifacts/exe/dist/node_modules/picomatch/lib/picomatch.js +0 -361
  188. package/artifacts/exe/dist/node_modules/picomatch/lib/scan.js +0 -391
  189. package/artifacts/exe/dist/node_modules/picomatch/lib/utils.js +0 -72
  190. package/artifacts/exe/dist/node_modules/picomatch/package.json +0 -83
  191. package/artifacts/exe/dist/node_modules/picomatch/posix.js +0 -3
  192. package/artifacts/exe/dist/node_modules/proc-log/LICENSE +0 -15
  193. package/artifacts/exe/dist/node_modules/proc-log/lib/index.js +0 -158
  194. package/artifacts/exe/dist/node_modules/proc-log/package.json +0 -46
  195. package/artifacts/exe/dist/node_modules/semver/LICENSE +0 -15
  196. package/artifacts/exe/dist/node_modules/semver/bin/semver.js +0 -195
  197. package/artifacts/exe/dist/node_modules/semver/classes/comparator.js +0 -143
  198. package/artifacts/exe/dist/node_modules/semver/classes/index.js +0 -7
  199. package/artifacts/exe/dist/node_modules/semver/classes/range.js +0 -577
  200. package/artifacts/exe/dist/node_modules/semver/classes/semver.js +0 -350
  201. package/artifacts/exe/dist/node_modules/semver/functions/clean.js +0 -8
  202. package/artifacts/exe/dist/node_modules/semver/functions/cmp.js +0 -54
  203. package/artifacts/exe/dist/node_modules/semver/functions/coerce.js +0 -62
  204. package/artifacts/exe/dist/node_modules/semver/functions/compare-build.js +0 -9
  205. package/artifacts/exe/dist/node_modules/semver/functions/compare-loose.js +0 -5
  206. package/artifacts/exe/dist/node_modules/semver/functions/compare.js +0 -7
  207. package/artifacts/exe/dist/node_modules/semver/functions/diff.js +0 -60
  208. package/artifacts/exe/dist/node_modules/semver/functions/eq.js +0 -5
  209. package/artifacts/exe/dist/node_modules/semver/functions/gt.js +0 -5
  210. package/artifacts/exe/dist/node_modules/semver/functions/gte.js +0 -5
  211. package/artifacts/exe/dist/node_modules/semver/functions/inc.js +0 -21
  212. package/artifacts/exe/dist/node_modules/semver/functions/lt.js +0 -5
  213. package/artifacts/exe/dist/node_modules/semver/functions/lte.js +0 -5
  214. package/artifacts/exe/dist/node_modules/semver/functions/major.js +0 -5
  215. package/artifacts/exe/dist/node_modules/semver/functions/minor.js +0 -5
  216. package/artifacts/exe/dist/node_modules/semver/functions/neq.js +0 -5
  217. package/artifacts/exe/dist/node_modules/semver/functions/parse.js +0 -18
  218. package/artifacts/exe/dist/node_modules/semver/functions/patch.js +0 -5
  219. package/artifacts/exe/dist/node_modules/semver/functions/prerelease.js +0 -8
  220. package/artifacts/exe/dist/node_modules/semver/functions/rcompare.js +0 -5
  221. package/artifacts/exe/dist/node_modules/semver/functions/rsort.js +0 -5
  222. package/artifacts/exe/dist/node_modules/semver/functions/satisfies.js +0 -12
  223. package/artifacts/exe/dist/node_modules/semver/functions/sort.js +0 -5
  224. package/artifacts/exe/dist/node_modules/semver/functions/truncate.js +0 -48
  225. package/artifacts/exe/dist/node_modules/semver/functions/valid.js +0 -8
  226. package/artifacts/exe/dist/node_modules/semver/index.js +0 -93
  227. package/artifacts/exe/dist/node_modules/semver/internal/constants.js +0 -37
  228. package/artifacts/exe/dist/node_modules/semver/internal/debug.js +0 -11
  229. package/artifacts/exe/dist/node_modules/semver/internal/identifiers.js +0 -29
  230. package/artifacts/exe/dist/node_modules/semver/internal/lrucache.js +0 -42
  231. package/artifacts/exe/dist/node_modules/semver/internal/parse-options.js +0 -17
  232. package/artifacts/exe/dist/node_modules/semver/internal/re.js +0 -223
  233. package/artifacts/exe/dist/node_modules/semver/package.json +0 -78
  234. package/artifacts/exe/dist/node_modules/semver/preload.js +0 -4
  235. package/artifacts/exe/dist/node_modules/semver/range.bnf +0 -17
  236. package/artifacts/exe/dist/node_modules/semver/ranges/gtr.js +0 -6
  237. package/artifacts/exe/dist/node_modules/semver/ranges/intersects.js +0 -9
  238. package/artifacts/exe/dist/node_modules/semver/ranges/ltr.js +0 -6
  239. package/artifacts/exe/dist/node_modules/semver/ranges/max-satisfying.js +0 -27
  240. package/artifacts/exe/dist/node_modules/semver/ranges/min-satisfying.js +0 -26
  241. package/artifacts/exe/dist/node_modules/semver/ranges/min-version.js +0 -63
  242. package/artifacts/exe/dist/node_modules/semver/ranges/outside.js +0 -82
  243. package/artifacts/exe/dist/node_modules/semver/ranges/simplify.js +0 -49
  244. package/artifacts/exe/dist/node_modules/semver/ranges/subset.js +0 -249
  245. package/artifacts/exe/dist/node_modules/semver/ranges/to-comparators.js +0 -10
  246. package/artifacts/exe/dist/node_modules/semver/ranges/valid.js +0 -13
  247. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/create.js +0 -82
  248. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/cwd-error.js +0 -18
  249. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/extract.js +0 -88
  250. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/get-write-flag.js +0 -32
  251. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/header.js +0 -348
  252. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.js +0 -64
  253. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/index.min.js +0 -4
  254. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/large-numbers.js +0 -99
  255. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/list.js +0 -153
  256. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/make-command.js +0 -52
  257. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mkdir.js +0 -187
  258. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/mode-fix.js +0 -29
  259. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-unicode.js +0 -38
  260. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/normalize-windows-path.js +0 -12
  261. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/options.js +0 -66
  262. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pack.js +0 -544
  263. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/package.json +0 -3
  264. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/parse.js +0 -655
  265. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/path-reservations.js +0 -170
  266. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/pax.js +0 -182
  267. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/process-umask.js +0 -7
  268. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/read-entry.js +0 -136
  269. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/replace.js +0 -227
  270. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-absolute-path.js +0 -29
  271. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +0 -18
  272. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/symlink-error.js +0 -19
  273. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/types.js +0 -70
  274. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/unpack.js +0 -932
  275. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/update.js +0 -33
  276. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/warn-method.js +0 -31
  277. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/winchars.js +0 -14
  278. package/artifacts/exe/dist/node_modules/tar/dist/commonjs/write-entry.js +0 -698
  279. package/artifacts/exe/dist/node_modules/tar/dist/esm/create.js +0 -76
  280. package/artifacts/exe/dist/node_modules/tar/dist/esm/cwd-error.js +0 -14
  281. package/artifacts/exe/dist/node_modules/tar/dist/esm/extract.js +0 -49
  282. package/artifacts/exe/dist/node_modules/tar/dist/esm/get-write-flag.js +0 -26
  283. package/artifacts/exe/dist/node_modules/tar/dist/esm/header.js +0 -311
  284. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.js +0 -20
  285. package/artifacts/exe/dist/node_modules/tar/dist/esm/index.min.js +0 -4
  286. package/artifacts/exe/dist/node_modules/tar/dist/esm/large-numbers.js +0 -94
  287. package/artifacts/exe/dist/node_modules/tar/dist/esm/list.js +0 -113
  288. package/artifacts/exe/dist/node_modules/tar/dist/esm/make-command.js +0 -48
  289. package/artifacts/exe/dist/node_modules/tar/dist/esm/mkdir.js +0 -179
  290. package/artifacts/exe/dist/node_modules/tar/dist/esm/mode-fix.js +0 -25
  291. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-unicode.js +0 -34
  292. package/artifacts/exe/dist/node_modules/tar/dist/esm/normalize-windows-path.js +0 -9
  293. package/artifacts/exe/dist/node_modules/tar/dist/esm/options.js +0 -54
  294. package/artifacts/exe/dist/node_modules/tar/dist/esm/pack.js +0 -502
  295. package/artifacts/exe/dist/node_modules/tar/dist/esm/package.json +0 -3
  296. package/artifacts/exe/dist/node_modules/tar/dist/esm/parse.js +0 -651
  297. package/artifacts/exe/dist/node_modules/tar/dist/esm/path-reservations.js +0 -166
  298. package/artifacts/exe/dist/node_modules/tar/dist/esm/pax.js +0 -178
  299. package/artifacts/exe/dist/node_modules/tar/dist/esm/process-umask.js +0 -3
  300. package/artifacts/exe/dist/node_modules/tar/dist/esm/read-entry.js +0 -132
  301. package/artifacts/exe/dist/node_modules/tar/dist/esm/replace.js +0 -221
  302. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-absolute-path.js +0 -25
  303. package/artifacts/exe/dist/node_modules/tar/dist/esm/strip-trailing-slashes.js +0 -14
  304. package/artifacts/exe/dist/node_modules/tar/dist/esm/symlink-error.js +0 -15
  305. package/artifacts/exe/dist/node_modules/tar/dist/esm/types.js +0 -65
  306. package/artifacts/exe/dist/node_modules/tar/dist/esm/unpack.js +0 -891
  307. package/artifacts/exe/dist/node_modules/tar/dist/esm/update.js +0 -30
  308. package/artifacts/exe/dist/node_modules/tar/dist/esm/warn-method.js +0 -27
  309. package/artifacts/exe/dist/node_modules/tar/dist/esm/winchars.js +0 -9
  310. package/artifacts/exe/dist/node_modules/tar/dist/esm/write-entry.js +0 -656
  311. package/artifacts/exe/dist/node_modules/tar/package.json +0 -298
  312. package/artifacts/exe/dist/node_modules/tinyglobby/LICENSE +0 -21
  313. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.cjs +0 -335
  314. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.cts +0 -148
  315. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.d.mts +0 -148
  316. package/artifacts/exe/dist/node_modules/tinyglobby/dist/index.mjs +0 -307
  317. package/artifacts/exe/dist/node_modules/tinyglobby/package.json +0 -70
  318. package/artifacts/exe/dist/node_modules/undici/LICENSE +0 -21
  319. package/artifacts/exe/dist/node_modules/undici/index-fetch.js +0 -35
  320. package/artifacts/exe/dist/node_modules/undici/index.js +0 -169
  321. package/artifacts/exe/dist/node_modules/undici/lib/api/abort-signal.js +0 -57
  322. package/artifacts/exe/dist/node_modules/undici/lib/api/api-connect.js +0 -108
  323. package/artifacts/exe/dist/node_modules/undici/lib/api/api-pipeline.js +0 -251
  324. package/artifacts/exe/dist/node_modules/undici/lib/api/api-request.js +0 -214
  325. package/artifacts/exe/dist/node_modules/undici/lib/api/api-stream.js +0 -220
  326. package/artifacts/exe/dist/node_modules/undici/lib/api/api-upgrade.js +0 -108
  327. package/artifacts/exe/dist/node_modules/undici/lib/api/index.js +0 -7
  328. package/artifacts/exe/dist/node_modules/undici/lib/api/readable.js +0 -385
  329. package/artifacts/exe/dist/node_modules/undici/lib/api/util.js +0 -93
  330. package/artifacts/exe/dist/node_modules/undici/lib/core/connect.js +0 -240
  331. package/artifacts/exe/dist/node_modules/undici/lib/core/constants.js +0 -118
  332. package/artifacts/exe/dist/node_modules/undici/lib/core/diagnostics.js +0 -202
  333. package/artifacts/exe/dist/node_modules/undici/lib/core/errors.js +0 -425
  334. package/artifacts/exe/dist/node_modules/undici/lib/core/request.js +0 -416
  335. package/artifacts/exe/dist/node_modules/undici/lib/core/symbols.js +0 -67
  336. package/artifacts/exe/dist/node_modules/undici/lib/core/tree.js +0 -152
  337. package/artifacts/exe/dist/node_modules/undici/lib/core/util.js +0 -719
  338. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/agent.js +0 -129
  339. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -209
  340. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1496
  341. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -744
  342. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/client.js +0 -623
  343. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -199
  344. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -65
  345. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -160
  346. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -117
  347. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -194
  348. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool-stats.js +0 -34
  349. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/pool.js +0 -107
  350. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -274
  351. package/artifacts/exe/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  352. package/artifacts/exe/dist/node_modules/undici/lib/global.js +0 -32
  353. package/artifacts/exe/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -44
  354. package/artifacts/exe/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -232
  355. package/artifacts/exe/dist/node_modules/undici/lib/handler/retry-handler.js +0 -408
  356. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dns.js +0 -375
  357. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/dump.js +0 -123
  358. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect-interceptor.js +0 -21
  359. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/redirect.js +0 -24
  360. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/response-error.js +0 -86
  361. package/artifacts/exe/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  362. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  363. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/constants.js +0 -278
  364. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -5
  365. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -5
  366. package/artifacts/exe/dist/node_modules/undici/lib/llhttp/utils.js +0 -15
  367. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-agent.js +0 -160
  368. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-client.js +0 -59
  369. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-errors.js +0 -28
  370. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -207
  371. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-pool.js +0 -59
  372. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -23
  373. package/artifacts/exe/dist/node_modules/undici/lib/mock/mock-utils.js +0 -367
  374. package/artifacts/exe/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  375. package/artifacts/exe/dist/node_modules/undici/lib/mock/pluralizer.js +0 -29
  376. package/artifacts/exe/dist/node_modules/undici/lib/util/timers.js +0 -423
  377. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cache.js +0 -859
  378. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  379. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/symbols.js +0 -5
  380. package/artifacts/exe/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  381. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  382. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/index.js +0 -184
  383. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/parse.js +0 -310
  384. package/artifacts/exe/dist/node_modules/undici/lib/web/cookies/util.js +0 -352
  385. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -398
  386. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -480
  387. package/artifacts/exe/dist/node_modules/undici/lib/web/eventsource/util.js +0 -37
  388. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/LICENSE +0 -21
  389. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/body.js +0 -529
  390. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/constants.js +0 -124
  391. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -744
  392. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +0 -46
  393. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/file.js +0 -126
  394. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -474
  395. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -252
  396. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  397. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/headers.js +0 -687
  398. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/index.js +0 -2272
  399. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/request.js +0 -1037
  400. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/response.js +0 -610
  401. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/symbols.js +0 -9
  402. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/util.js +0 -1632
  403. package/artifacts/exe/dist/node_modules/undici/lib/web/fetch/webidl.js +0 -695
  404. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/encoding.js +0 -290
  405. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/filereader.js +0 -344
  406. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/progressevent.js +0 -78
  407. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/symbols.js +0 -10
  408. package/artifacts/exe/dist/node_modules/undici/lib/web/fileapi/util.js +0 -391
  409. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/connection.js +0 -371
  410. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/constants.js +0 -66
  411. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/events.js +0 -329
  412. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/frame.js +0 -96
  413. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -100
  414. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -513
  415. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/sender.js +0 -104
  416. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/symbols.js +0 -12
  417. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/util.js +0 -322
  418. package/artifacts/exe/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -595
  419. package/artifacts/exe/dist/node_modules/undici/package.json +0 -160
  420. package/artifacts/exe/dist/node_modules/undici/scripts/strip-comments.js +0 -8
  421. package/artifacts/exe/dist/node_modules/v8-compile-cache/LICENSE +0 -21
  422. package/artifacts/exe/dist/node_modules/v8-compile-cache/package.json +0 -34
  423. package/artifacts/exe/dist/node_modules/v8-compile-cache/v8-compile-cache.js +0 -373
  424. package/artifacts/exe/dist/node_modules/which/LICENSE +0 -15
  425. package/artifacts/exe/dist/node_modules/which/bin/which.js +0 -52
  426. package/artifacts/exe/dist/node_modules/which/lib/index.js +0 -111
  427. package/artifacts/exe/dist/node_modules/which/package.json +0 -52
  428. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/index.js +0 -384
  429. package/artifacts/exe/dist/node_modules/yallist/dist/commonjs/package.json +0 -3
  430. package/artifacts/exe/dist/node_modules/yallist/dist/esm/index.js +0 -379
  431. package/artifacts/exe/dist/node_modules/yallist/dist/esm/package.json +0 -3
  432. package/artifacts/exe/dist/node_modules/yallist/package.json +0 -68
  433. package/artifacts/exe/dist/pnpm.mjs +0 -323057
  434. package/artifacts/exe/dist/pnpmrc +0 -2
  435. package/artifacts/exe/dist/templates/completion.bash +0 -31
  436. package/artifacts/exe/dist/templates/completion.fish +0 -22
  437. package/artifacts/exe/dist/templates/completion.ps1 +0 -193
  438. package/artifacts/exe/dist/templates/completion.zsh +0 -27
  439. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  440. package/artifacts/exe/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  441. package/artifacts/exe/dist/worker.js +0 -12117
@@ -1,375 +0,0 @@
1
- 'use strict'
2
- const { isIP } = require('node:net')
3
- const { lookup } = require('node:dns')
4
- const DecoratorHandler = require('../handler/decorator-handler')
5
- const { InvalidArgumentError, InformationalError } = require('../core/errors')
6
- const maxInt = Math.pow(2, 31) - 1
7
-
8
- class DNSInstance {
9
- #maxTTL = 0
10
- #maxItems = 0
11
- #records = new Map()
12
- dualStack = true
13
- affinity = null
14
- lookup = null
15
- pick = null
16
-
17
- constructor (opts) {
18
- this.#maxTTL = opts.maxTTL
19
- this.#maxItems = opts.maxItems
20
- this.dualStack = opts.dualStack
21
- this.affinity = opts.affinity
22
- this.lookup = opts.lookup ?? this.#defaultLookup
23
- this.pick = opts.pick ?? this.#defaultPick
24
- }
25
-
26
- get full () {
27
- return this.#records.size === this.#maxItems
28
- }
29
-
30
- runLookup (origin, opts, cb) {
31
- const ips = this.#records.get(origin.hostname)
32
-
33
- // If full, we just return the origin
34
- if (ips == null && this.full) {
35
- cb(null, origin.origin)
36
- return
37
- }
38
-
39
- const newOpts = {
40
- affinity: this.affinity,
41
- dualStack: this.dualStack,
42
- lookup: this.lookup,
43
- pick: this.pick,
44
- ...opts.dns,
45
- maxTTL: this.#maxTTL,
46
- maxItems: this.#maxItems
47
- }
48
-
49
- // If no IPs we lookup
50
- if (ips == null) {
51
- this.lookup(origin, newOpts, (err, addresses) => {
52
- if (err || addresses == null || addresses.length === 0) {
53
- cb(err ?? new InformationalError('No DNS entries found'))
54
- return
55
- }
56
-
57
- this.setRecords(origin, addresses)
58
- const records = this.#records.get(origin.hostname)
59
-
60
- const ip = this.pick(
61
- origin,
62
- records,
63
- newOpts.affinity
64
- )
65
-
66
- let port
67
- if (typeof ip.port === 'number') {
68
- port = `:${ip.port}`
69
- } else if (origin.port !== '') {
70
- port = `:${origin.port}`
71
- } else {
72
- port = ''
73
- }
74
-
75
- cb(
76
- null,
77
- `${origin.protocol}//${
78
- ip.family === 6 ? `[${ip.address}]` : ip.address
79
- }${port}`
80
- )
81
- })
82
- } else {
83
- // If there's IPs we pick
84
- const ip = this.pick(
85
- origin,
86
- ips,
87
- newOpts.affinity
88
- )
89
-
90
- // If no IPs we lookup - deleting old records
91
- if (ip == null) {
92
- this.#records.delete(origin.hostname)
93
- this.runLookup(origin, opts, cb)
94
- return
95
- }
96
-
97
- let port
98
- if (typeof ip.port === 'number') {
99
- port = `:${ip.port}`
100
- } else if (origin.port !== '') {
101
- port = `:${origin.port}`
102
- } else {
103
- port = ''
104
- }
105
-
106
- cb(
107
- null,
108
- `${origin.protocol}//${
109
- ip.family === 6 ? `[${ip.address}]` : ip.address
110
- }${port}`
111
- )
112
- }
113
- }
114
-
115
- #defaultLookup (origin, opts, cb) {
116
- lookup(
117
- origin.hostname,
118
- {
119
- all: true,
120
- family: this.dualStack === false ? this.affinity : 0,
121
- order: 'ipv4first'
122
- },
123
- (err, addresses) => {
124
- if (err) {
125
- return cb(err)
126
- }
127
-
128
- const results = new Map()
129
-
130
- for (const addr of addresses) {
131
- // On linux we found duplicates, we attempt to remove them with
132
- // the latest record
133
- results.set(`${addr.address}:${addr.family}`, addr)
134
- }
135
-
136
- cb(null, results.values())
137
- }
138
- )
139
- }
140
-
141
- #defaultPick (origin, hostnameRecords, affinity) {
142
- let ip = null
143
- const { records, offset } = hostnameRecords
144
-
145
- let family
146
- if (this.dualStack) {
147
- if (affinity == null) {
148
- // Balance between ip families
149
- if (offset == null || offset === maxInt) {
150
- hostnameRecords.offset = 0
151
- affinity = 4
152
- } else {
153
- hostnameRecords.offset++
154
- affinity = (hostnameRecords.offset & 1) === 1 ? 6 : 4
155
- }
156
- }
157
-
158
- if (records[affinity] != null && records[affinity].ips.length > 0) {
159
- family = records[affinity]
160
- } else {
161
- family = records[affinity === 4 ? 6 : 4]
162
- }
163
- } else {
164
- family = records[affinity]
165
- }
166
-
167
- // If no IPs we return null
168
- if (family == null || family.ips.length === 0) {
169
- return ip
170
- }
171
-
172
- if (family.offset == null || family.offset === maxInt) {
173
- family.offset = 0
174
- } else {
175
- family.offset++
176
- }
177
-
178
- const position = family.offset % family.ips.length
179
- ip = family.ips[position] ?? null
180
-
181
- if (ip == null) {
182
- return ip
183
- }
184
-
185
- if (Date.now() - ip.timestamp > ip.ttl) { // record TTL is already in ms
186
- // We delete expired records
187
- // It is possible that they have different TTL, so we manage them individually
188
- family.ips.splice(position, 1)
189
- return this.pick(origin, hostnameRecords, affinity)
190
- }
191
-
192
- return ip
193
- }
194
-
195
- setRecords (origin, addresses) {
196
- const timestamp = Date.now()
197
- const records = { records: { 4: null, 6: null } }
198
- for (const record of addresses) {
199
- record.timestamp = timestamp
200
- if (typeof record.ttl === 'number') {
201
- // The record TTL is expected to be in ms
202
- record.ttl = Math.min(record.ttl, this.#maxTTL)
203
- } else {
204
- record.ttl = this.#maxTTL
205
- }
206
-
207
- const familyRecords = records.records[record.family] ?? { ips: [] }
208
-
209
- familyRecords.ips.push(record)
210
- records.records[record.family] = familyRecords
211
- }
212
-
213
- this.#records.set(origin.hostname, records)
214
- }
215
-
216
- getHandler (meta, opts) {
217
- return new DNSDispatchHandler(this, meta, opts)
218
- }
219
- }
220
-
221
- class DNSDispatchHandler extends DecoratorHandler {
222
- #state = null
223
- #opts = null
224
- #dispatch = null
225
- #handler = null
226
- #origin = null
227
-
228
- constructor (state, { origin, handler, dispatch }, opts) {
229
- super(handler)
230
- this.#origin = origin
231
- this.#handler = handler
232
- this.#opts = { ...opts }
233
- this.#state = state
234
- this.#dispatch = dispatch
235
- }
236
-
237
- onError (err) {
238
- switch (err.code) {
239
- case 'ETIMEDOUT':
240
- case 'ECONNREFUSED': {
241
- if (this.#state.dualStack) {
242
- // We delete the record and retry
243
- this.#state.runLookup(this.#origin, this.#opts, (err, newOrigin) => {
244
- if (err) {
245
- return this.#handler.onError(err)
246
- }
247
-
248
- const dispatchOpts = {
249
- ...this.#opts,
250
- origin: newOrigin
251
- }
252
-
253
- this.#dispatch(dispatchOpts, this)
254
- })
255
-
256
- // if dual-stack disabled, we error out
257
- return
258
- }
259
-
260
- this.#handler.onError(err)
261
- return
262
- }
263
- case 'ENOTFOUND':
264
- this.#state.deleteRecord(this.#origin)
265
- // eslint-disable-next-line no-fallthrough
266
- default:
267
- this.#handler.onError(err)
268
- break
269
- }
270
- }
271
- }
272
-
273
- module.exports = interceptorOpts => {
274
- if (
275
- interceptorOpts?.maxTTL != null &&
276
- (typeof interceptorOpts?.maxTTL !== 'number' || interceptorOpts?.maxTTL < 0)
277
- ) {
278
- throw new InvalidArgumentError('Invalid maxTTL. Must be a positive number')
279
- }
280
-
281
- if (
282
- interceptorOpts?.maxItems != null &&
283
- (typeof interceptorOpts?.maxItems !== 'number' ||
284
- interceptorOpts?.maxItems < 1)
285
- ) {
286
- throw new InvalidArgumentError(
287
- 'Invalid maxItems. Must be a positive number and greater than zero'
288
- )
289
- }
290
-
291
- if (
292
- interceptorOpts?.affinity != null &&
293
- interceptorOpts?.affinity !== 4 &&
294
- interceptorOpts?.affinity !== 6
295
- ) {
296
- throw new InvalidArgumentError('Invalid affinity. Must be either 4 or 6')
297
- }
298
-
299
- if (
300
- interceptorOpts?.dualStack != null &&
301
- typeof interceptorOpts?.dualStack !== 'boolean'
302
- ) {
303
- throw new InvalidArgumentError('Invalid dualStack. Must be a boolean')
304
- }
305
-
306
- if (
307
- interceptorOpts?.lookup != null &&
308
- typeof interceptorOpts?.lookup !== 'function'
309
- ) {
310
- throw new InvalidArgumentError('Invalid lookup. Must be a function')
311
- }
312
-
313
- if (
314
- interceptorOpts?.pick != null &&
315
- typeof interceptorOpts?.pick !== 'function'
316
- ) {
317
- throw new InvalidArgumentError('Invalid pick. Must be a function')
318
- }
319
-
320
- const dualStack = interceptorOpts?.dualStack ?? true
321
- let affinity
322
- if (dualStack) {
323
- affinity = interceptorOpts?.affinity ?? null
324
- } else {
325
- affinity = interceptorOpts?.affinity ?? 4
326
- }
327
-
328
- const opts = {
329
- maxTTL: interceptorOpts?.maxTTL ?? 10e3, // Expressed in ms
330
- lookup: interceptorOpts?.lookup ?? null,
331
- pick: interceptorOpts?.pick ?? null,
332
- dualStack,
333
- affinity,
334
- maxItems: interceptorOpts?.maxItems ?? Infinity
335
- }
336
-
337
- const instance = new DNSInstance(opts)
338
-
339
- return dispatch => {
340
- return function dnsInterceptor (origDispatchOpts, handler) {
341
- const origin =
342
- origDispatchOpts.origin.constructor === URL
343
- ? origDispatchOpts.origin
344
- : new URL(origDispatchOpts.origin)
345
-
346
- if (isIP(origin.hostname) !== 0) {
347
- return dispatch(origDispatchOpts, handler)
348
- }
349
-
350
- instance.runLookup(origin, origDispatchOpts, (err, newOrigin) => {
351
- if (err) {
352
- return handler.onError(err)
353
- }
354
-
355
- let dispatchOpts = null
356
- dispatchOpts = {
357
- ...origDispatchOpts,
358
- servername: origin.hostname, // For SNI on TLS
359
- origin: newOrigin,
360
- headers: {
361
- host: origin.hostname,
362
- ...origDispatchOpts.headers
363
- }
364
- }
365
-
366
- dispatch(
367
- dispatchOpts,
368
- instance.getHandler({ origin, dispatch, handler }, origDispatchOpts)
369
- )
370
- })
371
-
372
- return true
373
- }
374
- }
375
- }
@@ -1,123 +0,0 @@
1
- 'use strict'
2
-
3
- const util = require('../core/util')
4
- const { InvalidArgumentError, RequestAbortedError } = require('../core/errors')
5
- const DecoratorHandler = require('../handler/decorator-handler')
6
-
7
- class DumpHandler extends DecoratorHandler {
8
- #maxSize = 1024 * 1024
9
- #abort = null
10
- #dumped = false
11
- #aborted = false
12
- #size = 0
13
- #reason = null
14
- #handler = null
15
-
16
- constructor ({ maxSize }, handler) {
17
- super(handler)
18
-
19
- if (maxSize != null && (!Number.isFinite(maxSize) || maxSize < 1)) {
20
- throw new InvalidArgumentError('maxSize must be a number greater than 0')
21
- }
22
-
23
- this.#maxSize = maxSize ?? this.#maxSize
24
- this.#handler = handler
25
- }
26
-
27
- onConnect (abort) {
28
- this.#abort = abort
29
-
30
- this.#handler.onConnect(this.#customAbort.bind(this))
31
- }
32
-
33
- #customAbort (reason) {
34
- this.#aborted = true
35
- this.#reason = reason
36
- }
37
-
38
- // TODO: will require adjustment after new hooks are out
39
- onHeaders (statusCode, rawHeaders, resume, statusMessage) {
40
- const headers = util.parseHeaders(rawHeaders)
41
- const contentLength = headers['content-length']
42
-
43
- if (contentLength != null && contentLength > this.#maxSize) {
44
- throw new RequestAbortedError(
45
- `Response size (${contentLength}) larger than maxSize (${
46
- this.#maxSize
47
- })`
48
- )
49
- }
50
-
51
- if (this.#aborted) {
52
- return true
53
- }
54
-
55
- return this.#handler.onHeaders(
56
- statusCode,
57
- rawHeaders,
58
- resume,
59
- statusMessage
60
- )
61
- }
62
-
63
- onError (err) {
64
- if (this.#dumped) {
65
- return
66
- }
67
-
68
- err = this.#reason ?? err
69
-
70
- this.#handler.onError(err)
71
- }
72
-
73
- onData (chunk) {
74
- this.#size = this.#size + chunk.length
75
-
76
- if (this.#size >= this.#maxSize) {
77
- this.#dumped = true
78
-
79
- if (this.#aborted) {
80
- this.#handler.onError(this.#reason)
81
- } else {
82
- this.#handler.onComplete([])
83
- }
84
- }
85
-
86
- return true
87
- }
88
-
89
- onComplete (trailers) {
90
- if (this.#dumped) {
91
- return
92
- }
93
-
94
- if (this.#aborted) {
95
- this.#handler.onError(this.reason)
96
- return
97
- }
98
-
99
- this.#handler.onComplete(trailers)
100
- }
101
- }
102
-
103
- function createDumpInterceptor (
104
- { maxSize: defaultMaxSize } = {
105
- maxSize: 1024 * 1024
106
- }
107
- ) {
108
- return dispatch => {
109
- return function Intercept (opts, handler) {
110
- const { dumpMaxSize = defaultMaxSize } =
111
- opts
112
-
113
- const dumpHandler = new DumpHandler(
114
- { maxSize: dumpMaxSize },
115
- handler
116
- )
117
-
118
- return dispatch(opts, dumpHandler)
119
- }
120
- }
121
- }
122
-
123
- module.exports = createDumpInterceptor
@@ -1,21 +0,0 @@
1
- 'use strict'
2
-
3
- const RedirectHandler = require('../handler/redirect-handler')
4
-
5
- function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) {
6
- return (dispatch) => {
7
- return function Intercept (opts, handler) {
8
- const { maxRedirections = defaultMaxRedirections } = opts
9
-
10
- if (!maxRedirections) {
11
- return dispatch(opts, handler)
12
- }
13
-
14
- const redirectHandler = new RedirectHandler(dispatch, maxRedirections, opts, handler)
15
- opts = { ...opts, maxRedirections: 0 } // Stop sub dispatcher from also redirecting.
16
- return dispatch(opts, redirectHandler)
17
- }
18
- }
19
- }
20
-
21
- module.exports = createRedirectInterceptor
@@ -1,24 +0,0 @@
1
- 'use strict'
2
- const RedirectHandler = require('../handler/redirect-handler')
3
-
4
- module.exports = opts => {
5
- const globalMaxRedirections = opts?.maxRedirections
6
- return dispatch => {
7
- return function redirectInterceptor (opts, handler) {
8
- const { maxRedirections = globalMaxRedirections, ...baseOpts } = opts
9
-
10
- if (!maxRedirections) {
11
- return dispatch(opts, handler)
12
- }
13
-
14
- const redirectHandler = new RedirectHandler(
15
- dispatch,
16
- maxRedirections,
17
- opts,
18
- handler
19
- )
20
-
21
- return dispatch(baseOpts, redirectHandler)
22
- }
23
- }
24
- }
@@ -1,86 +0,0 @@
1
- 'use strict'
2
-
3
- const { parseHeaders } = require('../core/util')
4
- const DecoratorHandler = require('../handler/decorator-handler')
5
- const { ResponseError } = require('../core/errors')
6
-
7
- class Handler extends DecoratorHandler {
8
- #handler
9
- #statusCode
10
- #contentType
11
- #decoder
12
- #headers
13
- #body
14
-
15
- constructor (opts, { handler }) {
16
- super(handler)
17
- this.#handler = handler
18
- }
19
-
20
- onConnect (abort) {
21
- this.#statusCode = 0
22
- this.#contentType = null
23
- this.#decoder = null
24
- this.#headers = null
25
- this.#body = ''
26
-
27
- return this.#handler.onConnect(abort)
28
- }
29
-
30
- onHeaders (statusCode, rawHeaders, resume, statusMessage, headers = parseHeaders(rawHeaders)) {
31
- this.#statusCode = statusCode
32
- this.#headers = headers
33
- this.#contentType = headers['content-type']
34
-
35
- if (this.#statusCode < 400) {
36
- return this.#handler.onHeaders(statusCode, rawHeaders, resume, statusMessage, headers)
37
- }
38
-
39
- if (this.#contentType === 'application/json' || this.#contentType === 'text/plain') {
40
- this.#decoder = new TextDecoder('utf-8')
41
- }
42
- }
43
-
44
- onData (chunk) {
45
- if (this.#statusCode < 400) {
46
- return this.#handler.onData(chunk)
47
- }
48
-
49
- this.#body += this.#decoder?.decode(chunk, { stream: true }) ?? ''
50
- }
51
-
52
- onComplete (rawTrailers) {
53
- if (this.#statusCode >= 400) {
54
- this.#body += this.#decoder?.decode(undefined, { stream: false }) ?? ''
55
-
56
- if (this.#contentType === 'application/json') {
57
- try {
58
- this.#body = JSON.parse(this.#body)
59
- } catch {
60
- // Do nothing...
61
- }
62
- }
63
-
64
- let err
65
- const stackTraceLimit = Error.stackTraceLimit
66
- Error.stackTraceLimit = 0
67
- try {
68
- err = new ResponseError('Response Error', this.#statusCode, this.#headers, this.#body)
69
- } finally {
70
- Error.stackTraceLimit = stackTraceLimit
71
- }
72
-
73
- this.#handler.onError(err)
74
- } else {
75
- this.#handler.onComplete(rawTrailers)
76
- }
77
- }
78
-
79
- onError (err) {
80
- this.#handler.onError(err)
81
- }
82
- }
83
-
84
- module.exports = (dispatch) => (opts, handler) => opts.throwOnError
85
- ? dispatch(opts, new Handler(opts, { handler }))
86
- : dispatch(opts, handler)
@@ -1,19 +0,0 @@
1
- 'use strict'
2
- const RetryHandler = require('../handler/retry-handler')
3
-
4
- module.exports = globalOpts => {
5
- return dispatch => {
6
- return function retryInterceptor (opts, handler) {
7
- return dispatch(
8
- opts,
9
- new RetryHandler(
10
- { ...opts, retryOptions: { ...globalOpts, ...opts.retryOptions } },
11
- {
12
- handler,
13
- dispatch
14
- }
15
- )
16
- )
17
- }
18
- }
19
- }