dependabot-composer 0.95.42 → 0.95.43

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 (901) hide show
  1. checksums.yaml +4 -4
  2. data/helpers/bin/run +1 -0
  3. metadata +3 -901
  4. data/helpers/vendor/autoload.php +0 -7
  5. data/helpers/vendor/bin/composer +0 -1
  6. data/helpers/vendor/bin/jsonlint +0 -1
  7. data/helpers/vendor/bin/validate-json +0 -1
  8. data/helpers/vendor/composer/ClassLoader.php +0 -445
  9. data/helpers/vendor/composer/LICENSE +0 -21
  10. data/helpers/vendor/composer/autoload_classmap.php +0 -9
  11. data/helpers/vendor/composer/autoload_files.php +0 -11
  12. data/helpers/vendor/composer/autoload_namespaces.php +0 -9
  13. data/helpers/vendor/composer/autoload_psr4.php +0 -26
  14. data/helpers/vendor/composer/autoload_real.php +0 -70
  15. data/helpers/vendor/composer/autoload_static.php +0 -128
  16. data/helpers/vendor/composer/ca-bundle/LICENSE +0 -19
  17. data/helpers/vendor/composer/ca-bundle/README.md +0 -85
  18. data/helpers/vendor/composer/ca-bundle/composer.json +0 -54
  19. data/helpers/vendor/composer/ca-bundle/res/cacert.pem +0 -3240
  20. data/helpers/vendor/composer/ca-bundle/src/CaBundle.php +0 -308
  21. data/helpers/vendor/composer/composer/.gitattributes +0 -12
  22. data/helpers/vendor/composer/composer/.github/CONTRIBUTING.md +0 -59
  23. data/helpers/vendor/composer/composer/.github/ISSUE_TEMPLATE.md +0 -25
  24. data/helpers/vendor/composer/composer/.gitignore +0 -11
  25. data/helpers/vendor/composer/composer/.php_cs +0 -58
  26. data/helpers/vendor/composer/composer/.travis.yml +0 -76
  27. data/helpers/vendor/composer/composer/CHANGELOG.md +0 -767
  28. data/helpers/vendor/composer/composer/LICENSE +0 -19
  29. data/helpers/vendor/composer/composer/PORTING_INFO +0 -39
  30. data/helpers/vendor/composer/composer/README.md +0 -62
  31. data/helpers/vendor/composer/composer/appveyor.yml +0 -33
  32. data/helpers/vendor/composer/composer/bin/compile +0 -31
  33. data/helpers/vendor/composer/composer/bin/composer +0 -57
  34. data/helpers/vendor/composer/composer/composer.json +0 -81
  35. data/helpers/vendor/composer/composer/composer.lock +0 -1800
  36. data/helpers/vendor/composer/composer/doc/00-intro.md +0 -156
  37. data/helpers/vendor/composer/composer/doc/01-basic-usage.md +0 -266
  38. data/helpers/vendor/composer/composer/doc/02-libraries.md +0 -153
  39. data/helpers/vendor/composer/composer/doc/03-cli.md +0 -931
  40. data/helpers/vendor/composer/composer/doc/04-schema.md +0 -924
  41. data/helpers/vendor/composer/composer/doc/05-repositories.md +0 -713
  42. data/helpers/vendor/composer/composer/doc/06-config.md +0 -277
  43. data/helpers/vendor/composer/composer/doc/07-community.md +0 -35
  44. data/helpers/vendor/composer/composer/doc/articles/aliases.md +0 -105
  45. data/helpers/vendor/composer/composer/doc/articles/autoloader-optimization.md +0 -111
  46. data/helpers/vendor/composer/composer/doc/articles/custom-installers.md +0 -204
  47. data/helpers/vendor/composer/composer/doc/articles/handling-private-packages-with-satis.md +0 -343
  48. data/helpers/vendor/composer/composer/doc/articles/http-basic-authentication.md +0 -59
  49. data/helpers/vendor/composer/composer/doc/articles/plugins.md +0 -285
  50. data/helpers/vendor/composer/composer/doc/articles/scripts.md +0 -304
  51. data/helpers/vendor/composer/composer/doc/articles/troubleshooting.md +0 -309
  52. data/helpers/vendor/composer/composer/doc/articles/vendor-binaries.md +0 -110
  53. data/helpers/vendor/composer/composer/doc/articles/versions.md +0 -230
  54. data/helpers/vendor/composer/composer/doc/dev/DefaultPolicy.md +0 -55
  55. data/helpers/vendor/composer/composer/doc/faqs/how-do-i-install-a-package-to-a-custom-path-for-my-framework.md +0 -50
  56. data/helpers/vendor/composer/composer/doc/faqs/how-to-install-composer-programmatically.md +0 -42
  57. data/helpers/vendor/composer/composer/doc/faqs/how-to-install-untrusted-packages-safely.md +0 -19
  58. data/helpers/vendor/composer/composer/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md +0 -32
  59. data/helpers/vendor/composer/composer/doc/faqs/which-version-numbering-system-does-composer-itself-use.md +0 -4
  60. data/helpers/vendor/composer/composer/doc/faqs/why-are-unbound-version-constraints-a-bad-idea.md +0 -21
  61. data/helpers/vendor/composer/composer/doc/faqs/why-are-version-constraints-combining-comparisons-and-wildcards-a-bad-idea.md +0 -21
  62. data/helpers/vendor/composer/composer/doc/faqs/why-can't-composer-load-repositories-recursively.md +0 -35
  63. data/helpers/vendor/composer/composer/doc/fixtures/fixtures.md +0 -22
  64. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-plain/packages.json +0 -158
  65. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/bar/baz$923363b3c22e73abb2e3fd891c8156dd4d0821a97fd3e428bc910833e3e46dbe.json +0 -50
  66. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/foo/bar$4baabb3303afa3e34a4d3af18fb138e5f3b79029c1f8d9ab5b477ea15776ba0a.json +0 -77
  67. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/gar/nix$5d210670cb46c8364c8e3fb449967b9bea558b971e5b082f330ae4f1d484c321.json +0 -50
  68. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/provider-active$1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8.json +0 -16
  69. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/qux/quux$c142d1a07ca354be46b613f59f1d601923a5a00ccc5fcce50a77ecdd461eb72d.json +0 -22
  70. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/packages.json +0 -9
  71. data/helpers/vendor/composer/composer/phpunit.xml.dist +0 -35
  72. data/helpers/vendor/composer/composer/res/composer-repository-schema.json +0 -110
  73. data/helpers/vendor/composer/composer/res/composer-schema.json +0 -843
  74. data/helpers/vendor/composer/composer/src/Composer/Autoload/AutoloadGenerator.php +0 -1057
  75. data/helpers/vendor/composer/composer/src/Composer/Autoload/ClassLoader.php +0 -445
  76. data/helpers/vendor/composer/composer/src/Composer/Autoload/ClassMapGenerator.php +0 -222
  77. data/helpers/vendor/composer/composer/src/Composer/Cache.php +0 -251
  78. data/helpers/vendor/composer/composer/src/Composer/Command/AboutCommand.php +0 -46
  79. data/helpers/vendor/composer/composer/src/Composer/Command/ArchiveCommand.php +0 -165
  80. data/helpers/vendor/composer/composer/src/Composer/Command/BaseCommand.php +0 -181
  81. data/helpers/vendor/composer/composer/src/Composer/Command/BaseDependencyCommand.php +0 -255
  82. data/helpers/vendor/composer/composer/src/Composer/Command/CheckPlatformReqsCommand.php +0 -156
  83. data/helpers/vendor/composer/composer/src/Composer/Command/ClearCacheCommand.php +0 -72
  84. data/helpers/vendor/composer/composer/src/Composer/Command/ConfigCommand.php +0 -704
  85. data/helpers/vendor/composer/composer/src/Composer/Command/CreateProjectCommand.php +0 -384
  86. data/helpers/vendor/composer/composer/src/Composer/Command/DependsCommand.php +0 -56
  87. data/helpers/vendor/composer/composer/src/Composer/Command/DiagnoseCommand.php +0 -728
  88. data/helpers/vendor/composer/composer/src/Composer/Command/DumpAutoloadCommand.php +0 -86
  89. data/helpers/vendor/composer/composer/src/Composer/Command/ExecCommand.php +0 -90
  90. data/helpers/vendor/composer/composer/src/Composer/Command/GlobalCommand.php +0 -110
  91. data/helpers/vendor/composer/composer/src/Composer/Command/HomeCommand.php +0 -166
  92. data/helpers/vendor/composer/composer/src/Composer/Command/InitCommand.php +0 -795
  93. data/helpers/vendor/composer/composer/src/Composer/Command/InstallCommand.php +0 -123
  94. data/helpers/vendor/composer/composer/src/Composer/Command/LicensesCommand.php +0 -158
  95. data/helpers/vendor/composer/composer/src/Composer/Command/OutdatedCommand.php +0 -95
  96. data/helpers/vendor/composer/composer/src/Composer/Command/ProhibitsCommand.php +0 -56
  97. data/helpers/vendor/composer/composer/src/Composer/Command/RemoveCommand.php +0 -162
  98. data/helpers/vendor/composer/composer/src/Composer/Command/RequireCommand.php +0 -243
  99. data/helpers/vendor/composer/composer/src/Composer/Command/RunScriptCommand.php +0 -139
  100. data/helpers/vendor/composer/composer/src/Composer/Command/ScriptAliasCommand.php +0 -64
  101. data/helpers/vendor/composer/composer/src/Composer/Command/SearchCommand.php +0 -82
  102. data/helpers/vendor/composer/composer/src/Composer/Command/SelfUpdateCommand.php +0 -404
  103. data/helpers/vendor/composer/composer/src/Composer/Command/ShowCommand.php +0 -1014
  104. data/helpers/vendor/composer/composer/src/Composer/Command/StatusCommand.php +0 -213
  105. data/helpers/vendor/composer/composer/src/Composer/Command/SuggestsCommand.php +0 -151
  106. data/helpers/vendor/composer/composer/src/Composer/Command/UpdateCommand.php +0 -227
  107. data/helpers/vendor/composer/composer/src/Composer/Command/ValidateCommand.php +0 -171
  108. data/helpers/vendor/composer/composer/src/Composer/Compiler.php +0 -283
  109. data/helpers/vendor/composer/composer/src/Composer/Composer.php +0 -246
  110. data/helpers/vendor/composer/composer/src/Composer/Config.php +0 -455
  111. data/helpers/vendor/composer/composer/src/Composer/Config/ConfigSourceInterface.php +0 -91
  112. data/helpers/vendor/composer/composer/src/Composer/Config/JsonConfigSource.php +0 -267
  113. data/helpers/vendor/composer/composer/src/Composer/Console/Application.php +0 -481
  114. data/helpers/vendor/composer/composer/src/Composer/Console/HtmlOutputFormatter.php +0 -90
  115. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Decisions.php +0 -199
  116. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/DefaultPolicy.php +0 -285
  117. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/GenericRule.php +0 -91
  118. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/InstallOperation.php +0 -66
  119. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/MarkAliasInstalledOperation.php +0 -67
  120. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/MarkAliasUninstalledOperation.php +0 -67
  121. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/OperationInterface.php +0 -42
  122. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/SolverOperation.php +0 -50
  123. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/UninstallOperation.php +0 -66
  124. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/UpdateOperation.php +0 -80
  125. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/PolicyInterface.php +0 -27
  126. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Pool.php +0 -378
  127. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Problem.php +0 -253
  128. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Request.php +0 -78
  129. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Rule.php +0 -263
  130. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Rule2Literals.php +0 -113
  131. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSet.php +0 -176
  132. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetGenerator.php +0 -372
  133. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetIterator.php +0 -94
  134. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchChain.php +0 -52
  135. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchGraph.php +0 -144
  136. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchNode.php +0 -113
  137. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Solver.php +0 -868
  138. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/SolverBugException.php +0 -27
  139. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/SolverProblemsException.php +0 -88
  140. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Transaction.php +0 -244
  141. data/helpers/vendor/composer/composer/src/Composer/Downloader/ArchiveDownloader.php +0 -135
  142. data/helpers/vendor/composer/composer/src/Composer/Downloader/ChangeReportInterface.php +0 -32
  143. data/helpers/vendor/composer/composer/src/Composer/Downloader/DownloadManager.php +0 -325
  144. data/helpers/vendor/composer/composer/src/Composer/Downloader/DownloaderInterface.php +0 -64
  145. data/helpers/vendor/composer/composer/src/Composer/Downloader/DvcsDownloaderInterface.php +0 -32
  146. data/helpers/vendor/composer/composer/src/Composer/Downloader/FileDownloader.php +0 -322
  147. data/helpers/vendor/composer/composer/src/Composer/Downloader/FilesystemException.php +0 -26
  148. data/helpers/vendor/composer/composer/src/Composer/Downloader/FossilDownloader.php +0 -116
  149. data/helpers/vendor/composer/composer/src/Composer/Downloader/GitDownloader.php +0 -516
  150. data/helpers/vendor/composer/composer/src/Composer/Downloader/GzipDownloader.php +0 -84
  151. data/helpers/vendor/composer/composer/src/Composer/Downloader/HgDownloader.php +0 -100
  152. data/helpers/vendor/composer/composer/src/Composer/Downloader/PathDownloader.php +0 -175
  153. data/helpers/vendor/composer/composer/src/Composer/Downloader/PearPackageExtractor.php +0 -266
  154. data/helpers/vendor/composer/composer/src/Composer/Downloader/PerforceDownloader.php +0 -114
  155. data/helpers/vendor/composer/composer/src/Composer/Downloader/PharDownloader.php +0 -36
  156. data/helpers/vendor/composer/composer/src/Composer/Downloader/RarDownloader.php +0 -91
  157. data/helpers/vendor/composer/composer/src/Composer/Downloader/SvnDownloader.php +0 -225
  158. data/helpers/vendor/composer/composer/src/Composer/Downloader/TarDownloader.php +0 -31
  159. data/helpers/vendor/composer/composer/src/Composer/Downloader/TransportException.php +0 -53
  160. data/helpers/vendor/composer/composer/src/Composer/Downloader/VcsCapableDownloaderInterface.php +0 -32
  161. data/helpers/vendor/composer/composer/src/Composer/Downloader/VcsDownloader.php +0 -293
  162. data/helpers/vendor/composer/composer/src/Composer/Downloader/XzDownloader.php +0 -60
  163. data/helpers/vendor/composer/composer/src/Composer/Downloader/ZipDownloader.php +0 -230
  164. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/Event.php +0 -103
  165. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/EventDispatcher.php +0 -536
  166. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/EventSubscriberInterface.php +0 -48
  167. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/ScriptExecutionException.php +0 -20
  168. data/helpers/vendor/composer/composer/src/Composer/Exception/NoSslException.php +0 -20
  169. data/helpers/vendor/composer/composer/src/Composer/Factory.php +0 -653
  170. data/helpers/vendor/composer/composer/src/Composer/IO/BaseIO.php +0 -255
  171. data/helpers/vendor/composer/composer/src/Composer/IO/BufferIO.php +0 -59
  172. data/helpers/vendor/composer/composer/src/Composer/IO/ConsoleIO.php +0 -322
  173. data/helpers/vendor/composer/composer/src/Composer/IO/IOInterface.php +0 -207
  174. data/helpers/vendor/composer/composer/src/Composer/IO/NullIO.php +0 -129
  175. data/helpers/vendor/composer/composer/src/Composer/Installer.php +0 -1793
  176. data/helpers/vendor/composer/composer/src/Composer/Installer/BinaryInstaller.php +0 -210
  177. data/helpers/vendor/composer/composer/src/Composer/Installer/BinaryPresenceInterface.php +0 -30
  178. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallationManager.php +0 -326
  179. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerEvent.php +0 -161
  180. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerEvents.php +0 -43
  181. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerInterface.php +0 -79
  182. data/helpers/vendor/composer/composer/src/Composer/Installer/LibraryInstaller.php +0 -232
  183. data/helpers/vendor/composer/composer/src/Composer/Installer/MetapackageInstaller.php +0 -81
  184. data/helpers/vendor/composer/composer/src/Composer/Installer/NoopInstaller.php +0 -88
  185. data/helpers/vendor/composer/composer/src/Composer/Installer/PackageEvent.php +0 -65
  186. data/helpers/vendor/composer/composer/src/Composer/Installer/PackageEvents.php +0 -75
  187. data/helpers/vendor/composer/composer/src/Composer/Installer/PearBinaryInstaller.php +0 -144
  188. data/helpers/vendor/composer/composer/src/Composer/Installer/PearInstaller.php +0 -84
  189. data/helpers/vendor/composer/composer/src/Composer/Installer/PluginInstaller.php +0 -84
  190. data/helpers/vendor/composer/composer/src/Composer/Installer/ProjectInstaller.php +0 -99
  191. data/helpers/vendor/composer/composer/src/Composer/Installer/SuggestedPackagesReporter.php +0 -151
  192. data/helpers/vendor/composer/composer/src/Composer/Json/JsonFile.php +0 -301
  193. data/helpers/vendor/composer/composer/src/Composer/Json/JsonFormatter.php +0 -134
  194. data/helpers/vendor/composer/composer/src/Composer/Json/JsonManipulator.php +0 -521
  195. data/helpers/vendor/composer/composer/src/Composer/Json/JsonValidationException.php +0 -34
  196. data/helpers/vendor/composer/composer/src/Composer/Package/AliasPackage.php +0 -404
  197. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchivableFilesFilter.php +0 -44
  198. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchivableFilesFinder.php +0 -105
  199. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchiveManager.php +0 -178
  200. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchiverInterface.php +0 -43
  201. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/BaseExcludeFilter.php +0 -148
  202. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ComposerExcludeFilter.php +0 -31
  203. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/GitExcludeFilter.php +0 -79
  204. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/HgExcludeFilter.php +0 -107
  205. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/PharArchiver.php +0 -97
  206. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ZipArchiver.php +0 -74
  207. data/helpers/vendor/composer/composer/src/Composer/Package/BasePackage.php +0 -250
  208. data/helpers/vendor/composer/composer/src/Composer/Package/Comparer/Comparer.php +0 -129
  209. data/helpers/vendor/composer/composer/src/Composer/Package/CompletePackage.php +0 -199
  210. data/helpers/vendor/composer/composer/src/Composer/Package/CompletePackageInterface.php +0 -95
  211. data/helpers/vendor/composer/composer/src/Composer/Package/Dumper/ArrayDumper.php +0 -145
  212. data/helpers/vendor/composer/composer/src/Composer/Package/Link.php +0 -128
  213. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/EmptyConstraint.php +0 -24
  214. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/LinkConstraintInterface.php +0 -24
  215. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/MultiConstraint.php +0 -24
  216. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/SpecificConstraint.php +0 -24
  217. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/VersionConstraint.php +0 -24
  218. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/ArrayLoader.php +0 -290
  219. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/InvalidPackageException.php +0 -46
  220. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/JsonLoader.php +0 -45
  221. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/LoaderInterface.php +0 -30
  222. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/RootPackageLoader.php +0 -241
  223. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/ValidatingArrayLoader.php +0 -461
  224. data/helpers/vendor/composer/composer/src/Composer/Package/Locker.php +0 -438
  225. data/helpers/vendor/composer/composer/src/Composer/Package/Package.php +0 -612
  226. data/helpers/vendor/composer/composer/src/Composer/Package/PackageInterface.php +0 -361
  227. data/helpers/vendor/composer/composer/src/Composer/Package/RootAliasPackage.php +0 -173
  228. data/helpers/vendor/composer/composer/src/Composer/Package/RootPackage.php +0 -136
  229. data/helpers/vendor/composer/composer/src/Composer/Package/RootPackageInterface.php +0 -142
  230. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionGuesser.php +0 -302
  231. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionParser.php +0 -81
  232. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionSelector.php +0 -176
  233. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capability/Capability.php +0 -23
  234. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capability/CommandProvider.php +0 -33
  235. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capable.php +0 -43
  236. data/helpers/vendor/composer/composer/src/Composer/Plugin/CommandEvent.php +0 -88
  237. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginEvents.php +0 -61
  238. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginInterface.php +0 -39
  239. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginManager.php +0 -403
  240. data/helpers/vendor/composer/composer/src/Composer/Plugin/PreCommandRunEvent.php +0 -68
  241. data/helpers/vendor/composer/composer/src/Composer/Plugin/PreFileDownloadEvent.php +0 -78
  242. data/helpers/vendor/composer/composer/src/Composer/Question/StrictConfirmationQuestion.php +0 -94
  243. data/helpers/vendor/composer/composer/src/Composer/Repository/ArrayRepository.php +0 -208
  244. data/helpers/vendor/composer/composer/src/Composer/Repository/ArtifactRepository.php +0 -167
  245. data/helpers/vendor/composer/composer/src/Composer/Repository/BaseRepository.php +0 -157
  246. data/helpers/vendor/composer/composer/src/Composer/Repository/ComposerRepository.php +0 -838
  247. data/helpers/vendor/composer/composer/src/Composer/Repository/CompositeRepository.php +0 -164
  248. data/helpers/vendor/composer/composer/src/Composer/Repository/ConfigurableRepositoryInterface.php +0 -23
  249. data/helpers/vendor/composer/composer/src/Composer/Repository/FilesystemRepository.php +0 -92
  250. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledArrayRepository.php +0 -24
  251. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledFilesystemRepository.php +0 -22
  252. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledRepositoryInterface.php +0 -24
  253. data/helpers/vendor/composer/composer/src/Composer/Repository/InvalidRepositoryException.php +0 -22
  254. data/helpers/vendor/composer/composer/src/Composer/Repository/PackageRepository.php +0 -61
  255. data/helpers/vendor/composer/composer/src/Composer/Repository/PathRepository.php +0 -190
  256. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/BaseChannelReader.php +0 -82
  257. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelInfo.php +0 -67
  258. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelReader.php +0 -101
  259. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelRest10Reader.php +0 -164
  260. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelRest11Reader.php +0 -139
  261. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/DependencyConstraint.php +0 -60
  262. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/DependencyInfo.php +0 -50
  263. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/PackageDependencyParser.php +0 -317
  264. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/PackageInfo.php +0 -94
  265. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ReleaseInfo.php +0 -50
  266. data/helpers/vendor/composer/composer/src/Composer/Repository/PearRepository.php +0 -198
  267. data/helpers/vendor/composer/composer/src/Composer/Repository/PlatformRepository.php +0 -315
  268. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryFactory.php +0 -166
  269. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryInterface.php +0 -74
  270. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryManager.php +0 -177
  271. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositorySecurityException.php +0 -22
  272. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/BitbucketDriver.php +0 -443
  273. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/FossilDriver.php +0 -238
  274. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitBitbucketDriver.php +0 -91
  275. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitDriver.php +0 -222
  276. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitHubDriver.php +0 -472
  277. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitLabDriver.php +0 -511
  278. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/HgBitbucketDriver.php +0 -91
  279. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/HgDriver.php +0 -230
  280. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/PerforceDriver.php +0 -181
  281. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/SvnDriver.php +0 -397
  282. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/VcsDriver.php +0 -175
  283. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/VcsDriverInterface.php +0 -117
  284. data/helpers/vendor/composer/composer/src/Composer/Repository/VcsRepository.php +0 -377
  285. data/helpers/vendor/composer/composer/src/Composer/Repository/VersionCacheInterface.php +0 -23
  286. data/helpers/vendor/composer/composer/src/Composer/Repository/WritableArrayRepository.php +0 -66
  287. data/helpers/vendor/composer/composer/src/Composer/Repository/WritableRepositoryInterface.php +0 -54
  288. data/helpers/vendor/composer/composer/src/Composer/Script/CommandEvent.php +0 -22
  289. data/helpers/vendor/composer/composer/src/Composer/Script/Event.php +0 -89
  290. data/helpers/vendor/composer/composer/src/Composer/Script/PackageEvent.php +0 -24
  291. data/helpers/vendor/composer/composer/src/Composer/Script/ScriptEvents.php +0 -193
  292. data/helpers/vendor/composer/composer/src/Composer/SelfUpdate/Keys.php +0 -36
  293. data/helpers/vendor/composer/composer/src/Composer/SelfUpdate/Versions.php +0 -75
  294. data/helpers/vendor/composer/composer/src/Composer/Util/AuthHelper.php +0 -63
  295. data/helpers/vendor/composer/composer/src/Composer/Util/Bitbucket.php +0 -245
  296. data/helpers/vendor/composer/composer/src/Composer/Util/ComposerMirror.php +0 -57
  297. data/helpers/vendor/composer/composer/src/Composer/Util/ConfigValidator.php +0 -191
  298. data/helpers/vendor/composer/composer/src/Composer/Util/ErrorHandler.php +0 -79
  299. data/helpers/vendor/composer/composer/src/Composer/Util/Filesystem.php +0 -700
  300. data/helpers/vendor/composer/composer/src/Composer/Util/Git.php +0 -347
  301. data/helpers/vendor/composer/composer/src/Composer/Util/GitHub.php +0 -180
  302. data/helpers/vendor/composer/composer/src/Composer/Util/GitLab.php +0 -163
  303. data/helpers/vendor/composer/composer/src/Composer/Util/Hg.php +0 -94
  304. data/helpers/vendor/composer/composer/src/Composer/Util/IniHelper.php +0 -64
  305. data/helpers/vendor/composer/composer/src/Composer/Util/NoProxyPattern.php +0 -147
  306. data/helpers/vendor/composer/composer/src/Composer/Util/Perforce.php +0 -575
  307. data/helpers/vendor/composer/composer/src/Composer/Util/Platform.php +0 -92
  308. data/helpers/vendor/composer/composer/src/Composer/Util/ProcessExecutor.php +0 -186
  309. data/helpers/vendor/composer/composer/src/Composer/Util/RemoteFilesystem.php +0 -1093
  310. data/helpers/vendor/composer/composer/src/Composer/Util/Silencer.php +0 -78
  311. data/helpers/vendor/composer/composer/src/Composer/Util/SpdxLicense.php +0 -24
  312. data/helpers/vendor/composer/composer/src/Composer/Util/StreamContextFactory.php +0 -177
  313. data/helpers/vendor/composer/composer/src/Composer/Util/Svn.php +0 -381
  314. data/helpers/vendor/composer/composer/src/Composer/Util/TlsHelper.php +0 -204
  315. data/helpers/vendor/composer/composer/src/Composer/Util/Url.php +0 -55
  316. data/helpers/vendor/composer/composer/src/Composer/XdebugHandler.php +0 -31
  317. data/helpers/vendor/composer/composer/src/bootstrap.php +0 -24
  318. data/helpers/vendor/composer/installed.json +0 -945
  319. data/helpers/vendor/composer/semver/CHANGELOG.md +0 -66
  320. data/helpers/vendor/composer/semver/LICENSE +0 -19
  321. data/helpers/vendor/composer/semver/README.md +0 -70
  322. data/helpers/vendor/composer/semver/composer.json +0 -58
  323. data/helpers/vendor/composer/semver/src/Comparator.php +0 -111
  324. data/helpers/vendor/composer/semver/src/Constraint/AbstractConstraint.php +0 -63
  325. data/helpers/vendor/composer/semver/src/Constraint/Constraint.php +0 -219
  326. data/helpers/vendor/composer/semver/src/Constraint/ConstraintInterface.php +0 -32
  327. data/helpers/vendor/composer/semver/src/Constraint/EmptyConstraint.php +0 -59
  328. data/helpers/vendor/composer/semver/src/Constraint/MultiConstraint.php +0 -120
  329. data/helpers/vendor/composer/semver/src/Semver.php +0 -127
  330. data/helpers/vendor/composer/semver/src/VersionParser.php +0 -548
  331. data/helpers/vendor/composer/spdx-licenses/.php_cs.dist +0 -59
  332. data/helpers/vendor/composer/spdx-licenses/CHANGELOG.md +0 -84
  333. data/helpers/vendor/composer/spdx-licenses/LICENSE +0 -19
  334. data/helpers/vendor/composer/spdx-licenses/README.md +0 -69
  335. data/helpers/vendor/composer/spdx-licenses/composer.json +0 -57
  336. data/helpers/vendor/composer/spdx-licenses/res/spdx-exceptions.json +0 -101
  337. data/helpers/vendor/composer/spdx-licenses/res/spdx-licenses.json +0 -1907
  338. data/helpers/vendor/composer/spdx-licenses/src/SpdxLicenses.php +0 -343
  339. data/helpers/vendor/composer/xdebug-handler/CHANGELOG.md +0 -51
  340. data/helpers/vendor/composer/xdebug-handler/LICENSE +0 -21
  341. data/helpers/vendor/composer/xdebug-handler/README.md +0 -280
  342. data/helpers/vendor/composer/xdebug-handler/composer.json +0 -40
  343. data/helpers/vendor/composer/xdebug-handler/src/PhpConfig.php +0 -73
  344. data/helpers/vendor/composer/xdebug-handler/src/Process.php +0 -160
  345. data/helpers/vendor/composer/xdebug-handler/src/Status.php +0 -163
  346. data/helpers/vendor/composer/xdebug-handler/src/XdebugHandler.php +0 -540
  347. data/helpers/vendor/justinrainbow/json-schema/.gitattributes +0 -5
  348. data/helpers/vendor/justinrainbow/json-schema/.php_cs.dist +0 -33
  349. data/helpers/vendor/justinrainbow/json-schema/LICENSE +0 -21
  350. data/helpers/vendor/justinrainbow/json-schema/README.md +0 -206
  351. data/helpers/vendor/justinrainbow/json-schema/bin/validate-json +0 -251
  352. data/helpers/vendor/justinrainbow/json-schema/composer.json +0 -65
  353. data/helpers/vendor/justinrainbow/json-schema/demo/README.md +0 -14
  354. data/helpers/vendor/justinrainbow/json-schema/demo/data.json +0 -3
  355. data/helpers/vendor/justinrainbow/json-schema/demo/demo.php +0 -18
  356. data/helpers/vendor/justinrainbow/json-schema/demo/schema.json +0 -3
  357. data/helpers/vendor/justinrainbow/json-schema/dist/schema/json-schema-draft-03.json +0 -174
  358. data/helpers/vendor/justinrainbow/json-schema/dist/schema/json-schema-draft-04.json +0 -150
  359. data/helpers/vendor/justinrainbow/json-schema/phpunit.xml.dist +0 -26
  360. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/BaseConstraint.php +0 -148
  361. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/CollectionConstraint.php +0 -147
  362. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/Constraint.php +0 -213
  363. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/ConstraintInterface.php +0 -65
  364. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/EnumConstraint.php +0 -54
  365. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/Factory.php +0 -220
  366. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/FormatConstraint.php +0 -214
  367. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/NumberConstraint.php +0 -86
  368. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/ObjectConstraint.php +0 -192
  369. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/SchemaConstraint.php +0 -94
  370. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/StringConstraint.php +0 -60
  371. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/LooseTypeCheck.php +0 -68
  372. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/StrictTypeCheck.php +0 -36
  373. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/TypeCheckInterface.php +0 -18
  374. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeConstraint.php +0 -261
  375. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/UndefinedConstraint.php +0 -413
  376. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Entity/JsonPointer.php +0 -161
  377. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ExceptionInterface.php +0 -7
  378. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidArgumentException.php +0 -17
  379. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidConfigException.php +0 -17
  380. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSchemaException.php +0 -17
  381. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSchemaMediaTypeException.php +0 -17
  382. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSourceUriException.php +0 -17
  383. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/JsonDecodingException.php +0 -40
  384. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ResourceNotFoundException.php +0 -17
  385. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/RuntimeException.php +0 -17
  386. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/UnresolvableJsonPointerException.php +0 -19
  387. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/UriResolverException.php +0 -17
  388. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ValidationException.php +0 -14
  389. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Iterator/ObjectIterator.php +0 -149
  390. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Rfc3339.php +0 -30
  391. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/SchemaStorage.php +0 -169
  392. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/SchemaStorageInterface.php +0 -41
  393. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/AbstractRetriever.php +0 -34
  394. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/Curl.php +0 -83
  395. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/FileGetContents.php +0 -93
  396. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/PredefinedArray.php +0 -56
  397. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/UriRetrieverInterface.php +0 -36
  398. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/UriResolver.php +0 -175
  399. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/UriRetriever.php +0 -330
  400. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/UriResolverInterface.php +0 -26
  401. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/UriRetrieverInterface.php +0 -26
  402. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Validator.php +0 -90
  403. data/helpers/vendor/psr/log/.gitignore +0 -1
  404. data/helpers/vendor/psr/log/LICENSE +0 -19
  405. data/helpers/vendor/psr/log/Psr/Log/AbstractLogger.php +0 -128
  406. data/helpers/vendor/psr/log/Psr/Log/InvalidArgumentException.php +0 -7
  407. data/helpers/vendor/psr/log/Psr/Log/LogLevel.php +0 -18
  408. data/helpers/vendor/psr/log/Psr/Log/LoggerAwareInterface.php +0 -18
  409. data/helpers/vendor/psr/log/Psr/Log/LoggerAwareTrait.php +0 -26
  410. data/helpers/vendor/psr/log/Psr/Log/LoggerInterface.php +0 -123
  411. data/helpers/vendor/psr/log/Psr/Log/LoggerTrait.php +0 -140
  412. data/helpers/vendor/psr/log/Psr/Log/NullLogger.php +0 -28
  413. data/helpers/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php +0 -144
  414. data/helpers/vendor/psr/log/Psr/Log/Test/TestLogger.php +0 -146
  415. data/helpers/vendor/psr/log/README.md +0 -52
  416. data/helpers/vendor/psr/log/composer.json +0 -26
  417. data/helpers/vendor/seld/jsonlint/.gitignore +0 -3
  418. data/helpers/vendor/seld/jsonlint/.travis.yml +0 -25
  419. data/helpers/vendor/seld/jsonlint/CHANGELOG.md +0 -66
  420. data/helpers/vendor/seld/jsonlint/LICENSE +0 -19
  421. data/helpers/vendor/seld/jsonlint/README.md +0 -89
  422. data/helpers/vendor/seld/jsonlint/bin/jsonlint +0 -117
  423. data/helpers/vendor/seld/jsonlint/composer.json +0 -24
  424. data/helpers/vendor/seld/jsonlint/phpunit.xml.dist +0 -25
  425. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/DuplicateKeyException.php +0 -26
  426. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/JsonParser.php +0 -502
  427. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/Lexer.php +0 -217
  428. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/ParsingException.php +0 -28
  429. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/Undefined.php +0 -16
  430. data/helpers/vendor/seld/jsonlint/tests/JsonParserTest.php +0 -230
  431. data/helpers/vendor/seld/jsonlint/tests/bom.json +0 -6
  432. data/helpers/vendor/seld/jsonlint/tests/bootstrap.php +0 -13
  433. data/helpers/vendor/seld/phar-utils/.gitignore +0 -1
  434. data/helpers/vendor/seld/phar-utils/LICENSE +0 -19
  435. data/helpers/vendor/seld/phar-utils/README.md +0 -39
  436. data/helpers/vendor/seld/phar-utils/composer.json +0 -26
  437. data/helpers/vendor/seld/phar-utils/composer.lock +0 -19
  438. data/helpers/vendor/seld/phar-utils/src/Timestamps.php +0 -192
  439. data/helpers/vendor/symfony/console/.gitignore +0 -3
  440. data/helpers/vendor/symfony/console/Application.php +0 -1174
  441. data/helpers/vendor/symfony/console/CHANGELOG.md +0 -140
  442. data/helpers/vendor/symfony/console/Command/Command.php +0 -654
  443. data/helpers/vendor/symfony/console/Command/HelpCommand.php +0 -81
  444. data/helpers/vendor/symfony/console/Command/ListCommand.php +0 -90
  445. data/helpers/vendor/symfony/console/Command/LockableTrait.php +0 -71
  446. data/helpers/vendor/symfony/console/CommandLoader/CommandLoaderInterface.php +0 -37
  447. data/helpers/vendor/symfony/console/CommandLoader/ContainerCommandLoader.php +0 -55
  448. data/helpers/vendor/symfony/console/CommandLoader/FactoryCommandLoader.php +0 -62
  449. data/helpers/vendor/symfony/console/ConsoleEvents.php +0 -47
  450. data/helpers/vendor/symfony/console/DependencyInjection/AddConsoleCommandPass.php +0 -98
  451. data/helpers/vendor/symfony/console/Descriptor/ApplicationDescription.php +0 -144
  452. data/helpers/vendor/symfony/console/Descriptor/Descriptor.php +0 -107
  453. data/helpers/vendor/symfony/console/Descriptor/DescriptorInterface.php +0 -31
  454. data/helpers/vendor/symfony/console/Descriptor/JsonDescriptor.php +0 -168
  455. data/helpers/vendor/symfony/console/Descriptor/MarkdownDescriptor.php +0 -182
  456. data/helpers/vendor/symfony/console/Descriptor/TextDescriptor.php +0 -342
  457. data/helpers/vendor/symfony/console/Descriptor/XmlDescriptor.php +0 -245
  458. data/helpers/vendor/symfony/console/Event/ConsoleCommandEvent.php +0 -60
  459. data/helpers/vendor/symfony/console/Event/ConsoleErrorEvent.php +0 -58
  460. data/helpers/vendor/symfony/console/Event/ConsoleEvent.php +0 -67
  461. data/helpers/vendor/symfony/console/Event/ConsoleTerminateEvent.php +0 -53
  462. data/helpers/vendor/symfony/console/EventListener/ErrorListener.php +0 -91
  463. data/helpers/vendor/symfony/console/Exception/CommandNotFoundException.php +0 -43
  464. data/helpers/vendor/symfony/console/Exception/ExceptionInterface.php +0 -21
  465. data/helpers/vendor/symfony/console/Exception/InvalidArgumentException.php +0 -19
  466. data/helpers/vendor/symfony/console/Exception/InvalidOptionException.php +0 -21
  467. data/helpers/vendor/symfony/console/Exception/LogicException.php +0 -19
  468. data/helpers/vendor/symfony/console/Exception/NamespaceNotFoundException.php +0 -21
  469. data/helpers/vendor/symfony/console/Exception/RuntimeException.php +0 -19
  470. data/helpers/vendor/symfony/console/Formatter/OutputFormatter.php +0 -278
  471. data/helpers/vendor/symfony/console/Formatter/OutputFormatterInterface.php +0 -71
  472. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyle.php +0 -203
  473. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php +0 -62
  474. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyleStack.php +0 -110
  475. data/helpers/vendor/symfony/console/Formatter/WrappableOutputFormatterInterface.php +0 -25
  476. data/helpers/vendor/symfony/console/Helper/DebugFormatterHelper.php +0 -127
  477. data/helpers/vendor/symfony/console/Helper/DescriptorHelper.php +0 -94
  478. data/helpers/vendor/symfony/console/Helper/FormatterHelper.php +0 -106
  479. data/helpers/vendor/symfony/console/Helper/Helper.php +0 -138
  480. data/helpers/vendor/symfony/console/Helper/HelperInterface.php +0 -39
  481. data/helpers/vendor/symfony/console/Helper/HelperSet.php +0 -108
  482. data/helpers/vendor/symfony/console/Helper/InputAwareHelper.php +0 -33
  483. data/helpers/vendor/symfony/console/Helper/ProcessHelper.php +0 -156
  484. data/helpers/vendor/symfony/console/Helper/ProgressBar.php +0 -530
  485. data/helpers/vendor/symfony/console/Helper/ProgressIndicator.php +0 -269
  486. data/helpers/vendor/symfony/console/Helper/QuestionHelper.php +0 -434
  487. data/helpers/vendor/symfony/console/Helper/SymfonyQuestionHelper.php +0 -96
  488. data/helpers/vendor/symfony/console/Helper/Table.php +0 -808
  489. data/helpers/vendor/symfony/console/Helper/TableCell.php +0 -68
  490. data/helpers/vendor/symfony/console/Helper/TableRows.php +0 -32
  491. data/helpers/vendor/symfony/console/Helper/TableSeparator.php +0 -25
  492. data/helpers/vendor/symfony/console/Helper/TableStyle.php +0 -458
  493. data/helpers/vendor/symfony/console/Input/ArgvInput.php +0 -346
  494. data/helpers/vendor/symfony/console/Input/ArrayInput.php +0 -206
  495. data/helpers/vendor/symfony/console/Input/Input.php +0 -203
  496. data/helpers/vendor/symfony/console/Input/InputArgument.php +0 -129
  497. data/helpers/vendor/symfony/console/Input/InputAwareInterface.php +0 -26
  498. data/helpers/vendor/symfony/console/Input/InputDefinition.php +0 -402
  499. data/helpers/vendor/symfony/console/Input/InputInterface.php +0 -163
  500. data/helpers/vendor/symfony/console/Input/InputOption.php +0 -208
  501. data/helpers/vendor/symfony/console/Input/StreamableInputInterface.php +0 -37
  502. data/helpers/vendor/symfony/console/Input/StringInput.php +0 -72
  503. data/helpers/vendor/symfony/console/LICENSE +0 -19
  504. data/helpers/vendor/symfony/console/Logger/ConsoleLogger.php +0 -124
  505. data/helpers/vendor/symfony/console/Output/BufferedOutput.php +0 -45
  506. data/helpers/vendor/symfony/console/Output/ConsoleOutput.php +0 -161
  507. data/helpers/vendor/symfony/console/Output/ConsoleOutputInterface.php +0 -32
  508. data/helpers/vendor/symfony/console/Output/ConsoleSectionOutput.php +0 -141
  509. data/helpers/vendor/symfony/console/Output/NullOutput.php +0 -123
  510. data/helpers/vendor/symfony/console/Output/Output.php +0 -177
  511. data/helpers/vendor/symfony/console/Output/OutputInterface.php +0 -114
  512. data/helpers/vendor/symfony/console/Output/StreamOutput.php +0 -124
  513. data/helpers/vendor/symfony/console/Question/ChoiceQuestion.php +0 -184
  514. data/helpers/vendor/symfony/console/Question/ConfirmationQuestion.php +0 -59
  515. data/helpers/vendor/symfony/console/Question/Question.php +0 -246
  516. data/helpers/vendor/symfony/console/README.md +0 -20
  517. data/helpers/vendor/symfony/console/Resources/bin/hiddeninput.exe +0 -0
  518. data/helpers/vendor/symfony/console/Style/OutputStyle.php +0 -155
  519. data/helpers/vendor/symfony/console/Style/StyleInterface.php +0 -154
  520. data/helpers/vendor/symfony/console/Style/SymfonyStyle.php +0 -438
  521. data/helpers/vendor/symfony/console/Terminal.php +0 -137
  522. data/helpers/vendor/symfony/console/Tester/ApplicationTester.php +0 -77
  523. data/helpers/vendor/symfony/console/Tester/CommandTester.php +0 -79
  524. data/helpers/vendor/symfony/console/Tester/TesterTrait.php +0 -173
  525. data/helpers/vendor/symfony/console/Tests/ApplicationTest.php +0 -1791
  526. data/helpers/vendor/symfony/console/Tests/Command/CommandTest.php +0 -436
  527. data/helpers/vendor/symfony/console/Tests/Command/HelpCommandTest.php +0 -71
  528. data/helpers/vendor/symfony/console/Tests/Command/ListCommandTest.php +0 -113
  529. data/helpers/vendor/symfony/console/Tests/Command/LockableTraitTest.php +0 -67
  530. data/helpers/vendor/symfony/console/Tests/CommandLoader/ContainerCommandLoaderTest.php +0 -61
  531. data/helpers/vendor/symfony/console/Tests/CommandLoader/FactoryCommandLoaderTest.php +0 -60
  532. data/helpers/vendor/symfony/console/Tests/DependencyInjection/AddConsoleCommandPassTest.php +0 -258
  533. data/helpers/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php +0 -107
  534. data/helpers/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php +0 -35
  535. data/helpers/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php +0 -45
  536. data/helpers/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php +0 -82
  537. data/helpers/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php +0 -53
  538. data/helpers/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php +0 -27
  539. data/helpers/vendor/symfony/console/Tests/EventListener/ErrorListenerTest.php +0 -156
  540. data/helpers/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php +0 -11
  541. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php +0 -18
  542. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php +0 -26
  543. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplicationMbString.php +0 -24
  544. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php +0 -27
  545. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php +0 -32
  546. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand3.php +0 -27
  547. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand4.php +0 -25
  548. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommandMbString.php +0 -32
  549. data/helpers/vendor/symfony/console/Tests/Fixtures/DummyOutput.php +0 -36
  550. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo1Command.php +0 -26
  551. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo2Command.php +0 -21
  552. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo3Command.php +0 -29
  553. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo4Command.php +0 -11
  554. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo5Command.php +0 -10
  555. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo6Command.php +0 -11
  556. data/helpers/vendor/symfony/console/Tests/Fixtures/FooCommand.php +0 -33
  557. data/helpers/vendor/symfony/console/Tests/Fixtures/FooLock2Command.php +0 -28
  558. data/helpers/vendor/symfony/console/Tests/Fixtures/FooLockCommand.php +0 -27
  559. data/helpers/vendor/symfony/console/Tests/Fixtures/FooOptCommand.php +0 -36
  560. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSameCaseLowercaseCommand.php +0 -11
  561. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSameCaseUppercaseCommand.php +0 -11
  562. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php +0 -26
  563. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php +0 -26
  564. data/helpers/vendor/symfony/console/Tests/Fixtures/FooWithoutAliasCommand.php +0 -21
  565. data/helpers/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php +0 -25
  566. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_0.php +0 -11
  567. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_1.php +0 -13
  568. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_10.php +0 -17
  569. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_11.php +0 -12
  570. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_12.php +0 -13
  571. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_13.php +0 -14
  572. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_14.php +0 -17
  573. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_15.php +0 -14
  574. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_16.php +0 -15
  575. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_17.php +0 -13
  576. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_2.php +0 -16
  577. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_3.php +0 -12
  578. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4.php +0 -34
  579. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4_with_iterators.php +0 -34
  580. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_5.php +0 -37
  581. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_6.php +0 -16
  582. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_7.php +0 -15
  583. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_8.php +0 -26
  584. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_9.php +0 -11
  585. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/interactive_command_1.php +0 -19
  586. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/interactive_output_1.txt +0 -7
  587. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_0.txt +0 -3
  588. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_1.txt +0 -9
  589. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_10.txt +0 -7
  590. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_11.txt +0 -4
  591. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_12.txt +0 -6
  592. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_13.txt +0 -7
  593. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_14.txt +0 -6
  594. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_15.txt +0 -7
  595. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_16.txt +0 -8
  596. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_17.txt +0 -7
  597. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_2.txt +0 -13
  598. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_3.txt +0 -7
  599. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4.txt +0 -32
  600. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4_with_iterators.txt +0 -32
  601. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_5.txt +0 -18
  602. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_6.txt +0 -6
  603. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_7.txt +0 -5
  604. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_8.txt +0 -9
  605. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_9.txt +0 -5
  606. data/helpers/vendor/symfony/console/Tests/Fixtures/TestCommand.php +0 -28
  607. data/helpers/vendor/symfony/console/Tests/Fixtures/TestTiti.php +0 -21
  608. data/helpers/vendor/symfony/console/Tests/Fixtures/TestToto.php +0 -22
  609. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.json +0 -156
  610. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.md +0 -172
  611. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.txt +0 -17
  612. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.xml +0 -104
  613. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.json +0 -509
  614. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.md +0 -431
  615. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.txt +0 -21
  616. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.xml +0 -254
  617. data/helpers/vendor/symfony/console/Tests/Fixtures/application_filtered_namespace.txt +0 -16
  618. data/helpers/vendor/symfony/console/Tests/Fixtures/application_gethelp.txt +0 -1
  619. data/helpers/vendor/symfony/console/Tests/Fixtures/application_mbstring.md +0 -269
  620. data/helpers/vendor/symfony/console/Tests/Fixtures/application_mbstring.txt +0 -19
  621. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception1.txt +0 -5
  622. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception2.txt +0 -7
  623. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception3.txt +0 -18
  624. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception3decorated.txt +0 -18
  625. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception4.txt +0 -6
  626. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1.txt +0 -8
  627. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1decorated.txt +0 -8
  628. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth2.txt +0 -9
  629. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_escapeslines.txt +0 -9
  630. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_linebreaks.txt +0 -11
  631. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run1.txt +0 -17
  632. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run2.txt +0 -29
  633. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run3.txt +0 -29
  634. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run4.txt +0 -1
  635. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.json +0 -15
  636. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.md +0 -12
  637. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.txt +0 -10
  638. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.xml +0 -12
  639. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.json +0 -33
  640. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.md +0 -29
  641. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.txt +0 -16
  642. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.xml +0 -21
  643. data/helpers/vendor/symfony/console/Tests/Fixtures/command_mbstring.md +0 -29
  644. data/helpers/vendor/symfony/console/Tests/Fixtures/command_mbstring.txt +0 -16
  645. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.json +0 -7
  646. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.md +0 -5
  647. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.txt +0 -1
  648. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.xml +0 -5
  649. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.json +0 -7
  650. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.md +0 -7
  651. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.txt +0 -1
  652. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.xml +0 -5
  653. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.json +0 -7
  654. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.md +0 -7
  655. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.txt +0 -1
  656. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.xml +0 -7
  657. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.json +0 -7
  658. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.md +0 -8
  659. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.txt +0 -2
  660. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.xml +0 -6
  661. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.json +0 -7
  662. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.md +0 -7
  663. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.txt +0 -1
  664. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.xml +0 -7
  665. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.json +0 -7
  666. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.md +0 -7
  667. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.txt +0 -1
  668. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.xml +0 -7
  669. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.json +0 -4
  670. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.md +0 -0
  671. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.txt +0 -0
  672. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.xml +0 -5
  673. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.json +0 -12
  674. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.md +0 -7
  675. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.txt +0 -2
  676. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.xml +0 -10
  677. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.json +0 -14
  678. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.md +0 -8
  679. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.txt +0 -2
  680. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.xml +0 -9
  681. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.json +0 -22
  682. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.md +0 -16
  683. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.txt +0 -5
  684. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.xml +0 -14
  685. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.json +0 -9
  686. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.md +0 -6
  687. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.txt +0 -1
  688. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.xml +0 -4
  689. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.json +0 -9
  690. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.md +0 -8
  691. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.txt +0 -1
  692. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.xml +0 -7
  693. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.json +0 -9
  694. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.md +0 -8
  695. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.txt +0 -1
  696. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.xml +0 -5
  697. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.json +0 -9
  698. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.md +0 -8
  699. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.txt +0 -1
  700. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.xml +0 -5
  701. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.json +0 -9
  702. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.md +0 -9
  703. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.txt +0 -2
  704. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.xml +0 -6
  705. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.json +0 -9
  706. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.md +0 -8
  707. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.txt +0 -1
  708. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.xml +0 -5
  709. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.json +0 -9
  710. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.md +0 -8
  711. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.txt +0 -1
  712. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.xml +0 -7
  713. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.json +0 -9
  714. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.md +0 -8
  715. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.txt +0 -1
  716. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.xml +0 -7
  717. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.json +0 -12
  718. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.md +0 -8
  719. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.txt +0 -1
  720. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.xml +0 -8
  721. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleStackTest.php +0 -71
  722. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleTest.php +0 -100
  723. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterTest.php +0 -352
  724. data/helpers/vendor/symfony/console/Tests/Helper/AbstractQuestionHelperTest.php +0 -34
  725. data/helpers/vendor/symfony/console/Tests/Helper/FormatterHelperTest.php +0 -129
  726. data/helpers/vendor/symfony/console/Tests/Helper/HelperSetTest.php +0 -127
  727. data/helpers/vendor/symfony/console/Tests/Helper/HelperTest.php +0 -55
  728. data/helpers/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php +0 -133
  729. data/helpers/vendor/symfony/console/Tests/Helper/ProgressBarTest.php +0 -899
  730. data/helpers/vendor/symfony/console/Tests/Helper/ProgressIndicatorTest.php +0 -183
  731. data/helpers/vendor/symfony/console/Tests/Helper/QuestionHelperTest.php +0 -665
  732. data/helpers/vendor/symfony/console/Tests/Helper/SymfonyQuestionHelperTest.php +0 -168
  733. data/helpers/vendor/symfony/console/Tests/Helper/TableStyleTest.php +0 -28
  734. data/helpers/vendor/symfony/console/Tests/Helper/TableTest.php +0 -1127
  735. data/helpers/vendor/symfony/console/Tests/Input/ArgvInputTest.php +0 -458
  736. data/helpers/vendor/symfony/console/Tests/Input/ArrayInputTest.php +0 -177
  737. data/helpers/vendor/symfony/console/Tests/Input/InputArgumentTest.php +0 -103
  738. data/helpers/vendor/symfony/console/Tests/Input/InputDefinitionTest.php +0 -407
  739. data/helpers/vendor/symfony/console/Tests/Input/InputOptionTest.php +0 -196
  740. data/helpers/vendor/symfony/console/Tests/Input/InputTest.php +0 -149
  741. data/helpers/vendor/symfony/console/Tests/Input/StringInputTest.php +0 -87
  742. data/helpers/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php +0 -215
  743. data/helpers/vendor/symfony/console/Tests/Output/ConsoleOutputTest.php +0 -42
  744. data/helpers/vendor/symfony/console/Tests/Output/ConsoleSectionOutputTest.php +0 -163
  745. data/helpers/vendor/symfony/console/Tests/Output/NullOutputTest.php +0 -88
  746. data/helpers/vendor/symfony/console/Tests/Output/OutputTest.php +0 -189
  747. data/helpers/vendor/symfony/console/Tests/Output/StreamOutputTest.php +0 -61
  748. data/helpers/vendor/symfony/console/Tests/Style/SymfonyStyleTest.php +0 -116
  749. data/helpers/vendor/symfony/console/Tests/TerminalTest.php +0 -44
  750. data/helpers/vendor/symfony/console/Tests/Tester/ApplicationTesterTest.php +0 -113
  751. data/helpers/vendor/symfony/console/Tests/Tester/CommandTesterTest.php +0 -207
  752. data/helpers/vendor/symfony/console/composer.json +0 -53
  753. data/helpers/vendor/symfony/console/phpunit.xml.dist +0 -41
  754. data/helpers/vendor/symfony/contracts/.gitignore +0 -3
  755. data/helpers/vendor/symfony/contracts/CHANGELOG.md +0 -12
  756. data/helpers/vendor/symfony/contracts/Cache/CacheInterface.php +0 -57
  757. data/helpers/vendor/symfony/contracts/Cache/CacheTrait.php +0 -71
  758. data/helpers/vendor/symfony/contracts/Cache/CallbackInterface.php +0 -30
  759. data/helpers/vendor/symfony/contracts/Cache/ItemInterface.php +0 -60
  760. data/helpers/vendor/symfony/contracts/Cache/TagAwareCacheInterface.php +0 -38
  761. data/helpers/vendor/symfony/contracts/LICENSE +0 -19
  762. data/helpers/vendor/symfony/contracts/README.md +0 -70
  763. data/helpers/vendor/symfony/contracts/Service/ResetInterface.php +0 -30
  764. data/helpers/vendor/symfony/contracts/Service/ServiceLocatorTrait.php +0 -97
  765. data/helpers/vendor/symfony/contracts/Service/ServiceSubscriberInterface.php +0 -53
  766. data/helpers/vendor/symfony/contracts/Service/ServiceSubscriberTrait.php +0 -61
  767. data/helpers/vendor/symfony/contracts/Tests/Cache/CacheTraitTest.php +0 -165
  768. data/helpers/vendor/symfony/contracts/Tests/Service/ServiceLocatorTest.php +0 -94
  769. data/helpers/vendor/symfony/contracts/Tests/Service/ServiceSubscriberTraitTest.php +0 -65
  770. data/helpers/vendor/symfony/contracts/Tests/Translation/TranslatorTest.php +0 -353
  771. data/helpers/vendor/symfony/contracts/Translation/LocaleAwareInterface.php +0 -31
  772. data/helpers/vendor/symfony/contracts/Translation/TranslatorInterface.php +0 -65
  773. data/helpers/vendor/symfony/contracts/Translation/TranslatorTrait.php +0 -255
  774. data/helpers/vendor/symfony/contracts/composer.json +0 -44
  775. data/helpers/vendor/symfony/contracts/phpunit.xml.dist +0 -31
  776. data/helpers/vendor/symfony/filesystem/.gitignore +0 -3
  777. data/helpers/vendor/symfony/filesystem/CHANGELOG.md +0 -59
  778. data/helpers/vendor/symfony/filesystem/Exception/ExceptionInterface.php +0 -21
  779. data/helpers/vendor/symfony/filesystem/Exception/FileNotFoundException.php +0 -34
  780. data/helpers/vendor/symfony/filesystem/Exception/IOException.php +0 -39
  781. data/helpers/vendor/symfony/filesystem/Exception/IOExceptionInterface.php +0 -27
  782. data/helpers/vendor/symfony/filesystem/Exception/InvalidArgumentException.php +0 -19
  783. data/helpers/vendor/symfony/filesystem/Filesystem.php +0 -767
  784. data/helpers/vendor/symfony/filesystem/LICENSE +0 -19
  785. data/helpers/vendor/symfony/filesystem/README.md +0 -13
  786. data/helpers/vendor/symfony/filesystem/Tests/ExceptionTest.php +0 -47
  787. data/helpers/vendor/symfony/filesystem/Tests/FilesystemTest.php +0 -1686
  788. data/helpers/vendor/symfony/filesystem/Tests/FilesystemTestCase.php +0 -166
  789. data/helpers/vendor/symfony/filesystem/Tests/Fixtures/MockStream/MockStream.php +0 -46
  790. data/helpers/vendor/symfony/filesystem/composer.json +0 -34
  791. data/helpers/vendor/symfony/filesystem/phpunit.xml.dist +0 -30
  792. data/helpers/vendor/symfony/finder/.gitignore +0 -3
  793. data/helpers/vendor/symfony/finder/CHANGELOG.md +0 -69
  794. data/helpers/vendor/symfony/finder/Comparator/Comparator.php +0 -98
  795. data/helpers/vendor/symfony/finder/Comparator/DateComparator.php +0 -51
  796. data/helpers/vendor/symfony/finder/Comparator/NumberComparator.php +0 -79
  797. data/helpers/vendor/symfony/finder/Exception/AccessDeniedException.php +0 -19
  798. data/helpers/vendor/symfony/finder/Finder.php +0 -780
  799. data/helpers/vendor/symfony/finder/Glob.php +0 -116
  800. data/helpers/vendor/symfony/finder/Iterator/CustomFilterIterator.php +0 -61
  801. data/helpers/vendor/symfony/finder/Iterator/DateRangeFilterIterator.php +0 -58
  802. data/helpers/vendor/symfony/finder/Iterator/DepthRangeFilterIterator.php +0 -45
  803. data/helpers/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php +0 -84
  804. data/helpers/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php +0 -53
  805. data/helpers/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php +0 -58
  806. data/helpers/vendor/symfony/finder/Iterator/FilenameFilterIterator.php +0 -47
  807. data/helpers/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php +0 -112
  808. data/helpers/vendor/symfony/finder/Iterator/PathFilterIterator.php +0 -56
  809. data/helpers/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php +0 -140
  810. data/helpers/vendor/symfony/finder/Iterator/SizeRangeFilterIterator.php +0 -57
  811. data/helpers/vendor/symfony/finder/Iterator/SortableIterator.php +0 -98
  812. data/helpers/vendor/symfony/finder/LICENSE +0 -19
  813. data/helpers/vendor/symfony/finder/README.md +0 -14
  814. data/helpers/vendor/symfony/finder/SplFileInfo.php +0 -78
  815. data/helpers/vendor/symfony/finder/Tests/Comparator/ComparatorTest.php +0 -65
  816. data/helpers/vendor/symfony/finder/Tests/Comparator/DateComparatorTest.php +0 -64
  817. data/helpers/vendor/symfony/finder/Tests/Comparator/NumberComparatorTest.php +0 -108
  818. data/helpers/vendor/symfony/finder/Tests/FinderTest.php +0 -1280
  819. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/a +0 -0
  820. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/b/c.neon +0 -0
  821. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/b/d.neon +0 -0
  822. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/B/C/abc.dat +0 -0
  823. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/B/ab.dat +0 -0
  824. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/a.dat +0 -0
  825. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/B/C/abc.dat.copy +0 -0
  826. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/B/ab.dat.copy +0 -0
  827. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/a.dat.copy +0 -0
  828. data/helpers/vendor/symfony/finder/Tests/Fixtures/dolor.txt +0 -2
  829. data/helpers/vendor/symfony/finder/Tests/Fixtures/ipsum.txt +0 -2
  830. data/helpers/vendor/symfony/finder/Tests/Fixtures/lorem.txt +0 -2
  831. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/.dot +0 -1
  832. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/a +0 -0
  833. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/b/c.neon +0 -0
  834. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/b/d.neon +0 -0
  835. data/helpers/vendor/symfony/finder/Tests/Fixtures/r+e.gex[c]a(r)s/dir/bar.dat +0 -0
  836. data/helpers/vendor/symfony/finder/Tests/Fixtures/with space/foo.txt b/data/helpers/vendor/symfony/finder/Tests/Fixtures/with → space/foo.txt +0 -0
  837. data/helpers/vendor/symfony/finder/Tests/GlobTest.php +0 -95
  838. data/helpers/vendor/symfony/finder/Tests/Iterator/CustomFilterIteratorTest.php +0 -46
  839. data/helpers/vendor/symfony/finder/Tests/Iterator/DateRangeFilterIteratorTest.php +0 -92
  840. data/helpers/vendor/symfony/finder/Tests/Iterator/DepthRangeFilterIteratorTest.php +0 -103
  841. data/helpers/vendor/symfony/finder/Tests/Iterator/ExcludeDirectoryFilterIteratorTest.php +0 -107
  842. data/helpers/vendor/symfony/finder/Tests/Iterator/FileTypeFilterIteratorTest.php +0 -82
  843. data/helpers/vendor/symfony/finder/Tests/Iterator/FilecontentFilterIteratorTest.php +0 -86
  844. data/helpers/vendor/symfony/finder/Tests/Iterator/FilenameFilterIteratorTest.php +0 -54
  845. data/helpers/vendor/symfony/finder/Tests/Iterator/Iterator.php +0 -55
  846. data/helpers/vendor/symfony/finder/Tests/Iterator/IteratorTestCase.php +0 -100
  847. data/helpers/vendor/symfony/finder/Tests/Iterator/MockFileListIterator.php +0 -21
  848. data/helpers/vendor/symfony/finder/Tests/Iterator/MockSplFileInfo.php +0 -132
  849. data/helpers/vendor/symfony/finder/Tests/Iterator/MultiplePcreFilterIteratorTest.php +0 -71
  850. data/helpers/vendor/symfony/finder/Tests/Iterator/PathFilterIteratorTest.php +0 -82
  851. data/helpers/vendor/symfony/finder/Tests/Iterator/RealIteratorTestCase.php +0 -128
  852. data/helpers/vendor/symfony/finder/Tests/Iterator/RecursiveDirectoryIteratorTest.php +0 -59
  853. data/helpers/vendor/symfony/finder/Tests/Iterator/SizeRangeFilterIteratorTest.php +0 -70
  854. data/helpers/vendor/symfony/finder/Tests/Iterator/SortableIteratorTest.php +0 -262
  855. data/helpers/vendor/symfony/finder/composer.json +0 -33
  856. data/helpers/vendor/symfony/finder/phpunit.xml.dist +0 -30
  857. data/helpers/vendor/symfony/polyfill-ctype/Ctype.php +0 -227
  858. data/helpers/vendor/symfony/polyfill-ctype/LICENSE +0 -19
  859. data/helpers/vendor/symfony/polyfill-ctype/README.md +0 -12
  860. data/helpers/vendor/symfony/polyfill-ctype/bootstrap.php +0 -26
  861. data/helpers/vendor/symfony/polyfill-ctype/composer.json +0 -34
  862. data/helpers/vendor/symfony/polyfill-mbstring/LICENSE +0 -19
  863. data/helpers/vendor/symfony/polyfill-mbstring/Mbstring.php +0 -800
  864. data/helpers/vendor/symfony/polyfill-mbstring/README.md +0 -13
  865. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +0 -1096
  866. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php +0 -5
  867. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +0 -1104
  868. data/helpers/vendor/symfony/polyfill-mbstring/bootstrap.php +0 -58
  869. data/helpers/vendor/symfony/polyfill-mbstring/composer.json +0 -34
  870. data/helpers/vendor/symfony/process/.gitignore +0 -3
  871. data/helpers/vendor/symfony/process/CHANGELOG.md +0 -90
  872. data/helpers/vendor/symfony/process/Exception/ExceptionInterface.php +0 -21
  873. data/helpers/vendor/symfony/process/Exception/InvalidArgumentException.php +0 -21
  874. data/helpers/vendor/symfony/process/Exception/LogicException.php +0 -21
  875. data/helpers/vendor/symfony/process/Exception/ProcessFailedException.php +0 -54
  876. data/helpers/vendor/symfony/process/Exception/ProcessSignaledException.php +0 -41
  877. data/helpers/vendor/symfony/process/Exception/ProcessTimedOutException.php +0 -69
  878. data/helpers/vendor/symfony/process/Exception/RuntimeException.php +0 -21
  879. data/helpers/vendor/symfony/process/ExecutableFinder.php +0 -88
  880. data/helpers/vendor/symfony/process/InputStream.php +0 -90
  881. data/helpers/vendor/symfony/process/LICENSE +0 -19
  882. data/helpers/vendor/symfony/process/PhpExecutableFinder.php +0 -101
  883. data/helpers/vendor/symfony/process/PhpProcess.php +0 -76
  884. data/helpers/vendor/symfony/process/Pipes/AbstractPipes.php +0 -178
  885. data/helpers/vendor/symfony/process/Pipes/PipesInterface.php +0 -67
  886. data/helpers/vendor/symfony/process/Pipes/UnixPipes.php +0 -153
  887. data/helpers/vendor/symfony/process/Pipes/WindowsPipes.php +0 -191
  888. data/helpers/vendor/symfony/process/Process.php +0 -1652
  889. data/helpers/vendor/symfony/process/ProcessUtils.php +0 -69
  890. data/helpers/vendor/symfony/process/README.md +0 -13
  891. data/helpers/vendor/symfony/process/Tests/ExecutableFinderTest.php +0 -178
  892. data/helpers/vendor/symfony/process/Tests/KillableProcessWithOutput.php +0 -25
  893. data/helpers/vendor/symfony/process/Tests/NonStopableProcess.php +0 -47
  894. data/helpers/vendor/symfony/process/Tests/PhpExecutableFinderTest.php +0 -49
  895. data/helpers/vendor/symfony/process/Tests/PhpProcessTest.php +0 -48
  896. data/helpers/vendor/symfony/process/Tests/PipeStdinInStdoutStdErrStreamSelect.php +0 -72
  897. data/helpers/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php +0 -137
  898. data/helpers/vendor/symfony/process/Tests/ProcessTest.php +0 -1533
  899. data/helpers/vendor/symfony/process/Tests/SignalListener.php +0 -21
  900. data/helpers/vendor/symfony/process/composer.json +0 -33
  901. data/helpers/vendor/symfony/process/phpunit.xml.dist +0 -30
