@automattic/vip 4.1.3 → 4.1.4

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 (791) 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_create_test.go +5 -5
  23. package/cmd/vip-next/commands/devenv_debug_test.go +34 -0
  24. package/cmd/vip-next/commands/devenv_envvar.go +6 -0
  25. package/cmd/vip-next/commands/devenv_lifecycle.go +30 -11
  26. package/cmd/vip-next/commands/devenv_update.go +1 -1
  27. package/cmd/vip-next/commands/devenv_update_test.go +28 -2
  28. package/cmd/vip-next/commands/import_debug_test.go +110 -0
  29. package/cmd/vip-next/commands/import_media.go +4 -0
  30. package/cmd/vip-next/commands/import_sql.go +9 -1
  31. package/cmd/vip-next/commands/logout.go +1 -1
  32. package/cmd/vip-next/commands/searchreplace.go +3 -1
  33. package/cmd/vip-next/commands/searchreplace_debug_test.go +82 -0
  34. package/cmd/vip-next/commands/whoami.go +10 -1
  35. package/cmd/vip-next/commands/whoami_debug_test.go +79 -0
  36. package/cmd/vip-next/commands/wp.go +2 -0
  37. package/cmd/vip-next/commands/wp_debug_test.go +32 -0
  38. package/cmd/vip-next/debug_args.go +63 -0
  39. package/cmd/vip-next/debug_test.go +122 -0
  40. package/cmd/vip-next/main.go +58 -2
  41. package/cmd/vip-next/pendo_wiring_test.go +148 -0
  42. package/cmd/vip-next/root.go +17 -0
  43. package/dist/bin/vip-dev-env-envvar-get.js +2 -2
  44. package/dist/bin/vip-dev-env-envvar-set.js +2 -2
  45. package/dist/bin/vip-dev-env-update.js +1 -1
  46. package/dist/lib/analytics/clients/pendo.js +19 -7
  47. package/dist/lib/constants/dev-environment.js +8 -7
  48. package/dist/lib/dev-environment/dev-environment-cli.js +10 -2
  49. package/dist/lib/dev-environment/dev-environment-core.js +1 -1
  50. package/docs/BUILD-SIGNING.md +147 -6
  51. package/docs/DEBUGGING.md +61 -0
  52. package/docs/GO-UPDATES.md +7 -1
  53. package/docs/RELEASING.md +3 -2
  54. package/docs/SETUP.md +2 -1
  55. package/fastlane/Fastfile +66 -3
  56. package/fastlane/test_signing.rb +83 -0
  57. package/internal/auth/logout.go +14 -1
  58. package/internal/auth/logout_test.go +46 -0
  59. package/internal/debuglog/debuglog.go +85 -0
  60. package/internal/debuglog/debuglog_test.go +44 -0
  61. package/internal/devenv/compose/view.go +6 -3
  62. package/internal/devenv/compose/view_test.go +1 -1
  63. package/internal/devenv/debug.go +4 -0
  64. package/internal/devenv/debug_test.go +103 -0
  65. package/internal/devenv/devenv.go +20 -2
  66. package/internal/devenv/devexec.go +3 -0
  67. package/internal/devenv/importdata.go +4 -1
  68. package/internal/devenv/list.go +9 -1
  69. package/internal/devenv/logs.go +2 -0
  70. package/internal/devenv/proxy/ca.go +9 -2
  71. package/internal/devenv/proxy/ca_test.go +1 -1
  72. package/internal/devenv/proxy/network.go +7 -3
  73. package/internal/devenv/proxy/network_test.go +6 -0
  74. package/internal/devenv/proxy/proxy.go +37 -8
  75. package/internal/devenv/proxy/proxy_test.go +61 -6
  76. package/internal/devenv/proxy/scripts/gen-certs.sh +20 -5
  77. package/internal/devenv/update.go +2 -0
  78. package/internal/gql/debug_test.go +79 -0
  79. package/internal/gql/error.go +27 -1
  80. package/internal/gql/rechallenge.go +9 -5
  81. package/internal/gql/retry.go +21 -2
  82. package/internal/gql/transport.go +9 -0
  83. package/internal/httpproxy/debug_test.go +32 -0
  84. package/internal/httpproxy/httpproxy.go +8 -1
  85. package/internal/installer/version.go +41 -0
  86. package/internal/installer/version_test.go +33 -0
  87. package/internal/parity/edge_workers_debug_test.go +87 -0
  88. package/internal/parity/pendo_test.go +122 -0
  89. package/internal/rechallenge/flow.go +8 -0
  90. package/internal/rechallenge/flow_test.go +15 -1
  91. package/internal/releasepromotion/buildkite.go +12 -1
  92. package/internal/releasepromotion/buildkite_test.go +31 -0
  93. package/internal/releasepromotion/contract.go +49 -1
  94. package/internal/releasepromotion/contract_test.go +38 -0
  95. package/internal/releasepromotion/github.go +4 -10
  96. package/internal/releasepromotion/optional_installers_test.go +87 -0
  97. package/internal/releasepromotion/verify.go +99 -2
  98. package/internal/releasepromotion/verify_test.go +99 -0
  99. package/internal/searchreplace/debug_test.go +71 -0
  100. package/internal/searchreplace/searchreplace.go +14 -0
  101. package/internal/siteimport/debug_test.go +34 -0
  102. package/internal/siteimport/status.go +11 -0
  103. package/internal/telemetry/pendo.go +41 -10
  104. package/internal/telemetry/pendo_auth_test.go +92 -0
  105. package/internal/telemetry/pendo_test.go +24 -5
  106. package/internal/telemetry/tracker.go +26 -0
  107. package/internal/update/github.go +36 -17
  108. package/internal/update/ownership.go +22 -0
  109. package/internal/update/ownership_test.go +44 -0
  110. package/internal/update/release_test.go +53 -13
  111. package/internal/update/service_test.go +39 -0
  112. package/internal/upload/debug_test.go +76 -0
  113. package/internal/upload/multipart.go +3 -0
  114. package/internal/upload/orchestrate.go +10 -0
  115. package/internal/upload/putobject.go +3 -0
  116. package/internal/wpssh/debug_test.go +67 -0
  117. package/internal/wpssh/wpssh.go +7 -0
  118. package/internal/wpstream/debug_test.go +116 -0
  119. package/internal/wpstream/run.go +10 -1
  120. package/node_modules/@apollo/client/CHANGELOG.md +1130 -0
  121. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs +36 -0
  122. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs.map +1 -0
  123. package/node_modules/@apollo/client/__cjs/cache/core/Scalar.d.cts +56 -0
  124. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs +32 -1
  125. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs.map +1 -1
  126. package/node_modules/@apollo/client/__cjs/cache/core/cache.d.cts +89 -6
  127. package/node_modules/@apollo/client/__cjs/cache/core/types/Cache.d.cts +30 -2
  128. package/node_modules/@apollo/client/__cjs/cache/index.cjs +3 -1
  129. package/node_modules/@apollo/client/__cjs/cache/index.cjs.map +1 -1
  130. package/node_modules/@apollo/client/__cjs/cache/index.d.cts +2 -1
  131. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs +63 -5
  132. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  133. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.d.cts +3 -0
  134. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs +12 -0
  135. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  136. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.d.cts +11 -2
  137. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +95 -4
  138. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  139. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.d.cts +44 -5
  140. package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  141. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +34 -6
  142. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs.map +1 -1
  143. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.d.cts +3 -1
  144. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs +489 -45
  145. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  146. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.d.cts +11 -2
  147. package/node_modules/@apollo/client/__cjs/cache/inmemory/types.d.cts +31 -4
  148. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +5 -9
  149. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  150. package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs +14 -14
  151. package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs.map +1 -1
  152. package/node_modules/@apollo/client/__cjs/core/ApolloClient.d.cts +11 -11
  153. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs +186 -72
  154. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs.map +1 -1
  155. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.d.cts +4 -7
  156. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +164 -197
  157. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
  158. package/node_modules/@apollo/client/__cjs/core/QueryInfo.d.cts +17 -21
  159. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +75 -48
  160. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs.map +1 -1
  161. package/node_modules/@apollo/client/__cjs/core/QueryManager.d.cts +4 -4
  162. package/node_modules/@apollo/client/__cjs/core/RefetchEventManager.cjs +3 -3
  163. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs +12 -0
  164. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs.map +1 -0
  165. package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.d.cts +3 -0
  166. package/node_modules/@apollo/client/__cjs/core/deprecated.d.cts +3 -3
  167. package/node_modules/@apollo/client/__cjs/core/index.cjs +2 -1
  168. package/node_modules/@apollo/client/__cjs/core/index.cjs.map +1 -1
  169. package/node_modules/@apollo/client/__cjs/core/index.d.cts +4 -3
  170. package/node_modules/@apollo/client/__cjs/core/types.d.cts +11 -7
  171. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs +3 -0
  172. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs.map +1 -0
  173. package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.d.cts +55 -0
  174. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  175. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.d.cts +2 -4
  176. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs +47 -16
  177. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -1
  178. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.d.cts +29 -6
  179. package/node_modules/@apollo/client/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  180. package/node_modules/@apollo/client/__cjs/incremental/index.cjs.map +1 -1
  181. package/node_modules/@apollo/client/__cjs/incremental/index.d.cts +1 -0
  182. package/node_modules/@apollo/client/__cjs/{utilities/internal/types/NoInfer.cjs → incremental/internal/types.cjs} +1 -1
  183. package/node_modules/@apollo/client/__cjs/incremental/internal/types.cjs.map +1 -0
  184. package/node_modules/@apollo/client/__cjs/incremental/internal/types.d.cts +17 -0
  185. package/node_modules/@apollo/client/__cjs/incremental/types.d.cts +55 -4
  186. package/node_modules/@apollo/client/__cjs/invariantErrorCodes.cjs +164 -113
  187. package/node_modules/@apollo/client/__cjs/link/core/ApolloLink.cjs +3 -3
  188. package/node_modules/@apollo/client/__cjs/link/http/checkFetcher.cjs +1 -1
  189. package/node_modules/@apollo/client/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  190. package/node_modules/@apollo/client/__cjs/link/persisted-queries/index.cjs +2 -2
  191. package/node_modules/@apollo/client/__cjs/link/ws/index.cjs +1 -1
  192. package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs +11 -11
  193. package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs.map +1 -1
  194. package/node_modules/@apollo/client/__cjs/local-state/LocalState.d.cts +1 -1
  195. package/node_modules/@apollo/client/__cjs/masking/internal/types.d.cts +1 -2
  196. package/node_modules/@apollo/client/__cjs/masking/maskDefinition.cjs +2 -2
  197. package/node_modules/@apollo/client/__cjs/masking/maskFragment.cjs +2 -2
  198. package/node_modules/@apollo/client/__cjs/masking/maskOperation.cjs +1 -1
  199. package/node_modules/@apollo/client/__cjs/masking/utils.cjs +3 -3
  200. package/node_modules/@apollo/client/__cjs/react/context/ApolloContext.cjs +1 -1
  201. package/node_modules/@apollo/client/__cjs/react/context/ApolloProvider.cjs +1 -1
  202. package/node_modules/@apollo/client/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs +2 -2
  203. package/node_modules/@apollo/client/__cjs/react/hooks/useApolloClient.cjs +1 -1
  204. package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  205. package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.d.cts +3 -3
  206. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.cjs.map +1 -1
  207. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.d.cts +0 -1
  208. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs +2 -2
  209. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  210. package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.d.cts +1 -1
  211. package/node_modules/@apollo/client/__cjs/react/hooks/useLoadableQuery.cjs +2 -2
  212. package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.cjs.map +1 -1
  213. package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.d.cts +14 -14
  214. package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.cjs.map +1 -1
  215. package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.d.cts +16 -3
  216. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs +7 -3
  217. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  218. package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.d.cts +27 -5
  219. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  220. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.d.cts +1 -1
  221. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  222. package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.d.cts +30 -30
  223. package/node_modules/@apollo/client/__cjs/react/hooks/useSyncExternalStore.cjs +1 -1
  224. package/node_modules/@apollo/client/__cjs/react/internal/cache/QueryReference.cjs +1 -1
  225. package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  226. package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.d.cts +1 -1
  227. package/node_modules/@apollo/client/__cjs/react/ssr/prerenderStatic.cjs +2 -2
  228. package/node_modules/@apollo/client/__cjs/react/types/deprecated.d.cts +5 -4
  229. package/node_modules/@apollo/client/__cjs/react/types/types.documentation.d.cts +12 -1
  230. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs +25 -5
  231. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  232. package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.d.cts +1 -2
  233. package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.cjs.map +1 -1
  234. package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.d.cts +39 -1
  235. package/node_modules/@apollo/client/__cjs/utilities/graphql/DocumentTransform.cjs +1 -1
  236. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs +27 -0
  237. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs.map +1 -0
  238. package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.d.cts +12 -0
  239. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs +33 -0
  240. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs.map +1 -0
  241. package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.d.cts +3 -0
  242. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs +12 -0
  243. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs.map +1 -0
  244. package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.d.cts +7 -0
  245. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs +102 -0
  246. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs.map +1 -0
  247. package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.d.cts +9 -0
  248. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs +20 -1
  249. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs.map +1 -1
  250. package/node_modules/@apollo/client/__cjs/utilities/internal/constants.d.cts +19 -0
  251. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs +19 -0
  252. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs.map +1 -0
  253. package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.d.cts +9 -0
  254. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs +3 -3
  255. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -1
  256. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs +2 -2
  257. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs.map +1 -1
  258. package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentQueryDocument.cjs +2 -2
  259. package/node_modules/@apollo/client/__cjs/utilities/internal/getMainDefinition.cjs +1 -1
  260. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs +6 -0
  261. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  262. package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.d.cts +4 -0
  263. package/node_modules/@apollo/client/__cjs/utilities/internal/getQueryDefinition.cjs +1 -1
  264. package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs +27 -2
  265. package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs.map +1 -1
  266. package/node_modules/@apollo/client/__cjs/utilities/internal/index.d.cts +17 -2
  267. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs +38 -0
  268. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs.map +1 -0
  269. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.d.cts +9 -0
  270. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs +37 -0
  271. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs.map +1 -0
  272. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.d.cts +9 -0
  273. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs +7 -0
  274. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs.map +1 -0
  275. package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.d.cts +3 -0
  276. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs +17 -0
  277. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs.map +1 -0
  278. package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.d.cts +8 -0
  279. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs +12 -0
  280. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs.map +1 -0
  281. package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.d.cts +8 -0
  282. package/node_modules/@apollo/client/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +1 -1
  283. package/node_modules/@apollo/client/__cjs/utilities/internal/shouldInclude.cjs +4 -4
  284. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs +20 -0
  285. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs.map +1 -0
  286. package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.d.cts +8 -0
  287. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs +3 -0
  288. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs.map +1 -0
  289. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.d.cts +10 -0
  290. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs +3 -0
  291. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs.map +1 -0
  292. package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.d.cts +2 -0
  293. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs +3 -0
  294. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs.map +1 -0
  295. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.d.cts +10 -0
  296. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs +3 -0
  297. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs.map +1 -0
  298. package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.d.cts +4 -0
  299. package/node_modules/@apollo/client/__cjs/utilities/internal/types/StreamInfoTrie.d.cts +2 -0
  300. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs +12 -0
  301. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs.map +1 -0
  302. package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.d.cts +10 -0
  303. package/node_modules/@apollo/client/__cjs/utilities/internal/valueToObjectRepresentation.cjs +1 -1
  304. package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
  305. package/node_modules/@apollo/client/__cjs/version.cjs.map +1 -1
  306. package/node_modules/@apollo/client/cache/core/Scalar.d.ts +56 -0
  307. package/node_modules/@apollo/client/cache/core/Scalar.js +32 -0
  308. package/node_modules/@apollo/client/cache/core/Scalar.js.map +1 -0
  309. package/node_modules/@apollo/client/cache/core/cache.d.ts +89 -6
  310. package/node_modules/@apollo/client/cache/core/cache.js +33 -2
  311. package/node_modules/@apollo/client/cache/core/cache.js.map +1 -1
  312. package/node_modules/@apollo/client/cache/core/types/Cache.d.ts +30 -2
  313. package/node_modules/@apollo/client/cache/core/types/Cache.js.map +1 -1
  314. package/node_modules/@apollo/client/cache/index.d.ts +2 -1
  315. package/node_modules/@apollo/client/cache/index.js +1 -0
  316. package/node_modules/@apollo/client/cache/index.js.map +1 -1
  317. package/node_modules/@apollo/client/cache/inmemory/entityStore.d.ts +3 -0
  318. package/node_modules/@apollo/client/cache/inmemory/entityStore.js +64 -6
  319. package/node_modules/@apollo/client/cache/inmemory/entityStore.js.map +1 -1
  320. package/node_modules/@apollo/client/cache/inmemory/helpers.d.ts +11 -2
  321. package/node_modules/@apollo/client/cache/inmemory/helpers.js +11 -0
  322. package/node_modules/@apollo/client/cache/inmemory/helpers.js.map +1 -1
  323. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.d.ts +44 -5
  324. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +97 -6
  325. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
  326. package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +1 -1
  327. package/node_modules/@apollo/client/cache/inmemory/policies.d.ts +3 -1
  328. package/node_modules/@apollo/client/cache/inmemory/policies.js +34 -6
  329. package/node_modules/@apollo/client/cache/inmemory/policies.js.map +1 -1
  330. package/node_modules/@apollo/client/cache/inmemory/readFromStore.d.ts +11 -2
  331. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js +485 -45
  332. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js.map +1 -1
  333. package/node_modules/@apollo/client/cache/inmemory/types.d.ts +32 -5
  334. package/node_modules/@apollo/client/cache/inmemory/types.js.map +1 -1
  335. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +6 -10
  336. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
  337. package/node_modules/@apollo/client/core/ApolloClient.d.ts +11 -11
  338. package/node_modules/@apollo/client/core/ApolloClient.js +14 -14
  339. package/node_modules/@apollo/client/core/ApolloClient.js.map +1 -1
  340. package/node_modules/@apollo/client/core/ObservableQuery.d.ts +4 -7
  341. package/node_modules/@apollo/client/core/ObservableQuery.js +183 -73
  342. package/node_modules/@apollo/client/core/ObservableQuery.js.map +1 -1
  343. package/node_modules/@apollo/client/core/QueryInfo.d.ts +18 -22
  344. package/node_modules/@apollo/client/core/QueryInfo.js +165 -198
  345. package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
  346. package/node_modules/@apollo/client/core/QueryManager.d.ts +4 -4
  347. package/node_modules/@apollo/client/core/QueryManager.js +76 -49
  348. package/node_modules/@apollo/client/core/QueryManager.js.map +1 -1
  349. package/node_modules/@apollo/client/core/RefetchEventManager.js +3 -3
  350. package/node_modules/@apollo/client/core/dataStateErrorCache.d.ts +3 -0
  351. package/node_modules/@apollo/client/core/dataStateErrorCache.js +9 -0
  352. package/node_modules/@apollo/client/core/dataStateErrorCache.js.map +1 -0
  353. package/node_modules/@apollo/client/core/deprecated.d.ts +3 -3
  354. package/node_modules/@apollo/client/core/deprecated.js.map +1 -1
  355. package/node_modules/@apollo/client/core/index.d.ts +4 -3
  356. package/node_modules/@apollo/client/core/index.js +1 -1
  357. package/node_modules/@apollo/client/core/index.js.map +1 -1
  358. package/node_modules/@apollo/client/core/types.d.ts +11 -7
  359. package/node_modules/@apollo/client/core/types.js.map +1 -1
  360. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.d.ts +55 -0
  361. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js +2 -0
  362. package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js.map +1 -0
  363. package/node_modules/@apollo/client/incremental/handlers/defer20220824.d.ts +2 -4
  364. package/node_modules/@apollo/client/incremental/handlers/defer20220824.js.map +1 -1
  365. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.d.ts +29 -6
  366. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js +48 -17
  367. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js.map +1 -1
  368. package/node_modules/@apollo/client/incremental/handlers/notImplemented.js +1 -1
  369. package/node_modules/@apollo/client/incremental/index.d.ts +1 -0
  370. package/node_modules/@apollo/client/incremental/index.js.map +1 -1
  371. package/node_modules/@apollo/client/incremental/internal/types.d.ts +17 -0
  372. package/node_modules/@apollo/client/incremental/internal/types.js +2 -0
  373. package/node_modules/@apollo/client/incremental/internal/types.js.map +1 -0
  374. package/node_modules/@apollo/client/incremental/types.d.ts +55 -4
  375. package/node_modules/@apollo/client/incremental/types.js.map +1 -1
  376. package/node_modules/@apollo/client/invariantErrorCodes.js +164 -113
  377. package/node_modules/@apollo/client/link/core/ApolloLink.js +3 -3
  378. package/node_modules/@apollo/client/link/http/checkFetcher.js +1 -1
  379. package/node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js +1 -1
  380. package/node_modules/@apollo/client/link/persisted-queries/index.js +2 -2
  381. package/node_modules/@apollo/client/link/ws/index.js +1 -1
  382. package/node_modules/@apollo/client/local-state/LocalState.d.ts +1 -1
  383. package/node_modules/@apollo/client/local-state/LocalState.js +11 -11
  384. package/node_modules/@apollo/client/local-state/LocalState.js.map +1 -1
  385. package/node_modules/@apollo/client/masking/internal/types.d.ts +1 -2
  386. package/node_modules/@apollo/client/masking/internal/types.js.map +1 -1
  387. package/node_modules/@apollo/client/masking/maskDefinition.js +2 -2
  388. package/node_modules/@apollo/client/masking/maskFragment.js +2 -2
  389. package/node_modules/@apollo/client/masking/maskOperation.js +1 -1
  390. package/node_modules/@apollo/client/masking/utils.js +3 -3
  391. package/node_modules/@apollo/client/package.json +1 -1
  392. package/node_modules/@apollo/client/react/context/ApolloContext.js +1 -1
  393. package/node_modules/@apollo/client/react/context/ApolloProvider.js +1 -1
  394. package/node_modules/@apollo/client/react/hooks/internal/validateSuspenseHookOptions.js +2 -2
  395. package/node_modules/@apollo/client/react/hooks/useApolloClient.js +1 -1
  396. package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.d.ts +3 -3
  397. package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.js.map +1 -1
  398. package/node_modules/@apollo/client/react/hooks/useFragment.d.ts +0 -1
  399. package/node_modules/@apollo/client/react/hooks/useFragment.js.map +1 -1
  400. package/node_modules/@apollo/client/react/hooks/useLazyQuery.d.ts +1 -1
  401. package/node_modules/@apollo/client/react/hooks/useLazyQuery.js +2 -2
  402. package/node_modules/@apollo/client/react/hooks/useLazyQuery.js.map +1 -1
  403. package/node_modules/@apollo/client/react/hooks/useLoadableQuery.js +2 -2
  404. package/node_modules/@apollo/client/react/hooks/useMutation.d.ts +14 -14
  405. package/node_modules/@apollo/client/react/hooks/useMutation.js.map +1 -1
  406. package/node_modules/@apollo/client/react/hooks/useQuery.d.ts +16 -3
  407. package/node_modules/@apollo/client/react/hooks/useQuery.js.map +1 -1
  408. package/node_modules/@apollo/client/react/hooks/useSubscription.d.ts +27 -5
  409. package/node_modules/@apollo/client/react/hooks/useSubscription.js +7 -3
  410. package/node_modules/@apollo/client/react/hooks/useSubscription.js.map +1 -1
  411. package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.d.ts +1 -1
  412. package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.js.map +1 -1
  413. package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.d.ts +30 -30
  414. package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.js.map +1 -1
  415. package/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js +1 -1
  416. package/node_modules/@apollo/client/react/hooks-compiled/internal/validateSuspenseHookOptions.js +2 -2
  417. package/node_modules/@apollo/client/react/hooks-compiled/useApolloClient.js +1 -1
  418. package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.d.ts +3 -3
  419. package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  420. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.d.ts +0 -1
  421. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.js.map +1 -1
  422. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.d.ts +1 -1
  423. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js +2 -2
  424. package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js.map +1 -1
  425. package/node_modules/@apollo/client/react/hooks-compiled/useLoadableQuery.js +2 -2
  426. package/node_modules/@apollo/client/react/hooks-compiled/useMutation.d.ts +14 -14
  427. package/node_modules/@apollo/client/react/hooks-compiled/useMutation.js.map +1 -1
  428. package/node_modules/@apollo/client/react/hooks-compiled/useQuery.d.ts +16 -3
  429. package/node_modules/@apollo/client/react/hooks-compiled/useQuery.js.map +1 -1
  430. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.d.ts +27 -5
  431. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js +107 -93
  432. package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js.map +1 -1
  433. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.d.ts +1 -1
  434. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  435. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.d.ts +30 -30
  436. package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  437. package/node_modules/@apollo/client/react/hooks-compiled/useSyncExternalStore.js +1 -1
  438. package/node_modules/@apollo/client/react/internal/cache/QueryReference.js +1 -1
  439. package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.d.ts +1 -1
  440. package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.js.map +1 -1
  441. package/node_modules/@apollo/client/react/ssr/prerenderStatic.js +2 -2
  442. package/node_modules/@apollo/client/react/types/deprecated.d.ts +5 -4
  443. package/node_modules/@apollo/client/react/types/deprecated.js.map +1 -1
  444. package/node_modules/@apollo/client/react/types/types.documentation.d.ts +12 -1
  445. package/node_modules/@apollo/client/react/types/types.documentation.js.map +1 -1
  446. package/node_modules/@apollo/client/testing/core/mocking/mockLink.d.ts +1 -2
  447. package/node_modules/@apollo/client/testing/core/mocking/mockLink.js +25 -5
  448. package/node_modules/@apollo/client/testing/core/mocking/mockLink.js.map +1 -1
  449. package/node_modules/@apollo/client/utilities/caching/sizes.d.ts +39 -1
  450. package/node_modules/@apollo/client/utilities/caching/sizes.js.map +1 -1
  451. package/node_modules/@apollo/client/utilities/graphql/DocumentTransform.js +1 -1
  452. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.d.ts +12 -0
  453. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js +23 -0
  454. package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js.map +1 -0
  455. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.d.ts +3 -0
  456. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js +30 -0
  457. package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js.map +1 -0
  458. package/node_modules/@apollo/client/utilities/internal/capitalize.d.ts +7 -0
  459. package/node_modules/@apollo/client/utilities/internal/capitalize.js +9 -0
  460. package/node_modules/@apollo/client/utilities/internal/capitalize.js.map +1 -0
  461. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.d.ts +9 -0
  462. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js +95 -0
  463. package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js.map +1 -0
  464. package/node_modules/@apollo/client/utilities/internal/constants.d.ts +19 -0
  465. package/node_modules/@apollo/client/utilities/internal/constants.js +19 -0
  466. package/node_modules/@apollo/client/utilities/internal/constants.js.map +1 -1
  467. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.d.ts +9 -0
  468. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js +16 -0
  469. package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js.map +1 -0
  470. package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js +3 -3
  471. package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js.map +1 -1
  472. package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js +2 -2
  473. package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js.map +1 -1
  474. package/node_modules/@apollo/client/utilities/internal/getFragmentQueryDocument.js +2 -2
  475. package/node_modules/@apollo/client/utilities/internal/getMainDefinition.js +1 -1
  476. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.d.ts +4 -0
  477. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js +6 -0
  478. package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js.map +1 -1
  479. package/node_modules/@apollo/client/utilities/internal/getQueryDefinition.js +1 -1
  480. package/node_modules/@apollo/client/utilities/internal/index.d.ts +17 -2
  481. package/node_modules/@apollo/client/utilities/internal/index.js +13 -1
  482. package/node_modules/@apollo/client/utilities/internal/index.js.map +1 -1
  483. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.d.ts +9 -0
  484. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js +35 -0
  485. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js.map +1 -0
  486. package/node_modules/@apollo/client/utilities/internal/isStreamField.d.ts +9 -0
  487. package/node_modules/@apollo/client/utilities/internal/isStreamField.js +34 -0
  488. package/node_modules/@apollo/client/utilities/internal/isStreamField.js.map +1 -0
  489. package/node_modules/@apollo/client/utilities/internal/isTypenameField.d.ts +3 -0
  490. package/node_modules/@apollo/client/utilities/internal/isTypenameField.js +4 -0
  491. package/node_modules/@apollo/client/utilities/internal/isTypenameField.js.map +1 -0
  492. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.d.ts +8 -0
  493. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js +14 -0
  494. package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js.map +1 -0
  495. package/node_modules/@apollo/client/utilities/internal/matchScalarList.d.ts +8 -0
  496. package/node_modules/@apollo/client/utilities/internal/matchScalarList.js +9 -0
  497. package/node_modules/@apollo/client/utilities/internal/matchScalarList.js.map +1 -0
  498. package/node_modules/@apollo/client/utilities/internal/removeDirectivesFromDocument.js +1 -1
  499. package/node_modules/@apollo/client/utilities/internal/shouldInclude.js +4 -4
  500. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.d.ts +8 -0
  501. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js +17 -0
  502. package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js.map +1 -0
  503. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.d.ts +10 -0
  504. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js +2 -0
  505. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js.map +1 -0
  506. package/node_modules/@apollo/client/utilities/internal/types/Exact.d.ts +2 -0
  507. package/node_modules/@apollo/client/utilities/internal/types/Exact.js +2 -0
  508. package/node_modules/@apollo/client/utilities/internal/types/Exact.js.map +1 -0
  509. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.d.ts +10 -0
  510. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js +2 -0
  511. package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js.map +1 -0
  512. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.d.ts +4 -0
  513. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js +2 -0
  514. package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js.map +1 -0
  515. package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.d.ts +2 -0
  516. package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.js.map +1 -1
  517. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.d.ts +10 -0
  518. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js +9 -0
  519. package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js.map +1 -0
  520. package/node_modules/@apollo/client/utilities/internal/valueToObjectRepresentation.js +1 -1
  521. package/node_modules/@apollo/client/version.js +1 -1
  522. package/node_modules/@apollo/client/version.js.map +1 -1
  523. package/node_modules/@types/node/README.md +1 -1
  524. package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
  525. package/node_modules/@types/node/buffer.d.ts +1 -0
  526. package/node_modules/@types/node/crypto.d.ts +2 -4
  527. package/node_modules/@types/node/dgram.d.ts +119 -4
  528. package/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  529. package/node_modules/@types/node/ffi.d.ts +1 -1
  530. package/node_modules/@types/node/fs/promises.d.ts +61 -65
  531. package/node_modules/@types/node/fs.d.ts +86 -76
  532. package/node_modules/@types/node/http.d.ts +18 -2
  533. package/node_modules/@types/node/http2.d.ts +12 -4
  534. package/node_modules/@types/node/index.d.ts +1 -0
  535. package/node_modules/@types/node/inspector.d.ts +2 -1
  536. package/node_modules/@types/node/net.d.ts +108 -16
  537. package/node_modules/@types/node/package.json +3 -3
  538. package/node_modules/@types/node/perf_hooks.d.ts +31 -19
  539. package/node_modules/@types/node/process.d.ts +52 -0
  540. package/node_modules/@types/node/quic.d.ts +252 -42
  541. package/node_modules/@types/node/sqlite.d.ts +6 -2
  542. package/node_modules/@types/node/stream/iter.d.ts +4 -4
  543. package/node_modules/@types/node/stream/web.d.ts +20 -0
  544. package/node_modules/@types/node/test.d.ts +36 -0
  545. package/node_modules/@types/node/tls.d.ts +50 -15
  546. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
  547. package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
  548. package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
  549. package/node_modules/@types/node/tty.d.ts +4 -3
  550. package/node_modules/@types/node/vfs.d.ts +211 -0
  551. package/node_modules/@types/node/vm.d.ts +1 -1
  552. package/node_modules/@types/node/web-globals/streams.d.ts +4 -0
  553. package/node_modules/@types/node/zlib.d.ts +17 -0
  554. package/node_modules/cpu-features/build/Makefile +2 -2
  555. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +1 -1
  556. 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
  557. 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
  558. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +1 -1
  559. 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
  560. 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
  561. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +1 -1
  562. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +1 -1
  563. 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
  564. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +1 -1
  565. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +1 -1
  566. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +1 -1
  567. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +1 -1
  568. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +145 -145
  569. package/node_modules/cpu-features/build/config.gypi +8 -9
  570. package/node_modules/cpu-features/build/cpufeatures.target.mk +14 -14
  571. package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +14 -14
  572. package/node_modules/default-browser/package.json +1 -1
  573. package/node_modules/default-browser/windows.js +3 -1
  574. package/node_modules/js-yaml/README.md +0 -3
  575. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs +822 -779
  576. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs.map +1 -1
  577. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js +29 -23
  578. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js.map +1 -1
  579. package/node_modules/js-yaml/dist/js-yaml.cjs.js +425 -397
  580. package/node_modules/js-yaml/dist/js-yaml.cjs.js.map +1 -1
  581. package/node_modules/js-yaml/dist/js-yaml.d.ts +101 -32
  582. package/node_modules/js-yaml/dist/js-yaml.mjs +429 -397
  583. package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  584. package/node_modules/js-yaml/package.json +1 -1
  585. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js +11 -3
  586. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
  587. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js +1 -1
  588. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
  589. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs +11 -3
  590. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  591. package/node_modules/lando/node_modules/js-yaml/lib/loader.js +16 -3
  592. package/node_modules/lando/node_modules/js-yaml/package.json +1 -1
  593. package/node_modules/open/index.js +15 -3
  594. package/node_modules/open/package.json +3 -3
  595. package/node_modules/{lando → path-scurry}/node_modules/lru-cache/README.md +96 -10
  596. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.d.ts.map +1 -0
  597. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.js.map +1 -0
  598. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.d.ts +5 -0
  599. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.js +7 -0
  600. package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/commonjs/browser}/index.d.ts +109 -32
  601. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.d.ts.map +1 -0
  602. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js +1733 -0
  603. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js.map +1 -0
  604. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js +2 -0
  605. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js.map +7 -0
  606. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts +12 -0
  607. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts.map +1 -0
  608. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js +10 -0
  609. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js.map +1 -0
  610. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.cjs.map +1 -0
  611. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.d.cts.map +1 -0
  612. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.d.ts +5 -0
  613. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +7 -0
  614. package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/commonjs}/index.d.ts +109 -32
  615. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts.map +1 -0
  616. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js +1733 -0
  617. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js.map +1 -0
  618. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js +2 -0
  619. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js.map +7 -0
  620. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.d.ts.map +1 -0
  621. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.js.map +1 -0
  622. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.d.ts +5 -0
  623. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.js +9 -0
  624. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts +1400 -0
  625. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts.map +1 -0
  626. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js +1733 -0
  627. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js.map +1 -0
  628. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js +2 -0
  629. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js.map +7 -0
  630. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts +12 -0
  631. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts.map +1 -0
  632. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js +10 -0
  633. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js.map +1 -0
  634. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts +12 -0
  635. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts.map +1 -0
  636. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js +10 -0
  637. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js.map +1 -0
  638. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.d.ts.map +1 -0
  639. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.js.map +1 -0
  640. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.d.ts +5 -0
  641. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +4 -0
  642. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts +1400 -0
  643. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts.map +1 -0
  644. package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/esm/browser}/index.js +315 -177
  645. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.js.map +1 -0
  646. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js +2 -0
  647. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js.map +7 -0
  648. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts +12 -0
  649. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts.map +1 -0
  650. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js +7 -0
  651. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js.map +1 -0
  652. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +1 -0
  653. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.mjs.map +1 -0
  654. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.d.ts +5 -0
  655. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.js +19 -0
  656. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts +1400 -0
  657. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts.map +1 -0
  658. package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/esm}/index.js +316 -182
  659. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js.map +1 -0
  660. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js +2 -0
  661. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js.map +7 -0
  662. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.ts.map +1 -0
  663. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.js.map +1 -0
  664. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.d.ts +5 -0
  665. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +6 -0
  666. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts +1400 -0
  667. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts.map +1 -0
  668. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js +1729 -0
  669. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js.map +1 -0
  670. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js +2 -0
  671. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js.map +7 -0
  672. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts +12 -0
  673. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts.map +1 -0
  674. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js +7 -0
  675. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js.map +1 -0
  676. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts +12 -0
  677. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts.map +1 -0
  678. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js +7 -0
  679. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js.map +1 -0
  680. package/node_modules/path-scurry/node_modules/lru-cache/package.json +154 -0
  681. package/node_modules/powershell-utils/index.d.ts +16 -2
  682. package/node_modules/powershell-utils/index.js +12 -9
  683. package/node_modules/powershell-utils/package.json +1 -1
  684. package/node_modules/powershell-utils/readme.md +7 -2
  685. package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +2 -2
  686. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +237 -237
  687. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
  688. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto.node +0 -0
  689. package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
  690. package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +14 -14
  691. package/node_modules/undici/docs/docs/api/Client.md +4 -0
  692. package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +3 -2
  693. package/node_modules/undici/docs/docs/api/EventSource.md +4 -0
  694. package/node_modules/undici/docs/docs/api/Interceptors.md +7 -3
  695. package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +7 -1
  696. package/node_modules/undici/lib/cache/memory-cache-store.js +2 -2
  697. package/node_modules/undici/lib/core/symbols.js +2 -0
  698. package/node_modules/undici/lib/dispatcher/agent.js +7 -2
  699. package/node_modules/undici/lib/dispatcher/balanced-pool.js +7 -4
  700. package/node_modules/undici/lib/dispatcher/client-h1.js +12 -4
  701. package/node_modules/undici/lib/dispatcher/client-h2.js +43 -3
  702. package/node_modules/undici/lib/dispatcher/client.js +3 -2
  703. package/node_modules/undici/lib/dispatcher/dispatcher-base.js +13 -1
  704. package/node_modules/undici/lib/dispatcher/dispatcher.js +15 -1
  705. package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -0
  706. package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +10 -3
  707. package/node_modules/undici/lib/dispatcher/proxy-agent.js +18 -1
  708. package/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
  709. package/node_modules/undici/lib/dispatcher/round-robin-pool.js +1 -1
  710. package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +91 -21
  711. package/node_modules/undici/lib/handler/cache-handler.js +29 -5
  712. package/node_modules/undici/lib/handler/decorator-handler.js +7 -1
  713. package/node_modules/undici/lib/handler/deduplication-handler.js +12 -6
  714. package/node_modules/undici/lib/handler/redirect-handler.js +21 -4
  715. package/node_modules/undici/lib/handler/retry-handler.js +148 -30
  716. package/node_modules/undici/lib/interceptor/cache.js +65 -12
  717. package/node_modules/undici/lib/interceptor/decompress.js +115 -13
  718. package/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
  719. package/node_modules/undici/lib/interceptor/dns.js +7 -0
  720. package/node_modules/undici/lib/interceptor/dump.js +10 -23
  721. package/node_modules/undici/lib/mock/mock-agent.js +13 -1
  722. package/node_modules/undici/lib/mock/mock-utils.js +11 -10
  723. package/node_modules/undici/lib/util/cache.js +45 -3
  724. package/node_modules/undici/lib/web/cookies/parse.js +150 -147
  725. package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
  726. package/node_modules/undici/lib/web/eventsource/eventsource.js +13 -3
  727. package/node_modules/undici/lib/web/fetch/index.js +6 -0
  728. package/node_modules/undici/lib/web/fetch/request.js +2 -3
  729. package/node_modules/undici/lib/web/fetch/util.js +6 -1
  730. package/node_modules/undici/lib/web/webidl/index.js +3 -3
  731. package/node_modules/undici/lib/web/websocket/connection.js +1 -1
  732. package/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
  733. package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +8 -10
  734. package/node_modules/undici/package.json +3 -3
  735. package/node_modules/undici/types/client.d.ts +10 -0
  736. package/node_modules/undici/types/interceptors.d.ts +2 -0
  737. package/node_modules/undici/types/mock-agent.d.ts +11 -10
  738. package/node_modules/undici/types/socks5-proxy-agent.d.ts +2 -0
  739. package/node_modules/undici-types/client.d.ts +8 -3
  740. package/node_modules/undici-types/connector.d.ts +1 -0
  741. package/node_modules/undici-types/cookies.d.ts +1 -1
  742. package/node_modules/undici-types/dispatcher.d.ts +3 -3
  743. package/node_modules/undici-types/errors.d.ts +10 -0
  744. package/node_modules/undici-types/fetch.d.ts +5 -1
  745. package/node_modules/undici-types/handlers.d.ts +2 -0
  746. package/node_modules/undici-types/interceptors.d.ts +1 -1
  747. package/node_modules/undici-types/mock-interceptor.d.ts +5 -1
  748. package/node_modules/undici-types/package.json +1 -1
  749. package/node_modules/undici-types/proxy-agent.d.ts +7 -0
  750. package/package.json +2 -2
  751. package/packaging/macos/build-pkg.sh +53 -0
  752. package/packaging/macos/preinstall +33 -0
  753. package/packaging/macos/test-install.sh +51 -0
  754. package/packaging/macos/test_package.py +74 -0
  755. package/packaging/macos/uninstall.sh +24 -0
  756. package/packaging/macos/verify-pkg.py +61 -0
  757. package/packaging/windows/build-msi.ps1 +153 -0
  758. package/packaging/windows/test-msi.ps1 +225 -0
  759. package/packaging/windows/verify-msi.ps1 +74 -0
  760. package/packaging/windows/vip-next.wxs +79 -0
  761. package/testdata/installer-fixture/main.go +40 -0
  762. package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.cjs.map +0 -1
  763. package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.d.cts +0 -35
  764. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.d.ts +0 -35
  765. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js +0 -2
  766. package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js.map +0 -1
  767. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
  768. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
  769. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
  770. package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
  771. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
  772. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.js.map +0 -1
  773. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js +0 -2
  774. package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
  775. package/node_modules/lando/node_modules/lru-cache/package.json +0 -93
  776. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/LICENSE.md +0 -0
  777. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/README.md +0 -0
  778. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts +0 -0
  779. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts.map +0 -0
  780. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js +0 -0
  781. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js.map +0 -0
  782. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/commonjs/package.json +0 -0
  783. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts +0 -0
  784. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts.map +0 -0
  785. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js +0 -0
  786. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js.map +0 -0
  787. /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/esm/package.json +0 -0
  788. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/LICENSE.md +0 -0
  789. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/commonjs/package.json +0 -0
  790. /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/esm/package.json +0 -0
  791. /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/package.json +0 -0
