@automattic/vip 4.1.5 → 4.1.6

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 (1545) hide show
  1. package/assets/dev-env.lando.template.yml.ejs +6 -2
  2. package/config/config.local.json +6 -0
  3. package/dist/bin/vip-config-software-get.js +9 -0
  4. package/dist/bin/vip-wp.js +128 -39
  5. package/dist/lib/client-file-uploader.js +34 -5
  6. package/dist/lib/config/software.js +42 -2
  7. package/dist/lib/dev-environment/dev-environment-core.js +1 -1
  8. package/helpers/generate-docs.js +9 -3
  9. package/node_modules/@apollo/client/CHANGELOG.md +32 -0
  10. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs +1 -1
  11. package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs.map +1 -1
  12. package/node_modules/@apollo/client/__cjs/cache/core/cache.d.cts +4 -1
  13. package/node_modules/@apollo/client/__cjs/cache/core/types/Cache.d.cts +5 -0
  14. package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs +4 -4
  15. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +15 -5
  16. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  17. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.d.cts +3 -1
  18. package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  19. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +5 -5
  20. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs +28 -10
  21. package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  22. package/node_modules/@apollo/client/__cjs/cache/inmemory/types.d.cts +7 -2
  23. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +29 -14
  24. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  25. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.d.cts +5 -2
  26. package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs +14 -14
  27. package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs +8 -8
  28. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +13 -32
  29. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
  30. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +12 -12
  31. package/node_modules/@apollo/client/__cjs/core/RefetchEventManager.cjs +3 -3
  32. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.cjs +15 -2
  33. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  34. package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.d.cts +5 -1
  35. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs +58 -14
  36. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -1
  37. package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.d.cts +23 -12
  38. package/node_modules/@apollo/client/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  39. package/node_modules/@apollo/client/__cjs/incremental/types.d.cts +19 -1
  40. package/node_modules/@apollo/client/__cjs/invariantErrorCodes.cjs +64 -58
  41. package/node_modules/@apollo/client/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  42. package/node_modules/@apollo/client/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -1
  43. package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs.map +1 -1
  44. package/node_modules/@apollo/client/__cjs/utilities/internal/index.d.cts +0 -1
  45. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs +24 -26
  46. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs.map +1 -1
  47. package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.d.cts +1 -1
  48. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs +24 -20
  49. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs.map +1 -1
  50. package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.d.cts +1 -1
  51. package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
  52. package/node_modules/@apollo/client/cache/core/cache.d.ts +4 -1
  53. package/node_modules/@apollo/client/cache/core/cache.js +1 -1
  54. package/node_modules/@apollo/client/cache/core/cache.js.map +1 -1
  55. package/node_modules/@apollo/client/cache/core/types/Cache.d.ts +5 -0
  56. package/node_modules/@apollo/client/cache/core/types/Cache.js.map +1 -1
  57. package/node_modules/@apollo/client/cache/inmemory/entityStore.js +4 -4
  58. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.d.ts +3 -1
  59. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +15 -5
  60. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
  61. package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +1 -1
  62. package/node_modules/@apollo/client/cache/inmemory/policies.js +5 -5
  63. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js +28 -10
  64. package/node_modules/@apollo/client/cache/inmemory/readFromStore.js.map +1 -1
  65. package/node_modules/@apollo/client/cache/inmemory/types.d.ts +7 -2
  66. package/node_modules/@apollo/client/cache/inmemory/types.js.map +1 -1
  67. package/node_modules/@apollo/client/cache/inmemory/writeToStore.d.ts +5 -2
  68. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +30 -15
  69. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
  70. package/node_modules/@apollo/client/core/ApolloClient.js +14 -14
  71. package/node_modules/@apollo/client/core/ObservableQuery.js +8 -8
  72. package/node_modules/@apollo/client/core/QueryInfo.js +14 -33
  73. package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
  74. package/node_modules/@apollo/client/core/QueryManager.js +12 -12
  75. package/node_modules/@apollo/client/core/RefetchEventManager.js +3 -3
  76. package/node_modules/@apollo/client/incremental/handlers/defer20220824.d.ts +5 -1
  77. package/node_modules/@apollo/client/incremental/handlers/defer20220824.js +15 -2
  78. package/node_modules/@apollo/client/incremental/handlers/defer20220824.js.map +1 -1
  79. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.d.ts +23 -12
  80. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js +58 -14
  81. package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js.map +1 -1
  82. package/node_modules/@apollo/client/incremental/handlers/notImplemented.js +1 -1
  83. package/node_modules/@apollo/client/incremental/types.d.ts +19 -1
  84. package/node_modules/@apollo/client/incremental/types.js.map +1 -1
  85. package/node_modules/@apollo/client/invariantErrorCodes.js +64 -58
  86. package/node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js +1 -1
  87. package/node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js.map +1 -1
  88. package/node_modules/@apollo/client/package.json +1 -1
  89. package/node_modules/@apollo/client/utilities/internal/index.d.ts +0 -1
  90. package/node_modules/@apollo/client/utilities/internal/index.js.map +1 -1
  91. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.d.ts +1 -1
  92. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js +23 -25
  93. package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js.map +1 -1
  94. package/node_modules/@apollo/client/utilities/internal/isStreamField.d.ts +1 -1
  95. package/node_modules/@apollo/client/utilities/internal/isStreamField.js +23 -19
  96. package/node_modules/@apollo/client/utilities/internal/isStreamField.js.map +1 -1
  97. package/node_modules/@apollo/client/version.js +1 -1
  98. package/node_modules/@types/node/README.md +1 -1
  99. package/node_modules/@types/node/crypto.d.ts +2 -2
  100. package/node_modules/@types/node/dgram.d.ts +1 -1
  101. package/node_modules/@types/node/package.json +2 -2
  102. package/node_modules/@types/node/util.d.ts +6 -3
  103. package/node_modules/@types/node/zlib.d.ts +6 -0
  104. package/node_modules/axios/CHANGELOG.md +62 -0
  105. package/node_modules/axios/README.md +297 -5
  106. package/node_modules/axios/dist/axios.js +728 -170
  107. package/node_modules/axios/dist/axios.min.js +3 -3
  108. package/node_modules/axios/dist/axios.min.js.map +1 -1
  109. package/node_modules/axios/dist/browser/axios.cjs +871 -188
  110. package/node_modules/axios/dist/esm/axios.js +871 -188
  111. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  112. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  113. package/node_modules/axios/dist/node/axios.cjs +1037 -225
  114. package/node_modules/axios/index.d.cts +102 -74
  115. package/node_modules/axios/index.d.ts +100 -68
  116. package/node_modules/axios/lib/adapters/fetch.js +64 -11
  117. package/node_modules/axios/lib/adapters/http.js +140 -67
  118. package/node_modules/axios/lib/adapters/xhr.js +52 -3
  119. package/node_modules/axios/lib/core/Axios.js +43 -20
  120. package/node_modules/axios/lib/core/AxiosError.js +33 -2
  121. package/node_modules/axios/lib/core/AxiosHeaders.js +124 -1
  122. package/node_modules/axios/lib/core/InterceptorManager.js +107 -8
  123. package/node_modules/axios/lib/core/buildFullPath.js +41 -15
  124. package/node_modules/axios/lib/core/dispatchRequest.js +8 -2
  125. package/node_modules/axios/lib/core/mergeConfig.js +19 -4
  126. package/node_modules/axios/lib/core/methodList.js +17 -0
  127. package/node_modules/axios/lib/core/setFormDataHeaders.js +27 -0
  128. package/node_modules/axios/lib/defaults/index.js +2 -1
  129. package/node_modules/axios/lib/env/data.js +1 -1
  130. package/node_modules/axios/lib/helpers/Http2Sessions.js +2 -0
  131. package/node_modules/axios/lib/helpers/HttpStatusCode.js +12 -1
  132. package/node_modules/axios/lib/helpers/combineURLs.js +11 -3
  133. package/node_modules/axios/lib/helpers/composeSignals.js +12 -1
  134. package/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +115 -54
  135. package/node_modules/axios/lib/helpers/formDataToJSON.js +11 -5
  136. package/node_modules/axios/lib/helpers/fromDataURI.js +5 -4
  137. package/node_modules/axios/lib/helpers/normalizeURLForProtocolCheck.js +24 -0
  138. package/node_modules/axios/lib/helpers/parseHeaders.js +5 -3
  139. package/node_modules/axios/lib/helpers/progressEventReducer.js +4 -4
  140. package/node_modules/axios/lib/helpers/resolveConfig.js +5 -17
  141. package/node_modules/axios/lib/helpers/shouldBypassProxy.js +300 -5
  142. package/node_modules/axios/lib/helpers/throttle.js +3 -2
  143. package/node_modules/axios/lib/helpers/toFormData.js +17 -23
  144. package/node_modules/axios/lib/platform/node/classes/Buffer.js +11 -0
  145. package/node_modules/axios/lib/utils.js +151 -18
  146. package/node_modules/axios/package.json +21 -19
  147. package/node_modules/chalk/package.json +1 -1
  148. package/node_modules/chalk/source/index.js +2 -1
  149. package/node_modules/cpu-features/build/config.gypi +2 -2
  150. package/node_modules/ejs/README.md +64 -28
  151. package/node_modules/ejs/bin/cli.js +220 -158
  152. package/node_modules/ejs/ejs.js +64 -94
  153. package/node_modules/ejs/ejs.min.js +1 -1
  154. package/node_modules/ejs/jakefile.js +44 -0
  155. package/node_modules/ejs/lib/cjs/ejs.js +64 -63
  156. package/node_modules/ejs/lib/cjs/parseargs.js +129 -77
  157. package/node_modules/ejs/lib/cjs/utils.js +0 -31
  158. package/node_modules/ejs/lib/esm/ejs.js +66 -65
  159. package/node_modules/ejs/lib/esm/parseargs.js +136 -82
  160. package/node_modules/ejs/lib/esm/utils.js +0 -32
  161. package/node_modules/ejs/package.json +3 -2
  162. package/node_modules/ejs/usage.txt +9 -9
  163. package/node_modules/follow-redirects/index.js +10 -1
  164. package/node_modules/follow-redirects/package.json +1 -1
  165. package/node_modules/graphql-ws/dist/client.cjs +28 -13
  166. package/node_modules/graphql-ws/dist/client.js +28 -13
  167. package/node_modules/graphql-ws/dist/index.cjs +1 -1
  168. package/node_modules/graphql-ws/dist/index.d.cts +1 -1
  169. package/node_modules/graphql-ws/dist/index.d.ts +1 -1
  170. package/node_modules/graphql-ws/dist/index.js +1 -1
  171. package/node_modules/graphql-ws/dist/{server-B8ZBs9OC.d.ts → server-BzBeHlSW.d.ts} +26 -1
  172. package/node_modules/graphql-ws/dist/{server-DN5-9C2B.cjs → server-Ce-Z86Ys.cjs} +10 -4
  173. package/node_modules/graphql-ws/dist/{server-ChpuX357.d.cts → server-u6zrlwzL.d.cts} +26 -1
  174. package/node_modules/graphql-ws/dist/{server-DHPI7HHW.js → server-zBhvXJ_Z.js} +10 -4
  175. package/node_modules/graphql-ws/dist/use/@fastify/websocket.cjs +2 -2
  176. package/node_modules/graphql-ws/dist/use/@fastify/websocket.d.cts +8 -2
  177. package/node_modules/graphql-ws/dist/use/@fastify/websocket.d.ts +8 -2
  178. package/node_modules/graphql-ws/dist/use/@fastify/websocket.js +2 -2
  179. package/node_modules/graphql-ws/dist/use/bun.cjs +1 -1
  180. package/node_modules/graphql-ws/dist/use/bun.d.cts +2 -2
  181. package/node_modules/graphql-ws/dist/use/bun.d.ts +2 -2
  182. package/node_modules/graphql-ws/dist/use/bun.js +2 -2
  183. package/node_modules/graphql-ws/dist/use/crossws.cjs +16 -4
  184. package/node_modules/graphql-ws/dist/use/crossws.d.cts +6 -1
  185. package/node_modules/graphql-ws/dist/use/crossws.d.ts +6 -1
  186. package/node_modules/graphql-ws/dist/use/crossws.js +16 -4
  187. package/node_modules/graphql-ws/dist/use/deno.d.ts +1 -1
  188. package/node_modules/graphql-ws/dist/use/deno.js +1 -1
  189. package/node_modules/graphql-ws/dist/use/uWebSockets.cjs +2 -2
  190. package/node_modules/graphql-ws/dist/use/uWebSockets.d.cts +8 -2
  191. package/node_modules/graphql-ws/dist/use/uWebSockets.d.ts +8 -2
  192. package/node_modules/graphql-ws/dist/use/uWebSockets.js +2 -2
  193. package/node_modules/graphql-ws/dist/use/ws.cjs +2 -2
  194. package/node_modules/graphql-ws/dist/use/ws.d.cts +8 -2
  195. package/node_modules/graphql-ws/dist/use/ws.d.ts +8 -2
  196. package/node_modules/graphql-ws/dist/use/ws.js +2 -2
  197. package/node_modules/graphql-ws/package.json +3 -3
  198. package/node_modules/graphql-ws/umd/graphql-ws.js +28 -13
  199. package/node_modules/graphql-ws/umd/graphql-ws.min.js +1 -1
  200. package/node_modules/graphql-ws/umd/graphql-ws.min.js.gz +0 -0
  201. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs +522 -495
  202. package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs.map +1 -1
  203. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js +24 -24
  204. package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js.map +1 -1
  205. package/node_modules/js-yaml/dist/js-yaml.cjs.js +135 -78
  206. package/node_modules/js-yaml/dist/js-yaml.cjs.js.map +1 -1
  207. package/node_modules/js-yaml/dist/js-yaml.mjs +129 -72
  208. package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  209. package/node_modules/js-yaml/node_modules/argparse/LICENSE +47 -0
  210. package/node_modules/js-yaml/node_modules/argparse/README.md +89 -0
  211. package/node_modules/js-yaml/node_modules/argparse/lib/_colorize.js +72 -0
  212. package/node_modules/js-yaml/node_modules/argparse/lib/argparse.d.ts +292 -0
  213. package/node_modules/{argparse → js-yaml/node_modules/argparse/lib}/argparse.js +1142 -1029
  214. package/node_modules/js-yaml/node_modules/argparse/lib/difflib.js +190 -0
  215. package/node_modules/{argparse → js-yaml/node_modules/argparse}/lib/sub.js +4 -4
  216. package/node_modules/{argparse → js-yaml/node_modules/argparse}/lib/textwrap.js +28 -28
  217. package/node_modules/js-yaml/node_modules/argparse/package.json +38 -0
  218. package/node_modules/js-yaml/package.json +12 -12
  219. package/node_modules/lando/.github/dependabot.yml +4 -0
  220. package/node_modules/lando/.github/workflows/build-util-images.yml +1 -1
  221. package/node_modules/lando/.github/workflows/pr-core-tests.yml +4 -2
  222. package/node_modules/lando/.github/workflows/pr-db-tools-tests.yml +4 -2
  223. package/node_modules/lando/.github/workflows/pr-django-tests.yml +4 -2
  224. package/node_modules/lando/.github/workflows/pr-linter.yml +2 -2
  225. package/node_modules/lando/.github/workflows/pr-unit-tests.yml +2 -2
  226. package/node_modules/lando/.node-version +1 -1
  227. package/node_modules/lando/bin/lando.js +3 -83
  228. package/node_modules/lando/config.yml +0 -1
  229. package/node_modules/lando/eslint.config.mjs +4 -0
  230. package/node_modules/lando/examples/django/.lando.yml +1 -1
  231. package/node_modules/lando/examples/django/README.md +1 -1
  232. package/node_modules/lando/examples/django/requirements.txt +1 -1
  233. package/node_modules/lando/examples/sql-export/README.md +5 -0
  234. package/node_modules/lando/lib/app.js +78 -84
  235. package/node_modules/lando/lib/art.js +86 -30
  236. package/node_modules/lando/lib/bootstrap.js +148 -45
  237. package/node_modules/lando/lib/cache.js +14 -15
  238. package/node_modules/lando/lib/cli.js +67 -63
  239. package/node_modules/lando/lib/compose.js +76 -45
  240. package/node_modules/lando/lib/config.js +51 -33
  241. package/node_modules/lando/lib/daemon.js +27 -10
  242. package/node_modules/lando/lib/docker.js +46 -19
  243. package/node_modules/lando/lib/engine.js +131 -144
  244. package/node_modules/lando/lib/env.js +25 -46
  245. package/node_modules/lando/lib/error.js +15 -6
  246. package/node_modules/lando/lib/esm/package.json +3 -0
  247. package/node_modules/lando/lib/esm/string-argv.js +2 -0
  248. package/node_modules/lando/lib/esm/yargs.js +2 -0
  249. package/node_modules/lando/lib/events.js +15 -15
  250. package/node_modules/lando/lib/factory.js +43 -14
  251. package/node_modules/lando/lib/formatters.js +19 -31
  252. package/node_modules/lando/lib/lando.js +59 -48
  253. package/node_modules/lando/lib/logger.js +12 -24
  254. package/node_modules/lando/lib/plugins.js +27 -15
  255. package/node_modules/lando/lib/promise.js +17 -17
  256. package/node_modules/lando/lib/router.js +75 -21
  257. package/node_modules/lando/lib/scan.js +29 -12
  258. package/node_modules/lando/lib/shell.js +44 -20
  259. package/node_modules/lando/lib/user.js +14 -20
  260. package/node_modules/lando/lib/utils.js +87 -44
  261. package/node_modules/lando/lib/yaml.js +11 -9
  262. package/node_modules/lando/node_modules/ansi-regex/index.d.ts +33 -0
  263. package/node_modules/lando/node_modules/ansi-regex/index.js +15 -0
  264. package/node_modules/lando/node_modules/ansi-regex/package.json +61 -0
  265. package/node_modules/lando/node_modules/ansi-regex/readme.md +66 -0
  266. package/node_modules/lando/node_modules/cliui/README.md +26 -6
  267. package/node_modules/lando/node_modules/cliui/build/lib/index.js +2 -2
  268. package/node_modules/lando/node_modules/cliui/build/tsconfig.tsbuildinfo +1 -0
  269. package/node_modules/lando/node_modules/cliui/index.mjs +7 -5
  270. package/node_modules/lando/node_modules/cliui/node_modules/string-width/index.d.ts +39 -0
  271. package/node_modules/lando/node_modules/cliui/node_modules/string-width/index.js +82 -0
  272. package/node_modules/lando/node_modules/cliui/node_modules/string-width/license +9 -0
  273. package/node_modules/lando/node_modules/cliui/node_modules/string-width/package.json +64 -0
  274. package/node_modules/lando/node_modules/cliui/node_modules/string-width/readme.md +66 -0
  275. package/node_modules/lando/node_modules/cliui/package.json +21 -32
  276. package/node_modules/lando/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  277. package/node_modules/lando/node_modules/emoji-regex/README.md +107 -0
  278. package/node_modules/lando/node_modules/emoji-regex/index.d.ts +3 -0
  279. package/node_modules/lando/node_modules/emoji-regex/index.js +4 -0
  280. package/node_modules/lando/node_modules/emoji-regex/index.mjs +4 -0
  281. package/node_modules/lando/node_modules/emoji-regex/package.json +45 -0
  282. package/node_modules/lando/node_modules/string-width/index.d.ts +39 -0
  283. package/node_modules/lando/node_modules/string-width/index.js +203 -0
  284. package/node_modules/lando/node_modules/string-width/license +9 -0
  285. package/node_modules/lando/node_modules/string-width/package.json +65 -0
  286. package/node_modules/lando/node_modules/string-width/readme.md +66 -0
  287. package/node_modules/lando/node_modules/strip-ansi/index.d.ts +15 -0
  288. package/node_modules/lando/node_modules/strip-ansi/index.js +19 -0
  289. package/node_modules/lando/node_modules/strip-ansi/license +9 -0
  290. package/node_modules/lando/node_modules/strip-ansi/package.json +59 -0
  291. package/node_modules/lando/node_modules/strip-ansi/readme.md +37 -0
  292. package/node_modules/lando/node_modules/yargs/README.md +16 -36
  293. package/node_modules/lando/node_modules/yargs/browser.d.ts +5 -0
  294. package/node_modules/lando/node_modules/yargs/browser.mjs +2 -2
  295. package/node_modules/lando/node_modules/yargs/build/lib/command.js +308 -211
  296. package/node_modules/lando/node_modules/yargs/build/lib/completion-templates.js +28 -9
  297. package/node_modules/lando/node_modules/yargs/build/lib/completion.js +233 -91
  298. package/node_modules/lando/node_modules/yargs/build/lib/middleware.js +51 -16
  299. package/node_modules/lando/node_modules/yargs/build/lib/usage.js +88 -52
  300. package/node_modules/lando/node_modules/yargs/build/lib/utils/apply-extends.js +4 -2
  301. package/node_modules/lando/node_modules/yargs/build/lib/utils/levenshtein.js +9 -1
  302. package/node_modules/lando/node_modules/yargs/build/lib/utils/maybe-async-result.js +17 -0
  303. package/node_modules/lando/node_modules/yargs/build/lib/validation.js +51 -54
  304. package/node_modules/lando/node_modules/yargs/build/lib/yargs-factory.js +1261 -887
  305. package/node_modules/lando/node_modules/yargs/build/lib/yerror.js +3 -1
  306. package/node_modules/lando/node_modules/yargs/index.mjs +4 -2
  307. package/node_modules/lando/node_modules/yargs/lib/platform-shims/browser.mjs +9 -2
  308. package/node_modules/lando/node_modules/yargs/lib/platform-shims/esm.mjs +22 -22
  309. package/node_modules/lando/node_modules/yargs/locales/cs.json +51 -0
  310. package/node_modules/lando/node_modules/yargs/locales/de.json +1 -1
  311. package/node_modules/lando/node_modules/yargs/locales/en.json +4 -0
  312. package/node_modules/lando/node_modules/yargs/locales/fi.json +1 -1
  313. package/node_modules/lando/node_modules/yargs/locales/he.json +55 -0
  314. package/node_modules/lando/node_modules/yargs/locales/ka.json +55 -0
  315. package/node_modules/lando/node_modules/yargs/locales/ko.json +25 -25
  316. package/node_modules/lando/node_modules/yargs/locales/ru.json +6 -1
  317. package/node_modules/lando/node_modules/yargs/locales/uk_UA.json +51 -0
  318. package/node_modules/lando/node_modules/yargs/locales/uz.json +52 -0
  319. package/node_modules/lando/node_modules/yargs/locales/zh_TW.json +50 -46
  320. package/node_modules/lando/node_modules/yargs/package.json +41 -60
  321. package/node_modules/lando/node_modules/yargs-parser/build/lib/index.js +13 -8
  322. package/node_modules/lando/node_modules/yargs-parser/build/lib/yargs-parser.js +21 -12
  323. package/node_modules/lando/node_modules/yargs-parser/package.json +31 -40
  324. package/node_modules/lando/package.json +59 -22
  325. package/node_modules/lando/plugins/lando-compose/index.js +4 -0
  326. package/node_modules/lando/plugins/lando-compose/lib/utils.js +16 -7
  327. package/node_modules/lando/plugins/lando-core/index.js +1 -2
  328. package/node_modules/lando/plugins/lando-core/lib/utils.js +35 -15
  329. package/node_modules/lando/plugins/lando-core/lib/warnings.js +27 -0
  330. package/node_modules/lando/plugins/lando-core/tasks/destroy.js +1 -1
  331. package/node_modules/lando/plugins/lando-core/tasks/rebuild.js +1 -1
  332. package/node_modules/lando/plugins/lando-events/index.js +4 -0
  333. package/node_modules/lando/plugins/lando-events/lib/utils.js +27 -6
  334. package/node_modules/lando/plugins/lando-networking/app.js +2 -2
  335. package/node_modules/lando/plugins/lando-networking/index.js +9 -2
  336. package/node_modules/lando/plugins/lando-networking/test/app.spec.js +87 -0
  337. package/node_modules/lando/plugins/lando-proxy/index.js +6 -1
  338. package/node_modules/lando/plugins/lando-proxy/lib/utils.js +63 -28
  339. package/node_modules/lando/plugins/lando-proxy/lib/warnings.js +10 -0
  340. package/node_modules/lando/plugins/lando-recipes/index.js +4 -0
  341. package/node_modules/lando/plugins/lando-recipes/lib/build.js +22 -4
  342. package/node_modules/lando/plugins/lando-recipes/lib/options.js +42 -66
  343. package/node_modules/lando/plugins/lando-recipes/lib/utils.js +30 -13
  344. package/node_modules/lando/plugins/lando-recipes/lib/warnings.js +5 -0
  345. package/node_modules/lando/plugins/lando-recipes/sources/remote.js +0 -26
  346. package/node_modules/lando/plugins/lando-recipes/tasks/init.js +1 -1
  347. package/node_modules/lando/plugins/lando-services/index.js +4 -0
  348. package/node_modules/lando/plugins/lando-services/lib/utils.js +38 -15
  349. package/node_modules/lando/plugins/lando-sharing/index.js +4 -0
  350. package/node_modules/lando/plugins/lando-sharing/lib/utils.js +28 -5
  351. package/node_modules/lando/plugins/lando-tooling/index.js +5 -0
  352. package/node_modules/lando/plugins/lando-tooling/lib/build.js +5 -2
  353. package/node_modules/lando/plugins/lando-tooling/lib/utils.js +83 -47
  354. package/node_modules/lando/test/cli.spec.js +59 -21
  355. package/node_modules/lando/test/docker.spec.js +24 -28
  356. package/node_modules/lando/test/env.spec.js +8 -0
  357. package/node_modules/lando/test/error.spec.js +1 -1
  358. package/node_modules/lando/test/events.spec.js +6 -7
  359. package/node_modules/lando/test/lando.spec.js +1 -1
  360. package/node_modules/lando/test/plugins.spec.js +2 -3
  361. package/node_modules/lando/test/promise.spec.js +1 -1
  362. package/node_modules/lando/test/scan.spec.js +1 -1
  363. package/node_modules/lando/test/shell.spec.js +19 -2
  364. package/node_modules/lando/test/utils.spec.js +52 -0
  365. package/node_modules/open/index.js +3 -5
  366. package/node_modules/open/package.json +1 -1
  367. package/node_modules/string-argv/CHANGELOG.md +38 -0
  368. package/node_modules/string-argv/README.md +96 -50
  369. package/node_modules/string-argv/index.d.ts +2 -0
  370. package/node_modules/string-argv/index.js +55 -35
  371. package/node_modules/string-argv/package.json +50 -40
  372. package/node_modules/undici/README.md +25 -3
  373. package/node_modules/undici/docs/docs/api/CacheStore.md +24 -9
  374. package/node_modules/undici/docs/docs/api/Client.md +11 -6
  375. package/node_modules/undici/docs/docs/api/Dispatcher.md +3 -0
  376. package/node_modules/undici/docs/docs/api/Errors.md +76 -1
  377. package/node_modules/undici/docs/docs/api/H2CClient.md +3 -2
  378. package/node_modules/undici/docs/docs/api/Interceptors.md +13 -6
  379. package/node_modules/undici/docs/docs/api/RedirectHandler.md +13 -10
  380. package/node_modules/undici/docs/docs/index.md +12 -12
  381. package/node_modules/undici/docs/docs/type-map.json +66 -66
  382. package/node_modules/undici/lib/cache/memory-cache-store.js +48 -13
  383. package/node_modules/undici/lib/cache/sqlite-cache-store.js +83 -5
  384. package/node_modules/undici/lib/core/connect.js +10 -4
  385. package/node_modules/undici/lib/core/constants.js +12 -1
  386. package/node_modules/undici/lib/core/errors.js +38 -1
  387. package/node_modules/undici/lib/core/request.js +16 -1
  388. package/node_modules/undici/lib/core/symbols.js +2 -0
  389. package/node_modules/undici/lib/core/util.js +26 -1
  390. package/node_modules/undici/lib/dispatcher/agent.js +6 -2
  391. package/node_modules/undici/lib/dispatcher/client-h1.js +116 -80
  392. package/node_modules/undici/lib/dispatcher/client-h2.js +46 -14
  393. package/node_modules/undici/lib/dispatcher/client.js +4 -1
  394. package/node_modules/undici/lib/dispatcher/dispatcher-base.js +3 -2
  395. package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +20 -3
  396. package/node_modules/undici/lib/dispatcher/parser-h1.js +1064 -0
  397. package/node_modules/undici/lib/dispatcher/pool-base.js +65 -28
  398. package/node_modules/undici/lib/dispatcher/pool.js +11 -8
  399. package/node_modules/undici/lib/dispatcher/proxy-agent.js +18 -8
  400. package/node_modules/undici/lib/dispatcher/retry-agent.js +10 -0
  401. package/node_modules/undici/lib/dispatcher/round-robin-pool.js +15 -5
  402. package/node_modules/undici/lib/handler/cache-handler.js +153 -15
  403. package/node_modules/undici/lib/handler/deduplication-handler.js +112 -51
  404. package/node_modules/undici/lib/handler/redirect-handler.js +28 -8
  405. package/node_modules/undici/lib/handler/retry-handler.js +44 -11
  406. package/node_modules/undici/lib/interceptor/cache.js +11 -3
  407. package/node_modules/undici/lib/interceptor/decompress.js +22 -9
  408. package/node_modules/undici/lib/interceptor/dns.js +11 -0
  409. package/node_modules/undici/lib/interceptor/response-error.js +72 -28
  410. package/node_modules/undici/lib/milo/LICENSE.md +7 -0
  411. package/node_modules/undici/lib/milo/no-simd.js +1002 -0
  412. package/node_modules/undici/lib/milo/simd.js +1002 -0
  413. package/node_modules/undici/lib/mock/mock-agent.js +11 -0
  414. package/node_modules/undici/lib/mock/snapshot-recorder.js +3 -2
  415. package/node_modules/undici/lib/mock/snapshot-utils.js +3 -2
  416. package/node_modules/undici/lib/util/cache.js +11 -5
  417. package/node_modules/undici/lib/web/cookies/util.js +19 -2
  418. package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +69 -15
  419. package/node_modules/undici/lib/web/eventsource/eventsource.js +25 -2
  420. package/node_modules/undici/lib/web/fetch/body.js +47 -38
  421. package/node_modules/undici/lib/web/fetch/formdata-parser.js +12 -4
  422. package/node_modules/undici/lib/web/fetch/headers.js +2 -2
  423. package/node_modules/undici/lib/web/fetch/index.js +8 -4
  424. package/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +5 -5
  425. package/node_modules/undici/lib/web/websocket/receiver.js +25 -4
  426. package/node_modules/undici/package.json +7 -5
  427. package/node_modules/undici/types/cache-interceptor.d.ts +10 -0
  428. package/node_modules/undici/types/client.d.ts +10 -4
  429. package/node_modules/undici/types/errors.d.ts +16 -1
  430. package/node_modules/undici/types/h2c-client.d.ts +1 -1
  431. package/node_modules/undici/types/interceptors.d.ts +6 -1
  432. package/node_modules/{lando/node_modules/js-yaml → unicode-segmenter}/LICENSE +6 -6
  433. package/node_modules/unicode-segmenter/README.md +324 -0
  434. package/node_modules/unicode-segmenter/_emoji_data.cjs +24 -0
  435. package/node_modules/unicode-segmenter/_emoji_data.d.cts +1 -0
  436. package/node_modules/unicode-segmenter/_emoji_data.d.ts +12 -0
  437. package/node_modules/unicode-segmenter/_emoji_data.js +26 -0
  438. package/node_modules/unicode-segmenter/_general_data.cjs +30 -0
  439. package/node_modules/unicode-segmenter/_general_data.d.cts +1 -0
  440. package/node_modules/unicode-segmenter/_general_data.d.ts +16 -0
  441. package/node_modules/unicode-segmenter/_general_data.js +34 -0
  442. package/node_modules/unicode-segmenter/_grapheme_data.cjs +125 -0
  443. package/node_modules/unicode-segmenter/_grapheme_data.d.cts +1 -0
  444. package/node_modules/unicode-segmenter/_grapheme_data.d.ts +112 -0
  445. package/node_modules/unicode-segmenter/_grapheme_data.js +123 -0
  446. package/node_modules/unicode-segmenter/core.cjs +135 -0
  447. package/node_modules/unicode-segmenter/core.d.cts +1 -0
  448. package/node_modules/unicode-segmenter/core.d.ts +118 -0
  449. package/node_modules/unicode-segmenter/core.js +129 -0
  450. package/node_modules/unicode-segmenter/emoji.cjs +43 -0
  451. package/node_modules/unicode-segmenter/emoji.d.cts +1 -0
  452. package/node_modules/unicode-segmenter/emoji.d.ts +23 -0
  453. package/node_modules/unicode-segmenter/emoji.js +42 -0
  454. package/node_modules/unicode-segmenter/general.cjs +51 -0
  455. package/node_modules/unicode-segmenter/general.d.cts +1 -0
  456. package/node_modules/unicode-segmenter/general.d.ts +26 -0
  457. package/node_modules/unicode-segmenter/general.js +50 -0
  458. package/node_modules/unicode-segmenter/grapheme.cjs +405 -0
  459. package/node_modules/unicode-segmenter/grapheme.d.cts +1 -0
  460. package/node_modules/unicode-segmenter/grapheme.d.ts +64 -0
  461. package/node_modules/unicode-segmenter/grapheme.js +438 -0
  462. package/node_modules/unicode-segmenter/index.cjs +26 -0
  463. package/node_modules/unicode-segmenter/index.d.cts +1 -0
  464. package/node_modules/unicode-segmenter/index.d.ts +4 -0
  465. package/node_modules/unicode-segmenter/index.js +6 -0
  466. package/node_modules/unicode-segmenter/intl-adapter.cjs +124 -0
  467. package/node_modules/unicode-segmenter/intl-adapter.d.cts +1 -0
  468. package/node_modules/unicode-segmenter/intl-adapter.d.ts +62 -0
  469. package/node_modules/unicode-segmenter/intl-adapter.js +113 -0
  470. package/node_modules/unicode-segmenter/intl-polyfill.cjs +17 -0
  471. package/node_modules/unicode-segmenter/intl-polyfill.d.cts +1 -0
  472. package/node_modules/unicode-segmenter/intl-polyfill.d.ts +1 -0
  473. package/node_modules/unicode-segmenter/intl-polyfill.js +16 -0
  474. package/node_modules/unicode-segmenter/package.json +165 -0
  475. package/node_modules/unicode-segmenter/utils.cjs +99 -0
  476. package/node_modules/unicode-segmenter/utils.d.cts +1 -0
  477. package/node_modules/unicode-segmenter/utils.d.ts +64 -0
  478. package/node_modules/unicode-segmenter/utils.js +89 -0
  479. package/package.json +6 -6
  480. package/.buildkite/build-linux.sh +0 -68
  481. package/.buildkite/build-macos-installer.sh +0 -34
  482. package/.buildkite/build-macos.sh +0 -67
  483. package/.buildkite/build-windows-installer.ps1 +0 -65
  484. package/.buildkite/build-windows.ps1 +0 -59
  485. package/.buildkite/fetch-search-replace.sh +0 -65
  486. package/.buildkite/pack-release.sh +0 -26
  487. package/.buildkite/pipeline.yml +0 -81
  488. package/.buildkite/shared-pipeline-vars +0 -16
  489. package/.buildkite/sign-windows.ps1 +0 -21
  490. package/.buildkite/test-windows-installer-download.ps1 +0 -54
  491. package/.buildkite/test_pipeline.py +0 -69
  492. package/.bundle/config +0 -4
  493. package/.editorconfig +0 -11
  494. package/.prettierignore +0 -13
  495. package/.ruby-version +0 -1
  496. package/.sonarcloud.properties +0 -2
  497. package/.xcode-version +0 -1
  498. package/AGENTS.md +0 -101
  499. package/CLAUDE.md +0 -4
  500. package/Gemfile +0 -8
  501. package/Gemfile.lock +0 -377
  502. package/Makefile +0 -293
  503. package/cmd/installer-payload/main.go +0 -19
  504. package/cmd/installer-version/main.go +0 -22
  505. package/cmd/stamp-version/main.go +0 -25
  506. package/cmd/vip-next/auth_bootstrap.go +0 -139
  507. package/cmd/vip-next/auth_bootstrap_test.go +0 -379
  508. package/cmd/vip-next/auth_bypass_wiring_test.go +0 -162
  509. package/cmd/vip-next/cli_error_hook_test.go +0 -91
  510. package/cmd/vip-next/commands/app.go +0 -23
  511. package/cmd/vip-next/commands/app_debug_test.go +0 -89
  512. package/cmd/vip-next/commands/app_deploy.go +0 -217
  513. package/cmd/vip-next/commands/app_deploy_test.go +0 -297
  514. package/cmd/vip-next/commands/app_deploy_validate.go +0 -58
  515. package/cmd/vip-next/commands/app_get.go +0 -293
  516. package/cmd/vip-next/commands/app_get_test.go +0 -226
  517. package/cmd/vip-next/commands/app_list.go +0 -93
  518. package/cmd/vip-next/commands/app_list_test.go +0 -95
  519. package/cmd/vip-next/commands/backup.go +0 -16
  520. package/cmd/vip-next/commands/backup_db.go +0 -137
  521. package/cmd/vip-next/commands/backup_db_test.go +0 -187
  522. package/cmd/vip-next/commands/cache.go +0 -16
  523. package/cmd/vip-next/commands/cache_purge_url.go +0 -90
  524. package/cmd/vip-next/commands/cache_purge_url_test.go +0 -154
  525. package/cmd/vip-next/commands/config.go +0 -17
  526. package/cmd/vip-next/commands/config_debug_test.go +0 -137
  527. package/cmd/vip-next/commands/config_envvar.go +0 -16
  528. package/cmd/vip-next/commands/config_envvar_delete.go +0 -135
  529. package/cmd/vip-next/commands/config_envvar_delete_test.go +0 -140
  530. package/cmd/vip-next/commands/config_envvar_get.go +0 -72
  531. package/cmd/vip-next/commands/config_envvar_get_all.go +0 -58
  532. package/cmd/vip-next/commands/config_envvar_get_all_test.go +0 -83
  533. package/cmd/vip-next/commands/config_envvar_get_test.go +0 -79
  534. package/cmd/vip-next/commands/config_envvar_list.go +0 -70
  535. package/cmd/vip-next/commands/config_envvar_list_test.go +0 -134
  536. package/cmd/vip-next/commands/config_envvar_set.go +0 -162
  537. package/cmd/vip-next/commands/config_envvar_set_test.go +0 -251
  538. package/cmd/vip-next/commands/config_software.go +0 -229
  539. package/cmd/vip-next/commands/config_software_test.go +0 -161
  540. package/cmd/vip-next/commands/config_software_update.go +0 -270
  541. package/cmd/vip-next/commands/config_software_update_test.go +0 -334
  542. package/cmd/vip-next/commands/db.go +0 -16
  543. package/cmd/vip-next/commands/db_phpmyadmin.go +0 -122
  544. package/cmd/vip-next/commands/db_phpmyadmin_test.go +0 -277
  545. package/cmd/vip-next/commands/defensive_mode.go +0 -106
  546. package/cmd/vip-next/commands/defensive_mode_configure.go +0 -150
  547. package/cmd/vip-next/commands/defensive_mode_disable.go +0 -62
  548. package/cmd/vip-next/commands/defensive_mode_enable.go +0 -62
  549. package/cmd/vip-next/commands/defensive_mode_test.go +0 -389
  550. package/cmd/vip-next/commands/devenv.go +0 -49
  551. package/cmd/vip-next/commands/devenv_create_appinfo.go +0 -158
  552. package/cmd/vip-next/commands/devenv_create_appinfo_test.go +0 -29
  553. package/cmd/vip-next/commands/devenv_create_test.go +0 -269
  554. package/cmd/vip-next/commands/devenv_data.go +0 -86
  555. package/cmd/vip-next/commands/devenv_data_confirm_test.go +0 -49
  556. package/cmd/vip-next/commands/devenv_debug_test.go +0 -34
  557. package/cmd/vip-next/commands/devenv_e2e_gate_test.go +0 -17
  558. package/cmd/vip-next/commands/devenv_e2e_test.go +0 -34
  559. package/cmd/vip-next/commands/devenv_envvar.go +0 -186
  560. package/cmd/vip-next/commands/devenv_envvar_test.go +0 -183
  561. package/cmd/vip-next/commands/devenv_exec.go +0 -75
  562. package/cmd/vip-next/commands/devenv_exec_test.go +0 -39
  563. package/cmd/vip-next/commands/devenv_flag_grammar_test.go +0 -241
  564. package/cmd/vip-next/commands/devenv_lifecycle.go +0 -785
  565. package/cmd/vip-next/commands/devenv_logs.go +0 -29
  566. package/cmd/vip-next/commands/devenv_resolve.go +0 -118
  567. package/cmd/vip-next/commands/devenv_resolve_test.go +0 -221
  568. package/cmd/vip-next/commands/devenv_sync.go +0 -256
  569. package/cmd/vip-next/commands/devenv_sync_sites.go +0 -116
  570. package/cmd/vip-next/commands/devenv_sync_sites_test.go +0 -151
  571. package/cmd/vip-next/commands/devenv_sync_test.go +0 -63
  572. package/cmd/vip-next/commands/devenv_telemetry.go +0 -265
  573. package/cmd/vip-next/commands/devenv_telemetry_test.go +0 -322
  574. package/cmd/vip-next/commands/devenv_test.go +0 -60
  575. package/cmd/vip-next/commands/devenv_update.go +0 -207
  576. package/cmd/vip-next/commands/devenv_update_test.go +0 -109
  577. package/cmd/vip-next/commands/devenv_versions_proxy_test.go +0 -133
  578. package/cmd/vip-next/commands/edge_workers.go +0 -197
  579. package/cmd/vip-next/commands/edge_workers_flags.go +0 -56
  580. package/cmd/vip-next/commands/edge_workers_local.go +0 -127
  581. package/cmd/vip-next/commands/edge_workers_mutation.go +0 -130
  582. package/cmd/vip-next/commands/edge_workers_read.go +0 -103
  583. package/cmd/vip-next/commands/edge_workers_test.go +0 -272
  584. package/cmd/vip-next/commands/export.go +0 -16
  585. package/cmd/vip-next/commands/export_sql.go +0 -333
  586. package/cmd/vip-next/commands/export_sql_test.go +0 -321
  587. package/cmd/vip-next/commands/format_env.go +0 -17
  588. package/cmd/vip-next/commands/import.go +0 -19
  589. package/cmd/vip-next/commands/import_debug_test.go +0 -110
  590. package/cmd/vip-next/commands/import_media.go +0 -433
  591. package/cmd/vip-next/commands/import_media_abort.go +0 -76
  592. package/cmd/vip-next/commands/import_media_confirm.go +0 -83
  593. package/cmd/vip-next/commands/import_media_confirm_test.go +0 -249
  594. package/cmd/vip-next/commands/import_media_fetch_test.go +0 -98
  595. package/cmd/vip-next/commands/import_media_status.go +0 -58
  596. package/cmd/vip-next/commands/import_media_test.go +0 -370
  597. package/cmd/vip-next/commands/import_sql.go +0 -1161
  598. package/cmd/vip-next/commands/import_sql_status.go +0 -67
  599. package/cmd/vip-next/commands/import_sql_test.go +0 -746
  600. package/cmd/vip-next/commands/import_validate_files.go +0 -157
  601. package/cmd/vip-next/commands/import_validate_files_test.go +0 -157
  602. package/cmd/vip-next/commands/import_validate_sql.go +0 -207
  603. package/cmd/vip-next/commands/import_validate_sql_test.go +0 -293
  604. package/cmd/vip-next/commands/login.go +0 -53
  605. package/cmd/vip-next/commands/login_test.go +0 -25
  606. package/cmd/vip-next/commands/logout.go +0 -43
  607. package/cmd/vip-next/commands/logout_test.go +0 -158
  608. package/cmd/vip-next/commands/logs.go +0 -169
  609. package/cmd/vip-next/commands/logs_test.go +0 -174
  610. package/cmd/vip-next/commands/nodeflag_aliases.go +0 -59
  611. package/cmd/vip-next/commands/progress_renderer.go +0 -118
  612. package/cmd/vip-next/commands/progress_renderer_test.go +0 -28
  613. package/cmd/vip-next/commands/searchreplace.go +0 -75
  614. package/cmd/vip-next/commands/searchreplace_debug_test.go +0 -82
  615. package/cmd/vip-next/commands/searchreplace_test.go +0 -155
  616. package/cmd/vip-next/commands/slowlogs.go +0 -167
  617. package/cmd/vip-next/commands/slowlogs_test.go +0 -159
  618. package/cmd/vip-next/commands/sqlreport.go +0 -183
  619. package/cmd/vip-next/commands/sqlreport_test.go +0 -66
  620. package/cmd/vip-next/commands/sync.go +0 -189
  621. package/cmd/vip-next/commands/sync_confirm.go +0 -121
  622. package/cmd/vip-next/commands/sync_confirm_test.go +0 -202
  623. package/cmd/vip-next/commands/sync_render.go +0 -207
  624. package/cmd/vip-next/commands/sync_render_test.go +0 -101
  625. package/cmd/vip-next/commands/sync_test.go +0 -148
  626. package/cmd/vip-next/commands/update.go +0 -85
  627. package/cmd/vip-next/commands/update_test.go +0 -49
  628. package/cmd/vip-next/commands/whoami.go +0 -161
  629. package/cmd/vip-next/commands/whoami_debug_test.go +0 -79
  630. package/cmd/vip-next/commands/whoami_test.go +0 -85
  631. package/cmd/vip-next/commands/wp.go +0 -376
  632. package/cmd/vip-next/commands/wp_debug_test.go +0 -32
  633. package/cmd/vip-next/commands/wp_test.go +0 -276
  634. package/cmd/vip-next/debug_args.go +0 -63
  635. package/cmd/vip-next/debug_test.go +0 -122
  636. package/cmd/vip-next/edge_workers_test.go +0 -108
  637. package/cmd/vip-next/flags_node_parity_test.go +0 -434
  638. package/cmd/vip-next/main.go +0 -391
  639. package/cmd/vip-next/main_test.go +0 -202
  640. package/cmd/vip-next/pendo_wiring_test.go +0 -148
  641. package/cmd/vip-next/root.go +0 -211
  642. package/cmd/vip-next/update_bootstrap.go +0 -94
  643. package/cmd/vip-next/update_bootstrap_test.go +0 -85
  644. package/cmd/vip-next/update_integration_test.go +0 -137
  645. package/cmd/vip-next-prerelease/main.go +0 -108
  646. package/cmd/vip-next-prerelease/main_test.go +0 -46
  647. package/docs/ARCHITECTURE.md +0 -95
  648. package/docs/BUILD-SIGNING.md +0 -501
  649. package/docs/CHANGELOG.md +0 -1844
  650. package/docs/COMMANDER-MIGRATION.md +0 -45
  651. package/docs/CONTRIBUTING.md +0 -29
  652. package/docs/CUTOVER-BREAKING-CHANGES.md +0 -261
  653. package/docs/DEBUGGING.md +0 -94
  654. package/docs/EDGE-WORKERS.md +0 -256
  655. package/docs/GO-UPDATES.md +0 -97
  656. package/docs/NPM-RELEASE-RECOVERY.md +0 -47
  657. package/docs/RELEASING.md +0 -211
  658. package/docs/SECURITY.md +0 -9
  659. package/docs/SETUP.md +0 -154
  660. package/docs/TESTING.md +0 -67
  661. package/docs/decisions/0001-operation-scoped-elevated-token-reuse.md +0 -87
  662. package/docs/dev-env-windows-wsl-testing.md +0 -191
  663. package/docs/vip-next-vip-command-reference.md +0 -257
  664. package/docs/vip-wp-line-parse-dfa.dot +0 -31
  665. package/eslint.config.js +0 -35
  666. package/fastlane/Fastfile +0 -204
  667. package/fastlane/example.env +0 -8
  668. package/fastlane/test_signing.rb +0 -83
  669. package/go.mod +0 -39
  670. package/go.sum +0 -127
  671. package/internal/appctx/app_resolver.go +0 -202
  672. package/internal/appctx/app_resolver_test.go +0 -187
  673. package/internal/appctx/confirm.go +0 -180
  674. package/internal/appctx/confirm_payload_test.go +0 -201
  675. package/internal/appctx/confirm_test.go +0 -120
  676. package/internal/appctx/context.go +0 -94
  677. package/internal/appctx/context_test.go +0 -56
  678. package/internal/appctx/env_resolver.go +0 -110
  679. package/internal/appctx/env_resolver_test.go +0 -215
  680. package/internal/appctx/format.go +0 -72
  681. package/internal/appctx/format_test.go +0 -75
  682. package/internal/appctx/interactive.go +0 -50
  683. package/internal/appctx/interactive_test.go +0 -134
  684. package/internal/appctx/middleware.go +0 -56
  685. package/internal/appctx/middleware_test.go +0 -88
  686. package/internal/appctx/prompts.go +0 -70
  687. package/internal/appctx/prompts_test.go +0 -97
  688. package/internal/appctx/required_args.go +0 -24
  689. package/internal/appctx/required_args_test.go +0 -38
  690. package/internal/appctx/telemetry.go +0 -22
  691. package/internal/appctx/telemetry_test.go +0 -42
  692. package/internal/appctx/wildcard.go +0 -29
  693. package/internal/appctx/wildcard_test.go +0 -53
  694. package/internal/auth/bypass.go +0 -84
  695. package/internal/auth/bypass_test.go +0 -97
  696. package/internal/auth/login.go +0 -156
  697. package/internal/auth/login_test.go +0 -184
  698. package/internal/auth/logout.go +0 -44
  699. package/internal/auth/logout_test.go +0 -78
  700. package/internal/auth/store.go +0 -130
  701. package/internal/auth/store_test.go +0 -339
  702. package/internal/auth/token.go +0 -117
  703. package/internal/auth/token_test.go +0 -90
  704. package/internal/backup/backup.go +0 -194
  705. package/internal/backup/backup_test.go +0 -228
  706. package/internal/cachepurge/cachepurge.go +0 -38
  707. package/internal/cachepurge/cachepurge_test.go +0 -92
  708. package/internal/customdeploy/archive.go +0 -205
  709. package/internal/customdeploy/archive_test.go +0 -174
  710. package/internal/customdeploy/customdeploy.go +0 -91
  711. package/internal/customdeploy/customdeploy_test.go +0 -82
  712. package/internal/debuglog/debuglog.go +0 -85
  713. package/internal/debuglog/debuglog_test.go +0 -44
  714. package/internal/defensivemode/api.go +0 -89
  715. package/internal/defensivemode/api_test.go +0 -122
  716. package/internal/devenv/adapters.go +0 -168
  717. package/internal/devenv/adapters_test.go +0 -44
  718. package/internal/devenv/adopt.go +0 -20
  719. package/internal/devenv/adopt_setup_test.go +0 -30
  720. package/internal/devenv/compose/labels.go +0 -90
  721. package/internal/devenv/compose/labels_test.go +0 -136
  722. package/internal/devenv/compose/project.go +0 -88
  723. package/internal/devenv/compose/project_test.go +0 -148
  724. package/internal/devenv/compose/render.go +0 -54
  725. package/internal/devenv/compose/render_test.go +0 -90
  726. package/internal/devenv/compose/services.go +0 -337
  727. package/internal/devenv/compose/services_test.go +0 -258
  728. package/internal/devenv/compose/testdata/full.golden.yml +0 -265
  729. package/internal/devenv/compose/types.go +0 -97
  730. package/internal/devenv/compose/types_test.go +0 -61
  731. package/internal/devenv/compose/view.go +0 -205
  732. package/internal/devenv/compose/view_test.go +0 -120
  733. package/internal/devenv/configfile.go +0 -300
  734. package/internal/devenv/configfile_test.go +0 -246
  735. package/internal/devenv/create.go +0 -130
  736. package/internal/devenv/create_test.go +0 -98
  737. package/internal/devenv/debug.go +0 -4
  738. package/internal/devenv/debug_test.go +0 -103
  739. package/internal/devenv/devenv.go +0 -434
  740. package/internal/devenv/devenv_test.go +0 -77
  741. package/internal/devenv/devexec.go +0 -140
  742. package/internal/devenv/devexec_test.go +0 -91
  743. package/internal/devenv/devlog/devlog.go +0 -219
  744. package/internal/devenv/devlog/devlog_test.go +0 -112
  745. package/internal/devenv/devterm/devterm.go +0 -65
  746. package/internal/devenv/devterm/devterm_pty.go +0 -58
  747. package/internal/devenv/devterm/devterm_stub.go +0 -20
  748. package/internal/devenv/devterm/devterm_test.go +0 -78
  749. package/internal/devenv/dockercli/capture.go +0 -84
  750. package/internal/devenv/dockercli/capture_test.go +0 -33
  751. package/internal/devenv/dockercli/compose.go +0 -30
  752. package/internal/devenv/dockercli/compose_test.go +0 -35
  753. package/internal/devenv/dockercli/runner.go +0 -214
  754. package/internal/devenv/dockercli/runner_test.go +0 -157
  755. package/internal/devenv/dockercli/socket.go +0 -56
  756. package/internal/devenv/dockercli/socket_test.go +0 -52
  757. package/internal/devenv/e2e_gate_test.go +0 -17
  758. package/internal/devenv/e2e_test.go +0 -499
  759. package/internal/devenv/e2esafety/gate_wiring_test.go +0 -90
  760. package/internal/devenv/e2esafety/safety.go +0 -52
  761. package/internal/devenv/e2esafety/safety_test.go +0 -71
  762. package/internal/devenv/eachenv_test.go +0 -132
  763. package/internal/devenv/editor.go +0 -82
  764. package/internal/devenv/editor_test.go +0 -60
  765. package/internal/devenv/envfile.go +0 -287
  766. package/internal/devenv/envvar.go +0 -165
  767. package/internal/devenv/envvar_test.go +0 -178
  768. package/internal/devenv/hostops/context.go +0 -38
  769. package/internal/devenv/hostops/context_test.go +0 -24
  770. package/internal/devenv/hostops/e2e_gate_test.go +0 -17
  771. package/internal/devenv/hostops/e2e_test.go +0 -429
  772. package/internal/devenv/hostops/elevate.go +0 -248
  773. package/internal/devenv/hostops/elevate_message_test.go +0 -35
  774. package/internal/devenv/hostops/elevate_test.go +0 -111
  775. package/internal/devenv/hostops/hosts.go +0 -255
  776. package/internal/devenv/hostops/hosts_test.go +0 -178
  777. package/internal/devenv/hostops/thumbprint_test.go +0 -57
  778. package/internal/devenv/hostops/trust.go +0 -115
  779. package/internal/devenv/hostops/trust_test.go +0 -90
  780. package/internal/devenv/hostrefresh.go +0 -127
  781. package/internal/devenv/hostrefresh_test.go +0 -123
  782. package/internal/devenv/importdata.go +0 -491
  783. package/internal/devenv/importdata_test.go +0 -142
  784. package/internal/devenv/importdecompress_test.go +0 -90
  785. package/internal/devenv/importgate_test.go +0 -166
  786. package/internal/devenv/importvalidate.go +0 -437
  787. package/internal/devenv/importvalidate_test.go +0 -293
  788. package/internal/devenv/info_table.go +0 -165
  789. package/internal/devenv/info_table_test.go +0 -111
  790. package/internal/devenv/instancedata/instancedata.go +0 -239
  791. package/internal/devenv/instancedata/instancedata_test.go +0 -281
  792. package/internal/devenv/instancedata/testdata/legacy_keys.json +0 -16
  793. package/internal/devenv/instancedata/testdata/unknown_keys.json +0 -19
  794. package/internal/devenv/lifecycle/adopt.go +0 -24
  795. package/internal/devenv/lifecycle/adopt_test.go +0 -43
  796. package/internal/devenv/lifecycle/health.go +0 -28
  797. package/internal/devenv/lifecycle/health_test.go +0 -34
  798. package/internal/devenv/lifecycle/hosts.go +0 -42
  799. package/internal/devenv/lifecycle/hosts_test.go +0 -41
  800. package/internal/devenv/lifecycle/migrate.go +0 -44
  801. package/internal/devenv/lifecycle/migrate_test.go +0 -78
  802. package/internal/devenv/lifecycle/pull.go +0 -19
  803. package/internal/devenv/lifecycle/pull_test.go +0 -29
  804. package/internal/devenv/lifecycle/setup.go +0 -35
  805. package/internal/devenv/lifecycle/setup_test.go +0 -46
  806. package/internal/devenv/lifecycle/start.go +0 -132
  807. package/internal/devenv/lifecycle/start_test.go +0 -350
  808. package/internal/devenv/lifecycle/teardown.go +0 -32
  809. package/internal/devenv/lifecycle/teardown_test.go +0 -83
  810. package/internal/devenv/lifecycle/types.go +0 -86
  811. package/internal/devenv/lifecycle/waiter.go +0 -49
  812. package/internal/devenv/lifecycle/waiter_test.go +0 -98
  813. package/internal/devenv/list.go +0 -49
  814. package/internal/devenv/list_test.go +0 -24
  815. package/internal/devenv/logs.go +0 -43
  816. package/internal/devenv/logs_test.go +0 -28
  817. package/internal/devenv/materialize.go +0 -44
  818. package/internal/devenv/materialize_test.go +0 -112
  819. package/internal/devenv/paths/paths.go +0 -42
  820. package/internal/devenv/paths/paths_test.go +0 -39
  821. package/internal/devenv/postimport.go +0 -134
  822. package/internal/devenv/postimport_test.go +0 -389
  823. package/internal/devenv/proxy/ca.go +0 -110
  824. package/internal/devenv/proxy/ca_test.go +0 -111
  825. package/internal/devenv/proxy/network.go +0 -28
  826. package/internal/devenv/proxy/network_test.go +0 -68
  827. package/internal/devenv/proxy/ports.go +0 -104
  828. package/internal/devenv/proxy/ports_test.go +0 -76
  829. package/internal/devenv/proxy/proxy.go +0 -143
  830. package/internal/devenv/proxy/proxy_test.go +0 -149
  831. package/internal/devenv/proxy/scripts/gen-certs.sh +0 -73
  832. package/internal/devenv/proxy/spec.go +0 -60
  833. package/internal/devenv/proxy/spec_test.go +0 -44
  834. package/internal/devenv/proxy/testhelpers_test.go +0 -7
  835. package/internal/devenv/proxy_policy_test.go +0 -155
  836. package/internal/devenv/syncplan.go +0 -573
  837. package/internal/devenv/syncplan_test.go +0 -256
  838. package/internal/devenv/syncsql.go +0 -247
  839. package/internal/devenv/syncsql_repair.go +0 -169
  840. package/internal/devenv/syncsql_repair_test.go +0 -150
  841. package/internal/devenv/syncsql_test.go +0 -220
  842. package/internal/devenv/update.go +0 -87
  843. package/internal/devenv/update_test.go +0 -47
  844. package/internal/edgeworkers/api.go +0 -173
  845. package/internal/edgeworkers/api_test.go +0 -256
  846. package/internal/edgeworkers/build.go +0 -188
  847. package/internal/edgeworkers/build_test.go +0 -175
  848. package/internal/edgeworkers/confirmation.go +0 -72
  849. package/internal/edgeworkers/deployment.go +0 -156
  850. package/internal/edgeworkers/deployment_test.go +0 -165
  851. package/internal/edgeworkers/output.go +0 -131
  852. package/internal/edgeworkers/output_test.go +0 -98
  853. package/internal/edgeworkers/project.go +0 -264
  854. package/internal/edgeworkers/project_test.go +0 -167
  855. package/internal/edgeworkers/scaffold.go +0 -88
  856. package/internal/edgeworkers/templates/README.md +0 -25
  857. package/internal/edgeworkers/templates/edge-workers.json +0 -4
  858. package/internal/edgeworkers/templates/gitignore +0 -2
  859. package/internal/edgeworkers/templates/package.json +0 -16
  860. package/internal/edgeworkers/templates/tsconfig.json +0 -6
  861. package/internal/edgeworkers/templates/worker.ts +0 -19
  862. package/internal/edgeworkers/types.go +0 -37
  863. package/internal/edgeworkers/validation.go +0 -177
  864. package/internal/envalias/envalias.go +0 -50
  865. package/internal/envalias/envalias_test.go +0 -147
  866. package/internal/envvar/envvar.go +0 -253
  867. package/internal/envvar/envvar_test.go +0 -274
  868. package/internal/envvar/reload_manifest.go +0 -99
  869. package/internal/envvar/reload_manifest_test.go +0 -44
  870. package/internal/envvar/value_confirm.go +0 -26
  871. package/internal/envvar/value_confirm_test.go +0 -22
  872. package/internal/exit/exit.go +0 -94
  873. package/internal/exit/exit_test.go +0 -119
  874. package/internal/gql/SCHEMA.md +0 -21
  875. package/internal/gql/client.go +0 -54
  876. package/internal/gql/client_test.go +0 -71
  877. package/internal/gql/debug_test.go +0 -79
  878. package/internal/gql/decoder_compat_helpers_test.go +0 -35
  879. package/internal/gql/decoder_compat_test.go +0 -78
  880. package/internal/gql/doc.go +0 -13
  881. package/internal/gql/edgeworkerinput/input.go +0 -58
  882. package/internal/gql/edgeworkerinput/input_test.go +0 -52
  883. package/internal/gql/error.go +0 -163
  884. package/internal/gql/error_test.go +0 -203
  885. package/internal/gql/generated.go +0 -10425
  886. package/internal/gql/genqlient.yaml +0 -26
  887. package/internal/gql/import_sql_marshal_test.go +0 -69
  888. package/internal/gql/operation.go +0 -67
  889. package/internal/gql/operation_test.go +0 -60
  890. package/internal/gql/operations/app_get.graphql +0 -43
  891. package/internal/gql/operations/app_list.graphql +0 -9
  892. package/internal/gql/operations/app_resolve.graphql +0 -37
  893. package/internal/gql/operations/backup_export_deploy.graphql +0 -123
  894. package/internal/gql/operations/cachepurge.graphql +0 -6
  895. package/internal/gql/operations/defensive_mode.graphql +0 -13
  896. package/internal/gql/operations/dev_env_create.graphql +0 -38
  897. package/internal/gql/operations/dev_env_sync.graphql +0 -15
  898. package/internal/gql/operations/edge_workers.graphql +0 -53
  899. package/internal/gql/operations/envvar.graphql +0 -52
  900. package/internal/gql/operations/fragments.graphql +0 -5
  901. package/internal/gql/operations/import_media.graphql +0 -61
  902. package/internal/gql/operations/import_sql.graphql +0 -135
  903. package/internal/gql/operations/logs.graphql +0 -22
  904. package/internal/gql/operations/me.graphql +0 -13
  905. package/internal/gql/operations/phpmyadmin.graphql +0 -21
  906. package/internal/gql/operations/slowlogs.graphql +0 -25
  907. package/internal/gql/operations/software.graphql +0 -53
  908. package/internal/gql/operations/sync.graphql +0 -51
  909. package/internal/gql/operations/wp.graphql +0 -37
  910. package/internal/gql/proxy_test.go +0 -62
  911. package/internal/gql/rechallenge.go +0 -218
  912. package/internal/gql/rechallenge_test.go +0 -471
  913. package/internal/gql/retry.go +0 -130
  914. package/internal/gql/retry_test.go +0 -230
  915. package/internal/gql/schema.gql +0 -9337
  916. package/internal/gql/transport.go +0 -65
  917. package/internal/gql/transport_helper.go +0 -24
  918. package/internal/httpproxy/callers_test.go +0 -211
  919. package/internal/httpproxy/debug_test.go +0 -32
  920. package/internal/httpproxy/httpproxy.go +0 -315
  921. package/internal/httpproxy/httpproxy_test.go +0 -435
  922. package/internal/installer/version.go +0 -41
  923. package/internal/installer/version_test.go +0 -33
  924. package/internal/keychain/fallback.go +0 -93
  925. package/internal/keychain/keychain.go +0 -197
  926. package/internal/keychain/keychain_select_test.go +0 -34
  927. package/internal/keychain/keychain_test.go +0 -112
  928. package/internal/logsapi/logsapi.go +0 -165
  929. package/internal/logsapi/logsapi_test.go +0 -82
  930. package/internal/mediaimport/mediaimport.go +0 -26
  931. package/internal/mediaimport/mediaimport_test.go +0 -46
  932. package/internal/mediaimport/status.go +0 -162
  933. package/internal/mediaimport/status_test.go +0 -159
  934. package/internal/mediaimport/tracker.go +0 -116
  935. package/internal/mediaimport/tracker_test.go +0 -62
  936. package/internal/nodeflags/nodeflags.go +0 -130
  937. package/internal/nodeflags/nodeflags_test.go +0 -138
  938. package/internal/nodeflags/optionalvalue.go +0 -123
  939. package/internal/nodeflags/optionalvalue_test.go +0 -158
  940. package/internal/output/csv.go +0 -178
  941. package/internal/output/fields.go +0 -22
  942. package/internal/output/fields_test.go +0 -21
  943. package/internal/output/ids.go +0 -26
  944. package/internal/output/ids_test.go +0 -32
  945. package/internal/output/json.go +0 -113
  946. package/internal/output/keyvalue.go +0 -35
  947. package/internal/output/keyvalue_block.go +0 -77
  948. package/internal/output/keyvalue_block_test.go +0 -95
  949. package/internal/output/keyvalue_test.go +0 -35
  950. package/internal/output/ordered.go +0 -44
  951. package/internal/output/ordered_test.go +0 -42
  952. package/internal/output/output.go +0 -62
  953. package/internal/output/output_test.go +0 -400
  954. package/internal/output/table.go +0 -231
  955. package/internal/output/table_layout.go +0 -472
  956. package/internal/output/table_layout_test.go +0 -107
  957. package/internal/output/table_layout_tty_test.go +0 -63
  958. package/internal/output/text.go +0 -24
  959. package/internal/output/text_test.go +0 -31
  960. package/internal/output/typename.go +0 -35
  961. package/internal/output/typename_test.go +0 -48
  962. package/internal/parity/backup_export_deploy_scenario_test.go +0 -285
  963. package/internal/parity/cache_scenario_test.go +0 -173
  964. package/internal/parity/command_surface_scenario_test.go +0 -530
  965. package/internal/parity/defensive_mode_scenario_test.go +0 -133
  966. package/internal/parity/diff.go +0 -128
  967. package/internal/parity/diff_test.go +0 -155
  968. package/internal/parity/differential_test.go +0 -166
  969. package/internal/parity/edge_workers_build_smoke_test.go +0 -69
  970. package/internal/parity/edge_workers_cases_test.go +0 -77
  971. package/internal/parity/edge_workers_debug_test.go +0 -87
  972. package/internal/parity/edge_workers_differential_test.go +0 -483
  973. package/internal/parity/edge_workers_prompt_test.go +0 -151
  974. package/internal/parity/env.go +0 -176
  975. package/internal/parity/env_test.go +0 -211
  976. package/internal/parity/envvar_mutation_scenario_test.go +0 -188
  977. package/internal/parity/harness.go +0 -28
  978. package/internal/parity/harness_test.go +0 -62
  979. package/internal/parity/import_media_scenario_test.go +0 -207
  980. package/internal/parity/import_sql_scenario_test.go +0 -198
  981. package/internal/parity/import_validate_sql_scenario_test.go +0 -68
  982. package/internal/parity/keychain.go +0 -538
  983. package/internal/parity/keychain_test.go +0 -201
  984. package/internal/parity/m5_differential_test.go +0 -185
  985. package/internal/parity/m5_scenarios_test.go +0 -225
  986. package/internal/parity/nodebin.go +0 -120
  987. package/internal/parity/nodebin_test.go +0 -148
  988. package/internal/parity/parker.go +0 -491
  989. package/internal/parity/parker_discovery.go +0 -373
  990. package/internal/parity/parker_discovery_test.go +0 -267
  991. package/internal/parity/parker_live_test.go +0 -164
  992. package/internal/parity/parker_test.go +0 -480
  993. package/internal/parity/pendo_test.go +0 -122
  994. package/internal/parity/phpmyadmin_scenario_test.go +0 -214
  995. package/internal/parity/runner.go +0 -56
  996. package/internal/parity/runner_test.go +0 -67
  997. package/internal/parity/scenario.go +0 -82
  998. package/internal/parity/scenario_test.go +0 -52
  999. package/internal/parity/surface_differential_test.go +0 -494
  1000. package/internal/parity/sync_scenario_test.go +0 -172
  1001. package/internal/parity/vendored_src_test.go +0 -84
  1002. package/internal/parity/whoami_scenario_test.go +0 -69
  1003. package/internal/parity/wp_scenario_test.go +0 -428
  1004. package/internal/phpmyadmin/client.go +0 -221
  1005. package/internal/phpmyadmin/client_test.go +0 -418
  1006. package/internal/poll/poll.go +0 -85
  1007. package/internal/poll/poll_test.go +0 -136
  1008. package/internal/polling/polling.go +0 -97
  1009. package/internal/polling/polling_test.go +0 -59
  1010. package/internal/rechallenge/browser.go +0 -16
  1011. package/internal/rechallenge/client.go +0 -198
  1012. package/internal/rechallenge/client_test.go +0 -169
  1013. package/internal/rechallenge/errors.go +0 -137
  1014. package/internal/rechallenge/errors_test.go +0 -81
  1015. package/internal/rechallenge/flow.go +0 -232
  1016. package/internal/rechallenge/flow_noninteractive_test.go +0 -285
  1017. package/internal/rechallenge/flow_test.go +0 -217
  1018. package/internal/rechallenge/interactive.go +0 -90
  1019. package/internal/rechallenge/interactive_test.go +0 -106
  1020. package/internal/rechallenge/redact.go +0 -36
  1021. package/internal/rechallenge/redact_test.go +0 -142
  1022. package/internal/rechallenge/tokencache.go +0 -148
  1023. package/internal/rechallenge/tokencache_test.go +0 -139
  1024. package/internal/rechallenge/types.go +0 -100
  1025. package/internal/rechallenge/types_test.go +0 -56
  1026. package/internal/redact/redact.go +0 -99
  1027. package/internal/redact/redact_test.go +0 -80
  1028. package/internal/releasepromotion/buildkite.go +0 -233
  1029. package/internal/releasepromotion/buildkite_test.go +0 -284
  1030. package/internal/releasepromotion/contract.go +0 -165
  1031. package/internal/releasepromotion/contract_test.go +0 -211
  1032. package/internal/releasepromotion/github.go +0 -378
  1033. package/internal/releasepromotion/github_test.go +0 -399
  1034. package/internal/releasepromotion/optional_installers_test.go +0 -87
  1035. package/internal/releasepromotion/promoter.go +0 -134
  1036. package/internal/releasepromotion/promoter_test.go +0 -147
  1037. package/internal/releasepromotion/verify.go +0 -239
  1038. package/internal/releasepromotion/verify_test.go +0 -296
  1039. package/internal/searchreplace/debug_test.go +0 -71
  1040. package/internal/searchreplace/dumpdetails.go +0 -104
  1041. package/internal/searchreplace/dumpdetails_test.go +0 -86
  1042. package/internal/searchreplace/searchreplace.go +0 -261
  1043. package/internal/searchreplace/searchreplace_test.go +0 -250
  1044. package/internal/siteimport/debug_test.go +0 -34
  1045. package/internal/siteimport/siteimport.go +0 -18
  1046. package/internal/siteimport/siteimport_test.go +0 -19
  1047. package/internal/siteimport/sitetype.go +0 -74
  1048. package/internal/siteimport/sitetype_test.go +0 -62
  1049. package/internal/siteimport/status.go +0 -282
  1050. package/internal/siteimport/status_test.go +0 -234
  1051. package/internal/slowlogsapi/slowlogsapi.go +0 -176
  1052. package/internal/slowlogsapi/slowlogsapi_test.go +0 -93
  1053. package/internal/softwaresettings/format.go +0 -192
  1054. package/internal/softwaresettings/format_test.go +0 -123
  1055. package/internal/sqlexport/diskspace.go +0 -36
  1056. package/internal/sqlexport/diskspace_unix.go +0 -24
  1057. package/internal/sqlexport/diskspace_windows.go +0 -26
  1058. package/internal/sqlexport/download.go +0 -75
  1059. package/internal/sqlexport/download_test.go +0 -103
  1060. package/internal/sqlexport/export.go +0 -321
  1061. package/internal/sqlexport/export_test.go +0 -313
  1062. package/internal/sqlexport/format.go +0 -44
  1063. package/internal/sqlexport/livecopy.go +0 -150
  1064. package/internal/sqlexport/livecopy_test.go +0 -273
  1065. package/internal/sqlvalidation/devenv_checks_test.go +0 -134
  1066. package/internal/sqlvalidation/filename.go +0 -30
  1067. package/internal/sqlvalidation/line_by_line.go +0 -91
  1068. package/internal/sqlvalidation/line_by_line_test.go +0 -165
  1069. package/internal/sqlvalidation/multisite.go +0 -31
  1070. package/internal/sqlvalidation/multisite_test.go +0 -34
  1071. package/internal/sqlvalidation/sql.go +0 -510
  1072. package/internal/sqlvalidation/sql_test.go +0 -206
  1073. package/internal/sync/sync.go +0 -246
  1074. package/internal/sync/sync_test.go +0 -253
  1075. package/internal/telemetry/config.go +0 -34
  1076. package/internal/telemetry/default.go +0 -67
  1077. package/internal/telemetry/default_endpoint_test.go +0 -111
  1078. package/internal/telemetry/pendo.go +0 -185
  1079. package/internal/telemetry/pendo_auth_test.go +0 -92
  1080. package/internal/telemetry/pendo_test.go +0 -252
  1081. package/internal/telemetry/scrub.go +0 -90
  1082. package/internal/telemetry/scrub_test.go +0 -131
  1083. package/internal/telemetry/tracker.go +0 -102
  1084. package/internal/telemetry/tracker_test.go +0 -76
  1085. package/internal/telemetry/tracks.go +0 -82
  1086. package/internal/telemetry/tracks_test.go +0 -129
  1087. package/internal/telemetry/uuid.go +0 -50
  1088. package/internal/telemetry/uuid_test.go +0 -90
  1089. package/internal/tui/progress.go +0 -153
  1090. package/internal/tui/progress_test.go +0 -89
  1091. package/internal/tui/progress_tracker.go +0 -299
  1092. package/internal/tui/progress_tracker_test.go +0 -155
  1093. package/internal/update/archive.go +0 -134
  1094. package/internal/update/archive_test.go +0 -132
  1095. package/internal/update/download.go +0 -138
  1096. package/internal/update/download_test.go +0 -32
  1097. package/internal/update/github.go +0 -121
  1098. package/internal/update/install.go +0 -265
  1099. package/internal/update/install_test.go +0 -151
  1100. package/internal/update/lock_unix.go +0 -23
  1101. package/internal/update/lock_windows.go +0 -22
  1102. package/internal/update/native_test.go +0 -70
  1103. package/internal/update/notify.go +0 -91
  1104. package/internal/update/ownership.go +0 -117
  1105. package/internal/update/ownership_test.go +0 -102
  1106. package/internal/update/release.go +0 -120
  1107. package/internal/update/release_test.go +0 -168
  1108. package/internal/update/service.go +0 -197
  1109. package/internal/update/service_test.go +0 -118
  1110. package/internal/update/state.go +0 -116
  1111. package/internal/update/state_test.go +0 -132
  1112. package/internal/upload/debug_test.go +0 -76
  1113. package/internal/upload/filemeta.go +0 -112
  1114. package/internal/upload/filemeta_test.go +0 -94
  1115. package/internal/upload/multipart.go +0 -215
  1116. package/internal/upload/multipart_test.go +0 -210
  1117. package/internal/upload/orchestrate.go +0 -81
  1118. package/internal/upload/parts.go +0 -39
  1119. package/internal/upload/parts_test.go +0 -39
  1120. package/internal/upload/presign.go +0 -103
  1121. package/internal/upload/presign_test.go +0 -128
  1122. package/internal/upload/proxy_test.go +0 -55
  1123. package/internal/upload/putobject.go +0 -92
  1124. package/internal/upload/putobject_test.go +0 -79
  1125. package/internal/upload/retry.go +0 -45
  1126. package/internal/upload/upload.go +0 -22
  1127. package/internal/upload/xmlerror.go +0 -28
  1128. package/internal/validatefiles/files.go +0 -105
  1129. package/internal/validatefiles/files_test.go +0 -143
  1130. package/internal/validatefiles/report.go +0 -172
  1131. package/internal/validatefiles/validatefiles.go +0 -271
  1132. package/internal/validatefiles/validatefiles_test.go +0 -127
  1133. package/internal/version/stamp.go +0 -15
  1134. package/internal/version/stamp_test.go +0 -25
  1135. package/internal/version/version.go +0 -14
  1136. package/internal/version/version_test.go +0 -25
  1137. package/internal/wpshell/parser.go +0 -68
  1138. package/internal/wpshell/parser_test.go +0 -58
  1139. package/internal/wpshell/repl.go +0 -81
  1140. package/internal/wpshell/repl_test.go +0 -71
  1141. package/internal/wpshell/requote.go +0 -13
  1142. package/internal/wpshell/requote_test.go +0 -15
  1143. package/internal/wpssh/debug_test.go +0 -67
  1144. package/internal/wpssh/wpssh.go +0 -124
  1145. package/internal/wpssh/wpssh_test.go +0 -203
  1146. package/internal/wpstream/debug_test.go +0 -116
  1147. package/internal/wpstream/e2e_test.go +0 -178
  1148. package/internal/wpstream/engineio.go +0 -291
  1149. package/internal/wpstream/engineio_test.go +0 -82
  1150. package/internal/wpstream/iostream.go +0 -391
  1151. package/internal/wpstream/iostream_test.go +0 -138
  1152. package/internal/wpstream/run.go +0 -364
  1153. package/internal/wpstream/run_test.go +0 -184
  1154. package/internal/wpstream/socketio.go +0 -435
  1155. package/internal/wpstream/socketio_test.go +0 -402
  1156. package/internal/wpstream/testdata/fixture-server.js +0 -54
  1157. package/make.ps1 +0 -155
  1158. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs +0 -3
  1159. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs.map +0 -1
  1160. package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.d.cts +0 -10
  1161. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.d.ts +0 -10
  1162. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js +0 -2
  1163. package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js.map +0 -1
  1164. package/node_modules/argparse/LICENSE +0 -254
  1165. package/node_modules/argparse/README.md +0 -84
  1166. package/node_modules/argparse/package.json +0 -31
  1167. package/node_modules/lando/node_modules/cliui/build/index.cjs +0 -302
  1168. package/node_modules/lando/node_modules/cliui/build/lib/string-utils.js +0 -27
  1169. package/node_modules/lando/node_modules/js-yaml/README.md +0 -233
  1170. package/node_modules/lando/node_modules/js-yaml/bin/js-yaml.js +0 -117
  1171. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js +0 -3022
  1172. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js.map +0 -1
  1173. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js +0 -2
  1174. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js.map +0 -1
  1175. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs +0 -3082
  1176. package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs.map +0 -1
  1177. package/node_modules/lando/node_modules/js-yaml/index.js +0 -44
  1178. package/node_modules/lando/node_modules/js-yaml/lib/common.js +0 -50
  1179. package/node_modules/lando/node_modules/js-yaml/lib/dumper.js +0 -937
  1180. package/node_modules/lando/node_modules/js-yaml/lib/exception.js +0 -51
  1181. package/node_modules/lando/node_modules/js-yaml/lib/index_vite_proxy.tmp.mjs +0 -37
  1182. package/node_modules/lando/node_modules/js-yaml/lib/loader.js +0 -1803
  1183. package/node_modules/lando/node_modules/js-yaml/lib/schema/core.js +0 -9
  1184. package/node_modules/lando/node_modules/js-yaml/lib/schema/default.js +0 -20
  1185. package/node_modules/lando/node_modules/js-yaml/lib/schema/failsafe.js +0 -14
  1186. package/node_modules/lando/node_modules/js-yaml/lib/schema/json.js +0 -17
  1187. package/node_modules/lando/node_modules/js-yaml/lib/schema.js +0 -109
  1188. package/node_modules/lando/node_modules/js-yaml/lib/snippet.js +0 -96
  1189. package/node_modules/lando/node_modules/js-yaml/lib/type/binary.js +0 -122
  1190. package/node_modules/lando/node_modules/js-yaml/lib/type/bool.js +0 -35
  1191. package/node_modules/lando/node_modules/js-yaml/lib/type/float.js +0 -99
  1192. package/node_modules/lando/node_modules/js-yaml/lib/type/int.js +0 -142
  1193. package/node_modules/lando/node_modules/js-yaml/lib/type/map.js +0 -8
  1194. package/node_modules/lando/node_modules/js-yaml/lib/type/merge.js +0 -12
  1195. package/node_modules/lando/node_modules/js-yaml/lib/type/null.js +0 -35
  1196. package/node_modules/lando/node_modules/js-yaml/lib/type/omap.js +0 -45
  1197. package/node_modules/lando/node_modules/js-yaml/lib/type/pairs.js +0 -50
  1198. package/node_modules/lando/node_modules/js-yaml/lib/type/seq.js +0 -8
  1199. package/node_modules/lando/node_modules/js-yaml/lib/type/set.js +0 -29
  1200. package/node_modules/lando/node_modules/js-yaml/lib/type/str.js +0 -8
  1201. package/node_modules/lando/node_modules/js-yaml/lib/type/timestamp.js +0 -88
  1202. package/node_modules/lando/node_modules/js-yaml/lib/type.js +0 -66
  1203. package/node_modules/lando/node_modules/js-yaml/package.json +0 -83
  1204. package/node_modules/lando/node_modules/wrap-ansi/index.js +0 -216
  1205. package/node_modules/lando/node_modules/wrap-ansi/package.json +0 -62
  1206. package/node_modules/lando/node_modules/wrap-ansi/readme.md +0 -91
  1207. package/node_modules/lando/node_modules/yargs/build/index.cjs +0 -2920
  1208. package/node_modules/lando/node_modules/yargs/helpers/index.js +0 -14
  1209. package/node_modules/lando/node_modules/yargs/index.cjs +0 -39
  1210. package/node_modules/lando/node_modules/yargs/yargs +0 -9
  1211. package/node_modules/lando/node_modules/yargs-parser/build/index.cjs +0 -1042
  1212. package/node_modules/lando/plugins/lando-test/index.js +0 -3
  1213. package/node_modules/lando/plugins/lando-test/plugin.yml +0 -2
  1214. package/packaging/macos/build-pkg.sh +0 -53
  1215. package/packaging/macos/preinstall +0 -33
  1216. package/packaging/macos/test-install.sh +0 -51
  1217. package/packaging/macos/test_package.py +0 -74
  1218. package/packaging/macos/uninstall.sh +0 -24
  1219. package/packaging/macos/verify-pkg.py +0 -61
  1220. package/packaging/windows/build-msi.ps1 +0 -153
  1221. package/packaging/windows/test-msi.ps1 +0 -225
  1222. package/packaging/windows/verify-msi.ps1 +0 -74
  1223. package/packaging/windows/vip-next.wxs +0 -79
  1224. package/scripts/catalog_script_test.go +0 -123
  1225. package/scripts/vip-next-command-catalog.sh +0 -506
  1226. package/test-utils/undici-mock.js +0 -25
  1227. package/testdata/installer-fixture/main.go +0 -40
  1228. package/testdata/parity/app-deploy-completed.yaml +0 -14
  1229. package/testdata/parity/app-deploy-missing-token.yaml +0 -21
  1230. package/testdata/parity/app-deploy-validate-clean.yaml +0 -11
  1231. package/testdata/parity/app-deploy-validate-missing-themes.yaml +0 -21
  1232. package/testdata/parity/app-get-baseline.yaml +0 -14
  1233. package/testdata/parity/app-get-custom-deploy.yaml +0 -14
  1234. package/testdata/parity/app-get-json.yaml +0 -14
  1235. package/testdata/parity/app-get-not-found.yaml +0 -13
  1236. package/testdata/parity/app-list-baseline.yaml +0 -14
  1237. package/testdata/parity/app-list-csv.yaml +0 -13
  1238. package/testdata/parity/app-list-empty.yaml +0 -13
  1239. package/testdata/parity/app-list-ids.yaml +0 -26
  1240. package/testdata/parity/app-list-json.yaml +0 -13
  1241. package/testdata/parity/app-list-unknown-format.yaml +0 -29
  1242. package/testdata/parity/backup-db-already-in-progress.yaml +0 -15
  1243. package/testdata/parity/backup-db-completed.yaml +0 -14
  1244. package/testdata/parity/backup-db-help.yaml +0 -10
  1245. package/testdata/parity/cache-purge-url-empty.yaml +0 -26
  1246. package/testdata/parity/cache-purge-url-from-file.yaml +0 -21
  1247. package/testdata/parity/cache-purge-url-multi.yaml +0 -19
  1248. package/testdata/parity/cache-purge-url-single.yaml +0 -18
  1249. package/testdata/parity/defensive-mode-enable-with-rechallenge.yaml +0 -20
  1250. package/testdata/parity/edge-workers-artifact-symlink.yaml +0 -8
  1251. package/testdata/parity/edge-workers-bare-location.yaml +0 -8
  1252. package/testdata/parity/edge-workers-bare-path.yaml +0 -8
  1253. package/testdata/parity/edge-workers-bare-type.yaml +0 -8
  1254. package/testdata/parity/edge-workers-build-all.yaml +0 -8
  1255. package/testdata/parity/edge-workers-build-compiler-error.yaml +0 -8
  1256. package/testdata/parity/edge-workers-build-empty.yaml +0 -8
  1257. package/testdata/parity/edge-workers-build-missing-compiler.yaml +0 -8
  1258. package/testdata/parity/edge-workers-build-name-all.yaml +0 -8
  1259. package/testdata/parity/edge-workers-build-one.yaml +0 -8
  1260. package/testdata/parity/edge-workers-delete-force.yaml +0 -8
  1261. package/testdata/parity/edge-workers-delete-rejected.yaml +0 -8
  1262. package/testdata/parity/edge-workers-deploy-active-update-enable.yaml +0 -8
  1263. package/testdata/parity/edge-workers-deploy-active-update.yaml +0 -8
  1264. package/testdata/parity/edge-workers-deploy-all-preparation-failure.yaml +0 -8
  1265. package/testdata/parity/edge-workers-deploy-create-enable.yaml +0 -8
  1266. package/testdata/parity/edge-workers-deploy-create.yaml +0 -8
  1267. package/testdata/parity/edge-workers-deploy-enable-failure.yaml +0 -8
  1268. package/testdata/parity/edge-workers-deploy-inactive-update-enable.yaml +0 -8
  1269. package/testdata/parity/edge-workers-deploy-inactive-update.yaml +0 -8
  1270. package/testdata/parity/edge-workers-deploy-location-clear.yaml +0 -8
  1271. package/testdata/parity/edge-workers-deploy-location-preserve.yaml +0 -8
  1272. package/testdata/parity/edge-workers-deploy-location-replace.yaml +0 -8
  1273. package/testdata/parity/edge-workers-deploy-name-all.yaml +0 -8
  1274. package/testdata/parity/edge-workers-deploy-production-refused.yaml +0 -8
  1275. package/testdata/parity/edge-workers-deploy-production-skip.yaml +0 -8
  1276. package/testdata/parity/edge-workers-deploy-skip-source-create.yaml +0 -8
  1277. package/testdata/parity/edge-workers-deploy-skip-source.yaml +0 -8
  1278. package/testdata/parity/edge-workers-deploy-skip-validate.yaml +0 -8
  1279. package/testdata/parity/edge-workers-deploy-source-empty.yaml +0 -8
  1280. package/testdata/parity/edge-workers-deploy-upload-failure.yaml +0 -8
  1281. package/testdata/parity/edge-workers-disable.yaml +0 -8
  1282. package/testdata/parity/edge-workers-double-dash.yaml +0 -8
  1283. package/testdata/parity/edge-workers-duplicate-names.yaml +0 -8
  1284. package/testdata/parity/edge-workers-enable-production-refused.yaml +0 -8
  1285. package/testdata/parity/edge-workers-enable.yaml +0 -8
  1286. package/testdata/parity/edge-workers-entry-escape.yaml +0 -8
  1287. package/testdata/parity/edge-workers-get-empty-source.yaml +0 -8
  1288. package/testdata/parity/edge-workers-get-missing.yaml +0 -8
  1289. package/testdata/parity/edge-workers-get-no-source.yaml +0 -8
  1290. package/testdata/parity/edge-workers-get-source.yaml +0 -8
  1291. package/testdata/parity/edge-workers-get.yaml +0 -8
  1292. package/testdata/parity/edge-workers-init-invalid-type.yaml +0 -8
  1293. package/testdata/parity/edge-workers-init-nonempty.yaml +0 -8
  1294. package/testdata/parity/edge-workers-init.yaml +0 -8
  1295. package/testdata/parity/edge-workers-json-control-name.yaml +0 -8
  1296. package/testdata/parity/edge-workers-list-csv.yaml +0 -8
  1297. package/testdata/parity/edge-workers-list-empty-json.yaml +0 -8
  1298. package/testdata/parity/edge-workers-list-empty.yaml +0 -8
  1299. package/testdata/parity/edge-workers-list-json.yaml +0 -8
  1300. package/testdata/parity/edge-workers-list-table.yaml +0 -8
  1301. package/testdata/parity/edge-workers-mutation-graphql-error.yaml +0 -8
  1302. package/testdata/parity/edge-workers-mutation-null.yaml +0 -8
  1303. package/testdata/parity/edge-workers-new-invalid-location.yaml +0 -8
  1304. package/testdata/parity/edge-workers-new-invalid-name.yaml +0 -8
  1305. package/testdata/parity/edge-workers-new-location.yaml +0 -8
  1306. package/testdata/parity/edge-workers-new.yaml +0 -8
  1307. package/testdata/parity/edge-workers-read-null.yaml +0 -8
  1308. package/testdata/parity/edge-workers-repeated-path.yaml +0 -8
  1309. package/testdata/parity/edge-workers-repeated-type.yaml +0 -8
  1310. package/testdata/parity/edge-workers-short-equals.yaml +0 -8
  1311. package/testdata/parity/edge-workers-table-control-name.yaml +0 -8
  1312. package/testdata/parity/edge-workers-unicode-order.yaml +0 -8
  1313. package/testdata/parity/edge-workers-validate-all.yaml +0 -8
  1314. package/testdata/parity/edge-workers-validate-invalid.yaml +0 -8
  1315. package/testdata/parity/edge-workers-validate-name-all.yaml +0 -8
  1316. package/testdata/parity/edge-workers-validate-no-artifact.yaml +0 -8
  1317. package/testdata/parity/edge-workers-validate-no-name.yaml +0 -8
  1318. package/testdata/parity/edge-workers-validate-null.yaml +0 -8
  1319. package/testdata/parity/edge-workers-validate.yaml +0 -8
  1320. package/testdata/parity/envvar-delete-baseline.yaml +0 -19
  1321. package/testdata/parity/envvar-delete-prod-cancel.yaml +0 -41
  1322. package/testdata/parity/envvar-delete-typed-mismatch.yaml +0 -44
  1323. package/testdata/parity/envvar-get-baseline.yaml +0 -14
  1324. package/testdata/parity/envvar-get-lowercase-input.yaml +0 -14
  1325. package/testdata/parity/envvar-get-named-help.yaml +0 -24
  1326. package/testdata/parity/envvar-get-not-found.yaml +0 -17
  1327. package/testdata/parity/envvar-getall-baseline.yaml +0 -14
  1328. package/testdata/parity/envvar-getall-empty.yaml +0 -15
  1329. package/testdata/parity/envvar-getall-keyvalue.yaml +0 -22
  1330. package/testdata/parity/envvar-list-baseline.yaml +0 -15
  1331. package/testdata/parity/envvar-list-empty.yaml +0 -15
  1332. package/testdata/parity/envvar-list-ids.yaml +0 -14
  1333. package/testdata/parity/envvar-list-json.yaml +0 -14
  1334. package/testdata/parity/envvar-list-keyvalue.yaml +0 -22
  1335. package/testdata/parity/envvar-set-baseline.yaml +0 -21
  1336. package/testdata/parity/envvar-set-invalid-name.yaml +0 -20
  1337. package/testdata/parity/envvar-set-newrelic-blocked.yaml +0 -21
  1338. package/testdata/parity/envvar-set-prod-cancel.yaml +0 -42
  1339. package/testdata/parity/envvar-set-prod-confirm-skipped.yaml +0 -20
  1340. package/testdata/parity/export-sql-completed.yaml +0 -14
  1341. package/testdata/parity/export-sql-config-conflict.yaml +0 -21
  1342. package/testdata/parity/export-sql-help.yaml +0 -11
  1343. package/testdata/parity/import-media-abort-noninteractive.yaml +0 -19
  1344. package/testdata/parity/import-media-help.yaml +0 -12
  1345. package/testdata/parity/import-media-invalid-archive.yaml +0 -18
  1346. package/testdata/parity/import-media-status-completed.yaml +0 -19
  1347. package/testdata/parity/import-media-status-failed.yaml +0 -18
  1348. package/testdata/parity/import-media-url-completed.yaml +0 -18
  1349. package/testdata/parity/import-sql-bad-extension.yaml +0 -26
  1350. package/testdata/parity/import-sql-help.yaml +0 -12
  1351. package/testdata/parity/import-sql-in-progress.yaml +0 -26
  1352. package/testdata/parity/import-sql-invalid-md5.yaml +0 -27
  1353. package/testdata/parity/import-sql-noninteractive-abort.yaml +0 -20
  1354. package/testdata/parity/import-sql-status-completed.yaml +0 -17
  1355. package/testdata/parity/import-sql-status-no-job.yaml +0 -17
  1356. package/testdata/parity/import-sql-validation-failure.yaml +0 -18
  1357. package/testdata/parity/import-validate-files-clean.yaml +0 -18
  1358. package/testdata/parity/import-validate-files-not-dir.yaml +0 -16
  1359. package/testdata/parity/import-validate-sql-clean.yaml +0 -23
  1360. package/testdata/parity/import-validate-sql-dangerous-stmt.yaml +0 -27
  1361. package/testdata/parity/import-validate-sql-multisite-warn.yaml +0 -23
  1362. package/testdata/parity/logs-baseline.yaml +0 -24
  1363. package/testdata/parity/logs-batch.yaml +0 -24
  1364. package/testdata/parity/logs-empty.yaml +0 -15
  1365. package/testdata/parity/logs-format-json.yaml +0 -15
  1366. package/testdata/parity/logs-limit-100.yaml +0 -24
  1367. package/testdata/parity/phpmyadmin-error.yaml +0 -24
  1368. package/testdata/parity/phpmyadmin-print.yaml +0 -22
  1369. package/testdata/parity/phpmyadmin-silent.yaml +0 -16
  1370. package/testdata/parity/recordings/app-get-baseline/app.json +0 -11
  1371. package/testdata/parity/recordings/app-get-custom-deploy/app.json +0 -8
  1372. package/testdata/parity/recordings/app-get-json/app.json +0 -11
  1373. package/testdata/parity/recordings/app-get-not-found/app.json +0 -1
  1374. package/testdata/parity/recordings/app-list-baseline/apps.json +0 -1
  1375. package/testdata/parity/recordings/app-list-csv/apps.json +0 -1
  1376. package/testdata/parity/recordings/app-list-empty/apps.json +0 -1
  1377. package/testdata/parity/recordings/app-list-json/apps.json +0 -1
  1378. package/testdata/parity/recordings/backup-db-already-in-progress/backup-status-1.json +0 -1
  1379. package/testdata/parity/recordings/backup-db-already-in-progress/backup-status-2.json +0 -1
  1380. package/testdata/parity/recordings/backup-db-completed/backup-status-1.json +0 -1
  1381. package/testdata/parity/recordings/backup-db-completed/backup-status-2.json +0 -1
  1382. package/testdata/parity/recordings/backup-db-completed/backup-status-3.json +0 -1
  1383. package/testdata/parity/recordings/cache-purge-url-empty/resolve-app.json +0 -1
  1384. package/testdata/parity/recordings/cache-purge-url-from-file/purge.json +0 -1
  1385. package/testdata/parity/recordings/cache-purge-url-from-file/resolve-app.json +0 -1
  1386. package/testdata/parity/recordings/cache-purge-url-from-file/urls.txt +0 -2
  1387. package/testdata/parity/recordings/cache-purge-url-multi/purge.json +0 -1
  1388. package/testdata/parity/recordings/cache-purge-url-multi/resolve-app.json +0 -1
  1389. package/testdata/parity/recordings/cache-purge-url-single/purge.json +0 -1
  1390. package/testdata/parity/recordings/cache-purge-url-single/resolve-app.json +0 -1
  1391. package/testdata/parity/recordings/config-software-get/resolve-app.json +0 -1
  1392. package/testdata/parity/recordings/config-software-update/resolve-app.json +0 -1
  1393. package/testdata/parity/recordings/defensive-mode-enable-rechallenge/mutation-elevated.json +0 -1
  1394. package/testdata/parity/recordings/defensive-mode-enable-rechallenge/mutation-success.json +0 -1
  1395. package/testdata/parity/recordings/defensive-mode-enable-rechallenge/parker-create-session.json +0 -1
  1396. package/testdata/parity/recordings/defensive-mode-enable-rechallenge/parker-exchange.json +0 -1
  1397. package/testdata/parity/recordings/defensive-mode-enable-rechallenge/parker-status-verified.json +0 -1
  1398. package/testdata/parity/recordings/envvar-delete-baseline/delete.json +0 -1
  1399. package/testdata/parity/recordings/envvar-delete-baseline/resolve-app.json +0 -1
  1400. package/testdata/parity/recordings/envvar-delete-prod-cancel/resolve-app.json +0 -1
  1401. package/testdata/parity/recordings/envvar-delete-typed-mismatch/resolve-app.json +0 -1
  1402. package/testdata/parity/recordings/envvar-get-baseline/envvars.json +0 -1
  1403. package/testdata/parity/recordings/envvar-get-baseline/resolve-app.json +0 -1
  1404. package/testdata/parity/recordings/envvar-get-lowercase-input/envvars.json +0 -1
  1405. package/testdata/parity/recordings/envvar-get-lowercase-input/resolve-app.json +0 -1
  1406. package/testdata/parity/recordings/envvar-get-named-help/envvars.json +0 -1
  1407. package/testdata/parity/recordings/envvar-get-named-help/resolve-app.json +0 -1
  1408. package/testdata/parity/recordings/envvar-get-not-found/envvars.json +0 -1
  1409. package/testdata/parity/recordings/envvar-get-not-found/resolve-app.json +0 -1
  1410. package/testdata/parity/recordings/envvar-getall-baseline/envvars.json +0 -1
  1411. package/testdata/parity/recordings/envvar-getall-baseline/resolve-app.json +0 -1
  1412. package/testdata/parity/recordings/envvar-getall-empty/envvars.json +0 -1
  1413. package/testdata/parity/recordings/envvar-getall-empty/resolve-app.json +0 -1
  1414. package/testdata/parity/recordings/envvar-getall-keyvalue/envvars.json +0 -1
  1415. package/testdata/parity/recordings/envvar-getall-keyvalue/resolve-app.json +0 -1
  1416. package/testdata/parity/recordings/envvar-list-baseline/envvars.json +0 -1
  1417. package/testdata/parity/recordings/envvar-list-baseline/resolve-app.json +0 -1
  1418. package/testdata/parity/recordings/envvar-list-empty/envvars.json +0 -1
  1419. package/testdata/parity/recordings/envvar-list-empty/resolve-app.json +0 -1
  1420. package/testdata/parity/recordings/envvar-list-ids/envvars.json +0 -1
  1421. package/testdata/parity/recordings/envvar-list-ids/resolve-app.json +0 -1
  1422. package/testdata/parity/recordings/envvar-list-json/envvars.json +0 -1
  1423. package/testdata/parity/recordings/envvar-list-json/resolve-app.json +0 -1
  1424. package/testdata/parity/recordings/envvar-list-keyvalue/envvars.json +0 -1
  1425. package/testdata/parity/recordings/envvar-list-keyvalue/resolve-app.json +0 -1
  1426. package/testdata/parity/recordings/envvar-set-baseline/add.json +0 -1
  1427. package/testdata/parity/recordings/envvar-set-baseline/resolve-app.json +0 -1
  1428. package/testdata/parity/recordings/envvar-set-baseline/value.txt +0 -1
  1429. package/testdata/parity/recordings/envvar-set-invalid-name/resolve-app.json +0 -1
  1430. package/testdata/parity/recordings/envvar-set-invalid-name/value.txt +0 -1
  1431. package/testdata/parity/recordings/envvar-set-newrelic-blocked/resolve-app.json +0 -1
  1432. package/testdata/parity/recordings/envvar-set-newrelic-blocked/value.txt +0 -1
  1433. package/testdata/parity/recordings/envvar-set-prod-cancel/resolve-app.json +0 -1
  1434. package/testdata/parity/recordings/envvar-set-prod-cancel/value.txt +0 -1
  1435. package/testdata/parity/recordings/envvar-set-prod-confirm-skipped/add.json +0 -1
  1436. package/testdata/parity/recordings/envvar-set-prod-confirm-skipped/resolve-app.json +0 -1
  1437. package/testdata/parity/recordings/envvar-set-prod-confirm-skipped/value.txt +0 -1
  1438. package/testdata/parity/recordings/export-sql-completed/export-status-1.json +0 -1
  1439. package/testdata/parity/recordings/export-sql-completed/export-status-2.json +0 -1
  1440. package/testdata/parity/recordings/import-media-invalid-archive/file.sql +0 -1
  1441. package/testdata/parity/recordings/import-media-shared/abort-media-import.json +0 -1
  1442. package/testdata/parity/recordings/import-media-shared/env-info.json +0 -1
  1443. package/testdata/parity/recordings/import-media-shared/resolve-app.json +0 -1
  1444. package/testdata/parity/recordings/import-media-shared/start-media-import.json +0 -1
  1445. package/testdata/parity/recordings/import-media-status-completed/progress.json +0 -1
  1446. package/testdata/parity/recordings/import-media-status-failed/progress.json +0 -1
  1447. package/testdata/parity/recordings/import-media-url-completed/progress.json +0 -1
  1448. package/testdata/parity/recordings/import-sql-bad-extension/file.txt +0 -1
  1449. package/testdata/parity/recordings/import-sql-in-progress/env-info.json +0 -1
  1450. package/testdata/parity/recordings/import-sql-in-progress/resolve-app.json +0 -1
  1451. package/testdata/parity/recordings/import-sql-noninteractive-abort/clean.sql +0 -5
  1452. package/testdata/parity/recordings/import-sql-shared/env-info.json +0 -1
  1453. package/testdata/parity/recordings/import-sql-shared/multisite.json +0 -1
  1454. package/testdata/parity/recordings/import-sql-shared/resolve-app.json +0 -1
  1455. package/testdata/parity/recordings/import-sql-status-completed/progress.json +0 -1
  1456. package/testdata/parity/recordings/import-sql-status-no-job/progress.json +0 -1
  1457. package/testdata/parity/recordings/import-sql-validation-failure/dirty.sql +0 -6
  1458. package/testdata/parity/recordings/import-validate-files-clean/config.json +0 -1
  1459. package/testdata/parity/recordings/import-validate-files-clean/uploads/2020/06/a.jpg +0 -1
  1460. package/testdata/parity/recordings/import-validate-files-clean/uploads/2020/06/b.png +0 -1
  1461. package/testdata/parity/recordings/import-validate-sql-clean/clean.sql +0 -17
  1462. package/testdata/parity/recordings/import-validate-sql-dangerous-stmt/dangerous.sql +0 -11
  1463. package/testdata/parity/recordings/import-validate-sql-multisite-warn/multisite.sql +0 -12
  1464. package/testdata/parity/recordings/logs-baseline/logs.json +0 -1
  1465. package/testdata/parity/recordings/logs-baseline/resolve-app.json +0 -1
  1466. package/testdata/parity/recordings/logs-batch/logs.json +0 -1
  1467. package/testdata/parity/recordings/logs-batch/resolve-app.json +0 -1
  1468. package/testdata/parity/recordings/logs-empty/logs.json +0 -1
  1469. package/testdata/parity/recordings/logs-empty/resolve-app.json +0 -1
  1470. package/testdata/parity/recordings/logs-format-json/logs.json +0 -1
  1471. package/testdata/parity/recordings/logs-format-json/resolve-app.json +0 -1
  1472. package/testdata/parity/recordings/logs-limit-100/logs.json +0 -1
  1473. package/testdata/parity/recordings/logs-limit-100/resolve-app.json +0 -1
  1474. package/testdata/parity/recordings/m7c-shared/resolve-app.json +0 -1
  1475. package/testdata/parity/recordings/phpmyadmin-error/enable.json +0 -1
  1476. package/testdata/parity/recordings/phpmyadmin-error/resolve-app.json +0 -1
  1477. package/testdata/parity/recordings/phpmyadmin-print/enable.json +0 -1
  1478. package/testdata/parity/recordings/phpmyadmin-print/generate.json +0 -1
  1479. package/testdata/parity/recordings/phpmyadmin-print/resolve-app.json +0 -1
  1480. package/testdata/parity/recordings/phpmyadmin-print/status.json +0 -1
  1481. package/testdata/parity/recordings/phpmyadmin-silent/enable.json +0 -1
  1482. package/testdata/parity/recordings/phpmyadmin-silent/generate.json +0 -1
  1483. package/testdata/parity/recordings/phpmyadmin-silent/resolve-app.json +0 -1
  1484. package/testdata/parity/recordings/phpmyadmin-silent/status.json +0 -1
  1485. package/testdata/parity/recordings/slowlogs-baseline/resolve-app.json +0 -1
  1486. package/testdata/parity/recordings/slowlogs-baseline/slowlogs.json +0 -1
  1487. package/testdata/parity/recordings/slowlogs-csv/resolve-app.json +0 -1
  1488. package/testdata/parity/recordings/slowlogs-csv/slowlogs.json +0 -1
  1489. package/testdata/parity/recordings/slowlogs-empty/resolve-app.json +0 -1
  1490. package/testdata/parity/recordings/slowlogs-empty/slowlogs.json +0 -1
  1491. package/testdata/parity/recordings/slowlogs-limit-50/resolve-app.json +0 -1
  1492. package/testdata/parity/recordings/slowlogs-limit-50/slowlogs.json +0 -1
  1493. package/testdata/parity/recordings/sync-already-syncing/resolve-app.json +0 -1
  1494. package/testdata/parity/recordings/sync-already-syncing/sync-start.json +0 -1
  1495. package/testdata/parity/recordings/sync-already-syncing/sync-status-1.json +0 -1
  1496. package/testdata/parity/recordings/sync-already-syncing/sync-status-2.json +0 -1
  1497. package/testdata/parity/recordings/sync-baseline/resolve-app.json +0 -1
  1498. package/testdata/parity/recordings/sync-baseline/sync-start.json +0 -1
  1499. package/testdata/parity/recordings/sync-baseline/sync-status-1.json +0 -1
  1500. package/testdata/parity/recordings/sync-baseline/sync-status-2.json +0 -1
  1501. package/testdata/parity/recordings/whoami-baseline/me-response.json +0 -1
  1502. package/testdata/parity/recordings/wp-nodejs-rejected/resolve-app.json +0 -1
  1503. package/testdata/parity/recordings/wp-production-confirm-decline/resolve-app.json +0 -1
  1504. package/testdata/parity/recordings/wp-ssh-happy/resolve-app.json +0 -1
  1505. package/testdata/parity/recordings/wp-websocket-redirect/resolve-app.json +0 -1
  1506. package/testdata/parity/slowlogs-baseline.yaml +0 -18
  1507. package/testdata/parity/slowlogs-csv.yaml +0 -16
  1508. package/testdata/parity/slowlogs-empty.yaml +0 -17
  1509. package/testdata/parity/slowlogs-limit-50.yaml +0 -16
  1510. package/testdata/parity/sync-already-syncing.yaml +0 -20
  1511. package/testdata/parity/sync-baseline.yaml +0 -19
  1512. package/testdata/parity/version-smoke.yaml +0 -14
  1513. package/testdata/parity/whoami-baseline.yaml +0 -14
  1514. package/testdata/parity/wp-help.yaml +0 -12
  1515. package/testdata/parity/wp-nodejs-rejected.yaml +0 -13
  1516. package/testdata/parity/wp-production-confirm-decline.yaml +0 -14
  1517. package/testdata/parity/wp-ssh-happy.yaml +0 -15
  1518. package/testdata/parity/wp-websocket-redirect.yaml +0 -14
  1519. package/testdata/parity-local/app-get-csv.yaml +0 -8
  1520. package/testdata/parity-local/app-get-json.yaml +0 -8
  1521. package/testdata/parity-local/app-get-table.yaml +0 -8
  1522. package/testdata/parity-local/app-list-csv.yaml +0 -8
  1523. package/testdata/parity-local/app-list-json.yaml +0 -8
  1524. package/testdata/parity-local/app-list-table.yaml +0 -8
  1525. package/testdata/parity-local/edge-workers/basic/edge-workers.json +0 -1
  1526. package/testdata/parity-local/edge-workers/basic/workers/headers/assembly/index.ts +0 -1
  1527. package/testdata/parity-local/edge-workers/basic/workers/headers/worker.json +0 -1
  1528. package/testdata/parity-local/edge-workers/two-workers/edge-workers.json +0 -1
  1529. package/testdata/parity-local/edge-workers/two-workers/workers/a/assembly/index.ts +0 -1
  1530. package/testdata/parity-local/edge-workers/two-workers/workers/a/worker.json +0 -1
  1531. package/testdata/parity-local/edge-workers/two-workers/workers/b/assembly/index.ts +0 -1
  1532. package/testdata/parity-local/edge-workers/two-workers/workers/b/worker.json +0 -1
  1533. package/testdata/parity-local/envvar-list-csv.yaml +0 -8
  1534. package/testdata/parity-local/envvar-list-ids.yaml +0 -8
  1535. package/testdata/parity-local/envvar-list-json.yaml +0 -8
  1536. package/testdata/parity-local/envvar-list-keyvalue.yaml +0 -8
  1537. package/testdata/parity-local/envvar-list-table.yaml +0 -8
  1538. package/testdata/parity-local/software-get-csv.yaml +0 -8
  1539. package/testdata/parity-local/software-get-json.yaml +0 -8
  1540. package/testdata/parity-local/software-get-table.yaml +0 -8
  1541. package/testdata/parity-local/whoami.yaml +0 -8
  1542. package/testdata/update-fixture/main.go +0 -62
  1543. package/third_party/go-search-replace/MANIFEST +0 -33
  1544. package/tsconfig.json +0 -25
  1545. /package/node_modules/lando/node_modules/{wrap-ansi → ansi-regex}/license +0 -0
