@automattic/vip 4.1.3 → 4.1.5

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 (854) hide show
  1. package/.buildkite/build-macos-installer.sh +34 -0
  2. package/.buildkite/build-macos.sh +2 -3
  3. package/.buildkite/build-windows-installer.ps1 +65 -0
  4. package/.buildkite/build-windows.ps1 +2 -18
  5. package/.buildkite/pipeline.yml +32 -0
  6. package/.buildkite/sign-windows.ps1 +21 -0
  7. package/.buildkite/test-windows-installer-download.ps1 +54 -0
  8. package/.buildkite/test_pipeline.py +69 -0
  9. package/Gemfile.lock +44 -41
  10. package/cmd/installer-payload/main.go +19 -0
  11. package/cmd/installer-version/main.go +22 -0
  12. package/cmd/vip-next/commands/app_debug_test.go +89 -0
  13. package/cmd/vip-next/commands/app_deploy.go +4 -0
  14. package/cmd/vip-next/commands/app_deploy_validate.go +2 -0
  15. package/cmd/vip-next/commands/config_debug_test.go +137 -0
  16. package/cmd/vip-next/commands/config_envvar_delete.go +2 -0
  17. package/cmd/vip-next/commands/config_envvar_get.go +2 -0
  18. package/cmd/vip-next/commands/config_envvar_get_all.go +2 -0
  19. package/cmd/vip-next/commands/config_envvar_list.go +2 -0
  20. package/cmd/vip-next/commands/config_envvar_set.go +2 -0
  21. package/cmd/vip-next/commands/config_software_update.go +12 -1
  22. package/cmd/vip-next/commands/devenv.go +1 -0
  23. package/cmd/vip-next/commands/devenv_create_test.go +5 -5
  24. package/cmd/vip-next/commands/devenv_debug_test.go +34 -0
  25. package/cmd/vip-next/commands/devenv_envvar.go +12 -0
  26. package/cmd/vip-next/commands/devenv_lifecycle.go +37 -11
  27. package/cmd/vip-next/commands/devenv_resolve.go +15 -3
  28. package/cmd/vip-next/commands/devenv_telemetry.go +265 -0
  29. package/cmd/vip-next/commands/devenv_telemetry_test.go +322 -0
  30. package/cmd/vip-next/commands/devenv_update.go +1 -1
  31. package/cmd/vip-next/commands/devenv_update_test.go +28 -2
  32. package/cmd/vip-next/commands/import_debug_test.go +110 -0
  33. package/cmd/vip-next/commands/import_media.go +4 -0
  34. package/cmd/vip-next/commands/import_sql.go +9 -1
  35. package/cmd/vip-next/commands/logout.go +1 -1
  36. package/cmd/vip-next/commands/searchreplace.go +3 -1
  37. package/cmd/vip-next/commands/searchreplace_debug_test.go +82 -0
  38. package/cmd/vip-next/commands/whoami.go +10 -1
  39. package/cmd/vip-next/commands/whoami_debug_test.go +79 -0
  40. package/cmd/vip-next/commands/wp.go +2 -0
  41. package/cmd/vip-next/commands/wp_debug_test.go +32 -0
  42. package/cmd/vip-next/debug_args.go +63 -0
  43. package/cmd/vip-next/debug_test.go +122 -0
  44. package/cmd/vip-next/main.go +58 -2
  45. package/cmd/vip-next/pendo_wiring_test.go +148 -0
  46. package/cmd/vip-next/root.go +17 -0
  47. package/dist/bin/vip-dev-env-envvar-get.js +2 -2
  48. package/dist/bin/vip-dev-env-envvar-set.js +2 -2
  49. package/dist/bin/vip-dev-env-update.js +1 -1
  50. package/dist/lib/analytics/clients/pendo.js +19 -7
  51. package/dist/lib/constants/dev-environment.js +8 -7
  52. package/dist/lib/dev-environment/dev-environment-cli.js +15 -4
  53. package/dist/lib/dev-environment/dev-environment-core.js +1 -1
  54. package/docs/BUILD-SIGNING.md +147 -6
  55. package/docs/DEBUGGING.md +61 -0
  56. package/docs/GO-UPDATES.md +7 -1
  57. package/docs/RELEASING.md +3 -2
  58. package/docs/SETUP.md +2 -1
  59. package/fastlane/Fastfile +66 -3
  60. package/fastlane/test_signing.rb +83 -0
  61. package/internal/auth/logout.go +14 -1
  62. package/internal/auth/logout_test.go +46 -0
  63. package/internal/debuglog/debuglog.go +85 -0
  64. package/internal/debuglog/debuglog_test.go +44 -0
  65. package/internal/devenv/compose/view.go +6 -3
  66. package/internal/devenv/compose/view_test.go +1 -1
  67. package/internal/devenv/debug.go +4 -0
  68. package/internal/devenv/debug_test.go +103 -0
  69. package/internal/devenv/devenv.go +20 -2
  70. package/internal/devenv/devexec.go +3 -0
  71. package/internal/devenv/importdata.go +4 -1
  72. package/internal/devenv/list.go +9 -1
  73. package/internal/devenv/logs.go +2 -0
  74. package/internal/devenv/proxy/ca.go +9 -2
  75. package/internal/devenv/proxy/ca_test.go +1 -1
  76. package/internal/devenv/proxy/network.go +7 -3
  77. package/internal/devenv/proxy/network_test.go +6 -0
  78. package/internal/devenv/proxy/proxy.go +37 -8
  79. package/internal/devenv/proxy/proxy_test.go +61 -6
  80. package/internal/devenv/proxy/scripts/gen-certs.sh +20 -5
  81. package/internal/devenv/update.go +2 -0
  82. package/internal/gql/debug_test.go +79 -0
  83. package/internal/gql/error.go +27 -1
  84. package/internal/gql/rechallenge.go +9 -5
  85. package/internal/gql/retry.go +21 -2
  86. package/internal/gql/transport.go +9 -0
  87. package/internal/httpproxy/debug_test.go +32 -0
  88. package/internal/httpproxy/httpproxy.go +8 -1
  89. package/internal/installer/version.go +41 -0
  90. package/internal/installer/version_test.go +33 -0
  91. package/internal/parity/edge_workers_debug_test.go +87 -0
  92. package/internal/parity/pendo_test.go +122 -0
  93. package/internal/rechallenge/flow.go +8 -0
  94. package/internal/rechallenge/flow_test.go +15 -1
  95. package/internal/releasepromotion/buildkite.go +12 -1
  96. package/internal/releasepromotion/buildkite_test.go +31 -0
  97. package/internal/releasepromotion/contract.go +49 -1
  98. package/internal/releasepromotion/contract_test.go +38 -0
  99. package/internal/releasepromotion/github.go +4 -10
  100. package/internal/releasepromotion/optional_installers_test.go +87 -0
  101. package/internal/releasepromotion/verify.go +99 -2
  102. package/internal/releasepromotion/verify_test.go +99 -0
  103. package/internal/searchreplace/debug_test.go +71 -0
  104. package/internal/searchreplace/searchreplace.go +14 -0
  105. package/internal/siteimport/debug_test.go +34 -0
  106. package/internal/siteimport/status.go +11 -0
  107. package/internal/telemetry/pendo.go +41 -10
  108. package/internal/telemetry/pendo_auth_test.go +92 -0
  109. package/internal/telemetry/pendo_test.go +24 -5
  110. package/internal/telemetry/tracker.go +26 -0
  111. package/internal/update/github.go +36 -17
  112. package/internal/update/ownership.go +22 -0
  113. package/internal/update/ownership_test.go +44 -0
  114. package/internal/update/release_test.go +53 -13
  115. package/internal/update/service_test.go +39 -0
  116. package/internal/upload/debug_test.go +76 -0
  117. package/internal/upload/multipart.go +3 -0
  118. package/internal/upload/orchestrate.go +10 -0
  119. package/internal/upload/putobject.go +3 -0
  120. package/internal/wpssh/debug_test.go +67 -0
  121. package/internal/wpssh/wpssh.go +7 -0
  122. package/internal/wpstream/debug_test.go +116 -0
  123. package/internal/wpstream/run.go +10 -1
  124. package/node_modules/@apollo/client/CHANGELOG.md +1136 -0
  125. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs +36 -0
  126. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs.map +1 -0
  127. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.d.cts +56 -0
  128. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs +32 -1
  129. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs.map +1 -1
  130. package/node_modules/@apollo/client/__cjs/cache/core/cache.d.cts +89 -6
  131. package/node_modules/@apollo/client/__cjs/cache/core/types/Cache.d.cts +30 -2
  132. package/node_modules/@apollo/client/__cjs/cache/index.cjs +3 -1
  133. package/node_modules/@apollo/client/__cjs/cache/index.cjs.map +1 -1
  134. package/node_modules/@apollo/client/__cjs/cache/index.d.cts +2 -1
  135. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs +63 -5
  136. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  137. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.d.cts +3 -0
  138. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs +12 -0
  139. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  140. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.d.cts +11 -2
  141. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +95 -4
  142. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  143. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.d.cts +44 -5
  144. package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  145. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +34 -6
  146. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs.map +1 -1
  147. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.d.cts +3 -1
  148. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs +489 -45
  149. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  150. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.d.cts +11 -2
  151. package/node_modules/@apollo/client/__cjs/cache/inmemory/types.d.cts +31 -4
  152. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +5 -9
  153. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  154. package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs +14 -14
  155. package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs.map +1 -1
  156. package/node_modules/@apollo/client/__cjs/core/ApolloClient.d.cts +11 -11
  157. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs +186 -72
  158. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs.map +1 -1
  159. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.d.cts +4 -7
  160. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +164 -197
  161. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
  162. package/node_modules/@apollo/client/__cjs/core/QueryInfo.d.cts +17 -21
  163. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +75 -48
  164. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs.map +1 -1
  165. package/node_modules/@apollo/client/__cjs/core/QueryManager.d.cts +4 -4
  166. package/node_modules/@apollo/client/__cjs/core/RefetchEventManager.cjs +3 -3
  167. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs +12 -0
  168. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs.map +1 -0
  169. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.d.cts +3 -0
  170. package/node_modules/@apollo/client/__cjs/core/deprecated.d.cts +3 -3
  171. package/node_modules/@apollo/client/__cjs/core/index.cjs +2 -1
  172. package/node_modules/@apollo/client/__cjs/core/index.cjs.map +1 -1
  173. package/node_modules/@apollo/client/__cjs/core/index.d.cts +4 -3
  174. package/node_modules/@apollo/client/__cjs/core/types.d.cts +11 -7
  175. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs +3 -0
  176. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs.map +1 -0
  177. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.d.cts +55 -0
  178. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  179. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.d.cts +2 -4
  180. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs +47 -16
  181. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -1
  182. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.d.cts +29 -6
  183. package/node_modules/@apollo/client/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  184. package/node_modules/@apollo/client/__cjs/incremental/index.cjs.map +1 -1
  185. package/node_modules/@apollo/client/__cjs/incremental/index.d.cts +1 -0
  186. package/node_modules/@apollo/client/__cjs/{utilities/internal/types/NoInfer.cjs → incremental/internal/types.cjs} +1 -1
  187. package/node_modules/@apollo/client/__cjs/incremental/internal/types.cjs.map +1 -0
  188. package/node_modules/@apollo/client/__cjs/incremental/internal/types.d.cts +17 -0
  189. package/node_modules/@apollo/client/__cjs/incremental/types.d.cts +55 -4
  190. package/node_modules/@apollo/client/__cjs/invariantErrorCodes.cjs +164 -113
  191. package/node_modules/@apollo/client/__cjs/link/core/ApolloLink.cjs +3 -3
  192. package/node_modules/@apollo/client/__cjs/link/http/checkFetcher.cjs +1 -1
  193. package/node_modules/@apollo/client/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  194. package/node_modules/@apollo/client/__cjs/link/persisted-queries/index.cjs +2 -2
  195. package/node_modules/@apollo/client/__cjs/link/ws/index.cjs +1 -1
  196. package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs +11 -11
  197. package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs.map +1 -1
  198. package/node_modules/@apollo/client/__cjs/local-state/LocalState.d.cts +1 -1
  199. package/node_modules/@apollo/client/__cjs/masking/internal/types.d.cts +1 -2
  200. package/node_modules/@apollo/client/__cjs/masking/maskDefinition.cjs +2 -2
  201. package/node_modules/@apollo/client/__cjs/masking/maskFragment.cjs +2 -2
  202. package/node_modules/@apollo/client/__cjs/masking/maskOperation.cjs +1 -1
  203. package/node_modules/@apollo/client/__cjs/masking/utils.cjs +3 -3
  204. package/node_modules/@apollo/client/__cjs/react/context/ApolloContext.cjs +1 -1
  205. package/node_modules/@apollo/client/__cjs/react/context/ApolloProvider.cjs +1 -1
  206. package/node_modules/@apollo/client/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs +2 -2
  207. package/node_modules/@apollo/client/__cjs/react/hooks/useApolloClient.cjs +1 -1
  208. package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  209. package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.d.cts +3 -3
  210. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.cjs.map +1 -1
  211. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.d.cts +0 -1
  212. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs +29 -3
  213. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  214. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.d.cts +1 -1
  215. package/node_modules/@apollo/client/__cjs/react/hooks/useLoadableQuery.cjs +2 -2
  216. package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.cjs.map +1 -1
  217. package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.d.cts +14 -14
  218. package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.cjs.map +1 -1
  219. package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.d.cts +16 -3
  220. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs +7 -3
  221. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  222. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.d.cts +27 -5
  223. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  224. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.d.cts +1 -1
  225. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  226. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.d.cts +30 -30
  227. package/node_modules/@apollo/client/__cjs/react/hooks/useSyncExternalStore.cjs +1 -1
  228. package/node_modules/@apollo/client/__cjs/react/internal/cache/QueryReference.cjs +1 -1
  229. package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  230. package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.d.cts +1 -1
  231. package/node_modules/@apollo/client/__cjs/react/ssr/prerenderStatic.cjs +2 -2
  232. package/node_modules/@apollo/client/__cjs/react/types/deprecated.d.cts +5 -4
  233. package/node_modules/@apollo/client/__cjs/react/types/types.documentation.d.cts +12 -1
  234. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs +25 -5
  235. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  236. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.d.cts +1 -2
  237. package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.cjs.map +1 -1
  238. package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.d.cts +39 -1
  239. package/node_modules/@apollo/client/__cjs/utilities/graphql/DocumentTransform.cjs +1 -1
  240. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs +27 -0
  241. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs.map +1 -0
  242. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.d.cts +12 -0
  243. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs +33 -0
  244. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs.map +1 -0
  245. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.d.cts +3 -0
  246. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs +12 -0
  247. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs.map +1 -0
  248. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.d.cts +7 -0
  249. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs +102 -0
  250. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs.map +1 -0
  251. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.d.cts +9 -0
  252. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs +20 -1
  253. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs.map +1 -1
  254. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.d.cts +19 -0
  255. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs +19 -0
  256. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs.map +1 -0
  257. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.d.cts +9 -0
  258. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs +3 -3
  259. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -1
  260. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs +2 -2
  261. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs.map +1 -1
  262. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentQueryDocument.cjs +2 -2
  263. package/node_modules/@apollo/client/__cjs/utilities/internal/getMainDefinition.cjs +1 -1
  264. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs +6 -0
  265. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  266. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.d.cts +4 -0
  267. package/node_modules/@apollo/client/__cjs/utilities/internal/getQueryDefinition.cjs +1 -1
  268. package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs +27 -2
  269. package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs.map +1 -1
  270. package/node_modules/@apollo/client/__cjs/utilities/internal/index.d.cts +17 -2
  271. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs +38 -0
  272. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs.map +1 -0
  273. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.d.cts +9 -0
  274. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs +37 -0
  275. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs.map +1 -0
  276. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.d.cts +9 -0
  277. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs +7 -0
  278. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs.map +1 -0
  279. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.d.cts +3 -0
  280. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs +17 -0
  281. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs.map +1 -0
  282. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.d.cts +8 -0
  283. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs +12 -0
  284. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs.map +1 -0
  285. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.d.cts +8 -0
  286. package/node_modules/@apollo/client/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +1 -1
  287. package/node_modules/@apollo/client/__cjs/utilities/internal/shouldInclude.cjs +4 -4
  288. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs +20 -0
  289. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs.map +1 -0
  290. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.d.cts +8 -0
  291. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs +3 -0
  292. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs.map +1 -0
  293. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.d.cts +10 -0
  294. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs +3 -0
  295. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs.map +1 -0
  296. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.d.cts +2 -0
  297. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs +3 -0
  298. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs.map +1 -0
  299. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.d.cts +10 -0
  300. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs +3 -0
  301. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs.map +1 -0
  302. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.d.cts +4 -0
  303. package/node_modules/@apollo/client/__cjs/utilities/internal/types/StreamInfoTrie.d.cts +2 -0
  304. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs +12 -0
  305. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs.map +1 -0
  306. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.d.cts +10 -0
  307. package/node_modules/@apollo/client/__cjs/utilities/internal/valueToObjectRepresentation.cjs +1 -1
  308. package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
  309. package/node_modules/@apollo/client/__cjs/version.cjs.map +1 -1
  310. package/node_modules/@apollo/client/cache/core/Scalar.d.ts +56 -0
  311. package/node_modules/@apollo/client/cache/core/Scalar.js +32 -0
  312. package/node_modules/@apollo/client/cache/core/Scalar.js.map +1 -0
  313. package/node_modules/@apollo/client/cache/core/cache.d.ts +89 -6
  314. package/node_modules/@apollo/client/cache/core/cache.js +33 -2
  315. package/node_modules/@apollo/client/cache/core/cache.js.map +1 -1
  316. package/node_modules/@apollo/client/cache/core/types/Cache.d.ts +30 -2
  317. package/node_modules/@apollo/client/cache/core/types/Cache.js.map +1 -1
  318. package/node_modules/@apollo/client/cache/index.d.ts +2 -1
  319. package/node_modules/@apollo/client/cache/index.js +1 -0
  320. package/node_modules/@apollo/client/cache/index.js.map +1 -1
  321. package/node_modules/@apollo/client/cache/inmemory/entityStore.d.ts +3 -0
  322. package/node_modules/@apollo/client/cache/inmemory/entityStore.js +64 -6
  323. package/node_modules/@apollo/client/cache/inmemory/entityStore.js.map +1 -1
  324. package/node_modules/@apollo/client/cache/inmemory/helpers.d.ts +11 -2
  325. package/node_modules/@apollo/client/cache/inmemory/helpers.js +11 -0
  326. package/node_modules/@apollo/client/cache/inmemory/helpers.js.map +1 -1
  327. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.d.ts +44 -5
  328. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +97 -6
  329. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
  330. package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +1 -1
  331. package/node_modules/@apollo/client/cache/inmemory/policies.d.ts +3 -1
  332. package/node_modules/@apollo/client/cache/inmemory/policies.js +34 -6
  333. package/node_modules/@apollo/client/cache/inmemory/policies.js.map +1 -1
  334. package/node_modules/@apollo/client/cache/inmemory/readFromStore.d.ts +11 -2
  335. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js +485 -45
  336. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js.map +1 -1
  337. package/node_modules/@apollo/client/cache/inmemory/types.d.ts +32 -5
  338. package/node_modules/@apollo/client/cache/inmemory/types.js.map +1 -1
  339. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +6 -10
  340. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
  341. package/node_modules/@apollo/client/core/ApolloClient.d.ts +11 -11
  342. package/node_modules/@apollo/client/core/ApolloClient.js +14 -14
  343. package/node_modules/@apollo/client/core/ApolloClient.js.map +1 -1
  344. package/node_modules/@apollo/client/core/ObservableQuery.d.ts +4 -7
  345. package/node_modules/@apollo/client/core/ObservableQuery.js +183 -73
  346. package/node_modules/@apollo/client/core/ObservableQuery.js.map +1 -1
  347. package/node_modules/@apollo/client/core/QueryInfo.d.ts +18 -22
  348. package/node_modules/@apollo/client/core/QueryInfo.js +165 -198
  349. package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
  350. package/node_modules/@apollo/client/core/QueryManager.d.ts +4 -4
  351. package/node_modules/@apollo/client/core/QueryManager.js +76 -49
  352. package/node_modules/@apollo/client/core/QueryManager.js.map +1 -1
  353. package/node_modules/@apollo/client/core/RefetchEventManager.js +3 -3
  354. package/node_modules/@apollo/client/core/dataStateErrorCache.d.ts +3 -0
  355. package/node_modules/@apollo/client/core/dataStateErrorCache.js +9 -0
  356. package/node_modules/@apollo/client/core/dataStateErrorCache.js.map +1 -0
  357. package/node_modules/@apollo/client/core/deprecated.d.ts +3 -3
  358. package/node_modules/@apollo/client/core/deprecated.js.map +1 -1
  359. package/node_modules/@apollo/client/core/index.d.ts +4 -3
  360. package/node_modules/@apollo/client/core/index.js +1 -1
  361. package/node_modules/@apollo/client/core/index.js.map +1 -1
  362. package/node_modules/@apollo/client/core/types.d.ts +11 -7
  363. package/node_modules/@apollo/client/core/types.js.map +1 -1
  364. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.d.ts +55 -0
  365. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js +2 -0
  366. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js.map +1 -0
  367. package/node_modules/@apollo/client/incremental/handlers/defer20220824.d.ts +2 -4
  368. package/node_modules/@apollo/client/incremental/handlers/defer20220824.js.map +1 -1
  369. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.d.ts +29 -6
  370. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js +48 -17
  371. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js.map +1 -1
  372. package/node_modules/@apollo/client/incremental/handlers/notImplemented.js +1 -1
  373. package/node_modules/@apollo/client/incremental/index.d.ts +1 -0
  374. package/node_modules/@apollo/client/incremental/index.js.map +1 -1
  375. package/node_modules/@apollo/client/incremental/internal/types.d.ts +17 -0
  376. package/node_modules/@apollo/client/incremental/internal/types.js +2 -0
  377. package/node_modules/@apollo/client/incremental/internal/types.js.map +1 -0
  378. package/node_modules/@apollo/client/incremental/types.d.ts +55 -4
  379. package/node_modules/@apollo/client/incremental/types.js.map +1 -1
  380. package/node_modules/@apollo/client/invariantErrorCodes.js +164 -113
  381. package/node_modules/@apollo/client/link/core/ApolloLink.js +3 -3
  382. package/node_modules/@apollo/client/link/http/checkFetcher.js +1 -1
  383. package/node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js +1 -1
  384. package/node_modules/@apollo/client/link/persisted-queries/index.js +2 -2
  385. package/node_modules/@apollo/client/link/ws/index.js +1 -1
  386. package/node_modules/@apollo/client/local-state/LocalState.d.ts +1 -1
  387. package/node_modules/@apollo/client/local-state/LocalState.js +11 -11
  388. package/node_modules/@apollo/client/local-state/LocalState.js.map +1 -1
  389. package/node_modules/@apollo/client/masking/internal/types.d.ts +1 -2
  390. package/node_modules/@apollo/client/masking/internal/types.js.map +1 -1
  391. package/node_modules/@apollo/client/masking/maskDefinition.js +2 -2
  392. package/node_modules/@apollo/client/masking/maskFragment.js +2 -2
  393. package/node_modules/@apollo/client/masking/maskOperation.js +1 -1
  394. package/node_modules/@apollo/client/masking/utils.js +3 -3
  395. package/node_modules/@apollo/client/package.json +1 -1
  396. package/node_modules/@apollo/client/react/context/ApolloContext.js +1 -1
  397. package/node_modules/@apollo/client/react/context/ApolloProvider.js +1 -1
  398. package/node_modules/@apollo/client/react/hooks/internal/validateSuspenseHookOptions.js +2 -2
  399. package/node_modules/@apollo/client/react/hooks/useApolloClient.js +1 -1
  400. package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.d.ts +3 -3
  401. package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.js.map +1 -1
  402. package/node_modules/@apollo/client/react/hooks/useFragment.d.ts +0 -1
  403. package/node_modules/@apollo/client/react/hooks/useFragment.js.map +1 -1
  404. package/node_modules/@apollo/client/react/hooks/useLazyQuery.d.ts +1 -1
  405. package/node_modules/@apollo/client/react/hooks/useLazyQuery.js +29 -3
  406. package/node_modules/@apollo/client/react/hooks/useLazyQuery.js.map +1 -1
  407. package/node_modules/@apollo/client/react/hooks/useLoadableQuery.js +2 -2
  408. package/node_modules/@apollo/client/react/hooks/useMutation.d.ts +14 -14
  409. package/node_modules/@apollo/client/react/hooks/useMutation.js.map +1 -1
  410. package/node_modules/@apollo/client/react/hooks/useQuery.d.ts +16 -3
  411. package/node_modules/@apollo/client/react/hooks/useQuery.js.map +1 -1
  412. package/node_modules/@apollo/client/react/hooks/useSubscription.d.ts +27 -5
  413. package/node_modules/@apollo/client/react/hooks/useSubscription.js +7 -3
  414. package/node_modules/@apollo/client/react/hooks/useSubscription.js.map +1 -1
  415. package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.d.ts +1 -1
  416. package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.js.map +1 -1
  417. package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.d.ts +30 -30
  418. package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.js.map +1 -1
  419. package/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js +1 -1
  420. package/node_modules/@apollo/client/react/hooks-compiled/internal/validateSuspenseHookOptions.js +2 -2
  421. package/node_modules/@apollo/client/react/hooks-compiled/useApolloClient.js +1 -1
  422. package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.d.ts +3 -3
  423. package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  424. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.d.ts +0 -1
  425. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.js.map +1 -1
  426. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.d.ts +1 -1
  427. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js +29 -3
  428. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js.map +1 -1
  429. package/node_modules/@apollo/client/react/hooks-compiled/useLoadableQuery.js +2 -2
  430. package/node_modules/@apollo/client/react/hooks-compiled/useMutation.d.ts +14 -14
  431. package/node_modules/@apollo/client/react/hooks-compiled/useMutation.js.map +1 -1
  432. package/node_modules/@apollo/client/react/hooks-compiled/useQuery.d.ts +16 -3
  433. package/node_modules/@apollo/client/react/hooks-compiled/useQuery.js.map +1 -1
  434. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.d.ts +27 -5
  435. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js +107 -93
  436. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js.map +1 -1
  437. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.d.ts +1 -1
  438. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  439. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.d.ts +30 -30
  440. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  441. package/node_modules/@apollo/client/react/hooks-compiled/useSyncExternalStore.js +1 -1
  442. package/node_modules/@apollo/client/react/internal/cache/QueryReference.js +1 -1
  443. package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.d.ts +1 -1
  444. package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.js.map +1 -1
  445. package/node_modules/@apollo/client/react/ssr/prerenderStatic.js +2 -2
  446. package/node_modules/@apollo/client/react/types/deprecated.d.ts +5 -4
  447. package/node_modules/@apollo/client/react/types/deprecated.js.map +1 -1
  448. package/node_modules/@apollo/client/react/types/types.documentation.d.ts +12 -1
  449. package/node_modules/@apollo/client/react/types/types.documentation.js.map +1 -1
  450. package/node_modules/@apollo/client/testing/core/mocking/mockLink.d.ts +1 -2
  451. package/node_modules/@apollo/client/testing/core/mocking/mockLink.js +25 -5
  452. package/node_modules/@apollo/client/testing/core/mocking/mockLink.js.map +1 -1
  453. package/node_modules/@apollo/client/utilities/caching/sizes.d.ts +39 -1
  454. package/node_modules/@apollo/client/utilities/caching/sizes.js.map +1 -1
  455. package/node_modules/@apollo/client/utilities/graphql/DocumentTransform.js +1 -1
  456. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.d.ts +12 -0
  457. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js +23 -0
  458. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js.map +1 -0
  459. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.d.ts +3 -0
  460. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js +30 -0
  461. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js.map +1 -0
  462. package/node_modules/@apollo/client/utilities/internal/capitalize.d.ts +7 -0
  463. package/node_modules/@apollo/client/utilities/internal/capitalize.js +9 -0
  464. package/node_modules/@apollo/client/utilities/internal/capitalize.js.map +1 -0
  465. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.d.ts +9 -0
  466. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js +95 -0
  467. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js.map +1 -0
  468. package/node_modules/@apollo/client/utilities/internal/constants.d.ts +19 -0
  469. package/node_modules/@apollo/client/utilities/internal/constants.js +19 -0
  470. package/node_modules/@apollo/client/utilities/internal/constants.js.map +1 -1
  471. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.d.ts +9 -0
  472. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js +16 -0
  473. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js.map +1 -0
  474. package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js +3 -3
  475. package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js.map +1 -1
  476. package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js +2 -2
  477. package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js.map +1 -1
  478. package/node_modules/@apollo/client/utilities/internal/getFragmentQueryDocument.js +2 -2
  479. package/node_modules/@apollo/client/utilities/internal/getMainDefinition.js +1 -1
  480. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.d.ts +4 -0
  481. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js +6 -0
  482. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js.map +1 -1
  483. package/node_modules/@apollo/client/utilities/internal/getQueryDefinition.js +1 -1
  484. package/node_modules/@apollo/client/utilities/internal/index.d.ts +17 -2
  485. package/node_modules/@apollo/client/utilities/internal/index.js +13 -1
  486. package/node_modules/@apollo/client/utilities/internal/index.js.map +1 -1
  487. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.d.ts +9 -0
  488. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js +35 -0
  489. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js.map +1 -0
  490. package/node_modules/@apollo/client/utilities/internal/isStreamField.d.ts +9 -0
  491. package/node_modules/@apollo/client/utilities/internal/isStreamField.js +34 -0
  492. package/node_modules/@apollo/client/utilities/internal/isStreamField.js.map +1 -0
  493. package/node_modules/@apollo/client/utilities/internal/isTypenameField.d.ts +3 -0
  494. package/node_modules/@apollo/client/utilities/internal/isTypenameField.js +4 -0
  495. package/node_modules/@apollo/client/utilities/internal/isTypenameField.js.map +1 -0
  496. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.d.ts +8 -0
  497. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js +14 -0
  498. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js.map +1 -0
  499. package/node_modules/@apollo/client/utilities/internal/matchScalarList.d.ts +8 -0
  500. package/node_modules/@apollo/client/utilities/internal/matchScalarList.js +9 -0
  501. package/node_modules/@apollo/client/utilities/internal/matchScalarList.js.map +1 -0
  502. package/node_modules/@apollo/client/utilities/internal/removeDirectivesFromDocument.js +1 -1
  503. package/node_modules/@apollo/client/utilities/internal/shouldInclude.js +4 -4
  504. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.d.ts +8 -0
  505. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js +17 -0
  506. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js.map +1 -0
  507. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.d.ts +10 -0
  508. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js +2 -0
  509. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js.map +1 -0
  510. package/node_modules/@apollo/client/utilities/internal/types/Exact.d.ts +2 -0
  511. package/node_modules/@apollo/client/utilities/internal/types/Exact.js +2 -0
  512. package/node_modules/@apollo/client/utilities/internal/types/Exact.js.map +1 -0
  513. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.d.ts +10 -0
  514. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js +2 -0
  515. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js.map +1 -0
  516. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.d.ts +4 -0
  517. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js +2 -0
  518. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js.map +1 -0
  519. package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.d.ts +2 -0
  520. package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.js.map +1 -1
  521. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.d.ts +10 -0
  522. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js +9 -0
  523. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js.map +1 -0
  524. package/node_modules/@apollo/client/utilities/internal/valueToObjectRepresentation.js +1 -1
  525. package/node_modules/@apollo/client/version.js +1 -1
  526. package/node_modules/@apollo/client/version.js.map +1 -1
  527. package/node_modules/@types/node/README.md +2 -2
  528. package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
  529. package/node_modules/@types/node/buffer.d.ts +1 -0
  530. package/node_modules/@types/node/child_process.d.ts +1 -1
  531. package/node_modules/@types/node/crypto.d.ts +22 -12
  532. package/node_modules/@types/node/dgram.d.ts +119 -4
  533. package/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  534. package/node_modules/@types/node/ffi.d.ts +15 -1
  535. package/node_modules/@types/node/fs/promises.d.ts +61 -65
  536. package/node_modules/@types/node/fs.d.ts +86 -76
  537. package/node_modules/@types/node/http.d.ts +18 -2
  538. package/node_modules/@types/node/http2.d.ts +15 -6
  539. package/node_modules/@types/node/index.d.ts +1 -0
  540. package/node_modules/@types/node/inspector.d.ts +2 -1
  541. package/node_modules/@types/node/net.d.ts +124 -20
  542. package/node_modules/@types/node/package.json +3 -18
  543. package/node_modules/@types/node/perf_hooks.d.ts +31 -19
  544. package/node_modules/@types/node/process.d.ts +53 -0
  545. package/node_modules/@types/node/quic.d.ts +290 -42
  546. package/node_modules/@types/node/sqlite.d.ts +6 -2
  547. package/node_modules/@types/node/stream/iter.d.ts +13 -16
  548. package/node_modules/@types/node/stream/web.d.ts +20 -0
  549. package/node_modules/@types/node/test/reporters.d.ts +1 -0
  550. package/node_modules/@types/node/test.d.ts +108 -0
  551. package/node_modules/@types/node/tls.d.ts +64 -25
  552. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
  553. package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
  554. package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
  555. package/node_modules/@types/node/tty.d.ts +4 -3
  556. package/node_modules/@types/node/vfs.d.ts +211 -0
  557. package/node_modules/@types/node/vm.d.ts +3 -2
  558. package/node_modules/@types/node/web-globals/streams.d.ts +4 -0
  559. package/node_modules/@types/node/worker_threads.d.ts +4 -1
  560. package/node_modules/@types/node/zlib.d.ts +17 -0
  561. package/node_modules/cpu-features/build/Makefile +2 -2
  562. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +1 -1
  563. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_linux_or_android.o.d +1 -1
  564. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.o.d +1 -1
  565. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +1 -1
  566. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_arm_linux_or_android.o.d +1 -1
  567. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_mips_linux_or_android.o.d +1 -1
  568. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +1 -1
  569. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +1 -1
  570. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_linux_or_android.o.d +1 -1
  571. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +1 -1
  572. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +1 -1
  573. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +1 -1
  574. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +1 -1
  575. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +145 -145
  576. package/node_modules/cpu-features/build/config.gypi +8 -9
  577. package/node_modules/cpu-features/build/cpufeatures.target.mk +14 -14
  578. package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +14 -14
  579. package/node_modules/default-browser/package.json +1 -1
  580. package/node_modules/default-browser/windows.js +3 -1
  581. package/node_modules/js-yaml/README.md +0 -3
  582. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs +822 -779
  583. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs.map +1 -1
  584. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js +29 -23
  585. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js.map +1 -1
  586. package/node_modules/js-yaml/dist/js-yaml.cjs.js +425 -397
  587. package/node_modules/js-yaml/dist/js-yaml.cjs.js.map +1 -1
  588. package/node_modules/js-yaml/dist/js-yaml.d.ts +101 -32
  589. package/node_modules/js-yaml/dist/js-yaml.mjs +429 -397
  590. package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  591. package/node_modules/js-yaml/package.json +1 -1
  592. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js +11 -3
  593. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
  594. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js +1 -1
  595. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
  596. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs +11 -3
  597. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  598. package/node_modules/lando/node_modules/js-yaml/lib/loader.js +16 -3
  599. package/node_modules/lando/node_modules/js-yaml/package.json +1 -1
  600. package/node_modules/open/index.js +15 -3
  601. package/node_modules/open/package.json +3 -3
  602. package/node_modules/{lando → path-scurry}/node_modules/lru-cache/README.md +96 -10
  603. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.d.ts.map +1 -0
  604. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.js.map +1 -0
  605. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.d.ts +5 -0
  606. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.js +7 -0
  607. package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/commonjs/browser}/index.d.ts +109 -32
  608. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.d.ts.map +1 -0
  609. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js +1733 -0
  610. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js.map +1 -0
  611. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js +2 -0
  612. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js.map +7 -0
  613. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts +12 -0
  614. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts.map +1 -0
  615. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js +10 -0
  616. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js.map +1 -0
  617. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.cjs.map +1 -0
  618. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.d.cts.map +1 -0
  619. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.d.ts +5 -0
  620. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +7 -0
  621. package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/commonjs}/index.d.ts +109 -32
  622. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts.map +1 -0
  623. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js +1733 -0
  624. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js.map +1 -0
  625. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js +2 -0
  626. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js.map +7 -0
  627. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.d.ts.map +1 -0
  628. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.js.map +1 -0
  629. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.d.ts +5 -0
  630. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.js +9 -0
  631. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts +1400 -0
  632. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts.map +1 -0
  633. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js +1733 -0
  634. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js.map +1 -0
  635. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js +2 -0
  636. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js.map +7 -0
  637. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts +12 -0
  638. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts.map +1 -0
  639. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js +10 -0
  640. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js.map +1 -0
  641. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts +12 -0
  642. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts.map +1 -0
  643. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js +10 -0
  644. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js.map +1 -0
  645. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.d.ts.map +1 -0
  646. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.js.map +1 -0
  647. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.d.ts +5 -0
  648. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +4 -0
  649. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts +1400 -0
  650. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts.map +1 -0
  651. package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/esm/browser}/index.js +315 -177
  652. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.js.map +1 -0
  653. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js +2 -0
  654. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js.map +7 -0
  655. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts +12 -0
  656. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts.map +1 -0
  657. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js +7 -0
  658. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js.map +1 -0
  659. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +1 -0
  660. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.mjs.map +1 -0
  661. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.d.ts +5 -0
  662. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.js +19 -0
  663. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts +1400 -0
  664. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts.map +1 -0
  665. package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/esm}/index.js +316 -182
  666. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js.map +1 -0
  667. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js +2 -0
  668. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js.map +7 -0
  669. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.ts.map +1 -0
  670. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.js.map +1 -0
  671. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.d.ts +5 -0
  672. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +6 -0
  673. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts +1400 -0
  674. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts.map +1 -0
  675. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js +1729 -0
  676. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js.map +1 -0
  677. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js +2 -0
  678. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js.map +7 -0
  679. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts +12 -0
  680. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts.map +1 -0
  681. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js +7 -0
  682. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js.map +1 -0
  683. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts +12 -0
  684. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts.map +1 -0
  685. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js +7 -0
  686. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js.map +1 -0
  687. package/node_modules/path-scurry/node_modules/lru-cache/package.json +154 -0
  688. package/node_modules/powershell-utils/index.d.ts +16 -2
  689. package/node_modules/powershell-utils/index.js +12 -9
  690. package/node_modules/powershell-utils/package.json +1 -1
  691. package/node_modules/powershell-utils/readme.md +7 -2
  692. package/node_modules/socket.io-client/README.md +1 -0
  693. package/node_modules/socket.io-client/build/cjs/index.d.ts +3 -3
  694. package/node_modules/socket.io-client/build/cjs/manager.d.ts +1 -2
  695. package/node_modules/socket.io-client/build/cjs/manager.js +17 -7
  696. package/node_modules/socket.io-client/build/cjs/socket.d.ts +5 -2
  697. package/node_modules/socket.io-client/build/cjs/socket.js +0 -1
  698. package/node_modules/socket.io-client/build/esm/index.d.ts +3 -3
  699. package/node_modules/socket.io-client/build/esm/index.js +1 -1
  700. package/node_modules/socket.io-client/build/esm/manager.d.ts +1 -2
  701. package/node_modules/socket.io-client/build/esm/package.json +1 -1
  702. package/node_modules/socket.io-client/build/esm/socket.d.ts +5 -2
  703. package/node_modules/socket.io-client/build/esm/socket.js +0 -1
  704. package/node_modules/socket.io-client/build/esm-debug/index.d.ts +3 -3
  705. package/node_modules/socket.io-client/build/esm-debug/index.js +1 -1
  706. package/node_modules/socket.io-client/build/esm-debug/manager.d.ts +1 -2
  707. package/node_modules/socket.io-client/build/esm-debug/package.json +1 -1
  708. package/node_modules/socket.io-client/build/esm-debug/socket.d.ts +5 -2
  709. package/node_modules/socket.io-client/build/esm-debug/socket.js +0 -1
  710. package/node_modules/socket.io-client/dist/socket.io.esm.min.js +3 -3
  711. package/node_modules/socket.io-client/dist/socket.io.esm.min.js.map +1 -1
  712. package/node_modules/socket.io-client/dist/socket.io.js +174 -242
  713. package/node_modules/socket.io-client/dist/socket.io.js.map +1 -1
  714. package/node_modules/socket.io-client/dist/socket.io.min.js +3 -3
  715. package/node_modules/socket.io-client/dist/socket.io.min.js.map +1 -1
  716. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js +3 -3
  717. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js.map +1 -1
  718. package/node_modules/socket.io-client/package.json +2 -2
  719. package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +2 -2
  720. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +237 -237
  721. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
  722. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto.node +0 -0
  723. package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
  724. package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +14 -14
  725. package/node_modules/undici/README.md +10 -1
  726. package/node_modules/undici/docs/docs/api/Agent.md +8 -8
  727. package/node_modules/undici/docs/docs/api/Client.md +4 -0
  728. package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +9 -6
  729. package/node_modules/undici/docs/docs/api/Dispatcher.md +9 -0
  730. package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +3 -2
  731. package/node_modules/undici/docs/docs/api/Errors.md +25 -0
  732. package/node_modules/undici/docs/docs/api/EventSource.md +4 -0
  733. package/node_modules/undici/docs/docs/api/Fetch.md +10 -0
  734. package/node_modules/undici/docs/docs/api/Interceptors.md +8 -3
  735. package/node_modules/undici/docs/docs/api/Pool.md +5 -6
  736. package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +7 -1
  737. package/node_modules/undici/docs/docs/index.md +10 -1
  738. package/node_modules/undici/lib/api/readable.js +1 -2
  739. package/node_modules/undici/lib/cache/memory-cache-store.js +2 -2
  740. package/node_modules/undici/lib/core/request.js +23 -2
  741. package/node_modules/undici/lib/core/symbols.js +2 -0
  742. package/node_modules/undici/lib/core/util.js +0 -39
  743. package/node_modules/undici/lib/dispatcher/agent.js +7 -2
  744. package/node_modules/undici/lib/dispatcher/balanced-pool.js +7 -4
  745. package/node_modules/undici/lib/dispatcher/client-h1.js +23 -8
  746. package/node_modules/undici/lib/dispatcher/client-h2.js +94 -10
  747. package/node_modules/undici/lib/dispatcher/client.js +9 -3
  748. package/node_modules/undici/lib/dispatcher/dispatcher-base.js +13 -1
  749. package/node_modules/undici/lib/dispatcher/dispatcher.js +15 -1
  750. package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -0
  751. package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +31 -9
  752. package/node_modules/undici/lib/dispatcher/pool-base.js +63 -2
  753. package/node_modules/undici/lib/dispatcher/pool.js +90 -7
  754. package/node_modules/undici/lib/dispatcher/proxy-agent.js +33 -3
  755. package/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
  756. package/node_modules/undici/lib/dispatcher/round-robin-pool.js +1 -1
  757. package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +91 -21
  758. package/node_modules/undici/lib/handler/cache-handler.js +29 -5
  759. package/node_modules/undici/lib/handler/decorator-handler.js +7 -1
  760. package/node_modules/undici/lib/handler/deduplication-handler.js +29 -10
  761. package/node_modules/undici/lib/handler/redirect-handler.js +26 -4
  762. package/node_modules/undici/lib/handler/retry-handler.js +215 -38
  763. package/node_modules/undici/lib/interceptor/cache.js +69 -13
  764. package/node_modules/undici/lib/interceptor/decompress.js +319 -50
  765. package/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
  766. package/node_modules/undici/lib/interceptor/dns.js +7 -0
  767. package/node_modules/undici/lib/interceptor/dump.js +10 -23
  768. package/node_modules/undici/lib/mock/mock-agent.js +13 -1
  769. package/node_modules/undici/lib/mock/mock-utils.js +11 -10
  770. package/node_modules/undici/lib/util/cache.js +45 -3
  771. package/node_modules/undici/lib/web/cache/cache.js +17 -8
  772. package/node_modules/undici/lib/web/cache/cachestorage.js +11 -5
  773. package/node_modules/undici/lib/web/cookies/index.js +19 -7
  774. package/node_modules/undici/lib/web/cookies/parse.js +150 -147
  775. package/node_modules/undici/lib/web/cookies/util.js +3 -1
  776. package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
  777. package/node_modules/undici/lib/web/eventsource/eventsource.js +38 -4
  778. package/node_modules/undici/lib/web/fetch/body.js +22 -15
  779. package/node_modules/undici/lib/web/fetch/data-url.js +6 -6
  780. package/node_modules/undici/lib/web/fetch/formdata.js +30 -36
  781. package/node_modules/undici/lib/web/fetch/headers.js +34 -31
  782. package/node_modules/undici/lib/web/fetch/index.js +52 -25
  783. package/node_modules/undici/lib/web/fetch/request.js +76 -82
  784. package/node_modules/undici/lib/web/fetch/response.js +43 -44
  785. package/node_modules/undici/lib/web/fetch/util.js +13 -8
  786. package/node_modules/undici/lib/web/infra/index.js +16 -1
  787. package/node_modules/undici/lib/web/webidl/index.js +5 -17
  788. package/node_modules/undici/lib/web/websocket/connection.js +34 -13
  789. package/node_modules/undici/lib/web/websocket/events.js +43 -26
  790. package/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
  791. package/node_modules/undici/lib/web/websocket/receiver.js +2 -0
  792. package/node_modules/undici/lib/web/websocket/stream/websocketerror.js +13 -10
  793. package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +27 -14
  794. package/node_modules/undici/lib/web/websocket/websocket.js +44 -41
  795. package/node_modules/undici/package.json +3 -3
  796. package/node_modules/undici/types/client.d.ts +10 -0
  797. package/node_modules/undici/types/diagnostics-channel.d.ts +2 -1
  798. package/node_modules/undici/types/interceptors.d.ts +2 -0
  799. package/node_modules/undici/types/mock-agent.d.ts +11 -10
  800. package/node_modules/undici/types/socks5-proxy-agent.d.ts +2 -0
  801. package/node_modules/undici/types/webidl.d.ts +13 -7
  802. package/node_modules/undici-types/client.d.ts +8 -3
  803. package/node_modules/undici-types/connector.d.ts +1 -0
  804. package/node_modules/undici-types/cookies.d.ts +1 -1
  805. package/node_modules/undici-types/dispatcher.d.ts +3 -3
  806. package/node_modules/undici-types/errors.d.ts +10 -0
  807. package/node_modules/undici-types/fetch.d.ts +5 -1
  808. package/node_modules/undici-types/handlers.d.ts +2 -0
  809. package/node_modules/undici-types/interceptors.d.ts +1 -1
  810. package/node_modules/undici-types/mock-interceptor.d.ts +5 -1
  811. package/node_modules/undici-types/package.json +1 -1
  812. package/node_modules/undici-types/proxy-agent.d.ts +7 -0
  813. package/package.json +2 -2
  814. package/packaging/macos/build-pkg.sh +53 -0
  815. package/packaging/macos/preinstall +33 -0
  816. package/packaging/macos/test-install.sh +51 -0
  817. package/packaging/macos/test_package.py +74 -0
  818. package/packaging/macos/uninstall.sh +24 -0
  819. package/packaging/macos/verify-pkg.py +61 -0
  820. package/packaging/windows/build-msi.ps1 +153 -0
  821. package/packaging/windows/test-msi.ps1 +225 -0
  822. package/packaging/windows/verify-msi.ps1 +74 -0
  823. package/packaging/windows/vip-next.wxs +79 -0
  824. package/testdata/installer-fixture/main.go +40 -0
  825. package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.cjs.map +0 -1
  826. package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.d.cts +0 -35
  827. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.d.ts +0 -35
  828. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js +0 -2
  829. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js.map +0 -1
  830. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
  831. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
  832. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
  833. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
  834. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
  835. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.js.map +0 -1
  836. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js +0 -2
  837. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
  838. package/node_modules/lando/node_modules/lru-cache/package.json +0 -93
  839. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/LICENSE.md +0 -0
  840. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/README.md +0 -0
  841. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts +0 -0
  842. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts.map +0 -0
  843. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js +0 -0
  844. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js.map +0 -0
  845. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/commonjs/package.json +0 -0
  846. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts +0 -0
  847. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts.map +0 -0
  848. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js +0 -0
  849. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js.map +0 -0
  850. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/esm/package.json +0 -0
  851. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/LICENSE.md +0 -0
  852. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/commonjs/package.json +0 -0
  853. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/esm/package.json +0 -0
  854. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/package.json +0 -0