@@ -229,7 +229,7 @@ real release with a CA certificate.
229
229
  Release builds run on **Buildkite** (Automattic's signing stack), not GitHub
230
230
  Actions. See `.buildkite/pipeline.yml` and the per-platform scripts.
231
231
 
232
- - **Pipeline:** `.buildkite/pipeline.yml` — three independent steps (macOS,
232
+ - **Pipeline:** `.buildkite/pipeline.yml` — three independent binary steps (macOS,
233
233
  Windows, Linux), each building on its own native agent.
234
234
  Setup sources `.buildkite/shared-pipeline-vars` before pipeline upload
235
235
  (CI toolkit plugin pin, `BIN_BASE`, `IMAGE_ID`).
@@ -240,13 +240,151 @@ Actions. See `.buildkite/pipeline.yml` and the per-platform scripts.
240
240
  every build.
241
241
  - **macOS certs:** fastlane `match` (`fastlane/Fastfile` →
242
242
  `configure_code_signing`), `type: developer_id`, stored in S3
243
- (`a8c-fastlane-match`). Signing and notarization are the
244
- `sign_and_notarize` lane: Developer ID Application, identifier
245
- `com.automattic.vip-cli`, no staple on a bare Mach-O.
243
+ (`a8c-fastlane-match`), in readonly mode. The separate
244
+ `configure_installer_signing` lane adds the Developer ID Installer
245
+ certificate through match's `additional_cert_types`. Signing and
246
+ notarization are the `sign_and_notarize` lane: Developer ID Application,
247
+ identifier `com.automattic.vip-cli`, no staple on a bare Mach-O.
246
248
  - **macOS artifacts:** per-arch `.tar.gz` of `vip-next` + `go-search-replace`,
247
- both signed and notarized (online-verified).
249
+ both signed and notarized (online-verified), plus a signed, notarized,
250
+ stapled `.pkg` for each architecture.
248
251
  - **Windows / Linux artifacts:** the same tarball layout. Windows Authenticode-
249
- signs both PEs via Azure Trusted Signing; Linux checksums only.
252
+ signs both PEs and the x64 `.msi` via Azure Trusted Signing; Linux checksums only.
253
+
254
+ ### Native installers
255
+
256
+ Separate macOS and Windows installer jobs depend on their platform's binary
257
+ job. They download its signed archives from the same Buildkite build, verify
258
+ checksums and the exact two-file payload, and package those existing bytes.
259
+ Installer jobs use Buildkite `soft_fail` so missing signing prerequisites or
260
+ packaging failures do not fail the binary build. Their failures remain visible
261
+ in Buildkite. Archives remain available for portable installations and
262
+ `vip-next update`. No Node.js runtime is installed or required by these packages.
263
+
264
+ | Platform | Package | Installation |
265
+ | ------------------- | ---------------------------- | ----------------------------------- |
266
+ | macOS Apple Silicon | `vip-next-darwin-arm64.pkg` | `/usr/local/lib/vip-cli/bin` |
267
+ | macOS Intel | `vip-next-darwin-amd64.pkg` | `/usr/local/lib/vip-cli/bin` |
268
+ | Windows x64 | `vip-next-windows-amd64.msi` | `%ProgramFiles%\Automattic\VIP CLI` |
269
+
270
+ Run the package to install or upgrade; administrative privileges are required.
271
+ Open a new terminal afterward, then run `vip-next --version`. The macOS package
272
+ adds `/etc/paths.d/vip-cli`; Windows adds its directory to the system PATH and
273
+ removes that entry on uninstall. Neither package creates a `vip` alias or
274
+ replaces the Node/npm installation. Existing earlier PATH entries can still
275
+ select a different `vip-next`; use `command -v vip-next` (macOS) or
276
+ `where.exe vip-next` (Windows) to identify the active installation.
277
+
278
+ Installer-owned directories contain `.vip-next-installer.json`. The Go updater
279
+ recognizes this file and directs users to download the appropriate installer
280
+ instead of replacing package-managed binaries. Keep this metadata intact.
281
+ `vip-next update --check` still checks for available releases. Portable tarballs
282
+ do not contain this marker and retain their existing self-update behavior.
283
+
284
+ On Windows, uninstall **VIP CLI** through Installed apps or `msiexec /x` with
285
+ the installed package. On macOS, run:
286
+
287
+ ```sh
288
+ sudo /usr/local/lib/vip-cli/uninstall.sh
289
+ ```
290
+
291
+ The macOS uninstaller removes only package-owned files, the matching PATH entry,
292
+ and its receipt (`com.automattic.vip-cli`); it preserves other files in the
293
+ installation directory. Neither uninstaller deletes user configuration or
294
+ credentials. Uninstall first if deliberately moving to an older version.
295
+
296
+ #### Build prerequisites
297
+
298
+ - **macOS:** `configure_code_signing` retrieves only the **Developer ID Application**
299
+ certificate. The installer job separately calls `configure_installer_signing`
300
+ for the **Developer ID Installer** certificate. Both use the existing fastlane
301
+ match S3 storage in readonly mode. Builds never create or renew certificates.
302
+ The Installer certificate is not yet in match storage, so the installer job
303
+ fails until it is provisioned (see below). Xcode command-line tools provide
304
+ `pkgbuild`, `productbuild`, `productsign`, `notarytool`, and `stapler`.
305
+ - **Windows:** the build uses .NET SDK 8 and pinned WiX 5.0.2, with a matching
306
+ UI extension, as build-only tools. WiX is restored into a temporary build
307
+ directory. This pin does not adopt WiX 6+ sponsorship requirements. Existing
308
+ Azure Trusted Signing credentials/signing tools sign the final MSI.
309
+ - Missing signing prerequisites fail only the corresponding job; there is no
310
+ unsigned fallback. Binary job failures still fail the build. Installer jobs
311
+ upload explicitly only after all packages pass signing and payload verification;
312
+ automatic post-failure uploads are disabled. Checksums follow final signing/stapling.
313
+
314
+ The promotion helper requires all five archive/checksum pairs (10 assets).
315
+ The three installer/checksum pairs are optional (up to 16 assets total), but a
316
+ package and its checksum must appear together. It verifies every supplied
317
+ checksum, the exact two-binary tar layout, and the installer container type.
318
+ Unknown, duplicate, incomplete, or corrupt artifacts still block promotion. Native jobs verify
319
+ signatures; the Linux promotion job does not independently verify Apple or
320
+ Authenticode signatures. Before checksumming/uploading, macOS expands the final
321
+ PKG and Windows performs a temporary administrative extraction of the signed
322
+ MSI to verify the packaged executable hashes, license, and ownership metadata.
323
+ These checks do not install the CLI on the Buildkite host.
324
+
325
+ #### Provisioning the Developer ID Installer certificate
326
+
327
+ App Store Connect's API does not model this certificate type at all:
328
+ `filter[certificateType]=DEVELOPER_ID_INSTALLER` is rejected as an invalid
329
+ value, and the accepted list contains `DEVELOPER_ID_APPLICATION` and
330
+ `DEVELOPER_ID_KEXT` but no installer entry. No API-driven inventory can
331
+ therefore report whether the team already holds one; check
332
+ <https://developer.apple.com/account/resources/certificates> directly. Creating
333
+ one is Account Holder only and cannot be automated from CI.
334
+
335
+ Import the `.cer` and `.p12` into match storage (the command prompts for both
336
+ paths):
337
+
338
+ ```sh
339
+ bundle exec fastlane match import \
340
+ --type developer_id_installer \
341
+ --platform macos \
342
+ --team_id PZYM8XX95Q \
343
+ --storage_mode s3 \
344
+ --s3_bucket a8c-fastlane-match \
345
+ --s3_region us-east-2 \
346
+ --skip_provisioning_profiles true \
347
+ --skip_certificate_matching true
348
+ ```
349
+
350
+ `--skip_certificate_matching true` is required, not optional: without it
351
+ `match import` looks the certificate up on the portal by type to recover its
352
+ ID, which fails on the same rejected filter value.
353
+
354
+ Note the asymmetry: `match import` handles `developer_id_installer` as a
355
+ top-level `--type`, but `match` itself does not. Fetching it requires
356
+ `additional_cert_types`, as `configure_installer_signing` does — passing it as
357
+ match's top-level `type` silently installs an Apple Distribution certificate
358
+ instead and reports success.
359
+
360
+ #### Package version ordering
361
+
362
+ MSI requires three numeric version fields. Both installer formats use
363
+ `major.minor.(patch * 1000 + stage)` from `cmd/installer-version`: development
364
+ builds use stage 0; alpha.N uses 100+N; beta.N uses 300+N; rc.N uses 500+N;
365
+ stable uses 999. For example, `5.0.0-beta.1` becomes `5.0.301` and `5.0.0`
366
+ becomes `5.0.999`. The binaries retain their full semantic version.
367
+
368
+ Major/minor are limited to 255, patch to 64, and prerelease sequence to 199.
369
+ Unsupported values fail explicitly in installer jobs; binary releases retain
370
+ their existing semantic-version range.
371
+ Development builds of the same semantic base share a package version and may
372
+ require uninstalling the previous development MSI before installing another.
373
+
374
+ #### Installer tests
375
+
376
+ `python3 -m unittest discover -s packaging/macos -p 'test_package.py'` creates
377
+ and expands real unsigned packages in temporary directories. It verifies
378
+ payload bytes and runs preinstall conflict/downgrade checks against a temporary
379
+ volume tree; it does not install on the host.
380
+
381
+ The existing Go CI native matrix also runs `packaging/macos/test-install.sh`
382
+ and `packaging/windows/test-msi.ps1` on disposable GitHub-hosted runners. These
383
+ tests require `VIP_INSTALLER_E2E=1`, check for pre-existing installations, and
384
+ exercise actual install, upgrade, downgrade refusal, executable versions, PATH,
385
+ updater ownership, and uninstall using unsigned fixture packages. They are not
386
+ run on shared Buildkite agents. Signature/notarization validation happens in
387
+ the production Buildkite build and must also pass before a release is promoted.
250
388
 
251
389
  ### GitHub prerelease promotion setup
252
390
 
@@ -282,6 +420,9 @@ On a Buildkite build, confirm:
282
420
  - macOS binaries: `codesign --verify --strict --verbose=2` passes and
283
421
  `codesign --display` shows `Identifier=com.automattic.vip-cli`.
284
422
  - Windows: `signtool verify /pa /v <exe>` passes.
423
+ - macOS installers: `pkgutil --check-signature <pkg>`, `xcrun stapler validate
424
+ <pkg>`, and `spctl --assess --type install <pkg>` pass.
425
+ - Windows installer: `signtool verify /pa /v <msi>` passes.
285
426
  - Every artifact has a matching `.sha256`.
286
427
 
287
428
  ## Release checklist
package/docs/DEBUGGING.md CHANGED
@@ -31,3 +31,64 @@ For help, see: https://nodejs.org/en/docs/inspector
31
31
  6. Confirm that you attached the debugger to continue command execution.
32
32
  7. Resolve the problem.
33
33
  8. [Optional but recommended] Pay it forward and implement a similar approach to other internal/external tooling.
34
+
35
+ ## Go CLI diagnostics
36
+
37
+ Use `-d` or `--debug` to send diagnostics to stderr while keeping command results on stdout:
38
+
39
+ ```sh
40
+ vip-next dev-env list --debug
41
+ vip-next @example.develop edge-workers list -d --format=json > workers.json
42
+ ```
43
+
44
+ The Go CLI uses the corresponding Node CLI namespaces. Select namespaces with a
45
+ comma-separated list or wildcards, and exclude namespaces with a leading `-`:
46
+
47
+ ```sh
48
+ vip-next @example.develop edge-workers list --debug='@automattic/vip:http*'
49
+ vip-next dev-env list --debug='*,-vip:proxy-dispatcher'
50
+ DEBUG='@automattic/vip:bin:dev-environment' vip-next dev-env list
51
+ ```
52
+
53
+ A nonempty debug flag overrides `DEBUG`. For remote WP-CLI, put VIP's debug flag **before**
54
+ `wp`; arguments after `wp` belong to WP-CLI:
55
+
56
+ ```sh
57
+ vip-next @example.develop -d wp option get home
58
+ ```
59
+
60
+ ### Available diagnostics
61
+
62
+ | Namespace | Diagnostics |
63
+ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
64
+ | `@automattic/vip:http` | API requests, without URL credentials or arbitrary query parameters |
65
+ | `@automattic/vip:http:graphql` | Failed requests, retries, operation names, HTTP status, safe GraphQL error metadata |
66
+ | `vip:proxy-dispatcher` | Selected proxy scheme and host |
67
+ | `@automattic/vip:analytics:clients:pendo` | Telemetry send/skip stages and HTTP response status, without credentials, event properties or response bodies |
68
+ | `@automattic/vip:rechallenge:*` | Step-up session creation, pending polling, flow failures |
69
+ | `@automattic/vip:bin:dev-environment` | Local environment lifecycle, discovered environments, container status, import and execution stages |
70
+ | `@automattic/vip:bin:config:envvar` | Remote and local environment-variable operations, without values |
71
+ | `@automattic/vip:bin:config-software` | Software update requests and polling |
72
+ | `@automattic/vip:bin:vip-app-deploy*` | Deployment validation and upload/deployment stages |
73
+ | `@automattic/vip:bin:vip-import-sql`, `vip:vip-import-sql`, `vip:validations:line-by-line` | SQL import options and validation summaries |
74
+ | `vip:vip-import-media` | Media import summaries |
75
+ | `vip:lib/client-file-uploader` | Compression, checksum computation, upload strategy and completion |
76
+ | `vip:lib/site-import/status` | SQL import job and step status |
77
+ | `@automattic/vip:lib:search-and-replace` | Input/output routing and processing stages |
78
+ | `@automattic/vip:wp`, `@automattic/vip:wp/ssh` | Remote connection, retry and exit stages |
79
+
80
+ Messages follow each runtime's implementation. Go uses Compose rather than Lando,
81
+ so Lando initialization messages do not apply. Raw argument, configuration,
82
+ response, SQL and credential dumps from older Node diagnostics are replaced with
83
+ targeted summaries. A successful command can remain quiet when its implementation
84
+ has no applicable diagnostics, or when its namespaces are excluded.
85
+
86
+ The command-family audit covered app, backup, cache, config, db, defensive-mode,
87
+ dev-env, edge-workers, export, import, login, logout, logs, search-replace,
88
+ slowlogs, sync, update, whoami and wp. Families without command-specific Node
89
+ diagnostics use shared request logging where applicable. The Go-only updater has
90
+ no Node command diagnostics to port. Use `DEBUG` to inspect Pendo delivery during
91
+ authentication bootstrap, before command flags are parsed. Pendo requests use the
92
+ current stored token and are skipped when no token is available. Delivery failures
93
+ do not fail the command. Tracking opt-outs also disable Pendo; these diagnostics
94
+ do not add credential-store dumps.
@@ -86,6 +86,12 @@ beside the CLI. PATH and `VIP_SEARCH_REPLACE_BIN` targets are never overwritten;
86
86
  an active override continues to control helper execution.
87
87
 
88
88
  Recognized package-managed installations receive package-manager instructions
89
- instead of file replacement. Missing bundles, ambiguous layouts, and unwritable
89
+ instead of file replacement. Installations created by the macOS `.pkg` or
90
+ Windows `.msi` contain `.vip-next-installer.json` beside the binaries; keep this
91
+ file intact. When an update is available, `vip-next update` directs these
92
+ installations to the matching installer download. `--check` remains available.
93
+ See [native installer installation and upgrades](BUILD-SIGNING.md#native-installers).
94
+
95
+ Missing bundles, ambiguous layouts, and unwritable
90
96
  locations require manual installation. The updater does not elevate privileges.
91
97
  Supported release assets are macOS and Linux amd64/arm64, and Windows amd64.
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
+ }