wp-studio 1.7.8-beta2 → 1.7.8-beta4

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 (312) hide show
  1. package/README.md +54 -1
  2. package/assets/demo.gif +0 -0
  3. package/dist/cli/{_events-BRGCap7g.mjs → _events-C2dFSpKE.mjs} +2 -2
  4. package/dist/cli/{certificate-manager-Dd4zv2_k.mjs → certificate-manager-BMngpL-s.mjs} +12 -4
  5. package/dist/cli/{index-9Oz-0bqF.mjs → index-CkFXAp-n.mjs} +5 -5
  6. package/dist/cli/{index-CT4S2538.mjs → index-odShRBgM.mjs} +171 -117
  7. package/dist/cli/{login-D4E3GoXe.mjs → login-BeT1uKwW.mjs} +2 -2
  8. package/dist/cli/{logout-DE-RoshK.mjs → logout-BFQJBJD0.mjs} +2 -2
  9. package/dist/cli/main.mjs +3 -2
  10. package/dist/cli/proxy-daemon.mjs +1 -1
  11. package/dist/cli/{resume-DLoXmzNG.mjs → resume-D_K0QEl5.mjs} +1 -1
  12. package/dist/cli/{set-B8YYUENH.mjs → set-C5l116L7.mjs} +2 -2
  13. package/dist/cli/{set-B0L-QiXT.mjs → set-DzcR6sFr.mjs} +2 -2
  14. package/dist/cli/{status-DEOAA0yx.mjs → status-CbXnAskz.mjs} +1 -1
  15. package/dist/cli/{wp-CobSX6C6.mjs → wp-CUKyZNTP.mjs} +1 -1
  16. package/dist/cli/wp-files/latest/available-site-translations.json +1 -1
  17. package/dist/cli/wp-files/latest/languages/admin-de_DE.l10n.php +2 -2
  18. package/dist/cli/wp-files/latest/languages/admin-network-de_DE.l10n.php +1 -1
  19. package/dist/cli/wp-files/latest/languages/admin-pl_PL.l10n.php +2 -2
  20. package/dist/cli/wp-files/latest/languages/de_DE-0cc31205f20441b3df1d1b46100f6b8d.json +1 -1
  21. package/dist/cli/wp-files/latest/languages/de_DE-0ce75ad2f775d1cac9696967d484808c.json +1 -1
  22. package/dist/cli/wp-files/latest/languages/de_DE-0eebe503220d4a00341eb011b92769b4.json +1 -1
  23. package/dist/cli/wp-files/latest/languages/de_DE-17179a5f2930647c89151e365f843b6e.json +1 -1
  24. package/dist/cli/wp-files/latest/languages/de_DE-1780a2033cf98d69ce13c2e5c8510004.json +1 -1
  25. package/dist/cli/wp-files/latest/languages/de_DE-1a0cd6a7128913b15c1a10dd68951869.json +1 -1
  26. package/dist/cli/wp-files/latest/languages/de_DE-1bba9045bb07c89671c88a3f328548e8.json +1 -1
  27. package/dist/cli/wp-files/latest/languages/de_DE-1c4303f02ff93b290e9faad991eeb06f.json +1 -1
  28. package/dist/cli/wp-files/latest/languages/de_DE-1d17475f620f63a92e2c5d2681c51ee8.json +1 -1
  29. package/dist/cli/wp-files/latest/languages/de_DE-2617ce121227a46077ede6c69aa9fcb5.json +1 -1
  30. package/dist/cli/wp-files/latest/languages/de_DE-270d72d1cff17227d37f3244759cbecb.json +1 -1
  31. package/dist/cli/wp-files/latest/languages/de_DE-28b3c3d595952907e08d98287077426c.json +1 -1
  32. package/dist/cli/wp-files/latest/languages/de_DE-2b390f85a3048c5b4255fb45960b6514.json +1 -1
  33. package/dist/cli/wp-files/latest/languages/de_DE-2c5d274ea625dd91556554ad82901529.json +1 -1
  34. package/dist/cli/wp-files/latest/languages/de_DE-320f4ad9792aaa6dedb1e71cbdf85d57.json +1 -1
  35. package/dist/cli/wp-files/latest/languages/de_DE-440127dd25bde48a531ded36f33e927b.json +1 -1
  36. package/dist/cli/wp-files/latest/languages/de_DE-49c6d4acf36cf3aca9f0b2a77617304f.json +1 -1
  37. package/dist/cli/wp-files/latest/languages/de_DE-4a38fe1c0c45989e44682ba6109d9f46.json +1 -1
  38. package/dist/cli/wp-files/latest/languages/de_DE-4bfa11da57ff2600004bb500368247f4.json +1 -1
  39. package/dist/cli/wp-files/latest/languages/de_DE-50278328b502f4eb3f2b8b7ab49324a1.json +1 -1
  40. package/dist/cli/wp-files/latest/languages/de_DE-5251f7623766a714c8207c7edb938628.json +1 -1
  41. package/dist/cli/wp-files/latest/languages/de_DE-529362903a5a05b34b06b5e793fb4cf8.json +1 -1
  42. package/dist/cli/wp-files/latest/languages/de_DE-569e85ef168299eb8c8f24d8ef8c8a78.json +1 -1
  43. package/dist/cli/wp-files/latest/languages/de_DE-6025add6bde16aaeb12787d250f9b414.json +1 -1
  44. package/dist/cli/wp-files/latest/languages/de_DE-60d06fac6f98e8e8f0ec5a945738b660.json +1 -1
  45. package/dist/cli/wp-files/latest/languages/de_DE-68f2cec7514bf8563c723a4d675fcfe6.json +1 -1
  46. package/dist/cli/wp-files/latest/languages/de_DE-7233008897033de5ee0d14f86a42a65a.json +1 -1
  47. package/dist/cli/wp-files/latest/languages/de_DE-7289286ed59e90a8f36ae797df62220b.json +1 -1
  48. package/dist/cli/wp-files/latest/languages/de_DE-7436b7ee9e4f11ac0d618d8cc886eb66.json +1 -1
  49. package/dist/cli/wp-files/latest/languages/de_DE-77fdfadaf2e1ca3a027d1956b910bc50.json +1 -1
  50. package/dist/cli/wp-files/latest/languages/de_DE-7b74c8457eaa7fcc50db41b431f8a003.json +1 -1
  51. package/dist/cli/wp-files/latest/languages/de_DE-7c90cd4398ee2d9d3628c387a87a70e5.json +1 -1
  52. package/dist/cli/wp-files/latest/languages/de_DE-7d5ca435e60d92f024d46c9257aaa0f7.json +1 -1
  53. package/dist/cli/wp-files/latest/languages/de_DE-7f13c36c641b114bf18cd0bcc9ecc7e0.json +1 -1
  54. package/dist/cli/wp-files/latest/languages/de_DE-803bf1ce2131e13efc590c1bc47851fc.json +1 -1
  55. package/dist/cli/wp-files/latest/languages/de_DE-81c889563f09dd13de1701135dc62941.json +1 -1
  56. package/dist/cli/wp-files/latest/languages/de_DE-81d6f084cb273e02e15b01bd9ece87f7.json +1 -1
  57. package/dist/cli/wp-files/latest/languages/de_DE-8240df461220d1d3a028a9a4c5652a5b.json +1 -1
  58. package/dist/cli/wp-files/latest/languages/de_DE-8860e58c20c6a2ab5876a0f07be43bd9.json +1 -1
  59. package/dist/cli/wp-files/latest/languages/de_DE-93882e8f9976382d7f724ac595ed7151.json +1 -1
  60. package/dist/cli/wp-files/latest/languages/de_DE-947c76bb5095da30e16668eec15406b2.json +1 -1
  61. package/dist/cli/wp-files/latest/languages/de_DE-9b256ea9cd54df92095e04c76758ceb0.json +1 -1
  62. package/dist/cli/wp-files/latest/languages/de_DE-9c3519f4870fac83dc0dbf18cb6bd4c4.json +1 -1
  63. package/dist/cli/wp-files/latest/languages/de_DE-9d47a87c240c1d10701cd6a02b28aa1b.json +1 -1
  64. package/dist/cli/wp-files/latest/languages/de_DE-a25d1cc7bf7ca0b4e114f6bea64943f4.json +1 -1
  65. package/dist/cli/wp-files/latest/languages/de_DE-a2796e57f680e25d84c4b352ee6d7280.json +1 -1
  66. package/dist/cli/wp-files/latest/languages/de_DE-a9dc201dcd011fe71849743133052619.json +1 -1
  67. package/dist/cli/wp-files/latest/languages/de_DE-aabfce98c410957228848dc581e3c420.json +1 -1
  68. package/dist/cli/wp-files/latest/languages/de_DE-ac23eee47530ac63a1178c827db28087.json +1 -1
  69. package/dist/cli/wp-files/latest/languages/de_DE-bf0f094965d3d4a95b47babcb35fc136.json +1 -1
  70. package/dist/cli/wp-files/latest/languages/de_DE-bf23b24175490c2e46aaf92ff6a0c70f.json +1 -1
  71. package/dist/cli/wp-files/latest/languages/de_DE-c31d5f185753910c14afebc6deb2ce24.json +1 -1
  72. package/dist/cli/wp-files/latest/languages/de_DE-ca28138671823450e87dfd354f7afc6b.json +1 -1
  73. package/dist/cli/wp-files/latest/languages/de_DE-daeb084aab42199d26393a56c3465bc0.json +1 -1
  74. package/dist/cli/wp-files/latest/languages/de_DE-e2791ba830489d23043be8650a22a22b.json +1 -1
  75. package/dist/cli/wp-files/latest/languages/de_DE-e2e4c4b80f3adf2c70b431bfdb1b4872.json +1 -1
  76. package/dist/cli/wp-files/latest/languages/de_DE-e53526243551a102928735ec9eed4edf.json +1 -1
  77. package/dist/cli/wp-files/latest/languages/de_DE-f575f481034e90e21d832e415fd95fcf.json +1 -1
  78. package/dist/cli/wp-files/latest/languages/de_DE-f70806bf0c7d62f2908bd5a1c3fe4efc.json +1 -1
  79. package/dist/cli/wp-files/latest/languages/de_DE-f8f49d9fc4a9cf7d78ec99285417bd9c.json +1 -1
  80. package/dist/cli/wp-files/latest/languages/de_DE.l10n.php +27 -27
  81. package/dist/cli/wp-files/latest/languages/pl_PL-0cc31205f20441b3df1d1b46100f6b8d.json +1 -1
  82. package/dist/cli/wp-files/latest/languages/pl_PL-0eebe503220d4a00341eb011b92769b4.json +1 -1
  83. package/dist/cli/wp-files/latest/languages/pl_PL-1c4303f02ff93b290e9faad991eeb06f.json +1 -1
  84. package/dist/cli/wp-files/latest/languages/pl_PL-1d17475f620f63a92e2c5d2681c51ee8.json +1 -1
  85. package/dist/cli/wp-files/latest/languages/pl_PL-2b390f85a3048c5b4255fb45960b6514.json +1 -1
  86. package/dist/cli/wp-files/latest/languages/pl_PL-4a38fe1c0c45989e44682ba6109d9f46.json +1 -1
  87. package/dist/cli/wp-files/latest/languages/pl_PL-4bfa11da57ff2600004bb500368247f4.json +1 -1
  88. package/dist/cli/wp-files/latest/languages/pl_PL-50278328b502f4eb3f2b8b7ab49324a1.json +1 -1
  89. package/dist/cli/wp-files/latest/languages/pl_PL-5251f7623766a714c8207c7edb938628.json +1 -1
  90. package/dist/cli/wp-files/latest/languages/pl_PL-529362903a5a05b34b06b5e793fb4cf8.json +1 -1
  91. package/dist/cli/wp-files/latest/languages/pl_PL-569e85ef168299eb8c8f24d8ef8c8a78.json +1 -1
  92. package/dist/cli/wp-files/latest/languages/pl_PL-6025add6bde16aaeb12787d250f9b414.json +1 -1
  93. package/dist/cli/wp-files/latest/languages/pl_PL-7436b7ee9e4f11ac0d618d8cc886eb66.json +1 -1
  94. package/dist/cli/wp-files/latest/languages/pl_PL-77fdfadaf2e1ca3a027d1956b910bc50.json +1 -1
  95. package/dist/cli/wp-files/latest/languages/pl_PL-7b74c8457eaa7fcc50db41b431f8a003.json +1 -1
  96. package/dist/cli/wp-files/latest/languages/pl_PL-7d5ca435e60d92f024d46c9257aaa0f7.json +1 -1
  97. package/dist/cli/wp-files/latest/languages/pl_PL-81d6f084cb273e02e15b01bd9ece87f7.json +1 -1
  98. package/dist/cli/wp-files/latest/languages/pl_PL-8240df461220d1d3a028a9a4c5652a5b.json +1 -1
  99. package/dist/cli/wp-files/latest/languages/pl_PL-9b256ea9cd54df92095e04c76758ceb0.json +1 -1
  100. package/dist/cli/wp-files/latest/languages/pl_PL-9c3519f4870fac83dc0dbf18cb6bd4c4.json +1 -1
  101. package/dist/cli/wp-files/latest/languages/pl_PL-9d47a87c240c1d10701cd6a02b28aa1b.json +1 -1
  102. package/dist/cli/wp-files/latest/languages/pl_PL-a9dc201dcd011fe71849743133052619.json +1 -1
  103. package/dist/cli/wp-files/latest/languages/pl_PL-aabfce98c410957228848dc581e3c420.json +1 -1
  104. package/dist/cli/wp-files/latest/languages/pl_PL-ca28138671823450e87dfd354f7afc6b.json +1 -1
  105. package/dist/cli/wp-files/latest/languages/pl_PL-e2e4c4b80f3adf2c70b431bfdb1b4872.json +1 -1
  106. package/dist/cli/wp-files/sqlite-command/composer.json +4 -3
  107. package/dist/cli/wp-files/sqlite-command/composer.lock +132 -80
  108. package/dist/cli/wp-files/sqlite-command/vendor/autoload.php +1 -1
  109. package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_classmap.php +58 -70
  110. package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_namespaces.php +1 -0
  111. package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_psr4.php +1 -1
  112. package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_real.php +5 -5
  113. package/dist/cli/wp-files/sqlite-command/vendor/composer/autoload_static.php +78 -80
  114. package/dist/cli/wp-files/sqlite-command/vendor/composer/installed.json +104 -49
  115. package/dist/cli/wp-files/sqlite-command/vendor/composer/installed.php +29 -16
  116. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/CHANGELOG.md +103 -0
  117. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/Comparator.php +62 -0
  118. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/DateComparator.php +50 -0
  119. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Comparator/NumberComparator.php +78 -0
  120. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Exception/AccessDeniedException.php +19 -0
  121. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Exception/DirectoryNotFoundException.php +19 -0
  122. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Finder.php +851 -0
  123. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Gitignore.php +91 -0
  124. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Glob.php +116 -0
  125. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/CustomFilterIterator.php +61 -0
  126. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/DateRangeFilterIterator.php +58 -0
  127. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/DepthRangeFilterIterator.php +48 -0
  128. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php +110 -0
  129. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php +51 -0
  130. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php +58 -0
  131. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/FilenameFilterIterator.php +45 -0
  132. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/LazyIterator.php +32 -0
  133. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php +107 -0
  134. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/PathFilterIterator.php +56 -0
  135. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php +134 -0
  136. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/SizeRangeFilterIterator.php +57 -0
  137. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/SortableIterator.php +115 -0
  138. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php +173 -0
  139. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/LICENSE +19 -0
  140. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/README.md +14 -0
  141. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/SplFileInfo.php +80 -0
  142. package/dist/cli/wp-files/sqlite-command/vendor/symfony/finder/composer.json +31 -0
  143. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/.gitattributes +8 -0
  144. package/dist/cli/wp-files/sqlite-command/vendor/{mustache → wp-cli}/mustache/LICENSE +1 -1
  145. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/README.md +76 -0
  146. package/dist/cli/wp-files/sqlite-command/vendor/{mustache → wp-cli}/mustache/composer.json +6 -16
  147. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/mustache/src/Mustache/Autoloader.php +88 -0
  148. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/AbstractCache.php +7 -15
  149. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/FilesystemCache.php +15 -20
  150. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache/NoopCache.php +4 -8
  151. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Cache.php +7 -10
  152. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Compiler.php +87 -144
  153. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Context.php +19 -23
  154. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Engine.php +134 -251
  155. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/InvalidArgumentException.php +2 -6
  156. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/LogicException.php +2 -6
  157. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/RuntimeException.php +2 -6
  158. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/SyntaxException.php +8 -7
  159. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownFilterException.php +7 -7
  160. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownHelperException.php +7 -7
  161. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception/UnknownTemplateException.php +7 -7
  162. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Exception.php +5 -4
  163. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/HelperCollection.php +17 -22
  164. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/LambdaHelper.php +8 -28
  165. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/ArrayLoader.php +9 -12
  166. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/CascadingLoader.php +15 -18
  167. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/FilesystemLoader.php +18 -24
  168. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/InlineLoader.php +13 -19
  169. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/MutableLoader.php +7 -4
  170. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/ProductionFilesystemLoader.php +16 -23
  171. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader/StringLoader.php +4 -8
  172. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Loader.php +7 -8
  173. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger/AbstractLogger.php +26 -22
  174. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger/StreamLogger.php +20 -25
  175. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Logger.php +37 -13
  176. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Parser.php +93 -100
  177. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Source/FilesystemSource.php +7 -11
  178. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Source.php +5 -4
  179. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Template.php +32 -39
  180. package/dist/cli/wp-files/sqlite-command/vendor/{mustache/mustache/src → wp-cli/mustache/src/Mustache}/Tokenizer.php +29 -33
  181. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.actrc +3 -0
  182. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.gitattributes +6 -0
  183. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.mailmap +234 -0
  184. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/README.md +4 -4
  185. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/VERSION +1 -1
  186. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/CHANGELOG.md +0 -65
  187. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/README.md +1 -2
  188. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/certificates/cacert.pem +372 -315
  189. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/certificates/cacert.pem.sha256 +1 -1
  190. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/composer.json +5 -7
  191. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Iri.php +18 -20
  192. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Requests.php +1 -1
  193. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Response/Headers.php +1 -1
  194. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Transport/Curl.php +1 -5
  195. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Transport/Fsockopen.php +0 -2
  196. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Utility/CaseInsensitiveDictionary.php +0 -12
  197. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/src/Utility/FilteredIterator.php +2 -2
  198. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/composer.json +13 -30
  199. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/dependencies.yml +6 -0
  200. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/manifest.json +1 -1
  201. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Autoloader.php +2 -4
  202. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/AutoloaderStep.php +1 -10
  203. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/CheckRoot.php +2 -20
  204. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/DefineProtectedCommands.php +3 -3
  205. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/IncludeFrameworkAutoloader.php +4 -3
  206. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/IncludeRequestsAutoloader.php +3 -4
  207. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/InitializeContexts.php +0 -3
  208. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/InitializeLogger.php +1 -1
  209. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php +3 -6
  210. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/{RegisterShutdownHandler.php → LoadDispatcher.php} +4 -6
  211. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LoadRequiredCommand.php +5 -9
  212. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LoadUtilityFunctions.php +0 -1
  213. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Completions.php +6 -149
  214. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Configurator.php +49 -202
  215. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Admin.php +21 -113
  216. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Auto.php +1 -1
  217. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Cli.php +1 -0
  218. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Context/Frontend.php +1 -0
  219. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php +26 -63
  220. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CompositeCommand.php +9 -19
  221. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php +19 -284
  222. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/DocParser.php +5 -17
  223. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Exception/NonExistentKeyException.php +3 -6
  224. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Extractor.php +54 -30
  225. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Base.php +3 -7
  226. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Comment.php +2 -4
  227. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Post.php +3 -8
  228. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Signup.php +1 -3
  229. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/Site.php +4 -12
  230. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Fetchers/User.php +1 -3
  231. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/FileCache.php +33 -135
  232. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Formatter.php +57 -221
  233. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Inflector.php +4 -4
  234. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/CSV.php +1 -6
  235. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Query.php +1 -3
  236. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Table.php +1 -7
  237. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Iterators/Transform.php +0 -2
  238. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Base.php +0 -15
  239. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Quiet.php +3 -2
  240. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Loggers/Regular.php +3 -4
  241. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/NoOp.php +0 -4
  242. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Process.php +7 -40
  243. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/RequestsLibrary.php +1 -4
  244. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php +234 -795
  245. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/SynopsisParser.php +26 -116
  246. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/SynopsisValidator.php +1 -1
  247. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Traverser/RecursiveDataStructureTraverser.php +26 -69
  248. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/UpgraderSkin.php +1 -1
  249. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/WpHttpCacheManager.php +5 -67
  250. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/WpOrgApi.php +3 -3
  251. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/boot-fs.php +2 -2
  252. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/bootstrap.php +2 -5
  253. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/class-wp-cli.php +62 -311
  254. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Alias_Command.php +60 -292
  255. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Cache_Command.php +1 -1
  256. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/CLI_Command.php +31 -191
  257. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/commands/src/Help_Command.php +35 -177
  258. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/config-spec.php +4 -28
  259. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/utils-wp.php +47 -81
  260. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/utils.php +200 -512
  261. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/wp-cli.php +2 -2
  262. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/wp-settings-cli.php +465 -0
  263. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/templates/man-params.mustache +4 -0
  264. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/templates/man.mustache +0 -8
  265. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ArgValidationTest.php +74 -0
  266. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/CommandFactoryTest.php +420 -0
  267. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ConfiguratorTest.php +87 -0
  268. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/DocParserTest.php +213 -0
  269. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ExtractorTest.php +293 -0
  270. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/FileCacheTest.php +207 -0
  271. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/HelpTest.php +119 -0
  272. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/InflectorTest.php +37 -0
  273. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/LoggingTest.php +124 -0
  274. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/ProcessTest.php +30 -0
  275. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/SynopsisParserTest.php +194 -0
  276. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/UtilsTest.php +1092 -0
  277. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WPCLITest.php +16 -0
  278. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/Iterators/CSVTest.php +109 -0
  279. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/Traversers/RecursiveDataStructureTraverserTest.php +151 -0
  280. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WP_CLI/WpOrgApiTest.php +166 -0
  281. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/WpVersionCompareTest.php +78 -0
  282. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/bootstrap.php +17 -0
  283. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-class-win.php +70 -0
  284. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-class.php +70 -0
  285. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-function-win.php +19 -0
  286. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/commandfactory-doc_comment-function.php +19 -0
  287. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/bar.ab2 +0 -0
  288. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.ab1 +0 -0
  289. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.ac1 +0 -0
  290. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/baz.efg2 +0 -0
  291. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.ab1 +0 -0
  292. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.ab2 +0 -0
  293. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.efg1 +0 -0
  294. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/data/expand_globs/foo.efg2 +0 -0
  295. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/tests/mock-requests-transport.php +34 -0
  296. package/dist/cli/wp-files/sqlite-command/version +1 -1
  297. package/package.json +4 -3
  298. package/patches/archiver+7.0.1.patch +14 -0
  299. package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/.php-cs-fixer.php +0 -20
  300. package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/README.md +0 -94
  301. package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/src/RenderedString.php +0 -51
  302. package/dist/cli/wp-files/sqlite-command/vendor/mustache/mustache/src/compat.php +0 -282
  303. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/.typos.toml +0 -14
  304. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/AGENTS.md +0 -121
  305. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/proxy.py +0 -5
  306. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/start.sh +0 -19
  307. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/bundle/rmccue/requests/scripts/proxy/stop.sh +0 -10
  308. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/Path.php +0 -260
  309. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/php/WP_CLI/ShutdownHandler.php +0 -329
  310. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/schemas/wp-cli-config.json +0 -218
  311. package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/schemas/wp-cli.example.yml +0 -55
  312. /package/dist/cli/wp-files/sqlite-command/vendor/wp-cli/wp-cli/{codecov.yml → tests/data/expand_globs/bar.ab1} +0 -0