package/docs/RELEASING.md CHANGED
@@ -87,8 +87,9 @@ To publish a prerelease:
87
87
  4. The workflow creates the tag at the selected full commit and creates a draft
88
88
  release. The tag triggers Buildkite's native signing jobs.
89
89
  5. Wait while the workflow finds the Buildkite build with that exact tag and
90
- commit, downloads all five archives and checksums, validates the archive
91
- contents, and uploads the verified files.
90
+ commit, downloads all five archives, any available native installers, and their
91
+ checksums, validates the archive contents and installer containers, and
92
+ uploads the verified files. See [native installers](BUILD-SIGNING.md#native-installers).
92
93
  6. The release becomes public only after all verification and uploads succeed.
93
94
 
94
95
  If a run fails, its tag and draft release remain in place. Fix the cause and
package/docs/SETUP.md CHANGED
@@ -98,7 +98,7 @@ This application uses environmental variables for vital configuration informatio
98
98
  TODO: Update description of the variables.
99
99
 
100
100
  - `API_HOST`: HTTP endpoint to use rather than the default. [For internal VIP use](TESTING.md#local-testing).
101
- - `DEBUG API_HOST`:
101
+ - `DEBUG`: Enable diagnostic namespaces in the Node.js and Go CLIs, for example `DEBUG='@automattic/vip:http*'`. See [debugging](DEBUGGING.md).
102
102
  - `DOCKER_CERT_PATH`:
103
103
  - `DOCKER_CLIENT_TIMEOUT`:
104
104
  - `DOCKER_HOST`:
@@ -107,6 +107,7 @@ TODO: Update description of the variables.
107
107
  - `SOCKS_PROXY`:
108
108
  - `HTTP_PROXY`:
109
109
  - `NO_PROXY`:
110
+ - `VIP_INSTALLER_E2E`: Set to `1` only for native installer lifecycle tests on disposable GitHub-hosted runners. The tests also require `GITHUB_ACTIONS=true` and `RUNNER_ENVIRONMENT=github-hosted`; they install and uninstall system-wide fixture packages. See [installer tests](BUILD-SIGNING.md#installer-tests).
110
111
  - `VIP_NO_UPDATE_NOTIFIER`: Set to `1` to disable automatic update checks and notices in the Go CLI. Explicit `vip-next update` commands remain available. See [Go CLI updates](GO-UPDATES.md).
111
112
  - `VIP_PROXY`: [For internal VIP use](TESTING.md#local-testing).
112
113
  - `VIP_USE_SYSTEM_PROXY`:
package/fastlane/Fastfile CHANGED
@@ -9,6 +9,7 @@ PROJECT_ROOT_FOLDER = File.dirname(File.expand_path(__dir__))
9
9
 
10
10
  APPLE_TEAM_ID = 'PZYM8XX95Q'
11
11
  SIGNING_IDENTITY = "Developer ID Application: Automattic, Inc. (#{APPLE_TEAM_ID})"
12
+ INSTALLER_SIGNING_IDENTITY = "Developer ID Installer: Automattic, Inc. (#{APPLE_TEAM_ID})"
12
13
 
13
14
  # The signature's designated requirement embeds this identifier, and the Keychain ACL
14
15
  # guarding the master key is bound to that requirement. `codesign` otherwise derives it
@@ -38,7 +39,7 @@ before_all do
38
39
  setup_ci
39
40
  end
40
41
 
41
- # Fetch the Developer ID Application certificate into the keychain.
42
+ # Fetch only the Developer ID Application certificate into the keychain.
42
43
  #
43
44
  # @param readonly [Boolean] Use `true` to only fetch the existing certificate from S3 via
44
45
  # `match`. Use `false` to create or renew it on App Store Connect.
@@ -60,6 +61,59 @@ lane :configure_code_signing do |readonly: true|
60
61
  )
61
62
  end
62
63
 
64
+ # Fetch the Developer ID Installer certificate into the keychain.
65
+ #
66
+ # Separate from `configure_code_signing` so a missing Installer certificate cannot stop the
67
+ # binary jobs publishing portable archives.
68
+ #
69
+ # Do not collapse this into match's top-level `type: 'developer_id_installer'`: match maps only
70
+ # `developer_id_application` through to the certificate generator, so the installer type
71
+ # silently resolves to an Apple Distribution certificate (`match/lib/match/generator.rb`).
72
+ #
73
+ # Readonly with no override, because creating this certificate needs Apple Account Holder
74
+ # access that an App Store Connect API key does not grant. Provision it out of band with
75
+ # `fastlane match import --type developer_id_installer`.
76
+ #
77
+ lane :configure_installer_signing do
78
+ require_env_vars!(*CODE_SIGNING_ENV_VARS)
79
+
80
+ sync_code_signing(
81
+ type: 'developer_id',
82
+ additional_cert_types: ['developer_id_installer'],
83
+ platform: 'macos',
84
+ team_id: APPLE_TEAM_ID,
85
+ app_identifier: [],
86
+ skip_provisioning_profiles: true,
87
+ readonly: true,
88
+ **CODE_SIGNING_STORAGE_OPTIONS
89
+ )
90
+
91
+ verify_installer_identity!
92
+ end
93
+
94
+ # The PKG has its own signing identity and stapled notarization ticket. Fetch
95
+ # the Installer certificate via configure_installer_signing before invoking this.
96
+ lane :sign_and_notarize_installer do |package:|
97
+ package = resolve_from_project_root(package)
98
+ UI.user_error!("No installer at '#{package}'") unless File.file?(package)
99
+ require_env_vars!(*ASC_API_KEY_ENV_VARS)
100
+ signed = "#{package}.signed.pkg"
101
+ begin
102
+ sh('productsign', '--sign', INSTALLER_SIGNING_IDENTITY, '--timestamp', package, signed)
103
+ details = sh('pkgutil', '--check-signature', signed, log: false)
104
+ unless details.include?(INSTALLER_SIGNING_IDENTITY)
105
+ UI.user_error!("Installer is not signed by '#{INSTALLER_SIGNING_IDENTITY}'")
106
+ end
107
+ notarize(package: signed, skip_stapling: true, api_key: app_store_connect_api_key, print_log: true)
108
+ sh('xcrun', 'stapler', 'staple', signed)
109
+ sh('xcrun', 'stapler', 'validate', signed)
110
+ sh('spctl', '--assess', '--type', 'install', '--verbose=2', signed)
111
+ FileUtils.mv(signed, package)
112
+ ensure
113
+ FileUtils.rm_f(signed)
114
+ end
115
+ end
116
+
63
117
  # Sign a built CLI binary with the Developer ID certificate and submit it for notarization.
64
118
  #
65
119
  # Run `configure_code_signing` first, or run this on a machine that already holds the
@@ -92,8 +146,8 @@ lane :sign_and_notarize do |binary:|
92
146
 
93
147
  notarize(
94
148
  package: archive,
95
- # Only bundles and disk images can carry a stapled ticket. A bare binary relies on
96
- # the online Gatekeeper check.
149
+ # A bare binary cannot carry a stapled ticket and relies on the online
150
+ # Gatekeeper check. The separate PKG lane staples the installer instead.
97
151
  skip_stapling: true,
98
152
  api_key: app_store_connect_api_key,
99
153
  print_log: true
@@ -135,6 +189,15 @@ def resolve_from_project_root(path)
135
189
  File.absolute_path(path, PROJECT_ROOT_FOLDER)
136
190
  end
137
191
 
192
+ # `match` reports success for whatever certificate storage happens to hold, so the identity
193
+ # `productsign` needs is verified rather than assumed.
194
+ def verify_installer_identity!
195
+ identities = sh('security', 'find-identity', '-v', log: false)
196
+ return if identities.include?(INSTALLER_SIGNING_IDENTITY)
197
+
198
+ UI.user_error!("No '#{INSTALLER_SIGNING_IDENTITY}' identity in the keychain:\n#{identities}")
199
+ end
200
+
138
201
  def require_env_vars!(*names)
139
202
  missing = names.select { |name| ENV[name].to_s.empty? }
140
203
  UI.user_error!("Missing required environment variable(s): #{missing.join(', ')}") unless missing.empty?
@@ -0,0 +1,83 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'minitest/autorun'
4
+
5
+ # Evaluate the actual Fastfile DSL without accessing credentials or Apple/S3.
6
+ module FastlaneCore
7
+ module Helper
8
+ def self.bundler?
9
+ true
10
+ end
11
+ end
12
+ end
13
+
14
+ module UI
15
+ def self.user_error!(message)
16
+ raise message
17
+ end
18
+ end
19
+
20
+ class SigningConfigurationTest < Minitest::Test
21
+ def setup
22
+ @lanes = {}
23
+ @calls = []
24
+ @dsl = Object.new
25
+ lanes = @lanes
26
+ calls = @calls
27
+ @dsl.define_singleton_method(:before_all) { |&block| }
28
+ @dsl.define_singleton_method(:lane) { |name, &block| lanes[name] = block }
29
+ @dsl.define_singleton_method(:sync_code_signing) do |**options|
30
+ calls << options
31
+ raise 'Installer certificate unavailable' if options[:type] == 'developer_id_installer' || options[:additional_cert_types]
32
+ end
33
+ @dsl.instance_eval(File.read(File.join(__dir__, 'Fastfile')), File.join(__dir__, 'Fastfile'))
34
+ @dsl.define_singleton_method(:require_env_vars!) { |*names| }
35
+ end
36
+
37
+ def test_missing_installer_identity_does_not_affect_application_lane
38
+ @lanes.fetch(:configure_code_signing).call
39
+ assert_equal 'developer_id', @calls.last[:type]
40
+ assert_equal true, @calls.last[:readonly]
41
+ assert_nil @calls.last[:additional_cert_types]
42
+ error = assert_raises(RuntimeError) { @lanes.fetch(:configure_installer_signing).call }
43
+ assert_equal 'Installer certificate unavailable', error.message
44
+ assert_equal true, @calls.last[:readonly]
45
+ assert_equal true, @calls.last[:skip_provisioning_profiles]
46
+ @lanes.fetch(:configure_code_signing).call
47
+ end
48
+
49
+ # Match's top-level `developer_id_installer` type silently resolves to an Apple Distribution
50
+ # certificate, so the supported route is pinned rather than left to preference.
51
+ def test_installer_lane_requests_the_installer_certificate_as_an_additional_type
52
+ assert_raises(RuntimeError) { @lanes.fetch(:configure_installer_signing).call }
53
+
54
+ assert_equal 'developer_id', @calls.last[:type]
55
+ assert_equal ['developer_id_installer'], @calls.last[:additional_cert_types]
56
+ end
57
+
58
+ def test_installer_lane_never_creates_certificates
59
+ assert_raises(RuntimeError) { @lanes.fetch(:configure_installer_signing).call }
60
+
61
+ assert_equal true, @calls.last[:readonly]
62
+ assert_nil @calls.last[:api_key]
63
+ end
64
+
65
+ def test_identity_check_accepts_the_installer_identity
66
+ stub_identities(' 1) ABC123 "Developer ID Installer: Automattic, Inc. (PZYM8XX95Q)"')
67
+
68
+ @dsl.send(:verify_installer_identity!)
69
+ end
70
+
71
+ def test_identity_check_rejects_a_substituted_certificate
72
+ stub_identities(' 1) ABC123 "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"')
73
+
74
+ error = assert_raises(RuntimeError) { @dsl.send(:verify_installer_identity!) }
75
+ assert_includes error.message, 'Developer ID Installer: Automattic, Inc. (PZYM8XX95Q)'
76
+ end
77
+
78
+ private
79
+
80
+ def stub_identities(output)
81
+ @dsl.define_singleton_method(:sh) { |*_args, **_options| output }
82
+ end
83
+ end
@@ -5,6 +5,7 @@ import (
5
5
  "net/http"
6
6
  "time"
7
7
 
8
+ "github.com/Automattic/vip/internal/debuglog"
8
9
  "github.com/Automattic/vip/internal/httpproxy"
9
10
  )
10
11
 
@@ -13,13 +14,25 @@ import (
13
14
  // ignored; only a transport failure returns a non-nil error. The caller always
14
15
  // purges the local token regardless.
15
16
  func PostLogout(apiHost, rawToken string) error {
16
- ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
17
+ return PostLogoutContext(context.Background(), apiHost, rawToken)
18
+ }
19
+
20
+ // PostLogoutContext preserves invocation diagnostics and cancellation while
21
+ // retaining the bounded, best-effort server-side invalidation behavior.
22
+ func PostLogoutContext(ctx context.Context, apiHost, rawToken string) error {
23
+ if ctx == nil {
24
+ ctx = context.Background()
25
+ }
26
+ ctx, cancel := context.WithTimeout(ctx, 10*time.Second)
17
27
  defer cancel()
18
28
  req, err := http.NewRequestWithContext(ctx, http.MethodPost, apiHost+"/logout", nil)
19
29
  if err != nil {
20
30
  return err
21
31
  }
22
32
  req.Header.Set("Authorization", "Bearer "+rawToken)
33
+ // Node's HTTP helper logs the request target. Only expose the fixed logout
34
+ // path and target host; URL userinfo, queries and headers may carry secrets.
35
+ debuglog.Printf(ctx, "@automattic/vip:http", "running fetch %s://%s/logout", req.URL.Scheme, req.URL.Host)
23
36
  // NOT http.DefaultClient: this request carries the bearer token, and Node
24
37
  // routes /logout through api/http.ts's proxy agent. See internal/httpproxy.
25
38
  resp, err := httpproxy.Client().Do(req)
@@ -1,9 +1,14 @@
1
1
  package auth
2
2
 
3
3
  import (
4
+ "bytes"
5
+ "context"
4
6
  "net/http"
5
7
  "net/http/httptest"
8
+ "strings"
6
9
  "testing"
10
+
11
+ "github.com/Automattic/vip/internal/debuglog"
7
12
  )
8
13
 
9
14
  func TestPostLogoutSendsBearer(t *testing.T) {
@@ -21,6 +26,47 @@ func TestPostLogoutSendsBearer(t *testing.T) {
21
26
  }
22
27
  }
23
28
 
29
+ func TestPostLogoutContextDiagnostics(t *testing.T) {
30
+ for _, key := range []string{"VIP_PROXY", "vip_proxy", "SOCKS_PROXY", "socks_proxy", "NO_PROXY", "no_proxy"} {
31
+ t.Setenv(key, "")
32
+ }
33
+ proxy := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
34
+ if r.Method != http.MethodPost || r.URL.Path != "/logout" || r.Header.Get("Authorization") != "Bearer fixture-token-secret" {
35
+ t.Error("logout request changed")
36
+ }
37
+ w.WriteHeader(http.StatusInternalServerError)
38
+ _, _ = w.Write([]byte("server-body-secret"))
39
+ }))
40
+ defer proxy.Close()
41
+ t.Setenv("VIP_USE_SYSTEM_PROXY", "1")
42
+ t.Setenv("HTTPS_PROXY", strings.Replace(proxy.URL, "http://", "http://proxy-user:proxy-password-secret@", 1))
43
+ for _, namespaces := range []string{"", "@automattic/vip:http,vip:proxy-dispatcher"} {
44
+ t.Run(namespaces, func(t *testing.T) {
45
+ var out bytes.Buffer
46
+ ctx := debuglog.WithLogger(context.Background(), namespaces, &out)
47
+ if err := PostLogoutContext(ctx, "http://url-user:url-password-secret@logout.example.test", "fixture-token-secret"); err != nil {
48
+ t.Fatal(err)
49
+ }
50
+ if namespaces == "" {
51
+ if out.Len() != 0 {
52
+ t.Fatalf("default diagnostics = %q", out.String())
53
+ }
54
+ return
55
+ }
56
+ for _, want := range []string{"@automattic/vip:http running fetch http://logout.example.test/logout", "vip:proxy-dispatcher Enabling fetch dispatcher proxy support using config: " + proxy.URL} {
57
+ if !strings.Contains(out.String(), want) {
58
+ t.Errorf("missing %q in %q", want, out.String())
59
+ }
60
+ }
61
+ for _, forbidden := range []string{"secret", "proxy-user", "url-user", "Authorization"} {
62
+ if strings.Contains(out.String(), forbidden) {
63
+ t.Errorf("diagnostics exposed %q: %q", forbidden, out.String())
64
+ }
65
+ }
66
+ })
67
+ }
68
+ }
69
+
24
70
  func TestPostLogoutIgnoresServerError(t *testing.T) {
25
71
  srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
26
72
  w.WriteHeader(http.StatusInternalServerError)
@@ -0,0 +1,85 @@
1
+ // Package debuglog emits opt-in diagnostics using Node debug namespace selectors.
2
+ // Loggers belong to an invocation context, so commands and tests cannot leak
3
+ // their debug settings or output writers into another invocation.
4
+ package debuglog
5
+
6
+ import (
7
+ "context"
8
+ "fmt"
9
+ "io"
10
+ "regexp"
11
+ "strings"
12
+ "sync"
13
+ "unicode"
14
+ )
15
+
16
+ type contextKey struct{}
17
+
18
+ type logger struct {
19
+ mu sync.Mutex
20
+ out io.Writer
21
+ include, exclude []*regexp.Regexp
22
+ }
23
+
24
+ // WithLogger accepts comma/whitespace-separated namespaces, '*' wildcards,
25
+ // and '-' exclusions, matching the Node debug package's selector grammar.
26
+ func WithLogger(ctx context.Context, namespaces string, out io.Writer) context.Context {
27
+ l := &logger{out: out}
28
+ for _, pattern := range strings.FieldsFunc(namespaces, func(r rune) bool { return r == ',' || unicode.IsSpace(r) }) {
29
+ exclude := strings.HasPrefix(pattern, "-")
30
+ pattern = strings.TrimPrefix(pattern, "-")
31
+ if pattern == "" {
32
+ continue
33
+ }
34
+ expression := "^" + strings.ReplaceAll(regexp.QuoteMeta(pattern), `\*`, ".*") + "$"
35
+ re := regexp.MustCompile(expression)
36
+ if exclude {
37
+ l.exclude = append(l.exclude, re)
38
+ } else {
39
+ l.include = append(l.include, re)
40
+ }
41
+ }
42
+ return context.WithValue(ctx, contextKey{}, l)
43
+ }
44
+
45
+ // Enabled lets callers avoid constructing expensive diagnostic metadata when
46
+ // its namespace is disabled.
47
+ func Enabled(ctx context.Context, namespace string) bool {
48
+ if ctx == nil {
49
+ return false
50
+ }
51
+ l, _ := ctx.Value(contextKey{}).(*logger)
52
+ if l == nil || l.out == nil {
53
+ return false
54
+ }
55
+ for _, re := range l.exclude {
56
+ if re.MatchString(namespace) {
57
+ return false
58
+ }
59
+ }
60
+ for _, re := range l.include {
61
+ if re.MatchString(namespace) {
62
+ return true
63
+ }
64
+ }
65
+ return false
66
+ }
67
+
68
+ // Printf writes one diagnostic line if namespace is enabled. Callers must pass
69
+ // only safe fields: this function escapes terminal controls, not secrets.
70
+ func Printf(ctx context.Context, namespace, format string, args ...any) {
71
+ if !Enabled(ctx, namespace) {
72
+ return
73
+ }
74
+ l := ctx.Value(contextKey{}).(*logger)
75
+ line := namespace + " " + fmt.Sprintf(format, args...)
76
+ line = strings.Map(func(r rune) rune {
77
+ if unicode.IsControl(r) {
78
+ return ' '
79
+ }
80
+ return r
81
+ }, line)
82
+ l.mu.Lock()
83
+ defer l.mu.Unlock()
84
+ _, _ = fmt.Fprintln(l.out, line)
85
+ }
@@ -0,0 +1,44 @@
1
+ package debuglog
2
+
3
+ import (
4
+ "bytes"
5
+ "context"
6
+ "strings"
7
+ "testing"
8
+ )
9
+
10
+ func TestNamespaceFiltering(t *testing.T) {
11
+ for _, tc := range []struct{ selector, want string }{
12
+ {"", ""},
13
+ {"*", "alpha one\nbeta two\n"},
14
+ {"alpha", "alpha one\n"},
15
+ {"a*,beta", "alpha one\nbeta two\n"},
16
+ {"*,-beta", "alpha one\n"},
17
+ {"-beta,*", "alpha one\n"},
18
+ {"alpha beta", "alpha one\nbeta two\n"},
19
+ {"[ab]*", ""},
20
+ } {
21
+ t.Run(tc.selector, func(t *testing.T) {
22
+ var out bytes.Buffer
23
+ ctx := WithLogger(context.Background(), tc.selector, &out)
24
+ Printf(ctx, "alpha", "%s", "one")
25
+ Printf(ctx, "beta", "%s", "two")
26
+ if out.String() != tc.want {
27
+ t.Fatalf("output = %q, want %q", out.String(), tc.want)
28
+ }
29
+ })
30
+ }
31
+ }
32
+
33
+ func TestLoggerIsScopedToContextAndEscapesControls(t *testing.T) {
34
+ var out bytes.Buffer
35
+ ctx := WithLogger(context.Background(), "*", &out)
36
+ Printf(context.Background(), "alpha", "must stay silent")
37
+ Printf(ctx, "alpha", "name=%s", "one\n\x1b[31mtwo")
38
+ if strings.Count(out.String(), "\n") != 1 || strings.Contains(out.String(), "\x1b") {
39
+ t.Fatalf("unsafe output: %q", out.String())
40
+ }
41
+ if !strings.Contains(out.String(), "one") || !strings.Contains(out.String(), "two") {
42
+ t.Fatalf("missing diagnostic: %q", out.String())
43
+ }
44
+ }
@@ -144,9 +144,12 @@ func wordpressTag(d *instancedata.InstanceData) string {
144
144
  // phpFPMImagePrefix is the VIP php-fpm image repo; a bare version is appended.
145
145
  const phpFPMImagePrefix = "ghcr.io/automattic/vip-container-images/php-fpm:"
146
146
 
147
- // defaultPHPImage is the recommended php-fpm image when none is specified —
148
- // the first entry of Node's DEV_ENVIRONMENT_PHP_VERSIONS (8.2, recommended).
149
- const defaultPHPImage = phpFPMImagePrefix + "8.2"
147
+ // DefaultPHPVersion is the recommended PHP version for new environments.
148
+ // Keep this aligned with Node's DEV_ENVIRONMENT_DEFAULT_PHP_VERSION.
149
+ const DefaultPHPVersion = "8.4"
150
+
151
+ // defaultPHPImage is the recommended php-fpm image when none is specified.
152
+ const defaultPHPImage = phpFPMImagePrefix + DefaultPHPVersion
150
153
 
151
154
  // phpImage resolves the php-fpm image from instance-data's php field, mirroring
152
155
  // Node DEV_ENVIRONMENT_PHP_VERSIONS resolution: empty -> recommended default; a
@@ -108,7 +108,7 @@ func TestNewViewResolvesPHPImage(t *testing.T) {
108
108
  return &instancedata.InstanceData{SiteSlug: "e", Multisite: json.RawMessage("false"), PHP: php}
109
109
  }
110
110
  cases := []struct{ php, want string }{
111
- {"", "ghcr.io/automattic/vip-container-images/php-fpm:8.2"}, // empty -> recommended default
111
+ {"", "ghcr.io/automattic/vip-container-images/php-fpm:8.4"}, // empty -> recommended default
112
112
  {"8.4", "ghcr.io/automattic/vip-container-images/php-fpm:8.4"}, // bare version -> mapped image
113
113
  {"ghcr.io/automattic/vip-container-images/php-fpm:8.3", "ghcr.io/automattic/vip-container-images/php-fpm:8.3"}, // explicit image -> as-is
114
114
  }
@@ -0,0 +1,4 @@
1
+ package devenv
2
+
3
+ // Keep the Node namespace so existing --debug filters work across runtimes.
4
+ const debugNamespace = "@automattic/vip:bin:dev-environment"
@@ -0,0 +1,103 @@
1
+ package devenv
2
+
3
+ import (
4
+ "bytes"
5
+ "context"
6
+ "os"
7
+ "path/filepath"
8
+ "reflect"
9
+ "strings"
10
+ "testing"
11
+
12
+ "github.com/Automattic/vip/internal/debuglog"
13
+ "github.com/Automattic/vip/internal/devenv/paths"
14
+ )
15
+
16
+ func fakeDebugDocker(t *testing.T) {
17
+ t.Helper()
18
+ t.Setenv("XDG_DATA_HOME", t.TempDir())
19
+ t.Setenv("DOCKER_HOST", "tcp://user:docker-secret@localhost:1234")
20
+ bin := t.TempDir()
21
+ t.Setenv("PATH", bin)
22
+ // Only this fake is reachable; even an unexpected invocation cannot reach Docker.
23
+ script := `#!/bin/sh
24
+ case "$*" in
25
+ "compose version") exit 0 ;;
26
+ "compose -p running ps --format json --all") echo '{"Service":"php","State":"running","ExitCode":0}' ;;
27
+ "compose -p stopped ps --format json --all") echo '{"Service":"php","State":"exited","ExitCode":0}' ;;
28
+ "compose -p failed ps --format json --all") echo 'private-docker-error' >&2; exit 1 ;;
29
+ *) exit 1 ;;
30
+ esac
31
+ `
32
+ if err := os.WriteFile(filepath.Join(bin, "docker"), []byte(script), 0o700); err != nil {
33
+ t.Fatal(err)
34
+ }
35
+ }
36
+
37
+ func TestListDebugExplainsStatusWithoutChangingResults(t *testing.T) {
38
+ fakeDebugDocker(t)
39
+ for _, slug := range []string{"failed", "running", "stopped"} {
40
+ if err := os.MkdirAll(paths.EnvironmentPath(slug), 0o700); err != nil {
41
+ t.Fatal(err)
42
+ }
43
+ }
44
+ for _, ns := range []string{"@automattic/vip:bin:dev-environment", "unrelated", ""} {
45
+ t.Run(ns, func(t *testing.T) {
46
+ var out bytes.Buffer
47
+ got, err := List(debuglog.WithLogger(context.Background(), ns, &out))
48
+ want := []EnvStatus{{Slug: "failed"}, {Slug: "running", Running: true}, {Slug: "stopped"}}
49
+ if err != nil || !reflect.DeepEqual(got, want) {
50
+ t.Fatalf("List = %#v, %v", got, err)
51
+ }
52
+ if ns != "@automattic/vip:bin:dev-environment" {
53
+ if out.Len() != 0 {
54
+ t.Fatalf("unexpected diagnostics: %s", &out)
55
+ }
56
+ return
57
+ }
58
+ for _, text := range []string{"Names found", "failed", "status query failed", "running=true", "running=false"} {
59
+ if !strings.Contains(out.String(), text) {
60
+ t.Errorf("missing %q in %s", text, &out)
61
+ }
62
+ }
63
+ for _, secret := range []string{"docker-secret", "private-docker-error"} {
64
+ if strings.Contains(out.String(), secret) {
65
+ t.Errorf("leaked %q", secret)
66
+ }
67
+ }
68
+ })
69
+ }
70
+ }
71
+
72
+ func TestDevEnvDebugSummariesOmitArgumentsAndConfig(t *testing.T) {
73
+ fakeDebugDocker(t)
74
+ for _, tc := range []struct {
75
+ name string
76
+ run func(context.Context) error
77
+ }{
78
+ {"create", func(ctx context.Context) error {
79
+ return Create(ctx, CreateConfig{Title: "secret-title", Domain: "secret-domain"})
80
+ }},
81
+ {"update", func(ctx context.Context) error {
82
+ value := "secret-config"
83
+ return Update(ctx, "missing", UpdateConfig{XdebugConfig: &value})
84
+ }},
85
+ {"exec", func(ctx context.Context) error {
86
+ return Exec(ctx, "missing", []string{"config", "set", "DB_PASSWORD", "secret-argument"})
87
+ }},
88
+ {"shell", func(ctx context.Context) error {
89
+ return Shell(ctx, "missing", "php", false, []string{"echo", "secret-argument"})
90
+ }},
91
+ } {
92
+ t.Run(tc.name, func(t *testing.T) {
93
+ var out bytes.Buffer
94
+ _ = tc.run(debuglog.WithLogger(context.Background(), "@automattic/vip:bin:dev-environment", &out))
95
+ if !strings.Contains(out.String(), tc.name) {
96
+ t.Fatalf("missing operation diagnostic: %s", &out)
97
+ }
98
+ if strings.Contains(out.String(), "secret-") || strings.Contains(out.String(), "docker-secret") {
99
+ t.Fatalf("secret in diagnostic: %s", &out)
100
+ }
101
+ })
102
+ }
103
+ }