//! ref: composer/src/Composer/Command/AboutCommand.php use crate::command::base_command::BaseCommand; use crate::composer::Composer; use shirabe_external_packages::symfony::console::input::input_interface::InputInterface; use shirabe_external_packages::symfony::console::output::output_interface::OutputInterface; pub struct AboutCommand { inner: BaseCommand, } impl AboutCommand { pub fn configure(&mut self) { self.inner .set_name("about") .set_description("Shows a short information about Composer") .set_help("php composer.phar about"); } pub fn execute(&self, input: &dyn InputInterface, output: &dyn OutputInterface) -> i64 { let composer_version = Composer::get_version(); self.inner.get_io().write(&format!( "Composer - Dependency Manager for PHP - version {composer_version}\n\ Composer is a dependency manager tracking local dependencies of your projects and libraries.\n\ See https://getcomposer.org/ for more information." )); 0 } }