@@ -1,491 +0,0 @@
1
- package devenv
2
-
3
- import (
4
- "compress/gzip"
5
- "context"
6
- "errors"
7
- "fmt"
8
- "io"
9
- "os"
10
- "path/filepath"
11
- "runtime"
12
- "strconv"
13
- "strings"
14
-
15
- "github.com/Automattic/vip/internal/appctx"
16
- "github.com/Automattic/vip/internal/debuglog"
17
- "github.com/Automattic/vip/internal/devenv/dockercli"
18
- "github.com/Automattic/vip/internal/searchreplace"
19
- )
20
-
21
- // containerUploadsPath is where WordPress uploads live in the php container.
22
- const containerUploadsPath = "/wp/wp-content/uploads"
23
-
24
- // ImportOptions controls `import sql`.
25
- type ImportOptions struct {
26
- // SearchReplace pairs ("from,to"), applied to the SQL before import.
27
- SearchReplace []string
28
- // InPlace rewrites the source SQL file with the search-replace result
29
- // instead of importing a throwaway copy.
30
- InPlace bool
31
- // Quiet suppresses informational output during import.
32
- Quiet bool
33
- // SkipValidate skips BOTH pre-import checks, exactly as Node's one flag
34
- // does (dev-env-import-sql.ts:83-101):
35
- // 1. the running-environment gate (php + database must be up), and
36
- // 2. the SQL-file validation suite (see importvalidate.go).
37
- // `dev-env sync sql` sets it, matching Node's runImport
38
- // (dev-env-sync-sql.ts:333-336) — the SQL it imports is an export it just
39
- // produced and search-replaced itself.
40
- SkipValidate bool
41
- // SkipReindex skips the post-import Elasticsearch reindex (Node
42
- // `-k/--skip-reindex`, dev-env-import-sql.ts:130). Wired.
43
- SkipReindex bool
44
- // Out receives the informational output Node prints ("Success: Database
45
- // imported.", the data-cleanup warning). Defaults to os.Stdout.
46
- Out io.Writer
47
- // Confirm answers the irreversible --in-place question. Injected by the
48
- // cobra layer so the prompt can see the --non-interactive FLAG and not
49
- // just the VIP_NON_INTERACTIVE env var (this package has no command to
50
- // hand to appctx). nil falls back to the command-less prompt.
51
- Confirm func(message string, defaultYes bool) (bool, error)
52
- // BatchMode pre-confirms the irreversible --in-place rewrite, exactly as
53
- // Node's batchMode does (search-and-replace.ts:151 gates the prompt on
54
- // `inPlace && ! batchMode`).
55
- //
56
- // `dev-env sync sql` sets it. Node never reaches this prompt from sync at
57
- // all: runImport (dev-env-sync-sql.ts:333-338) passes inPlace/skipValidate/
58
- // quiet/postImportSQL and NO searchReplace, because sync already ran its
59
- // own streaming replacement (:199-208). Go instead hands the pairs to
60
- // ImportSQL, so without this the prompt fires on a temp file the user
61
- // never named — asking a meaningless question interactively, and in CI
62
- // failing *after* the full production export has already been paid for.
63
- BatchMode bool
64
- }
65
-
66
- // searchReplacePairs passes the user's "from,to" pairs through unchanged;
67
- // internal/searchreplace.Run already expects that comma form.
68
- func searchReplacePairs(pairs []string) []string { return pairs }
69
-
70
- // importCopyArgs builds `docker cp <host> <container>:<dest>`.
71
- func importCopyArgs(hostPath, containerID, destPath string) []string {
72
- return []string{"cp", hostPath, containerID + ":" + destPath}
73
- }
74
-
75
- // importMediaCopyArgs builds `docker cp <srcDir>/. <container>:<uploads>` — the
76
- // trailing /. copies the directory's CONTENTS into uploads.
77
- func importMediaCopyArgs(srcDir, containerID string) []string {
78
- // Use explicit string concat — filepath.Join cleans "/." away.
79
- return []string{"cp", srcDir + "/.", containerID + ":" + containerUploadsPath}
80
- }
81
-
82
- // importSQLArgs builds the compose args for the SQL import:
83
- // `exec -T php wp --allow-root db import <path>`. The leading compose binary +
84
- // `-p <slug>` are supplied by Runner.Compose. `-T` disables TTY allocation
85
- // (stdin is a pipe/file, not a terminal). `--allow-root` is required because the
86
- // php container runs as root (Lando ran wp as a non-root user; the Go port does
87
- // not), so wp-cli would otherwise refuse with "YIKES! running as root".
88
- func importSQLArgs(containerPath string) []string {
89
- return []string{"exec", "-T", phpService, "wp", "--allow-root", "db", "import", containerPath}
90
- }
91
-
92
- // myDumperImportArgs builds the compose exec args for importing a MyDumper dump.
93
- // Node's `db-myloader` is a Lando TOOLING alias (assets/dev-env.lando.template.yml.ejs),
94
- // not a wp-cli command: it runs the `myloader` binary (bundled in the php-fpm
95
- // image) against the dev-env database, streaming the dump on stdin. We invoke
96
- // the binary directly in the php service (root, the container default), with the
97
- // same flags getImportArgs appends (dev-env-import-sql.ts:156).
98
- func myDumperImportArgs(sourceDB string, quiet bool, threads int) []string {
99
- args := []string{
100
- "exec", "-T", phpService,
101
- "myloader", "-h", "database", "-u", "wordpress", "-p", "wordpress", "--database", "wordpress",
102
- // --drop-table (DROP mode by default): myloader 0.21.3 deprecated
103
- // --overwrite-tables (it no longer drops -> "table already exists").
104
- "--drop-table",
105
- }
106
- if sourceDB != "" {
107
- args = append(args, "--source-db="+sourceDB)
108
- }
109
- args = append(args,
110
- "--threads="+strconv.Itoa(threads),
111
- "--max-threads-for-schema-creation=10",
112
- "--max-threads-for-index-creation=10",
113
- "--skip-triggers", "--skip-post", "--optimize-keys",
114
- "--checksum=SKIP", "--metadata-refresh-interval=2000000", "--stream",
115
- )
116
- if quiet {
117
- args = append(args, "--verbose=0")
118
- } else {
119
- args = append(args, "--verbose=3")
120
- }
121
- return args
122
- }
123
-
124
- // myDumperThreads mirrors Node's Math.max(os.cpus().length - 2, 1).
125
- func myDumperThreads() int {
126
- if n := runtime.NumCPU() - 2; n > 1 {
127
- return n
128
- }
129
- return 1
130
- }
131
-
132
- // importRunner is everything the import path needs from dockercli.Runner.
133
- // Depending on the interface (rather than the concrete runner) lets the whole
134
- // import sequence — including Node's post-import steps — be unit-tested with
135
- // no Docker daemon; *dockercli.Runner satisfies it.
136
- type importRunner interface {
137
- composeExecer
138
- Docker(ctx context.Context, args ...string) error
139
- ComposeStdin(ctx context.Context, project string, stdin io.Reader, args ...string) error
140
- ComposeOut(ctx context.Context, project string, args ...string) ([]byte, error)
141
- ComposePS(ctx context.Context, project string) ([]dockercli.ServiceState, error)
142
- }
143
-
144
- // databaseService is the MariaDB service; phpService lives in devexec.go.
145
- const databaseService = "database"
146
-
147
- // requiredRunningServices are the two services Node checks before importing
148
- // (dev-env-import-sql.ts:84-89 and vip-dev-env-sync-sql.js:123-126).
149
- var requiredRunningServices = []string{phpService, databaseService}
150
-
151
- // ErrEnvironmentNotStarted carries Node's exact UserError text
152
- // (dev-env-import-sql.ts:92). Node routes UserError to exit.withError, which
153
- // prints "Error: <message>" and exits 1 — the same thing returning this does.
154
- var ErrEnvironmentNotStarted = errors.New("Environment needs to be started first")
155
-
156
- // EnvironmentIsRunning ports isContainerRunning (dev-environment-lando.ts:1056)
157
- // for the php + database pair: Lando asked Docker for containers labelled with
158
- // the compose project and service and filtered on status "running"; compose's
159
- // own `ps --format json --all` gives us the same information in one call.
160
- //
161
- // A ComposePS error is NOT translated into "needs to be started": that failure
162
- // means Docker itself is unreachable, which the user needs to see verbatim.
163
- func EnvironmentIsRunning(ctx context.Context, r importRunner, slug string) (bool, error) {
164
- states, err := r.ComposePS(ctx, slug)
165
- if err != nil {
166
- return false, err
167
- }
168
- running := make(map[string]bool, len(states))
169
- for _, s := range states {
170
- if strings.EqualFold(s.State, "running") {
171
- running[s.Service] = true
172
- }
173
- }
174
- for _, svc := range requiredRunningServices {
175
- if !running[svc] {
176
- return false, nil
177
- }
178
- }
179
- return true, nil
180
- }
181
-
182
- func ensureEnvironmentRunning(ctx context.Context, r importRunner, slug string) error {
183
- up, err := EnvironmentIsRunning(ctx, r, slug)
184
- if err != nil {
185
- return err
186
- }
187
- if !up {
188
- return ErrEnvironmentNotStarted
189
- }
190
- return nil
191
- }
192
-
193
- // containerID resolves the php service's container id for `docker cp` via
194
- // `docker compose -p <slug> ps -q <service>`, run (by ComposeOut) from the
195
- // env's materialized directory so compose finds its compose file.
196
- func containerID(ctx context.Context, r importRunner, slug, service string) (string, error) {
197
- out, err := r.ComposeOut(ctx, slug, "ps", "-q", service)
198
- if err != nil {
199
- return "", err
200
- }
201
- id := strings.TrimRight(string(out), "\r\n")
202
- if id == "" {
203
- return "", fmt.Errorf("devenv: no running container for service %q (start the environment first)", service)
204
- }
205
- return id, nil
206
- }
207
-
208
- // ImportSQL imports a SQL file into a running env, optionally search-replacing
209
- // it first. The real docker cp + exec are exercised under the devenv_e2e gate.
210
- func ImportSQL(ctx context.Context, slug, file string, o ImportOptions) error {
211
- debuglog.Printf(ctx, debugNamespace, "Will import SQL into environment %q: inPlace=%t searchReplacePairs=%d", slug, o.InPlace, len(o.SearchReplace))
212
- // --in-place rewrites the user's own dump irreversibly. Node reaches
213
- // searchAndReplace from here via resolveImportPath (dev-environment-core.ts:854)
214
- // with no batchMode, so its "This operation is not reversible" confirm
215
- // fires — unlike the platform `vip import sql` path, which pre-confirms and
216
- // passes batchMode:true. Gate before anything else runs: no rewrite, no
217
- // Docker call, nothing to undo if the answer is no. Declining exits 0 with
218
- // the file untouched (Node's bare process.exit()); a context that cannot
219
- // prompt is refused rather than silently proceeding or hanging in CI.
220
- if o.InPlace && len(o.SearchReplace) > 0 && !o.BatchMode {
221
- ask := o.Confirm
222
- if ask == nil {
223
- ask = func(message string, defaultYes bool) (bool, error) {
224
- return appctx.Confirm(nil, message, defaultYes)
225
- }
226
- }
227
- approved, err := ask(searchreplace.InPlaceConfirmMessage, false)
228
- if err != nil {
229
- return err
230
- }
231
- if !approved {
232
- return nil
233
- }
234
- }
235
-
236
- r, err := newRunner(ctx)
237
- if err != nil {
238
- return err
239
- }
240
- return importSQL(ctx, r, slug, file, o)
241
- }
242
-
243
- // importSQL is ImportSQL's body, parameterised over the runner so the full
244
- // sequence (import + Node's post-import steps) is testable without Docker.
245
- // The --in-place confirmation is handled by ImportSQL before this is reached.
246
- func importSQL(ctx context.Context, r importRunner, slug, file string, o ImportOptions) error {
247
- out := o.Out
248
- if out == nil {
249
- out = os.Stdout
250
- }
251
-
252
- // Detect the dump type on the ORIGINAL file, before any rewrite or
253
- // decompression — GetSqlDumpDetails reads through gzip transparently.
254
- details, _ := searchreplace.GetSqlDumpDetails(file)
255
-
256
- // Decompress a compressed dump to a plaintext temp file BEFORE using it,
257
- // mirroring Node (dev-env-import-sql.ts:51-73). This is not optional:
258
- // `myloader --stream` needs the raw `-- <file> <len>` stream framing, and
259
- // piping it the gzip bytes instead makes it read zero files and hang
260
- // forever (the loader threads block on work that never arrives). `wp db
261
- // import` likewise needs plaintext SQL. Neither decompresses on its own.
262
- switch comp, derr := dumpCompression(file); {
263
- case derr != nil:
264
- return derr
265
- case comp == "gzip":
266
- if !o.Quiet {
267
- fmt.Fprintf(out, "Extracting the compressed file %s...\n", file)
268
- }
269
- plain, cleanup, derr := decompressDumpToTemp(file)
270
- if derr != nil {
271
- return derr
272
- }
273
- defer cleanup()
274
- file = plain
275
- case comp == "zip":
276
- // Node detects zip as compressed but unzipFile only extracts gzip
277
- // (client-file-uploader.ts:226-236), so a zip import fails the same way.
278
- return fmt.Errorf("Error extracting the SQL file: unsupported file format: application/zip")
279
- }
280
-
281
- isMyDumper := details.Type == searchreplace.DumpTypeMyDumper
282
-
283
- // Node runs the running-environment gate and the SQL validation under ONE
284
- // `if ( ! this.options.skipValidate )` (dev-env-import-sql.ts:83-101), so
285
- // --skip-validate skips both. The gate comes first here — before the
286
- // search-replace rather than after it as in Node — so a stopped environment
287
- // cannot leave the user with a rewritten (--in-place) dump and no import.
288
- if !o.SkipValidate {
289
- if err := ensureEnvironmentRunning(ctx, r, slug); err != nil {
290
- return err
291
- }
292
- }
293
-
294
- // Node's resolveImportPath: apply the file-level search-replace, then
295
- // validate and import the RESULT (dev-env-import-sql.ts:76-96). MyDumper
296
- // dumps are excluded — rewriting one invalidates the per-file byte markers
297
- // `myloader --stream` relies on, so those pairs are applied with
298
- // `wp search-replace` after the import instead (see importMyDumperDump).
299
- resolved := file
300
- if !isMyDumper && len(o.SearchReplace) > 0 {
301
- res, err := searchreplace.RunContext(ctx, file, searchReplacePairs(o.SearchReplace), searchreplace.Options{InPlace: o.InPlace})
302
- if err != nil {
303
- return err
304
- }
305
- resolved = res.OutputFileName
306
- // --in-place rewrites the original file; otherwise the result lives in
307
- // a throwaway temp dir we clean up once the import is done.
308
- if !o.InPlace {
309
- defer os.RemoveAll(filepath.Dir(res.OutputFileName))
310
- }
311
- }
312
-
313
- if !o.SkipValidate {
314
- if err := validateDevEnvSQL(sqlValidationInput{
315
- Path: resolved,
316
- // Node: `${ this.slug }.${ lando.config.domain }` (ts:95).
317
- ExpectedDomain: slug + "." + devEnvDomain(slug),
318
- IsMyDumper: isMyDumper,
319
- HasSearchReplace: len(o.SearchReplace) > 0,
320
- Quiet: o.Quiet,
321
- }, out); err != nil {
322
- return err
323
- }
324
- }
325
-
326
- if isMyDumper {
327
- if err := importMyDumperDump(ctx, r, slug, resolved, details.SourceDB, o); err != nil {
328
- return err
329
- }
330
- } else if err := importMysqldump(ctx, r, slug, resolved); err != nil {
331
- return err
332
- }
333
-
334
- if !o.Quiet {
335
- fmt.Fprintln(out, "Success: Database imported.")
336
- }
337
-
338
- // Node's run() does not end at the import: it flushes the cache, reindexes,
339
- // recreates the `vipgo` admin user and runs the VIP data cleanup
340
- // (dev-env-import-sql.ts:128-142). Skipping them locks the user out of
341
- // their own local wp-admin, because the imported dump replaced the local
342
- // users table with the source environment's.
343
- return postImportSteps(ctx, r, slug, postImportOptions{
344
- Quiet: o.Quiet,
345
- SkipReindex: o.SkipReindex,
346
- }, out)
347
- }
348
-
349
- // importMysqldump handles a plain mysqldump: `docker cp` the (already
350
- // search-replaced) file into the php container, then `wp db import`.
351
- func importMysqldump(ctx context.Context, r importRunner, slug, src string) error {
352
- cid, err := containerID(ctx, r, slug, phpService)
353
- if err != nil {
354
- return err
355
- }
356
- dest := "/tmp/" + filepath.Base(src)
357
- if err := r.Docker(ctx, importCopyArgs(src, cid, dest)...); err != nil {
358
- return err
359
- }
360
- // Run the import via the compose runner (tees output to terminal + log).
361
- return r.Compose(ctx, slug, importSQLArgs(dest)...)
362
- }
363
-
364
- // importMyDumperDump handles a MyDumper-format dump: stream the dump into
365
- // myloader (it must NOT be file-level search-replaced — that changes content
366
- // lengths and invalidates the per-file byte markers myloader uses to delimit
367
- // the --stream), then search-replace the live DB with wp-cli afterward.
368
- //
369
- // The dump is decompressed upstream in ImportSQL before it gets here. That step
370
- // is mandatory: a gzip-compressed stream piped into `myloader --stream` is read
371
- // as zero files, after which the loader threads block on work that never
372
- // arrives and the import hangs (myloader prints "Intermediate thread: SHUTDOWN"
373
- // and nothing more). Verified end-to-end against a real VIP MyDumper backup on
374
- // container myloader 0.21.3 — so this is the streaming bug, not the container.
375
- func importMyDumperDump(ctx context.Context, r importRunner, slug, file, sourceDB string, o ImportOptions) error {
376
- if err := importMyDumper(ctx, r, slug, file, sourceDB, o.Quiet); err != nil {
377
- return err
378
- }
379
- return wpSearchReplace(ctx, r, slug, o.SearchReplace, o.Quiet)
380
- }
381
-
382
- // wpSearchReplace runs `wp search-replace <from> <to> --all-tables` for each
383
- // "from,to" pair on the live DB (used after a MyDumper import, where the dump
384
- // can't be file-level rewritten). wp-cli handles serialized PHP data correctly.
385
- func wpSearchReplace(ctx context.Context, r importRunner, slug string, pairs []string, quiet bool) error {
386
- for _, p := range pairs {
387
- from, to, ok := strings.Cut(p, ",")
388
- if !ok || from == "" {
389
- continue
390
- }
391
- args := []string{"exec", "-T", phpService, "wp", "--allow-root", "search-replace", from, to, "--all-tables", "--skip-columns=guid"}
392
- if quiet {
393
- args = append(args, "--quiet")
394
- }
395
- if err := r.Compose(ctx, slug, args...); err != nil {
396
- return err
397
- }
398
- }
399
- return nil
400
- }
401
-
402
- // importMyDumper streams a MyDumper dump file into `myloader --stream`.
403
- func importMyDumper(ctx context.Context, r importRunner, slug, file, sourceDB string, quiet bool) error {
404
- f, err := os.Open(file) // #nosec G304 -- CLI/exported dump path
405
- if err != nil {
406
- return err
407
- }
408
- defer f.Close()
409
- return r.ComposeStdin(ctx, slug, f, myDumperImportArgs(sourceDB, quiet, myDumperThreads())...)
410
- }
411
-
412
- // dumpCompression peeks the first bytes of path for a gzip/zip magic number,
413
- // mirroring Node's detectCompressedMimeType (client-file-uploader.ts:565):
414
- // 1f8b → "gzip", 504b0304 → "zip", anything else → "" (uncompressed). Detection
415
- // is by content, not extension, so a misnamed .gz still imports.
416
- func dumpCompression(path string) (string, error) {
417
- f, err := os.Open(path) // #nosec G304 -- CLI/exported dump path
418
- if err != nil {
419
- return "", err
420
- }
421
- defer f.Close()
422
-
423
- hdr := make([]byte, 4)
424
- n, err := io.ReadFull(f, hdr)
425
- if err != nil && !errors.Is(err, io.EOF) && !errors.Is(err, io.ErrUnexpectedEOF) {
426
- return "", err
427
- }
428
- hdr = hdr[:n]
429
- switch {
430
- case len(hdr) >= 2 && hdr[0] == 0x1f && hdr[1] == 0x8b:
431
- return "gzip", nil
432
- case len(hdr) >= 4 && hdr[0] == 0x50 && hdr[1] == 0x4b && hdr[2] == 0x03 && hdr[3] == 0x04:
433
- return "zip", nil
434
- }
435
- return "", nil
436
- }
437
-
438
- // decompressDumpToTemp gunzips src into a fresh temp "sql-import.sql" file and
439
- // returns its path plus a cleanup func (Node extracts to a makeTempDir() path,
440
- // dev-env-import-sql.ts:54-68). The caller defers cleanup.
441
- func decompressDumpToTemp(src string) (path string, cleanup func(), err error) {
442
- in, err := os.Open(src) // #nosec G304 -- CLI/exported dump path
443
- if err != nil {
444
- return "", nil, err
445
- }
446
- defer in.Close()
447
-
448
- zr, err := gzip.NewReader(in)
449
- if err != nil {
450
- return "", nil, fmt.Errorf("Error extracting the SQL file: %s", err.Error())
451
- }
452
- defer zr.Close()
453
-
454
- dir, err := os.MkdirTemp("", "vip-import-")
455
- if err != nil {
456
- return "", nil, err
457
- }
458
- cleanup = func() { _ = os.RemoveAll(dir) }
459
-
460
- out := filepath.Join(dir, "sql-import.sql")
461
- f, err := os.Create(out) // #nosec G304 -- temp dir we just created
462
- if err != nil {
463
- cleanup()
464
- return "", nil, err
465
- }
466
- // #nosec G110 -- trusted exported/VIP-backup dump, not attacker input.
467
- if _, err := io.Copy(f, zr); err != nil {
468
- _ = f.Close()
469
- cleanup()
470
- return "", nil, fmt.Errorf("Error extracting the SQL file: %s", err.Error())
471
- }
472
- if err := f.Close(); err != nil {
473
- cleanup()
474
- return "", nil, err
475
- }
476
- return out, cleanup, nil
477
- }
478
-
479
- // ImportMedia copies a local media directory's contents into the env uploads.
480
- func ImportMedia(ctx context.Context, slug, srcDir string) error {
481
- debuglog.Printf(ctx, debugNamespace, "Will import media into environment %q", slug)
482
- r, err := newRunner(ctx)
483
- if err != nil {
484
- return err
485
- }
486
- cid, err := containerID(ctx, r, slug, phpService)
487
- if err != nil {
488
- return err
489
- }
490
- return r.Docker(ctx, importMediaCopyArgs(srcDir, cid)...)
491
- }
@@ -1,142 +0,0 @@
1
- package devenv
2
-
3
- import (
4
- "context"
5
- "errors"
6
- "os"
7
- "path/filepath"
8
- "strings"
9
- "testing"
10
-
11
- "github.com/Automattic/vip/internal/appctx"
12
- )
13
-
14
- // Parity blocker B2. Node's dev-env import sql reaches searchAndReplace through
15
- // resolveImportPath (dev-environment-core.ts:854) WITHOUT batchMode, so the
16
- // "This operation is not reversible" confirm fires — unlike the platform
17
- // `vip import sql` path, which passes batchMode:true (vip-import-sql.js:732)
18
- // because it has already confirmed. vip-next rewrote the user's dump with no
19
- // prompt on either dev-env path.
20
- //
21
- // The test process has no TTY, so the gate must refuse before anything is
22
- // rewritten — and before Docker is contacted, which is also why this test can
23
- // run without a container.
24
- func TestImportSQLInPlaceRequiresConfirmation(t *testing.T) {
25
- src := filepath.Join(t.TempDir(), "dump.sql")
26
- const original = "-- MySQL dump\nCREATE TABLE a;\n"
27
- if err := os.WriteFile(src, []byte(original), 0o644); err != nil { // #nosec G306
28
- t.Fatal(err)
29
- }
30
-
31
- err := ImportSQL(context.Background(), "e", src, ImportOptions{
32
- SearchReplace: []string{"from,to"},
33
- InPlace: true,
34
- })
35
- if !errors.Is(err, appctx.ErrNonInteractive) {
36
- t.Errorf("err = %v; want appctx.ErrNonInteractive (the in-place confirm must gate the rewrite)", err)
37
- }
38
- got, readErr := os.ReadFile(src) // #nosec G304
39
- if readErr != nil {
40
- t.Fatal(readErr)
41
- }
42
- if string(got) != original {
43
- t.Errorf("dump was rewritten without confirmation:\n got %q\nwant %q", got, original)
44
- }
45
- }
46
-
47
- // BatchMode is Node's own pre-confirm (search-and-replace.ts:151 gates on
48
- // `inPlace && ! batchMode`). `dev-env sync sql` sets it because the file is a
49
- // temp export, not anything the user named — Node never even reaches this
50
- // prompt from sync, since runImport passes no searchReplace at all
51
- // (dev-env-sync-sql.ts:333-338).
52
- //
53
- // Without this, sync asks a meaningless question interactively and in CI fails
54
- // with ErrNonInteractive *after* the whole production export has been paid for.
55
- func TestImportSQLBatchModeSkipsInPlaceConfirmation(t *testing.T) {
56
- src := filepath.Join(t.TempDir(), "dump.sql")
57
- if err := os.WriteFile(src, []byte("-- MySQL dump\nCREATE TABLE a;\n"), 0o644); err != nil { // #nosec G306
58
- t.Fatal(err)
59
- }
60
-
61
- err := ImportSQL(context.Background(), "e", src, ImportOptions{
62
- SearchReplace: []string{"from,to"},
63
- InPlace: true,
64
- SkipValidate: true,
65
- BatchMode: true,
66
- Confirm: func(string, bool) (bool, error) {
67
- t.Error("BatchMode must pre-confirm; the prompt fired anyway")
68
- return false, nil
69
- },
70
- })
71
- // It must get PAST the confirm. It then fails for an unrelated reason
72
- // (no Docker in a unit test), which is the point: not ErrNonInteractive.
73
- if errors.Is(err, appctx.ErrNonInteractive) {
74
- t.Errorf("err = %v; BatchMode must not reach the interactive gate", err)
75
- }
76
- }
77
-
78
- // Without --in-place nothing irreversible happens, so there must be no prompt:
79
- // the run proceeds (and then fails for an unrelated, non-confirmation reason).
80
- func TestImportSQLWithoutInPlaceDoesNotConfirm(t *testing.T) {
81
- src := filepath.Join(t.TempDir(), "dump.sql")
82
- if err := os.WriteFile(src, []byte("-- MySQL dump\nCREATE TABLE a;\n"), 0o644); err != nil { // #nosec G306
83
- t.Fatal(err)
84
- }
85
- err := ImportSQL(context.Background(), "e", src, ImportOptions{SearchReplace: []string{"from,to"}})
86
- if errors.Is(err, appctx.ErrNonInteractive) {
87
- t.Error("no --in-place: Node does not prompt here, so vip-next must not either")
88
- }
89
- }
90
-
91
- func TestImportSQLArgs(t *testing.T) {
92
- // --allow-root: the php container runs as root, so wp-cli refuses without it.
93
- got := importSQLArgs("/tmp/in/file.sql")
94
- want := []string{"exec", "-T", "php", "wp", "--allow-root", "db", "import", "/tmp/in/file.sql"}
95
- assertArgv(t, got, want)
96
- }
97
-
98
- func TestMyDumperImportArgs(t *testing.T) {
99
- // db-myloader is a Lando tooling alias for the myloader binary (run in the
100
- // php service), NOT a wp-cli command.
101
- got := myDumperImportArgs("wordpress", false, 4)
102
- want := []string{
103
- "exec", "-T", "php",
104
- "myloader", "-h", "database", "-u", "wordpress", "-p", "wordpress", "--database", "wordpress",
105
- "--drop-table", "--source-db=wordpress", "--threads=4",
106
- "--max-threads-for-schema-creation=10", "--max-threads-for-index-creation=10",
107
- "--skip-triggers", "--skip-post", "--optimize-keys", "--checksum=SKIP",
108
- "--metadata-refresh-interval=2000000", "--stream", "--verbose=3",
109
- }
110
- assertArgv(t, got, want)
111
- }
112
-
113
- func TestMyDumperImportArgsNoSourceDBQuiet(t *testing.T) {
114
- got := myDumperImportArgs("", true, 1)
115
- joined := strings.Join(got, " ")
116
- if strings.Contains(joined, "--source-db") {
117
- t.Fatalf("empty source db must omit --source-db: %v", got)
118
- }
119
- if !strings.Contains(joined, "--threads=1") || !strings.Contains(joined, "--verbose=0") {
120
- t.Fatalf("quiet/threads not applied: %v", got)
121
- }
122
- }
123
-
124
- func TestImportSQLCopyArgs(t *testing.T) {
125
- got := importCopyArgs("/host/file.sql", "containerid", "/tmp/file.sql")
126
- want := []string{"cp", "/host/file.sql", "containerid:/tmp/file.sql"}
127
- assertArgv(t, got, want)
128
- }
129
-
130
- func TestImportMediaCopyArgs(t *testing.T) {
131
- // Trailing /. copies the directory CONTENTS into uploads (not a nested dir).
132
- got := importMediaCopyArgs("/host/uploads", "cid")
133
- want := []string{"cp", "/host/uploads/.", "cid:/wp/wp-content/uploads"}
134
- assertArgv(t, got, want)
135
- }
136
-
137
- func TestSearchReplacePairsFromFlag(t *testing.T) {
138
- got := searchReplacePairs([]string{"old.com,new.test", "a,b"})
139
- if len(got) != 2 || got[0] != "old.com,new.test" {
140
- t.Fatalf("pairs = %v", got)
141
- }
142
- }