@@ -1,404 +0,0 @@
1
- <?php
2
-
3
- /*
4
- * This file is part of Composer.
5
- *
6
- * (c) Nils Adermann <naderman@naderman.de>
7
- * Jordi Boggiano <j.boggiano@seld.be>
8
- *
9
- * For the full copyright and license information, please view the LICENSE
10
- * file that was distributed with this source code.
11
- */
12
-
13
- namespace Composer\Command;
14
-
15
- use Composer\Composer;
16
- use Composer\Factory;
17
- use Composer\Config;
18
- use Composer\Util\Filesystem;
19
- use Composer\SelfUpdate\Keys;
20
- use Composer\SelfUpdate\Versions;
21
- use Composer\IO\IOInterface;
22
- use Composer\Downloader\FilesystemException;
23
- use Symfony\Component\Console\Input\InputInterface;
24
- use Symfony\Component\Console\Input\InputOption;
25
- use Symfony\Component\Console\Input\InputArgument;
26
- use Symfony\Component\Console\Output\OutputInterface;
27
- use Symfony\Component\Finder\Finder;
28
-
29
- /**
30
- * @author Igor Wiedler <igor@wiedler.ch>
31
- * @author Kevin Ran <kran@adobe.com>
32
- * @author Jordi Boggiano <j.boggiano@seld.be>
33
- */
34
- class SelfUpdateCommand extends BaseCommand
35
- {
36
- const HOMEPAGE = 'getcomposer.org';
37
- const OLD_INSTALL_EXT = '-old.phar';
38
-
39
- protected function configure()
40
- {
41
- $this
42
- ->setName('self-update')
43
- ->setAliases(array('selfupdate'))
44
- ->setDescription('Updates composer.phar to the latest version.')
45
- ->setDefinition(array(
46
- new InputOption('rollback', 'r', InputOption::VALUE_NONE, 'Revert to an older installation of composer'),
47
- new InputOption('clean-backups', null, InputOption::VALUE_NONE, 'Delete old backups during an update. This makes the current version of composer the only backup available after the update'),
48
- new InputArgument('version', InputArgument::OPTIONAL, 'The version to update to'),
49
- new InputOption('no-progress', null, InputOption::VALUE_NONE, 'Do not output download progress.'),
50
- new InputOption('update-keys', null, InputOption::VALUE_NONE, 'Prompt user for a key update'),
51
- new InputOption('stable', null, InputOption::VALUE_NONE, 'Force an update to the stable channel'),
52
- new InputOption('preview', null, InputOption::VALUE_NONE, 'Force an update to the preview channel'),
53
- new InputOption('snapshot', null, InputOption::VALUE_NONE, 'Force an update to the snapshot channel'),
54
- new InputOption('set-channel-only', null, InputOption::VALUE_NONE, 'Only store the channel as the default one and then exit'),
55
- ))
56
- ->setHelp(
57
- <<<EOT
58
- The <info>self-update</info> command checks getcomposer.org for newer
59
- versions of composer and if found, installs the latest.
60
-
61
- <info>php composer.phar self-update</info>
62
-
63
- EOT
64
- )
65
- ;
66
- }
67
-
68
- protected function execute(InputInterface $input, OutputInterface $output)
69
- {
70
- $config = Factory::createConfig();
71
-
72
- if ($config->get('disable-tls') === true) {
73
- $baseUrl = 'http://' . self::HOMEPAGE;
74
- } else {
75
- $baseUrl = 'https://' . self::HOMEPAGE;
76
- }
77
-
78
- $io = $this->getIO();
79
- $remoteFilesystem = Factory::createRemoteFilesystem($io, $config);
80
-
81
- $versionsUtil = new Versions($config, $remoteFilesystem);
82
-
83
- // switch channel if requested
84
- foreach (array('stable', 'preview', 'snapshot') as $channel) {
85
- if ($input->getOption($channel)) {
86
- $versionsUtil->setChannel($channel);
87
- }
88
- }
89
-
90
- if ($input->getOption('set-channel-only')) {
91
- return 0;
92
- }
93
-
94
- $cacheDir = $config->get('cache-dir');
95
- $rollbackDir = $config->get('data-dir');
96
- $home = $config->get('home');
97
- $localFilename = realpath($_SERVER['argv'][0]) ?: $_SERVER['argv'][0];
98
-
99
- if ($input->getOption('update-keys')) {
100
- return $this->fetchKeys($io, $config);
101
- }
102
-
103
- // check if current dir is writable and if not try the cache dir from settings
104
- $tmpDir = is_writable(dirname($localFilename)) ? dirname($localFilename) : $cacheDir;
105
-
106
- // check for permissions in local filesystem before start connection process
107
- if (!is_writable($tmpDir)) {
108
- throw new FilesystemException('Composer update failed: the "'.$tmpDir.'" directory used to download the temp file could not be written');
109
- }
110
-
111
- // check if composer is running as the same user that owns the directory root, only if POSIX is defined and callable
112
- if (function_exists('posix_getpwuid') && function_exists('posix_geteuid')) {
113
- $composeUser = posix_getpwuid(posix_geteuid());
114
- $homeOwner = posix_getpwuid(fileowner($home));
115
- if (isset($composeUser['name']) && isset($homeOwner['name']) && $composeUser['name'] !== $homeOwner['name']) {
116
- $io->writeError('<warning>You are running composer as "'.$composeUser['name'].'", while "'.$home.'" is owned by "'.$homeOwner['name'].'"</warning>');
117
- }
118
- }
119
-
120
- if ($input->getOption('rollback')) {
121
- return $this->rollback($output, $rollbackDir, $localFilename);
122
- }
123
-
124
- $latest = $versionsUtil->getLatest();
125
- $latestVersion = $latest['version'];
126
- $updateVersion = $input->getArgument('version') ?: $latestVersion;
127
-
128
- if (preg_match('{^[0-9a-f]{40}$}', $updateVersion) && $updateVersion !== $latestVersion) {
129
- $io->writeError('<error>You can not update to a specific SHA-1 as those phars are not available for download</error>');
130
-
131
- return 1;
132
- }
133
-
134
- if (Composer::VERSION === $updateVersion) {
135
- $io->writeError(sprintf('<info>You are already using composer version %s (%s channel).</info>', $updateVersion, $versionsUtil->getChannel()));
136
-
137
- // remove all backups except for the most recent, if any
138
- if ($input->getOption('clean-backups')) {
139
- $this->cleanBackups($rollbackDir, $this->getLastBackupVersion($rollbackDir));
140
- }
141
-
142
- return 0;
143
- }
144
-
145
- $tempFilename = $tmpDir . '/' . basename($localFilename, '.phar').'-temp.phar';
146
- $backupFile = sprintf(
147
- '%s/%s-%s%s',
148
- $rollbackDir,
149
- strtr(Composer::RELEASE_DATE, ' :', '_-'),
150
- preg_replace('{^([0-9a-f]{7})[0-9a-f]{33}$}', '$1', Composer::VERSION),
151
- self::OLD_INSTALL_EXT
152
- );
153
-
154
- $updatingToTag = !preg_match('{^[0-9a-f]{40}$}', $updateVersion);
155
-
156
- $io->write(sprintf("Updating to version <info>%s</info> (%s channel).", $updateVersion, $versionsUtil->getChannel()));
157
- $remoteFilename = $baseUrl . ($updatingToTag ? "/download/{$updateVersion}/composer.phar" : '/composer.phar');
158
- $signature = $remoteFilesystem->getContents(self::HOMEPAGE, $remoteFilename.'.sig', false);
159
- $io->writeError(' ', false);
160
- $remoteFilesystem->copy(self::HOMEPAGE, $remoteFilename, $tempFilename, !$input->getOption('no-progress'));
161
- $io->writeError('');
162
-
163
- if (!file_exists($tempFilename) || !$signature) {
164
- $io->writeError('<error>The download of the new composer version failed for an unexpected reason</error>');
165
-
166
- return 1;
167
- }
168
-
169
- // verify phar signature
170
- if (!extension_loaded('openssl') && $config->get('disable-tls')) {
171
- $io->writeError('<warning>Skipping phar signature verification as you have disabled OpenSSL via config.disable-tls</warning>');
172
- } else {
173
- if (!extension_loaded('openssl')) {
174
- throw new \RuntimeException('The openssl extension is required for phar signatures to be verified but it is not available. '
175
- . 'If you can not enable the openssl extension, you can disable this error, at your own risk, by setting the \'disable-tls\' option to true.');
176
- }
177
-
178
- $sigFile = 'file://'.$home.'/' . ($updatingToTag ? 'keys.tags.pub' : 'keys.dev.pub');
179
- if (!file_exists($sigFile)) {
180
- file_put_contents(
181
- $home.'/keys.dev.pub',
182
- <<<DEVPUBKEY
183
- -----BEGIN PUBLIC KEY-----
184
- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnBDHjZS6e0ZMoK3xTD7f
185
- FNCzlXjX/Aie2dit8QXA03pSrOTbaMnxON3hUL47Lz3g1SC6YJEMVHr0zYq4elWi
186
- i3ecFEgzLcj+pZM5X6qWu2Ozz4vWx3JYo1/a/HYdOuW9e3lwS8VtS0AVJA+U8X0A
187
- hZnBmGpltHhO8hPKHgkJtkTUxCheTcbqn4wGHl8Z2SediDcPTLwqezWKUfrYzu1f
188
- o/j3WFwFs6GtK4wdYtiXr+yspBZHO3y1udf8eFFGcb2V3EaLOrtfur6XQVizjOuk
189
- 8lw5zzse1Qp/klHqbDRsjSzJ6iL6F4aynBc6Euqt/8ccNAIz0rLjLhOraeyj4eNn
190
- 8iokwMKiXpcrQLTKH+RH1JCuOVxQ436bJwbSsp1VwiqftPQieN+tzqy+EiHJJmGf
191
- TBAbWcncicCk9q2md+AmhNbvHO4PWbbz9TzC7HJb460jyWeuMEvw3gNIpEo2jYa9
192
- pMV6cVqnSa+wOc0D7pC9a6bne0bvLcm3S+w6I5iDB3lZsb3A9UtRiSP7aGSo7D72
193
- 8tC8+cIgZcI7k9vjvOqH+d7sdOU2yPCnRY6wFh62/g8bDnUpr56nZN1G89GwM4d4
194
- r/TU7BQQIzsZgAiqOGXvVklIgAMiV0iucgf3rNBLjjeNEwNSTTG9F0CtQ+7JLwaE
195
- wSEuAuRm+pRqi8BRnQ/GKUcCAwEAAQ==
196
- -----END PUBLIC KEY-----
197
- DEVPUBKEY
198
- );
199
-
200
- file_put_contents(
201
- $home.'/keys.tags.pub',
202
- <<<TAGSPUBKEY
203
- -----BEGIN PUBLIC KEY-----
204
- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0Vi/2K6apCVj76nCnCl2
205
- MQUPdK+A9eqkYBacXo2wQBYmyVlXm2/n/ZsX6pCLYPQTHyr5jXbkQzBw8SKqPdlh
206
- vA7NpbMeNCz7wP/AobvUXM8xQuXKbMDTY2uZ4O7sM+PfGbptKPBGLe8Z8d2sUnTO
207
- bXtX6Lrj13wkRto7st/w/Yp33RHe9SlqkiiS4MsH1jBkcIkEHsRaveZzedUaxY0M
208
- mba0uPhGUInpPzEHwrYqBBEtWvP97t2vtfx8I5qv28kh0Y6t+jnjL1Urid2iuQZf
209
- noCMFIOu4vksK5HxJxxrN0GOmGmwVQjOOtxkwikNiotZGPR4KsVj8NnBrLX7oGuM
210
- nQvGciiu+KoC2r3HDBrpDeBVdOWxDzT5R4iI0KoLzFh2pKqwbY+obNPS2bj+2dgJ
211
- rV3V5Jjry42QOCBN3c88wU1PKftOLj2ECpewY6vnE478IipiEu7EAdK8Zwj2LmTr
212
- RKQUSa9k7ggBkYZWAeO/2Ag0ey3g2bg7eqk+sHEq5ynIXd5lhv6tC5PBdHlWipDK
213
- tl2IxiEnejnOmAzGVivE1YGduYBjN+mjxDVy8KGBrjnz1JPgAvgdwJ2dYw4Rsc/e
214
- TzCFWGk/HM6a4f0IzBWbJ5ot0PIi4amk07IotBXDWwqDiQTwyuGCym5EqWQ2BD95
215
- RGv89BPD+2DLnJysngsvVaUCAwEAAQ==
216
- -----END PUBLIC KEY-----
217
- TAGSPUBKEY
218
- );
219
- }
220
-
221
- $pubkeyid = openssl_pkey_get_public($sigFile);
222
- $algo = defined('OPENSSL_ALGO_SHA384') ? OPENSSL_ALGO_SHA384 : 'SHA384';
223
- if (!in_array('sha384', array_map('strtolower', openssl_get_md_methods()))) {
224
- throw new \RuntimeException('SHA384 is not supported by your openssl extension, could not verify the phar file integrity');
225
- }
226
- $signature = json_decode($signature, true);
227
- $signature = base64_decode($signature['sha384']);
228
- $verified = 1 === openssl_verify(file_get_contents($tempFilename), $signature, $pubkeyid, $algo);
229
- openssl_free_key($pubkeyid);
230
- if (!$verified) {
231
- throw new \RuntimeException('The phar signature did not match the file you downloaded, this means your public keys are outdated or that the phar file is corrupt/has been modified');
232
- }
233
- }
234
-
235
- // remove saved installations of composer
236
- if ($input->getOption('clean-backups')) {
237
- $this->cleanBackups($rollbackDir);
238
- }
239
-
240
- if ($err = $this->setLocalPhar($localFilename, $tempFilename, $backupFile)) {
241
- @unlink($tempFilename);
242
- $io->writeError('<error>The file is corrupted ('.$err->getMessage().').</error>');
243
- $io->writeError('<error>Please re-run the self-update command to try again.</error>');
244
-
245
- return 1;
246
- }
247
-
248
- if (file_exists($backupFile)) {
249
- $io->writeError(sprintf(
250
- 'Use <info>composer self-update --rollback</info> to return to version <comment>%s</comment>',
251
- Composer::VERSION
252
- ));
253
- } else {
254
- $io->writeError('<warning>A backup of the current version could not be written to '.$backupFile.', no rollback possible</warning>');
255
- }
256
- }
257
-
258
- protected function fetchKeys(IOInterface $io, Config $config)
259
- {
260
- if (!$io->isInteractive()) {
261
- throw new \RuntimeException('Public keys can not be fetched in non-interactive mode, please run Composer interactively');
262
- }
263
-
264
- $io->write('Open <info>https://composer.github.io/pubkeys.html</info> to find the latest keys');
265
-
266
- $validator = function ($value) {
267
- if (!preg_match('{^-----BEGIN PUBLIC KEY-----$}', trim($value))) {
268
- throw new \UnexpectedValueException('Invalid input');
269
- }
270
-
271
- return trim($value)."\n";
272
- };
273
-
274
- $devKey = '';
275
- while (!preg_match('{(-----BEGIN PUBLIC KEY-----.+?-----END PUBLIC KEY-----)}s', $devKey, $match)) {
276
- $devKey = $io->askAndValidate('Enter Dev / Snapshot Public Key (including lines with -----): ', $validator);
277
- while ($line = $io->ask('')) {
278
- $devKey .= trim($line)."\n";
279
- if (trim($line) === '-----END PUBLIC KEY-----') {
280
- break;
281
- }
282
- }
283
- }
284
- file_put_contents($keyPath = $config->get('home').'/keys.dev.pub', $match[0]);
285
- $io->write('Stored key with fingerprint: ' . Keys::fingerprint($keyPath));
286
-
287
- $tagsKey = '';
288
- while (!preg_match('{(-----BEGIN PUBLIC KEY-----.+?-----END PUBLIC KEY-----)}s', $tagsKey, $match)) {
289
- $tagsKey = $io->askAndValidate('Enter Tags Public Key (including lines with -----): ', $validator);
290
- while ($line = $io->ask('')) {
291
- $tagsKey .= trim($line)."\n";
292
- if (trim($line) === '-----END PUBLIC KEY-----') {
293
- break;
294
- }
295
- }
296
- }
297
- file_put_contents($keyPath = $config->get('home').'/keys.tags.pub', $match[0]);
298
- $io->write('Stored key with fingerprint: ' . Keys::fingerprint($keyPath));
299
-
300
- $io->write('Public keys stored in '.$config->get('home'));
301
- }
302
-
303
- protected function rollback(OutputInterface $output, $rollbackDir, $localFilename)
304
- {
305
- $rollbackVersion = $this->getLastBackupVersion($rollbackDir);
306
- if (!$rollbackVersion) {
307
- throw new \UnexpectedValueException('Composer rollback failed: no installation to roll back to in "'.$rollbackDir.'"');
308
- }
309
-
310
- $oldFile = $rollbackDir . '/' . $rollbackVersion . self::OLD_INSTALL_EXT;
311
-
312
- if (!is_file($oldFile)) {
313
- throw new FilesystemException('Composer rollback failed: "'.$oldFile.'" could not be found');
314
- }
315
- if (!is_readable($oldFile)) {
316
- throw new FilesystemException('Composer rollback failed: "'.$oldFile.'" could not be read');
317
- }
318
-
319
- $io = $this->getIO();
320
- $io->writeError(sprintf("Rolling back to version <info>%s</info>.", $rollbackVersion));
321
- if ($err = $this->setLocalPhar($localFilename, $oldFile)) {
322
- $io->writeError('<error>The backup file was corrupted ('.$err->getMessage().').</error>');
323
-
324
- return 1;
325
- }
326
-
327
- return 0;
328
- }
329
-
330
- /**
331
- * @param string $localFilename
332
- * @param string $newFilename
333
- * @param string $backupTarget
334
- * @throws \Exception
335
- * @return \UnexpectedValueException|\PharException|null
336
- */
337
- protected function setLocalPhar($localFilename, $newFilename, $backupTarget = null)
338
- {
339
- try {
340
- @chmod($newFilename, fileperms($localFilename));
341
- if (!ini_get('phar.readonly')) {
342
- // test the phar validity
343
- $phar = new \Phar($newFilename);
344
- // free the variable to unlock the file
345
- unset($phar);
346
- }
347
-
348
- // copy current file into installations dir
349
- if ($backupTarget && file_exists($localFilename)) {
350
- @copy($localFilename, $backupTarget);
351
- }
352
-
353
- rename($newFilename, $localFilename);
354
-
355
- return null;
356
- } catch (\Exception $e) {
357
- if (!$e instanceof \UnexpectedValueException && !$e instanceof \PharException) {
358
- throw $e;
359
- }
360
-
361
- return $e;
362
- }
363
- }
364
-
365
- protected function cleanBackups($rollbackDir, $except = null)
366
- {
367
- $finder = $this->getOldInstallationFinder($rollbackDir);
368
- $io = $this->getIO();
369
- $fs = new Filesystem;
370
-
371
- foreach ($finder as $file) {
372
- if ($except && $file->getBasename(self::OLD_INSTALL_EXT) === $except) {
373
- continue;
374
- }
375
- $file = (string) $file;
376
- $io->writeError('<info>Removing: '.$file.'</info>');
377
- $fs->remove($file);
378
- }
379
- }
380
-
381
- protected function getLastBackupVersion($rollbackDir)
382
- {
383
- $finder = $this->getOldInstallationFinder($rollbackDir);
384
- $finder->sortByName();
385
- $files = iterator_to_array($finder);
386
-
387
- if (count($files)) {
388
- return basename(end($files), self::OLD_INSTALL_EXT);
389
- }
390
-
391
- return false;
392
- }
393
-
394
- protected function getOldInstallationFinder($rollbackDir)
395
- {
396
- $finder = Finder::create()
397
- ->depth(0)
398
- ->files()
399
- ->name('*' . self::OLD_INSTALL_EXT)
400
- ->in($rollbackDir);
401
-
402
- return $finder;
403
- }
404
- }
@@ -1,1014 +0,0 @@
1
- <?php
2
-
3
- /*
4
- * This file is part of Composer.
5
- *
6
- * (c) Nils Adermann <naderman@naderman.de>
7
- * Jordi Boggiano <j.boggiano@seld.be>
8
- *
9
- * For the full copyright and license information, please view the LICENSE
10
- * file that was distributed with this source code.
11
- */
12
-
13
- namespace Composer\Command;
14
-
15
- use Composer\Composer;
16
- use Composer\DependencyResolver\DefaultPolicy;
17
- use Composer\DependencyResolver\Pool;
18
- use Composer\Json\JsonFile;
19
- use Composer\Package\BasePackage;
20
- use Composer\Package\CompletePackageInterface;
21
- use Composer\Package\PackageInterface;
22
- use Composer\Package\Version\VersionParser;
23
- use Composer\Package\Version\VersionSelector;
24
- use Composer\Plugin\CommandEvent;
25
- use Composer\Plugin\PluginEvents;
26
- use Composer\Repository\ArrayRepository;
27
- use Composer\Repository\ComposerRepository;
28
- use Composer\Repository\CompositeRepository;
29
- use Composer\Repository\PlatformRepository;
30
- use Composer\Repository\RepositoryFactory;
31
- use Composer\Repository\RepositoryInterface;
32
- use Composer\Semver\Constraint\ConstraintInterface;
33
- use Composer\Semver\Semver;
34
- use Composer\Spdx\SpdxLicenses;
35
- use Composer\Util\Platform;
36
- use Symfony\Component\Console\Formatter\OutputFormatterStyle;
37
- use Symfony\Component\Console\Input\InputArgument;
38
- use Symfony\Component\Console\Input\InputInterface;
39
- use Symfony\Component\Console\Input\InputOption;
40
- use Symfony\Component\Console\Output\OutputInterface;
41
- use Symfony\Component\Console\Terminal;
42
-
43
- /**
44
- * @author Robert Schönthal <seroscho@googlemail.com>
45
- * @author Jordi Boggiano <j.boggiano@seld.be>
46
- * @author Jérémy Romey <jeremyFreeAgent>
47
- * @author Mihai Plasoianu <mihai@plasoianu.de>
48
- */
49
- class ShowCommand extends BaseCommand
50
- {
51
- /** @var VersionParser */
52
- protected $versionParser;
53
- protected $colors;
54
-
55
- /** @var Pool */
56
- private $pool;
57
-
58
- protected function configure()
59
- {
60
- $this
61
- ->setName('show')
62
- ->setAliases(array('info'))
63
- ->setDescription('Shows information about packages.')
64
- ->setDefinition(array(
65
- new InputArgument('package', InputArgument::OPTIONAL, 'Package to inspect. Or a name including a wildcard (*) to filter lists of packages instead.'),
66
- new InputArgument('version', InputArgument::OPTIONAL, 'Version or version constraint to inspect'),
67
- new InputOption('all', null, InputOption::VALUE_NONE, 'List all packages'),
68
- new InputOption('installed', 'i', InputOption::VALUE_NONE, 'List installed packages only (enabled by default, only present for BC).'),
69
- new InputOption('platform', 'p', InputOption::VALUE_NONE, 'List platform packages only'),
70
- new InputOption('available', 'a', InputOption::VALUE_NONE, 'List available packages only'),
71
- new InputOption('self', 's', InputOption::VALUE_NONE, 'Show the root package information'),
72
- new InputOption('name-only', 'N', InputOption::VALUE_NONE, 'List package names only'),
73
- new InputOption('path', 'P', InputOption::VALUE_NONE, 'Show package paths'),
74
- new InputOption('tree', 't', InputOption::VALUE_NONE, 'List the dependencies as a tree'),
75
- new InputOption('latest', 'l', InputOption::VALUE_NONE, 'Show the latest version'),
76
- new InputOption('outdated', 'o', InputOption::VALUE_NONE, 'Show the latest version but only for packages that are outdated'),
77
- new InputOption('ignore', null, InputOption::VALUE_REQUIRED | InputOption::VALUE_IS_ARRAY, 'Ignore specified package(s). Use it with the --outdated option if you don\'t want to be informed about new versions of some packages.'),
78
- new InputOption('minor-only', 'm', InputOption::VALUE_NONE, 'Show only packages that have minor SemVer-compatible updates. Use with the --outdated option.'),
79
- new InputOption('direct', 'D', InputOption::VALUE_NONE, 'Shows only packages that are directly required by the root package'),
80
- new InputOption('strict', null, InputOption::VALUE_NONE, 'Return a non-zero exit code when there are outdated packages'),
81
- new InputOption('format', 'f', InputOption::VALUE_REQUIRED, 'Format of the output: text or json', 'text'),
82
- ))
83
- ->setHelp(
84
- <<<EOT
85
- The show command displays detailed information about a package, or
86
- lists all packages available.
87
-
88
- EOT
89
- )
90
- ;
91
- }
92
-
93
- protected function execute(InputInterface $input, OutputInterface $output)
94
- {
95
- $this->versionParser = new VersionParser;
96
- if ($input->getOption('tree')) {
97
- $this->initStyles($output);
98
- }
99
-
100
- $composer = $this->getComposer(false);
101
- $io = $this->getIO();
102
-
103
- if ($input->getOption('installed')) {
104
- $io->writeError('<warning>You are using the deprecated option "installed". Only installed packages are shown by default now. The --all option can be used to show all packages.</warning>');
105
- }
106
-
107
- if ($input->getOption('outdated')) {
108
- $input->setOption('latest', true);
109
- } elseif ($input->getOption('ignore')) {
110
- $io->writeError('<warning>You are using the option "ignore" for action other than "outdated", it will be ignored.</warning>');
111
- }
112
-
113
- if ($input->getOption('direct') && ($input->getOption('all') || $input->getOption('available') || $input->getOption('platform'))) {
114
- $io->writeError('The --direct (-D) option is not usable in combination with --all, --platform (-p) or --available (-a)');
115
-
116
- return 1;
117
- }
118
-
119
- if ($input->getOption('tree') && ($input->getOption('all') || $input->getOption('available'))) {
120
- $io->writeError('The --tree (-t) option is not usable in combination with --all or --available (-a)');
121
-
122
- return 1;
123
- }
124
-
125
- if ($input->getOption('tree') && $input->getOption('latest')) {
126
- $io->writeError('The --tree (-t) option is not usable in combination with --latest (-l)');
127
-
128
- return 1;
129
- }
130
-
131
- $format = $input->getOption('format');
132
- if (!in_array($format, array('text', 'json'))) {
133
- $io->writeError(sprintf('Unsupported format "%s". See help for supported formats.', $format));
134
-
135
- return 1;
136
- }
137
-
138
- // init repos
139
- $platformOverrides = array();
140
- if ($composer) {
141
- $platformOverrides = $composer->getConfig()->get('platform') ?: array();
142
- }
143
- $platformRepo = new PlatformRepository(array(), $platformOverrides);
144
- $phpVersion = $platformRepo->findPackage('php', '*')->getVersion();
145
-
146
- if ($input->getOption('self')) {
147
- $package = $this->getComposer()->getPackage();
148
- $repos = $installedRepo = new ArrayRepository(array($package));
149
- } elseif ($input->getOption('platform')) {
150
- $repos = $installedRepo = $platformRepo;
151
- } elseif ($input->getOption('available')) {
152
- $installedRepo = $platformRepo;
153
- if ($composer) {
154
- $repos = new CompositeRepository($composer->getRepositoryManager()->getRepositories());
155
- } else {
156
- $defaultRepos = RepositoryFactory::defaultRepos($io);
157
- $repos = new CompositeRepository($defaultRepos);
158
- $io->writeError('No composer.json found in the current directory, showing available packages from ' . implode(', ', array_keys($defaultRepos)));
159
- }
160
- } elseif ($input->getOption('all') && $composer) {
161
- $localRepo = $composer->getRepositoryManager()->getLocalRepository();
162
- $installedRepo = new CompositeRepository(array($localRepo, $platformRepo));
163
- $repos = new CompositeRepository(array_merge(array($installedRepo), $composer->getRepositoryManager()->getRepositories()));
164
- } elseif ($input->getOption('all')) {
165
- $defaultRepos = RepositoryFactory::defaultRepos($io);
166
- $io->writeError('No composer.json found in the current directory, showing available packages from ' . implode(', ', array_keys($defaultRepos)));
167
- $installedRepo = $platformRepo;
168
- $repos = new CompositeRepository(array_merge(array($installedRepo), $defaultRepos));
169
- } else {
170
- $repos = $installedRepo = $this->getComposer()->getRepositoryManager()->getLocalRepository();
171
- $rootPkg = $this->getComposer()->getPackage();
172
- if (!$installedRepo->getPackages() && ($rootPkg->getRequires() || $rootPkg->getDevRequires())) {
173
- $io->writeError('<warning>No dependencies installed. Try running composer install or update.</warning>');
174
- }
175
- }
176
-
177
- if ($composer) {
178
- $commandEvent = new CommandEvent(PluginEvents::COMMAND, 'show', $input, $output);
179
- $composer->getEventDispatcher()->dispatch($commandEvent->getName(), $commandEvent);
180
- }
181
-
182
- if ($input->getOption('latest') && null === $composer) {
183
- $io->writeError('No composer.json found in the current directory, disabling "latest" option');
184
- $input->setOption('latest', false);
185
- }
186
-
187
- $packageFilter = $input->getArgument('package');
188
-
189
- // show single package or single version
190
- if (($packageFilter && false === strpos($packageFilter, '*')) || !empty($package)) {
191
- if (empty($package)) {
192
- list($package, $versions) = $this->getPackage($installedRepo, $repos, $input->getArgument('package'), $input->getArgument('version'));
193
-
194
- if (empty($package)) {
195
- $options = $input->getOptions();
196
- if (!isset($options['working-dir']) || !file_exists('composer.json')) {
197
- throw new \InvalidArgumentException('Package ' . $packageFilter . ' not found');
198
- }
199
-
200
- $io->writeError('Package ' . $packageFilter . ' not found in ' . $options['working-dir'] . '/composer.json');
201
-
202
- return 1;
203
- }
204
- } else {
205
- $versions = array($package->getPrettyVersion() => $package->getVersion());
206
- }
207
-
208
- $exitCode = 0;
209
- if ($input->getOption('tree')) {
210
- $arrayTree = $this->generatePackageTree($package, $installedRepo, $repos);
211
-
212
- if ('json' === $format) {
213
- $io->write(JsonFile::encode(array('installed' => array($arrayTree))));
214
- } else {
215
- $this->displayPackageTree(array($arrayTree));
216
- }
217
- } else {
218
- $latestPackage = null;
219
- if ($input->getOption('latest')) {
220
- $latestPackage = $this->findLatestPackage($package, $composer, $phpVersion);
221
- }
222
- if ($input->getOption('outdated') && $input->getOption('strict') && $latestPackage && $latestPackage->getFullPrettyVersion() !== $package->getFullPrettyVersion() && !$latestPackage->isAbandoned()) {
223
- $exitCode = 1;
224
- }
225
- if ($input->getOption('path')) {
226
- $io->write($package->getName(), false);
227
- $io->write(' ' . strtok(realpath($composer->getInstallationManager()->getInstallPath($package)), "\r\n"));
228
-
229
- return $exitCode;
230
- }
231
- $this->printMeta($package, $versions, $installedRepo, $latestPackage ?: null);
232
- $this->printLinks($package, 'requires');
233
- $this->printLinks($package, 'devRequires', 'requires (dev)');
234
- if ($package->getSuggests()) {
235
- $io->write("\n<info>suggests</info>");
236
- foreach ($package->getSuggests() as $suggested => $reason) {
237
- $io->write($suggested . ' <comment>' . $reason . '</comment>');
238
- }
239
- }
240
- $this->printLinks($package, 'provides');
241
- $this->printLinks($package, 'conflicts');
242
- $this->printLinks($package, 'replaces');
243
- }
244
-
245
- return $exitCode;
246
- }
247
-
248
- // show tree view if requested
249
- if ($input->getOption('tree')) {
250
- $rootRequires = $this->getRootRequires();
251
- $packages = $installedRepo->getPackages();
252
- usort($packages, 'strcmp');
253
- $arrayTree = array();
254
- foreach ($packages as $package) {
255
- if (in_array($package->getName(), $rootRequires, true)) {
256
- $arrayTree[] = $this->generatePackageTree($package, $installedRepo, $repos);
257
- }
258
- }
259
-
260
- if ('json' === $format) {
261
- $io->write(JsonFile::encode(array('installed' => $arrayTree)));
262
- } else {
263
- $this->displayPackageTree($arrayTree);
264
- }
265
-
266
- return 0;
267
- }
268
-
269
- if ($repos instanceof CompositeRepository) {
270
- $repos = $repos->getRepositories();
271
- } elseif (!is_array($repos)) {
272
- $repos = array($repos);
273
- }
274
-
275
- // list packages
276
- $packages = array();
277
- if (null !== $packageFilter) {
278
- $packageFilter = '{^'.str_replace('\\*', '.*?', preg_quote($packageFilter)).'$}i';
279
- }
280
-
281
- $packageListFilter = array();
282
- if ($input->getOption('direct')) {
283
- $packageListFilter = $this->getRootRequires();
284
- }
285
-
286
- if (class_exists('Symfony\Component\Console\Terminal')) {
287
- $terminal = new Terminal();
288
- $width = $terminal->getWidth();
289
- } else {
290
- // For versions of Symfony console before 3.2
291
- list($width) = $this->getApplication()->getTerminalDimensions();
292
- }
293
- if (null === $width) {
294
- // In case the width is not detected, we're probably running the command
295
- // outside of a real terminal, use space without a limit
296
- $width = PHP_INT_MAX;
297
- }
298
- if (Platform::isWindows()) {
299
- $width--;
300
- } else {
301
- $width = max(80, $width);
302
- }
303
-
304
- if ($input->getOption('path') && null === $composer) {
305
- $io->writeError('No composer.json found in the current directory, disabling "path" option');
306
- $input->setOption('path', false);
307
- }
308
-
309
- foreach ($repos as $repo) {
310
- if ($repo === $platformRepo) {
311
- $type = 'platform';
312
- } elseif (
313
- $repo === $installedRepo
314
- || ($installedRepo instanceof CompositeRepository && in_array($repo, $installedRepo->getRepositories(), true))
315
- ) {
316
- $type = 'installed';
317
- } else {
318
- $type = 'available';
319
- }
320
- if ($repo instanceof ComposerRepository && $repo->hasProviders()) {
321
- foreach ($repo->getProviderNames() as $name) {
322
- if (!$packageFilter || preg_match($packageFilter, $name)) {
323
- $packages[$type][$name] = $name;
324
- }
325
- }
326
- } else {
327
- foreach ($repo->getPackages() as $package) {
328
- if (!isset($packages[$type][$package->getName()])
329
- || !is_object($packages[$type][$package->getName()])
330
- || version_compare($packages[$type][$package->getName()]->getVersion(), $package->getVersion(), '<')
331
- ) {
332
- if (!$packageFilter || preg_match($packageFilter, $package->getName())) {
333
- if (!$packageListFilter || in_array($package->getName(), $packageListFilter, true)) {
334
- $packages[$type][$package->getName()] = $package;
335
- }
336
- }
337
- }
338
- }
339
- }
340
- }
341
-
342
- $showAllTypes = $input->getOption('all');
343
- $showLatest = $input->getOption('latest');
344
- $showMinorOnly = $input->getOption('minor-only');
345
- $ignoredPackages = array_map('strtolower', $input->getOption('ignore'));
346
- $indent = $showAllTypes ? ' ' : '';
347
- $latestPackages = array();
348
- $exitCode = 0;
349
- $viewData = array();
350
- $viewMetaData = array();
351
- foreach (array('platform' => true, 'available' => false, 'installed' => true) as $type => $showVersion) {
352
- if (isset($packages[$type])) {
353
- ksort($packages[$type]);
354
-
355
- $nameLength = $versionLength = $latestLength = 0;
356
-
357
- if ($showLatest && $showVersion) {
358
- foreach ($packages[$type] as $package) {
359
- if (is_object($package)) {
360
- $latestPackage = $this->findLatestPackage($package, $composer, $phpVersion, $showMinorOnly);
361
- if ($latestPackage === false) {
362
- continue;
363
- }
364
-
365
- $latestPackages[$package->getPrettyName()] = $latestPackage;
366
- }
367
- }
368
- }
369
-
370
- $writePath = !$input->getOption('name-only') && $input->getOption('path');
371
- $writeVersion = !$input->getOption('name-only') && !$input->getOption('path') && $showVersion;
372
- $writeLatest = $writeVersion && $showLatest;
373
- $writeDescription = !$input->getOption('name-only') && !$input->getOption('path');
374
-
375
- $hasOutdatedPackages = false;
376
-
377
- $viewData[$type] = array();
378
- foreach ($packages[$type] as $package) {
379
- $packageViewData = array();
380
- if (is_object($package)) {
381
- $latestPackage = null;
382
- if ($showLatest && isset($latestPackages[$package->getPrettyName()])) {
383
- $latestPackage = $latestPackages[$package->getPrettyName()];
384
- }
385
-
386
- // Determine if Composer is checking outdated dependencies and if current package should trigger non-default exit code
387
- $packageIsUpToDate = $latestPackage && $latestPackage->getFullPrettyVersion() === $package->getFullPrettyVersion() && !$latestPackage->isAbandoned();
388
- $packageIsIgnored = \in_array($package->getPrettyName(), $ignoredPackages, true);
389
- if ($input->getOption('outdated') && ($packageIsUpToDate || $packageIsIgnored)) {
390
- continue;
391
- } elseif ($input->getOption('outdated') || $input->getOption('strict')) {
392
- $hasOutdatedPackages = true;
393
- }
394
-
395
- $packageViewData['name'] = $package->getPrettyName();
396
- $nameLength = max($nameLength, strlen($package->getPrettyName()));
397
- if ($writeVersion) {
398
- $packageViewData['version'] = $package->getFullPrettyVersion();
399
- $versionLength = max($versionLength, strlen($package->getFullPrettyVersion()));
400
- }
401
- if ($writeLatest && $latestPackage) {
402
- $packageViewData['latest'] = $latestPackage->getFullPrettyVersion();
403
- $packageViewData['latest-status'] = $this->getUpdateStatus($latestPackage, $package);
404
- $latestLength = max($latestLength, strlen($latestPackage->getFullPrettyVersion()));
405
- }
406
- if ($writeDescription) {
407
- $packageViewData['description'] = $package->getDescription();
408
- }
409
- if ($writePath) {
410
- $packageViewData['path'] = strtok(realpath($composer->getInstallationManager()->getInstallPath($package)), "\r\n");
411
- }
412
-
413
- if ($latestPackage && $latestPackage->isAbandoned()) {
414
- $replacement = is_string($latestPackage->getReplacementPackage())
415
- ? 'Use ' . $latestPackage->getReplacementPackage() . ' instead'
416
- : 'No replacement was suggested';
417
- $packageWarning = sprintf(
418
- 'Package %s is abandoned, you should avoid using it. %s.',
419
- $package->getPrettyName(),
420
- $replacement
421
- );
422
- $packageViewData['warning'] = $packageWarning;
423
- }
424
- } else {
425
- $packageViewData['name'] = $package;
426
- $nameLength = max($nameLength, strlen($package));
427
- }
428
- $viewData[$type][] = $packageViewData;
429
- }
430
- $viewMetaData[$type] = array(
431
- 'nameLength' => $nameLength,
432
- 'versionLength' => $versionLength,
433
- 'latestLength' => $latestLength,
434
- );
435
- if ($input->getOption('strict') && $hasOutdatedPackages) {
436
- $exitCode = 1;
437
- break;
438
- }
439
- }
440
- }
441
-
442
- if ('json' === $format) {
443
- $io->write(JsonFile::encode($viewData));
444
- } else {
445
- foreach ($viewData as $type => $packages) {
446
- $nameLength = $viewMetaData[$type]['nameLength'];
447
- $versionLength = $viewMetaData[$type]['versionLength'];
448
- $latestLength = $viewMetaData[$type]['latestLength'];
449
-
450
- $writeVersion = $nameLength + $versionLength + 3 <= $width;
451
- $writeLatest = $nameLength + $versionLength + $latestLength + 3 <= $width;
452
- $writeDescription = $nameLength + $versionLength + $latestLength + 24 <= $width;
453
-
454
- if ($writeLatest && !$io->isDecorated()) {
455
- $latestLength += 2;
456
- }
457
-
458
- if ($showAllTypes) {
459
- if ('available' === $type) {
460
- $io->write('<comment>' . $type . '</comment>:');
461
- } else {
462
- $io->write('<info>' . $type . '</info>:');
463
- }
464
- }
465
-
466
- foreach ($packages as $package) {
467
- $io->write($indent . str_pad($package['name'], $nameLength, ' '), false);
468
- if (isset($package['version']) && $writeVersion) {
469
- $io->write(' ' . str_pad($package['version'], $versionLength, ' '), false);
470
- }
471
- if (isset($package['latest']) && $writeLatest) {
472
- $latestVersion = $package['latest'];
473
- $updateStatus = $package['latest-status'];
474
- $style = $this->updateStatusToVersionStyle($updateStatus);
475
- if (!$io->isDecorated()) {
476
- $latestVersion = str_replace(array('up-to-date', 'semver-safe-update', 'update-possible'), array('=', '!', '~'), $updateStatus) . ' ' . $latestVersion;
477
- }
478
- $io->write(' <' . $style . '>' . str_pad($latestVersion, $latestLength, ' ') . '</' . $style . '>', false);
479
- }
480
- if (isset($package['description']) && $writeDescription) {
481
- $description = strtok($package['description'], "\r\n");
482
- $remaining = $width - $nameLength - $versionLength - 4;
483
- if ($writeLatest) {
484
- $remaining -= $latestLength;
485
- }
486
- if (strlen($description) > $remaining) {
487
- $description = substr($description, 0, $remaining - 3) . '...';
488
- }
489
- $io->write(' ' . $description, false);
490
- }
491
- if (isset($package['path'])) {
492
- $io->write(' ' . $package['path'], false);
493
- }
494
- $io->write('');
495
- if (isset($package['warning'])) {
496
- $io->writeError('<warning>' . $package['warning'] . '</warning>');
497
- }
498
- }
499
-
500
- if ($showAllTypes) {
501
- $io->write('');
502
- }
503
- }
504
- }
505
-
506
- return $exitCode;
507
- }
508
-
509
- protected function getRootRequires()
510
- {
511
- $rootPackage = $this->getComposer()->getPackage();
512
-
513
- return array_map(
514
- 'strtolower',
515
- array_keys(array_merge($rootPackage->getRequires(), $rootPackage->getDevRequires()))
516
- );
517
- }
518
-
519
- protected function getVersionStyle(PackageInterface $latestPackage, PackageInterface $package)
520
- {
521
- return $this->updateStatusToVersionStyle($this->getUpdateStatus($latestPackage, $package));
522
- }
523
-
524
- /**
525
- * finds a package by name and version if provided
526
- *
527
- * @param RepositoryInterface $installedRepo
528
- * @param RepositoryInterface $repos
529
- * @param string $name
530
- * @param ConstraintInterface|string $version
531
- * @throws \InvalidArgumentException
532
- * @return array array(CompletePackageInterface, array of versions)
533
- */
534
- protected function getPackage(RepositoryInterface $installedRepo, RepositoryInterface $repos, $name, $version = null)
535
- {
536
- $name = strtolower($name);
537
- $constraint = is_string($version) ? $this->versionParser->parseConstraints($version) : $version;
538
-
539
- $policy = new DefaultPolicy();
540
- $pool = new Pool('dev');
541
- $pool->addRepository($repos);
542
-
543
- $matchedPackage = null;
544
- $versions = array();
545
- $matches = $pool->whatProvides($name, $constraint);
546
- foreach ($matches as $index => $package) {
547
- // skip providers/replacers
548
- if ($package->getName() !== $name) {
549
- unset($matches[$index]);
550
- continue;
551
- }
552
-
553
- // select an exact match if it is in the installed repo and no specific version was required
554
- if (null === $version && $installedRepo->hasPackage($package)) {
555
- $matchedPackage = $package;
556
- }
557
-
558
- $versions[$package->getPrettyVersion()] = $package->getVersion();
559
- $matches[$index] = $package->getId();
560
- }
561
-
562
- // select preferred package according to policy rules
563
- if (!$matchedPackage && $matches && $preferred = $policy->selectPreferredPackages($pool, array(), $matches)) {
564
- $matchedPackage = $pool->literalToPackage($preferred[0]);
565
- }
566
-
567
- return array($matchedPackage, $versions);
568
- }
569
-
570
- /**
571
- * Prints package metadata.
572
- *
573
- * @param CompletePackageInterface $package
574
- * @param array $versions
575
- * @param RepositoryInterface $installedRepo
576
- */
577
- protected function printMeta(CompletePackageInterface $package, array $versions, RepositoryInterface $installedRepo, PackageInterface $latestPackage = null)
578
- {
579
- $io = $this->getIO();
580
- $io->write('<info>name</info> : ' . $package->getPrettyName());
581
- $io->write('<info>descrip.</info> : ' . $package->getDescription());
582
- $io->write('<info>keywords</info> : ' . implode(', ', $package->getKeywords() ?: array()));
583
- $this->printVersions($package, $versions, $installedRepo);
584
- if ($latestPackage) {
585
- $style = $this->getVersionStyle($latestPackage, $package);
586
- $io->write('<info>latest</info> : <'.$style.'>' . $latestPackage->getPrettyVersion() . '</'.$style.'>');
587
- } else {
588
- $latestPackage = $package;
589
- }
590
- $io->write('<info>type</info> : ' . $package->getType());
591
- $this->printLicenses($package);
592
- $io->write('<info>source</info> : ' . sprintf('[%s] <comment>%s</comment> %s', $package->getSourceType(), $package->getSourceUrl(), $package->getSourceReference()));
593
- $io->write('<info>dist</info> : ' . sprintf('[%s] <comment>%s</comment> %s', $package->getDistType(), $package->getDistUrl(), $package->getDistReference()));
594
- if ($installedRepo->hasPackage($package)) {
595
- $io->write('<info>path</info> : ' . sprintf('%s', realpath($this->getComposer()->getInstallationManager()->getInstallPath($package))));
596
- }
597
- $io->write('<info>names</info> : ' . implode(', ', $package->getNames()));
598
-
599
- if ($latestPackage->isAbandoned()) {
600
- $replacement = ($latestPackage->getReplacementPackage() !== null)
601
- ? ' The author suggests using the ' . $latestPackage->getReplacementPackage(). ' package instead.'
602
- : null;
603
-
604
- $io->writeError(
605
- sprintf('<warning>Attention: This package is abandoned and no longer maintained.%s</warning>', $replacement)
606
- );
607
- }
608
-
609
- if ($package->getSupport()) {
610
- $io->write("\n<info>support</info>");
611
- foreach ($package->getSupport() as $type => $value) {
612
- $io->write('<comment>' . $type . '</comment> : '.$value);
613
- }
614
- }
615
-
616
- if ($package->getAutoload()) {
617
- $io->write("\n<info>autoload</info>");
618
- foreach ($package->getAutoload() as $type => $autoloads) {
619
- $io->write('<comment>' . $type . '</comment>');
620
-
621
- if ($type === 'psr-0') {
622
- foreach ($autoloads as $name => $path) {
623
- $io->write(($name ?: '*') . ' => ' . (is_array($path) ? implode(', ', $path) : ($path ?: '.')));
624
- }
625
- } elseif ($type === 'psr-4') {
626
- foreach ($autoloads as $name => $path) {
627
- $io->write(($name ?: '*') . ' => ' . (is_array($path) ? implode(', ', $path) : ($path ?: '.')));
628
- }
629
- } elseif ($type === 'classmap') {
630
- $io->write(implode(', ', $autoloads));
631
- }
632
- }
633
- if ($package->getIncludePaths()) {
634
- $io->write('<comment>include-path</comment>');
635
- $io->write(implode(', ', $package->getIncludePaths()));
636
- }
637
- }
638
- }
639
-
640
- /**
641
- * Prints all available versions of this package and highlights the installed one if any.
642
- *
643
- * @param CompletePackageInterface $package
644
- * @param array $versions
645
- * @param RepositoryInterface $installedRepo
646
- */
647
- protected function printVersions(CompletePackageInterface $package, array $versions, RepositoryInterface $installedRepo)
648
- {
649
- uasort($versions, 'version_compare');
650
- $versions = array_keys(array_reverse($versions));
651
-
652
- // highlight installed version
653
- if ($installedRepo->hasPackage($package)) {
654
- $installedVersion = $package->getPrettyVersion();
655
- $key = array_search($installedVersion, $versions);
656
- if (false !== $key) {
657
- $versions[$key] = '<info>* ' . $installedVersion . '</info>';
658
- }
659
- }
660
-
661
- $versions = implode(', ', $versions);
662
-
663
- $this->getIO()->write('<info>versions</info> : ' . $versions);
664
- }
665
-
666
- /**
667
- * print link objects
668
- *
669
- * @param CompletePackageInterface $package
670
- * @param string $linkType
671
- * @param string $title
672
- */
673
- protected function printLinks(CompletePackageInterface $package, $linkType, $title = null)
674
- {
675
- $title = $title ?: $linkType;
676
- $io = $this->getIO();
677
- if ($links = $package->{'get'.ucfirst($linkType)}()) {
678
- $io->write("\n<info>" . $title . "</info>");
679
-
680
- foreach ($links as $link) {
681
- $io->write($link->getTarget() . ' <comment>' . $link->getPrettyConstraint() . '</comment>');
682
- }
683
- }
684
- }
685
-
686
- /**
687
- * Prints the licenses of a package with metadata
688
- *
689
- * @param CompletePackageInterface $package
690
- */
691
- protected function printLicenses(CompletePackageInterface $package)
692
- {
693
- $spdxLicenses = new SpdxLicenses();
694
-
695
- $licenses = $package->getLicense();
696
- $io = $this->getIO();
697
-
698
- foreach ($licenses as $licenseId) {
699
- $license = $spdxLicenses->getLicenseByIdentifier($licenseId); // keys: 0 fullname, 1 osi, 2 url
700
-
701
- if (!$license) {
702
- $out = $licenseId;
703
- } else {
704
- // is license OSI approved?
705
- if ($license[1] === true) {
706
- $out = sprintf('%s (%s) (OSI approved) %s', $license[0], $licenseId, $license[2]);
707
- } else {
708
- $out = sprintf('%s (%s) %s', $license[0], $licenseId, $license[2]);
709
- }
710
- }
711
-
712
- $io->write('<info>license</info> : ' . $out);
713
- }
714
- }
715
-
716
- /**
717
- * Init styles for tree
718
- *
719
- * @param OutputInterface $output
720
- */
721
- protected function initStyles(OutputInterface $output)
722
- {
723
- $this->colors = array(
724
- 'green',
725
- 'yellow',
726
- 'cyan',
727
- 'magenta',
728
- 'blue',
729
- );
730
-
731
- foreach ($this->colors as $color) {
732
- $style = new OutputFormatterStyle($color);
733
- $output->getFormatter()->setStyle($color, $style);
734
- }
735
- }
736
-
737
- /**
738
- * Display the tree
739
- *
740
- * @param array $arrayTree
741
- */
742
- protected function displayPackageTree(array $arrayTree)
743
- {
744
- $io = $this->getIO();
745
- foreach ($arrayTree as $package) {
746
- $io->write(sprintf('<info>%s</info>', $package['name']), false);
747
- $io->write(' ' . $package['version'], false);
748
- $io->write(' ' . strtok($package['description'], "\r\n"));
749
-
750
- if (isset($package['requires'])) {
751
- $requires = $package['requires'];
752
- $treeBar = '├';
753
- $j = 0;
754
- $total = count($requires);
755
- foreach ($requires as $require) {
756
- $requireName = $require['name'];
757
- $j++;
758
- if ($j === $total) {
759
- $treeBar = '└';
760
- }
761
- $level = 1;
762
- $color = $this->colors[$level];
763
- $info = sprintf(
764
- '%s──<%s>%s</%s> %s',
765
- $treeBar,
766
- $color,
767
- $requireName,
768
- $color,
769
- $require['version']
770
- );
771
- $this->writeTreeLine($info);
772
-
773
- $treeBar = str_replace('└', ' ', $treeBar);
774
- $packagesInTree = array($package['name'], $requireName);
775
-
776
- $this->displayTree($require, $packagesInTree, $treeBar, $level + 1);
777
- }
778
- }
779
- }
780
- }
781
-
782
- /**
783
- * Generate the package tree
784
- *
785
- * @param PackageInterface $package
786
- * @param RepositoryInterface $installedRepo
787
- * @param RepositoryInterface $distantRepos
788
- * @return array
789
- */
790
- protected function generatePackageTree(
791
- PackageInterface $package,
792
- RepositoryInterface $installedRepo,
793
- RepositoryInterface $distantRepos
794
- ) {
795
- $requires = $package->getRequires();
796
- ksort($requires);
797
- $children = array();
798
- foreach ($requires as $requireName => $require) {
799
- $packagesInTree = array($package->getName(), $requireName);
800
-
801
- $treeChildDesc = array(
802
- 'name' => $requireName,
803
- 'version' => $require->getPrettyConstraint(),
804
- );
805
-
806
- $deepChildren = $this->addTree($requireName, $require, $installedRepo, $distantRepos, $packagesInTree);
807
-
808
- if ($deepChildren) {
809
- $treeChildDesc['requires'] = $deepChildren;
810
- }
811
-
812
- $children[] = $treeChildDesc;
813
- }
814
- $tree = array(
815
- 'name' => $package->getPrettyName(),
816
- 'version' => $package->getPrettyVersion(),
817
- 'description' => $package->getDescription(),
818
- );
819
-
820
- if ($children) {
821
- $tree['requires'] = $children;
822
- }
823
-
824
- return $tree;
825
- }
826
-
827
- /**
828
- * Display a package tree
829
- *
830
- * @param PackageInterface|string $package
831
- * @param array $packagesInTree
832
- * @param string $previousTreeBar
833
- * @param int $level
834
- */
835
- protected function displayTree(
836
- $package,
837
- array $packagesInTree,
838
- $previousTreeBar = '├',
839
- $level = 1
840
- ) {
841
- $previousTreeBar = str_replace('├', '│', $previousTreeBar);
842
- if (isset($package['requires'])) {
843
- $requires = $package['requires'];
844
- $treeBar = $previousTreeBar . ' ├';
845
- $i = 0;
846
- $total = count($requires);
847
- foreach ($requires as $require) {
848
- $currentTree = $packagesInTree;
849
- $i++;
850
- if ($i === $total) {
851
- $treeBar = $previousTreeBar . ' └';
852
- }
853
- $colorIdent = $level % count($this->colors);
854
- $color = $this->colors[$colorIdent];
855
-
856
- $circularWarn = in_array(
857
- $require['name'],
858
- $currentTree,
859
- true
860
- ) ? '(circular dependency aborted here)' : '';
861
- $info = rtrim(sprintf(
862
- '%s──<%s>%s</%s> %s %s',
863
- $treeBar,
864
- $color,
865
- $require['name'],
866
- $color,
867
- $require['version'],
868
- $circularWarn
869
- ));
870
- $this->writeTreeLine($info);
871
-
872
- $treeBar = str_replace('└', ' ', $treeBar);
873
-
874
- $currentTree[] = $require['name'];
875
- $this->displayTree($require, $currentTree, $treeBar, $level + 1);
876
- }
877
- }
878
- }
879
-
880
- /**
881
- * Display a package tree
882
- *
883
- * @param string $name
884
- * @param PackageInterface|string $package
885
- * @param RepositoryInterface $installedRepo
886
- * @param RepositoryInterface $distantRepos
887
- * @param array $packagesInTree
888
- * @return array
889
- */
890
- protected function addTree(
891
- $name,
892
- $package,
893
- RepositoryInterface $installedRepo,
894
- RepositoryInterface $distantRepos,
895
- array $packagesInTree
896
- ) {
897
- $children = array();
898
- list($package, $versions) = $this->getPackage(
899
- $installedRepo,
900
- $distantRepos,
901
- $name,
902
- $package->getPrettyConstraint() === 'self.version' ? $package->getConstraint() : $package->getPrettyConstraint()
903
- );
904
- if (is_object($package)) {
905
- $requires = $package->getRequires();
906
- ksort($requires);
907
- foreach ($requires as $requireName => $require) {
908
- $currentTree = $packagesInTree;
909
-
910
- $treeChildDesc = array(
911
- 'name' => $requireName,
912
- 'version' => $require->getPrettyConstraint(),
913
- );
914
-
915
- if (!in_array($requireName, $currentTree, true)) {
916
- $currentTree[] = $requireName;
917
- $deepChildren = $this->addTree($requireName, $require, $installedRepo, $distantRepos, $currentTree);
918
- if ($deepChildren) {
919
- $treeChildDesc['requires'] = $deepChildren;
920
- }
921
- }
922
-
923
- $children[] = $treeChildDesc;
924
- }
925
- }
926
-
927
- return $children;
928
- }
929
-
930
- private function updateStatusToVersionStyle($updateStatus)
931
- {
932
- // 'up-to-date' is printed green
933
- // 'semver-safe-update' is printed red
934
- // 'update-possible' is printed yellow
935
- return str_replace(array('up-to-date', 'semver-safe-update', 'update-possible'), array('info', 'highlight', 'comment'), $updateStatus);
936
- }
937
-
938
- private function getUpdateStatus(PackageInterface $latestPackage, PackageInterface $package)
939
- {
940
- if ($latestPackage->getFullPrettyVersion() === $package->getFullPrettyVersion()) {
941
- return 'up-to-date';
942
- }
943
-
944
- $constraint = $package->getVersion();
945
- if (0 !== strpos($constraint, 'dev-')) {
946
- $constraint = '^'.$constraint;
947
- }
948
- if ($latestPackage->getVersion() && Semver::satisfies($latestPackage->getVersion(), $constraint)) {
949
- // it needs an immediate semver-compliant upgrade
950
- return 'semver-safe-update';
951
- }
952
-
953
- // it needs an upgrade but has potential BC breaks so is not urgent
954
- return 'update-possible';
955
- }
956
-
957
- private function writeTreeLine($line)
958
- {
959
- $io = $this->getIO();
960
- if (!$io->isDecorated()) {
961
- $line = str_replace(array('└', '├', '──', '│'), array('`-', '|-', '-', '|'), $line);
962
- }
963
-
964
- $io->write($line);
965
- }
966
-
967
- /**
968
- * Given a package, this finds the latest package matching it
969
- *
970
- * @param PackageInterface $package
971
- * @param Composer $composer
972
- * @param string $phpVersion
973
- * @param bool $minorOnly
974
- *
975
- * @return PackageInterface|null
976
- */
977
- private function findLatestPackage(PackageInterface $package, Composer $composer, $phpVersion, $minorOnly = false)
978
- {
979
- // find the latest version allowed in this pool
980
- $name = $package->getName();
981
- $versionSelector = new VersionSelector($this->getPool($composer));
982
- $stability = $composer->getPackage()->getMinimumStability();
983
- $flags = $composer->getPackage()->getStabilityFlags();
984
- if (isset($flags[$name])) {
985
- $stability = array_search($flags[$name], BasePackage::$stabilities, true);
986
- }
987
-
988
- $bestStability = $stability;
989
- if ($composer->getPackage()->getPreferStable()) {
990
- $bestStability = $package->getStability();
991
- }
992
-
993
- $targetVersion = null;
994
- if (0 === strpos($package->getVersion(), 'dev-')) {
995
- $targetVersion = $package->getVersion();
996
- }
997
-
998
- if ($targetVersion === null && $minorOnly) {
999
- $targetVersion = '^' . $package->getVersion();
1000
- }
1001
-
1002
- return $versionSelector->findBestCandidate($name, $targetVersion, $phpVersion, $bestStability);
1003
- }
1004
-
1005
- private function getPool(Composer $composer)
1006
- {
1007
- if (!$this->pool) {
1008
- $this->pool = new Pool($composer->getPackage()->getMinimumStability(), $composer->getPackage()->getStabilityFlags());
1009
- $this->pool->addRepository(new CompositeRepository($composer->getRepositoryManager()->getRepositories()));
1010
- }
1011
-
1012
- return $this->pool;
1013
- }
1014
- }