@@ -6,13 +6,6 @@ namespace WP_CLI;
6
6
  * Generate a synopsis from a command's PHPdoc arguments.
7
7
  * Turns something like "<object-id>..."
8
8
  * into [ optional=>false, type=>positional, repeating=>true, name=>object-id ]
9
- *
10
- * @phpstan-import-type FlagParameter from \WP_CLI
11
- * @phpstan-import-type AssocParameter from \WP_CLI
12
- * @phpstan-import-type PositionalParameter from \WP_CLI
13
- * @phpstan-import-type GenericParameter from \WP_CLI
14
- * @phpstan-import-type UnknownParameter from \WP_CLI
15
- * @phpstan-import-type CommandSynopsis from \WP_CLI
16
9
  */
17
10
  class SynopsisParser {
18
11
 
@@ -21,7 +14,7 @@ class SynopsisParser {
21
14
  * @return array List of parameters
22
15
  */
23
16
  public static function parse( $synopsis ) {
24
- $tokens = array_filter( (array) preg_split( '/[\s\t]+/', $synopsis ) );
17
+ $tokens = array_filter( preg_split( '/[\s\t]+/', $synopsis ) );
25
18
 
26
19
  $params = [];
27
20
  foreach ( $tokens as $token ) {
@@ -47,8 +40,6 @@ class SynopsisParser {
47
40
  * @param array $synopsis A structured synopsis. This might get reordered
48
41
  * to match the parsed output.
49
42
  * @return string Rendered synopsis.
50
- *
51
- * @phpstan-param CommandSynopsis[] $synopsis
52
43
  */
53
44
  public static function render( &$synopsis ) {
54
45
  if ( ! is_array( $synopsis ) ) {
@@ -78,16 +69,10 @@ class SynopsisParser {
78
69
  }
79
70
 
80
71
  if ( 'positional' === $key ) {
81
- /**
82
- * @phpstan-var PositionalParameter $arg
83
- */
84
72
  $rendered_arg = "<{$arg['name']}>";
85
73
 
86
74
  $reordered_synopsis['positional'] [] = $arg;
87
75
  } elseif ( 'assoc' === $key ) {
88
- /**
89
- * @phpstan-var AssocParameter $arg
90
- */
91
76
  $arg_value = isset( $arg['value']['name'] ) ? $arg['value']['name'] : $arg['name'];
92
77
  $arg_value = "=<{$arg_value}>";
93
78
 
@@ -95,12 +80,7 @@ class SynopsisParser {
95
80
  $arg_value = "[{$arg_value}]";
96
81
  }
97
82
 
98
- $alias_suffix = '';
99
- if ( ! empty( $arg['aliases'] ) ) {
100
- $alias_suffix = '|' . implode( '|', $arg['aliases'] );
101
- }
102
-
103
- $rendered_arg = "--{$arg['name']}{$arg_value}{$alias_suffix}";
83
+ $rendered_arg = "--{$arg['name']}{$arg_value}";
104
84
 
105
85
  $reordered_synopsis['assoc'] [] = $arg;
106
86
  } elseif ( 'generic' === $key ) {
@@ -108,15 +88,7 @@ class SynopsisParser {
108
88
 
109
89
  $reordered_synopsis['generic'] [] = $arg;
110
90
  } elseif ( 'flag' === $key ) {
111
- /**
112
- * @phpstan-var FlagParameter $arg
113
- */
114
- $alias_suffix = '';
115
- if ( ! empty( $arg['aliases'] ) ) {
116
- $alias_suffix = '|' . implode( '|', $arg['aliases'] );
117
- }
118
-
119
- $rendered_arg = "--{$arg['name']}{$alias_suffix}";
91
+ $rendered_arg = "--{$arg['name']}";
120
92
 
121
93
  $reordered_synopsis['flag'] [] = $arg;
122
94
  }
@@ -146,116 +118,54 @@ class SynopsisParser {
146
118
  *
147
119
  * @param string $token
148
120
  * @return array
149
- *
150
- * @phpstan-return CommandSynopsis
151
121
  */
152
122
  private static function classify_token( $token ) {
153
- list( $optional, $token ) = self::is_optional( $token );
154
- list( $repeating, $token ) = self::is_repeating( $token );
155
- list( $aliases, $token ) = self::extract_aliases( $token );
123
+ $param = [];
124
+
125
+ list( $param['optional'], $token ) = self::is_optional( $token );
126
+ list( $param['repeating'], $token ) = self::is_repeating( $token );
156
127
 
157
128
  $p_name = '([a-z-_0-9]+)';
158
129
  $p_value = '([a-zA-Z-_|,0-9]+)';
159
130
 
160
131
  if ( '--<field>=<value>' === $token ) {
161
- return [
162
- 'type' => 'generic',
163
- 'optional' => $optional,
164
- 'repeating' => $repeating,
165
- ];
132
+ $param['type'] = 'generic';
166
133
  } elseif ( preg_match( "/^<($p_value)>$/", $token, $matches ) ) {
167
- return [
168
- 'type' => 'positional',
169
- 'name' => $matches[1],
170
- 'optional' => $optional,
171
- 'repeating' => $repeating,
172
- ];
134
+ $param['type'] = 'positional';
135
+ $param['name'] = $matches[1];
173
136
  } elseif ( preg_match( "/^--(?:\\[no-\\])?$p_name/", $token, $matches ) ) {
174
- $name = $matches[1];
137
+ $param['name'] = $matches[1];
138
+
175
139
  $value = substr( $token, strlen( $matches[0] ) );
176
140
 
177
- // substr can return false <= PHP 8.0.
178
- // @phpstan-ignore identical.alwaysFalse
141
+ // substr returns false <= PHP 5.6, and '' PHP 7+
179
142
  if ( false === $value || '' === $value ) {
180
- $param = [
181
- 'type' => 'flag',
182
- 'name' => $name,
183
- 'optional' => $optional,
184
- 'repeating' => $repeating,
185
- ];
186
- if ( ! empty( $aliases ) ) {
187
- $param['aliases'] = $aliases;
188
- }
189
- return $param;
143
+ $param['type'] = 'flag';
190
144
  } else {
191
- list( $value_optional, $value ) = self::is_optional( $value );
145
+ $param['type'] = 'assoc';
146
+
147
+ list( $param['value']['optional'], $value ) = self::is_optional( $value );
192
148
 
193
- if ( preg_match( "/^=<$p_value>$/", $value, $matches_value ) ) {
149
+ if ( preg_match( "/^=<$p_value>$/", $value, $matches ) ) {
150
+ $param['value']['name'] = $matches[1];
151
+ } else {
194
152
  $param = [
195
- 'type' => 'assoc',
196
- 'name' => $name,
197
- 'optional' => $optional,
198
- 'repeating' => $repeating,
199
- 'value' => [
200
- 'optional' => $value_optional,
201
- 'name' => $matches_value[1],
202
- ],
153
+ 'type' => 'unknown',
203
154
  ];
204
- if ( ! empty( $aliases ) ) {
205
- $param['aliases'] = $aliases;
206
- }
207
- return $param;
208
155
  }
209
156
  }
157
+ } else {
158
+ $param['type'] = 'unknown';
210
159
  }
211
160
 
212
- return [
213
- 'type' => 'unknown',
214
- 'optional' => $optional,
215
- 'repeating' => $repeating,
216
- ];
217
- }
218
-
219
- /**
220
- * Extract pipe-separated aliases from a token.
221
- *
222
- * Given `--flag|alias1|alias2`, returns `[['alias1', 'alias2'], '--flag']`.
223
- * The `|` separator inside `<value>` brackets is ignored.
224
- *
225
- * @param string $token
226
- * @return array{0: string[], 1: string}
227
- */
228
- private static function extract_aliases( $token ) {
229
- $depth = 0;
230
- $len = strlen( $token );
231
-
232
- for ( $i = 0; $i < $len; $i++ ) {
233
- $char = $token[ $i ];
234
- if ( '<' === $char ) {
235
- ++$depth;
236
- } elseif ( '>' === $char ) {
237
- --$depth;
238
- } elseif ( '|' === $char && 0 === $depth ) {
239
- $aliases = array_values(
240
- array_filter(
241
- explode( '|', substr( $token, $i + 1 ) ),
242
- static function ( $alias ) {
243
- return '' !== $alias;
244
- }
245
- )
246
- );
247
- return [ $aliases, substr( $token, 0, $i ) ];
248
- }
249
- }
250
-
251
- return [ [], $token ];
161
+ return $param;
252
162
  }
253
163
 
254
164
  /**
255
165
  * An optional parameter is surrounded by square brackets.
256
166
  *
257
167
  * @param string $token
258
- * @return array{0: bool, 1: string}
168
+ * @return array
259
169
  */
260
170
  private static function is_optional( $token ) {
261
171
  if ( '[' === substr( $token, 0, 1 ) && ']' === substr( $token, -1 ) ) {
@@ -269,7 +179,7 @@ class SynopsisParser {
269
179
  * A repeating parameter is followed by an ellipsis.
270
180
  *
271
181
  * @param string $token
272
- * @return array{0: bool, 1: string}
182
+ * @return array
273
183
  */
274
184
  private static function is_repeating( $token ) {
275
185
  if ( '...' === substr( $token, -3 ) ) {
@@ -125,7 +125,7 @@ class SynopsisValidator {
125
125
  * Check whether there are unknown parameters supplied.
126
126
  *
127
127
  * @param array $assoc_args Parameters passed to command.
128
- * @return array
128
+ * @return array|false
129
129
  */
130
130
  public function unknown_assoc( $assoc_args ) {
131
131
  $generic = $this->query_spec(
@@ -5,34 +5,29 @@ namespace WP_CLI\Traverser;
5
5
  use UnexpectedValueException;
6
6
  use WP_CLI\Exception\NonExistentKeyException;
7
7
 
8
- /**
9
- * @template TData
10
- */
11
8
  class RecursiveDataStructureTraverser {
12
9
 
13
10
  /**
14
- * The data to traverse set by reference.
15
- *
16
- * @var TData
11
+ * @var mixed The data to traverse set by reference.
17
12
  */
18
13
  protected $data;
19
14
 
20
15
  /**
21
- * @var string|int|null The key the data belongs to in the parent's data.
16
+ * @var null|string The key the data belongs to in the parent's data.
22
17
  */
23
18
  protected $key;
24
19
 
25
20
  /**
26
- * @var null|self<mixed> The parent instance of the traverser.
21
+ * @var null|static The parent instance of the traverser.
27
22
  */
28
23
  protected $parent;
29
24
 
30
25
  /**
31
26
  * RecursiveDataStructureTraverser constructor.
32
27
  *
33
- * @param TData $data The data to read/manipulate by reference.
34
- * @param string|int|null $key The key/property the data belongs to.
35
- * @param self<mixed>|null $parent_instance The parent instance of the traverser.
28
+ * @param mixed $data The data to read/manipulate by reference.
29
+ * @param string|int $key The key/property the data belongs to.
30
+ * @param static|null $parent_instance The parent instance of the traverser.
36
31
  */
37
32
  public function __construct( &$data, $key = null, $parent_instance = null ) {
38
33
  $this->data =& $data;
@@ -43,9 +38,9 @@ class RecursiveDataStructureTraverser {
43
38
  /**
44
39
  * Get the nested value at the given key path.
45
40
  *
46
- * @param string|int|array<string|int> $key_path
41
+ * @param string|int|array $key_path
47
42
  *
48
- * @return mixed
43
+ * @return static
49
44
  */
50
45
  public function get( $key_path ) {
51
46
  return $this->traverse_to( (array) $key_path )->value();
@@ -54,7 +49,7 @@ class RecursiveDataStructureTraverser {
54
49
  /**
55
50
  * Get the current data.
56
51
  *
57
- * @return TData
52
+ * @return mixed
58
53
  */
59
54
  public function value() {
60
55
  return $this->data;
@@ -63,10 +58,8 @@ class RecursiveDataStructureTraverser {
63
58
  /**
64
59
  * Update a nested value at the given key path.
65
60
  *
66
- * @param string|int|array<string|int> $key_path
61
+ * @param string|int|array $key_path
67
62
  * @param mixed $value
68
- *
69
- * @return void
70
63
  */
71
64
  public function update( $key_path, $value ) {
72
65
  $this->traverse_to( (array) $key_path )->set_value( $value );
@@ -79,20 +72,15 @@ class RecursiveDataStructureTraverser {
79
72
  * as the data is set and traversed by reference.
80
73
  *
81
74
  * @param mixed $value
82
- *
83
- * @return void
84
75
  */
85
76
  public function set_value( $value ) {
86
- /** @var TData $value - We assume the new value matches the template or the template is mixed */
87
77
  $this->data = $value;
88
78
  }
89
79
 
90
80
  /**
91
81
  * Unset the value at the given key path.
92
82
  *
93
- * @param string|int|array<string|int> $key_path
94
- *
95
- * @return void
83
+ * @param $key_path
96
84
  */
97
85
  public function delete( $key_path ) {
98
86
  $this->traverse_to( (array) $key_path )->unset_on_parent();
@@ -101,10 +89,8 @@ class RecursiveDataStructureTraverser {
101
89
  /**
102
90
  * Define a nested value while creating keys if they do not exist.
103
91
  *
104
- * @param array<string|int> $key_path
92
+ * @param array $key_path
105
93
  * @param mixed $value
106
- *
107
- * @return void
108
94
  */
109
95
  public function insert( $key_path, $value ) {
110
96
  try {
@@ -117,26 +103,20 @@ class RecursiveDataStructureTraverser {
117
103
 
118
104
  /**
119
105
  * Delete the key on the parent's data that references this data.
120
- *
121
- * @return void
122
106
  */
123
107
  public function unset_on_parent() {
124
- if ( $this->parent && null !== $this->key ) {
125
- $this->parent->delete_by_key( $this->key );
126
- }
108
+ $this->parent->delete_by_key( $this->key );
127
109
  }
128
110
 
129
111
  /**
130
112
  * Delete the given key from the data.
131
113
  *
132
- * @param string|int $key
133
- *
134
- * @return void
114
+ * @param $key
135
115
  */
136
116
  public function delete_by_key( $key ) {
137
117
  if ( is_array( $this->data ) ) {
138
118
  unset( $this->data[ $key ] );
139
- } elseif ( is_object( $this->data ) ) {
119
+ } else {
140
120
  unset( $this->data->$key );
141
121
  }
142
122
  }
@@ -144,11 +124,11 @@ class RecursiveDataStructureTraverser {
144
124
  /**
145
125
  * Get an instance of the traverser for the given hierarchical key.
146
126
  *
147
- * @param array<string|int> $key_path Hierarchical key path within the current data to traverse to.
127
+ * @param array $key_path Hierarchical key path within the current data to traverse to.
148
128
  *
149
129
  * @throws NonExistentKeyException
150
130
  *
151
- * @return self<mixed>
131
+ * @return self
152
132
  */
153
133
  public function traverse_to( array $key_path ) {
154
134
  $current = array_shift( $key_path );
@@ -159,51 +139,28 @@ class RecursiveDataStructureTraverser {
159
139
 
160
140
  if ( ! $this->exists( $current ) ) {
161
141
  $exception = new NonExistentKeyException( "No data exists for key \"{$current}\"" );
162
- // When throwing exception, we create a new traverser on the CURRENT level data
163
142
  $exception->set_traverser( new self( $this->data, $current, $this->parent ) );
164
143
  throw $exception;
165
144
  }
166
145
 
167
- /**
168
- * We capture the array by reference.
169
- */
170
- $data = &$this->data;
171
-
172
- if ( is_array( $data ) ) {
173
- foreach ( $data as $key => &$key_data ) {
174
- if ( $key === $current ) {
175
- $traverser = new self( $key_data, $key, $this );
176
- return $traverser->traverse_to( $key_path );
177
- }
178
- }
179
- } elseif ( is_object( $data ) ) {
180
- // Objects are passed by identifier, but to maintain the traverser logic
181
- // specifically for scalar props on objects, we access them directly.
182
- // Note: Traversing object properties by reference is tricky in PHP loops.
183
- // We assume standard property access here.
184
- if ( property_exists( $data, (string) $current ) ) {
185
- // PHP Objects properties accessed like this are references if the object is passed.
186
- $traverser = new self( $data->$current, $current, $this );
146
+ foreach ( $this->data as $key => &$key_data ) {
147
+ if ( $key === $current ) {
148
+ $traverser = new self( $key_data, $key, $this );
187
149
  return $traverser->traverse_to( $key_path );
188
150
  }
189
151
  }
190
-
191
- // Should be unreachable due to exists() check, but static analysis likes certainty.
192
- throw new NonExistentKeyException( 'Key path broken unexpectedly.' );
193
152
  }
194
153
 
195
154
  /**
196
155
  * Create the key on the current data.
197
156
  *
198
157
  * @throws UnexpectedValueException
199
- * @return void
200
158
  */
201
159
  protected function create_key() {
202
- $key = $this->key;
203
- if ( is_array( $this->data ) && ( is_string( $key ) || is_int( $key ) ) ) {
204
- $this->data[ $key ] = null;
205
- } elseif ( is_object( $this->data ) && ( is_string( $key ) || is_int( $key ) ) ) {
206
- $this->data->{$key} = null;
160
+ if ( is_array( $this->data ) ) {
161
+ $this->data[ $this->key ] = null;
162
+ } elseif ( is_object( $this->data ) ) {
163
+ $this->data->{$this->key} = null;
207
164
  } else {
208
165
  $type = gettype( $this->data );
209
166
  throw new UnexpectedValueException(
@@ -215,12 +172,12 @@ class RecursiveDataStructureTraverser {
215
172
  /**
216
173
  * Check if the given key exists on the current data.
217
174
  *
218
- * @param string|int $key
175
+ * @param string $key
219
176
  *
220
177
  * @return bool
221
178
  */
222
179
  public function exists( $key ) {
223
180
  return ( is_array( $this->data ) && array_key_exists( $key, $this->data ) ) ||
224
- ( is_object( $this->data ) && property_exists( $this->data, (string) $key ) );
181
+ ( is_object( $this->data ) && property_exists( $this->data, $key ) );
225
182
  }
226
183
  }
@@ -22,7 +22,7 @@ class UpgraderSkin extends WP_Upgrader_Skin {
22
22
  /**
23
23
  * Show error message.
24
24
  *
25
- * @param string|\WP_Error $error Error message.
25
+ * @param string $error Error message.
26
26
  *
27
27
  * @return void
28
28
  */
@@ -12,7 +12,7 @@ use WP_CLI;
12
12
  class WpHttpCacheManager {
13
13
 
14
14
  /**
15
- * @var array<string, array{key:string, ttl: int|null}> map whitelisted urls to keys and ttls
15
+ * @var array<string, array{key:string, ttl:int}> map whitelisted urls to keys and ttls
16
16
  */
17
17
  protected $whitelist = [];
18
18
 
@@ -21,14 +21,6 @@ class WpHttpCacheManager {
21
21
  */
22
22
  protected $cache;
23
23
 
24
- /**
25
- * Minimum valid archive file size in bytes.
26
- *
27
- * This threshold (20 bytes) roughly corresponds to the smallest possible
28
- * valid ZIP or TAR.GZ header, ensuring we skip obviously invalid or empty downloads.
29
- */
30
- private const MIN_VALID_ARCHIVE_SIZE = 20;
31
-
32
24
  /**
33
25
  * @param FileCache $cache
34
26
  */
@@ -76,8 +68,8 @@ class WpHttpCacheManager {
76
68
  /**
77
69
  * cache wp http api downloads
78
70
  *
79
- * @param array $response
80
- * @param array $args
71
+ * @param array $response
72
+ * @param array $args
81
73
  * @param string $url
82
74
  * @return array
83
75
  */
@@ -91,12 +83,7 @@ class WpHttpCacheManager {
91
83
  return $response;
92
84
  }
93
85
  // check if download was successful
94
- if ( 200 !== wp_remote_retrieve_response_code( $response ) ) {
95
- return $response;
96
- }
97
- // Validate before caching.
98
- if ( ! $this->validate_downloaded_file( $response['filename'], $url ) ) {
99
- WP_CLI::warning( "Invalid or corrupt file from {$url}, skipping cache." );
86
+ if ( is_wp_error( $response ) || 200 !== wp_remote_retrieve_response_code( $response ) ) {
100
87
  return $response;
101
88
  }
102
89
  // cache downloaded file
@@ -104,55 +91,6 @@ class WpHttpCacheManager {
104
91
  return $response;
105
92
  }
106
93
 
107
- /**
108
- * Validate downloaded file before adding to cache.
109
- *
110
- * @param string $file Path to the downloaded file.
111
- * @param string $url Source URL.
112
- * @return bool True if file is valid, false otherwise.
113
- */
114
- private function validate_downloaded_file( $file, $url ) {
115
- if ( ! is_readable( $file ) ) {
116
- return false;
117
- }
118
-
119
- $size = filesize( $file );
120
- if ( false === $size || $size < self::MIN_VALID_ARCHIVE_SIZE ) {
121
- return false;
122
- }
123
-
124
- $ext = strtolower( pathinfo( (string) wp_parse_url( $url, PHP_URL_PATH ), PATHINFO_EXTENSION ) );
125
- $mime = function_exists( 'mime_content_type' ) ? mime_content_type( $file ) : '';
126
-
127
- if ( ( 'zip' === $ext || 'application/zip' === $mime ) && class_exists( '\ZipArchive' ) ) {
128
- $zip = new \ZipArchive();
129
- $result = $zip->open( $file );
130
- if ( true !== $result ) {
131
- return false;
132
- }
133
- // Optional deeper check: ensure we can read file list.
134
- if ( 0 === $zip->numFiles ) { //phpcs:ignore
135
- $zip->close();
136
- return false;
137
- }
138
- $zip->close();
139
- }
140
-
141
- if ( ( preg_match( '/\.tar\.gz$/i', $url ) || 'application/gzip' === $mime ) && class_exists( '\PharData' ) ) {
142
- try {
143
- $phar = new \PharData( $file );
144
- // Accessing the file list ensures it can be read.
145
- if ( empty( iterator_to_array( $phar ) ) ) {
146
- return false;
147
- }
148
- } catch ( \Exception $e ) {
149
- return false;
150
- }
151
- }
152
-
153
- return true;
154
- }
155
-
156
94
  /**
157
95
  * whitelist a package url
158
96
  *
@@ -163,7 +101,7 @@ class WpHttpCacheManager {
163
101
  * @param int $ttl
164
102
  */
165
103
  public function whitelist_package( $url, $group, $slug, $version, $ttl = null ) {
166
- $ext = pathinfo( (string) Utils\parse_url( $url, PHP_URL_PATH ), PATHINFO_EXTENSION );
104
+ $ext = pathinfo( Utils\parse_url( $url, PHP_URL_PATH ), PATHINFO_EXTENSION );
167
105
  $key = "$group/$slug-$version.$ext";
168
106
  $this->whitelist_url( $url, $key, $ttl );
169
107
  wp_update_plugins();
@@ -98,7 +98,7 @@ final class WpOrgApi {
98
98
  *
99
99
  * @param string $version Version string to query.
100
100
  * @param string $locale Optional. Locale to query. Defaults to 'en_US'.
101
- * @return false|array False on failure. An array of checksums on success.
101
+ * @return bool|array False on failure. An array of checksums on success.
102
102
  * @throws RuntimeException If the remote request fails.
103
103
  */
104
104
  public function get_core_checksums( $version, $locale = 'en_US' ) {
@@ -169,7 +169,7 @@ final class WpOrgApi {
169
169
 
170
170
  $offer = $response['offers'][0];
171
171
 
172
- if ( ! is_array( $offer ) || ! array_key_exists( 'locale', $offer ) || $locale !== $offer['locale'] ) {
172
+ if ( ! array_key_exists( 'locale', $offer ) || $locale !== $offer['locale'] ) {
173
173
  return false;
174
174
  }
175
175
 
@@ -181,7 +181,7 @@ final class WpOrgApi {
181
181
  *
182
182
  * @param string $plugin Plugin slug to query.
183
183
  * @param string $version Version string to query.
184
- * @return false|array False on failure. An array of checksums on success.
184
+ * @return bool|array False on failure. An array of checksums on success.
185
185
  * @throws RuntimeException If the remote request fails.
186
186
  */
187
187
  public function get_plugin_checksums( $plugin, $version ) {
@@ -7,8 +7,8 @@ if ( 'cli' !== PHP_SAPI ) {
7
7
  die( -1 );
8
8
  }
9
9
 
10
- if ( version_compare( PHP_VERSION, '7.2.24', '<' ) ) {
11
- printf( "Error: WP-CLI requires PHP %s or newer. You are running version %s.\n", '7.2.24', PHP_VERSION );
10
+ if ( version_compare( PHP_VERSION, '5.6.0', '<' ) ) {
11
+ printf( "Error: WP-CLI requires PHP %s or newer. You are running version %s.\n", '5.6.0', PHP_VERSION );
12
12
  die( -1 );
13
13
  }
14
14
 
@@ -17,20 +17,20 @@ function get_bootstrap_steps() {
17
17
  return [
18
18
  Bootstrap\DeclareFallbackFunctions::class,
19
19
  Bootstrap\LoadUtilityFunctions::class,
20
+ Bootstrap\LoadDispatcher::class,
20
21
  Bootstrap\DeclareMainClass::class,
21
22
  Bootstrap\DeclareAbstractBaseCommand::class,
22
23
  Bootstrap\IncludeFrameworkAutoloader::class,
23
24
  Bootstrap\ConfigureRunner::class,
24
25
  Bootstrap\InitializeColorization::class,
25
26
  Bootstrap\InitializeLogger::class,
26
- Bootstrap\RegisterShutdownHandler::class,
27
27
  Bootstrap\CheckRoot::class,
28
28
  Bootstrap\IncludeRequestsAutoloader::class,
29
29
  Bootstrap\DefineProtectedCommands::class,
30
30
  Bootstrap\LoadExecCommand::class,
31
31
  Bootstrap\LoadRequiredCommand::class,
32
- Bootstrap\IncludeFallbackAutoloader::class,
33
32
  Bootstrap\IncludePackageAutoloader::class,
33
+ Bootstrap\IncludeFallbackAutoloader::class,
34
34
  Bootstrap\RegisterFrameworkCommands::class,
35
35
  Bootstrap\RegisterDeferredCommands::class,
36
36
  Bootstrap\InitializeContexts::class,
@@ -80,9 +80,6 @@ function bootstrap() {
80
80
  \WP_CLI::debug( "Processing bootstrap step: {$step}", 'bootstrap' );
81
81
  }
82
82
 
83
- /**
84
- * @var BootstrapStep $step_instance
85
- */
86
83
  $step_instance = new $step();
87
84
  $state = $step_instance->process( $state );
88
85
  }