From 2592062434eeb5fe814dbca953d5fd23458bc135 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 2 Aug 2026 11:04:17 +0900 Subject: feat(symfony-console): implement the shell completion command plumbing The _complete and completion commands were registered but always panicked: get_class_of_command / instantiate_completion_output / tail_debug_log were todo!() and the completion.bash resource was not shipped. - make Command::complete return anyhow::Result so completion errors propagate to CompleteCommand's catch-all (exit code 2) like PHP - add Command::get_class as the port hook for PHP's get_class() debug log; every command supplies its PHP FQCN via the delegation macro - embed Resources/completion.bash at compile time (single-binary port); get_supported_shells becomes a static list - implement tail_debug_log by moving the shared output handle into the 'static process callback - add OutputInterface::as_console_output so unsupported-shell errors go to stderr as in PHP - fix CompletionInput::bind to keep the argument name PHP assigns in the foreach head even when the loop breaks on the first unset argument; application-level completion always hit this and returned no suggestions Co-Authored-By: Claude Fable 5 --- crates/shirabe/src/command/about_command.rs | 5 ++++- crates/shirabe/src/command/archive_command.rs | 5 ++++- crates/shirabe/src/command/audit_command.rs | 5 ++++- crates/shirabe/src/command/base_command.rs | 6 ++++++ crates/shirabe/src/command/bump_command.rs | 5 ++++- crates/shirabe/src/command/check_platform_reqs_command.rs | 5 ++++- crates/shirabe/src/command/clear_cache_command.rs | 5 ++++- crates/shirabe/src/command/config_command.rs | 5 ++++- crates/shirabe/src/command/create_project_command.rs | 5 ++++- crates/shirabe/src/command/depends_command.rs | 5 ++++- crates/shirabe/src/command/diagnose_command.rs | 5 ++++- crates/shirabe/src/command/dump_autoload_command.rs | 5 ++++- crates/shirabe/src/command/exec_command.rs | 5 ++++- crates/shirabe/src/command/fund_command.rs | 5 ++++- crates/shirabe/src/command/global_command.rs | 5 ++++- crates/shirabe/src/command/home_command.rs | 5 ++++- crates/shirabe/src/command/init_command.rs | 5 ++++- crates/shirabe/src/command/install_command.rs | 5 ++++- crates/shirabe/src/command/licenses_command.rs | 5 ++++- crates/shirabe/src/command/outdated_command.rs | 5 ++++- crates/shirabe/src/command/prohibits_command.rs | 5 ++++- crates/shirabe/src/command/reinstall_command.rs | 5 ++++- crates/shirabe/src/command/remove_command.rs | 5 ++++- crates/shirabe/src/command/repository_command.rs | 5 ++++- crates/shirabe/src/command/require_command.rs | 5 ++++- crates/shirabe/src/command/run_script_command.rs | 5 ++++- crates/shirabe/src/command/script_alias_command.rs | 5 ++++- crates/shirabe/src/command/search_command.rs | 5 ++++- crates/shirabe/src/command/self_update_command.rs | 5 ++++- crates/shirabe/src/command/show_command.rs | 5 ++++- crates/shirabe/src/command/status_command.rs | 5 ++++- crates/shirabe/src/command/suggests_command.rs | 5 ++++- crates/shirabe/src/command/update_command.rs | 5 ++++- crates/shirabe/src/command/validate_command.rs | 5 ++++- 34 files changed, 138 insertions(+), 33 deletions(-) (limited to 'crates/shirabe/src') diff --git a/crates/shirabe/src/command/about_command.rs b/crates/shirabe/src/command/about_command.rs index 386beebb..74978e1c 100644 --- a/crates/shirabe/src/command/about_command.rs +++ b/crates/shirabe/src/command/about_command.rs @@ -64,7 +64,10 @@ impl Command for AboutCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\AboutCommand" + ); } impl BaseCommand for AboutCommand { diff --git a/crates/shirabe/src/command/archive_command.rs b/crates/shirabe/src/command/archive_command.rs index dfbb6fc5..bf3ce01b 100644 --- a/crates/shirabe/src/command/archive_command.rs +++ b/crates/shirabe/src/command/archive_command.rs @@ -214,7 +214,10 @@ impl Command for ArchiveCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ArchiveCommand" + ); } impl ArchiveCommand { diff --git a/crates/shirabe/src/command/audit_command.rs b/crates/shirabe/src/command/audit_command.rs index b01b6624..666ba4b0 100644 --- a/crates/shirabe/src/command/audit_command.rs +++ b/crates/shirabe/src/command/audit_command.rs @@ -223,7 +223,10 @@ impl Command for AuditCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\AuditCommand" + ); } impl BaseCommand for AuditCommand { diff --git a/crates/shirabe/src/command/base_command.rs b/crates/shirabe/src/command/base_command.rs index b80cb2b4..e05478f4 100644 --- a/crates/shirabe/src/command/base_command.rs +++ b/crates/shirabe/src/command/base_command.rs @@ -246,6 +246,12 @@ macro_rules! delegate_base_command_trait_impls_to_inner { impl Command for BaseCommandData { shirabe_external_packages::delegate_command_trait_impls_to_inner!(inner); + + fn get_class(&self) -> String { + // Forwards to the base state's panicking get_class; concrete commands supply their + // FQCN through delegate_command_trait_impls_to_inner!'s two-argument variant. + self.inner.get_class() + } } impl BaseCommand for BaseCommandData { diff --git a/crates/shirabe/src/command/bump_command.rs b/crates/shirabe/src/command/bump_command.rs index 4b09f14c..9dd830c4 100644 --- a/crates/shirabe/src/command/bump_command.rs +++ b/crates/shirabe/src/command/bump_command.rs @@ -436,7 +436,10 @@ impl Command for BumpCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\BumpCommand" + ); } impl BaseCommand for BumpCommand { diff --git a/crates/shirabe/src/command/check_platform_reqs_command.rs b/crates/shirabe/src/command/check_platform_reqs_command.rs index fb759893..1675358d 100644 --- a/crates/shirabe/src/command/check_platform_reqs_command.rs +++ b/crates/shirabe/src/command/check_platform_reqs_command.rs @@ -402,7 +402,10 @@ impl Command for CheckPlatformReqsCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\CheckPlatformReqsCommand" + ); } impl BaseCommand for CheckPlatformReqsCommand { diff --git a/crates/shirabe/src/command/clear_cache_command.rs b/crates/shirabe/src/command/clear_cache_command.rs index 054ea8b1..a276ba13 100644 --- a/crates/shirabe/src/command/clear_cache_command.rs +++ b/crates/shirabe/src/command/clear_cache_command.rs @@ -184,7 +184,10 @@ impl Command for ClearCacheCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ClearCacheCommand" + ); } impl BaseCommand for ClearCacheCommand { diff --git a/crates/shirabe/src/command/config_command.rs b/crates/shirabe/src/command/config_command.rs index 9e2f4e66..fe1fd19a 100644 --- a/crates/shirabe/src/command/config_command.rs +++ b/crates/shirabe/src/command/config_command.rs @@ -1273,7 +1273,10 @@ impl Command for ConfigCommand { .into()) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ConfigCommand" + ); } impl BaseCommand for ConfigCommand { diff --git a/crates/shirabe/src/command/create_project_command.rs b/crates/shirabe/src/command/create_project_command.rs index 545ed533..687575b0 100644 --- a/crates/shirabe/src/command/create_project_command.rs +++ b/crates/shirabe/src/command/create_project_command.rs @@ -262,7 +262,10 @@ impl Command for CreateProjectCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\CreateProjectCommand" + ); } impl BaseCommand for CreateProjectCommand { diff --git a/crates/shirabe/src/command/depends_command.rs b/crates/shirabe/src/command/depends_command.rs index 4c6f85b5..f6723bd9 100644 --- a/crates/shirabe/src/command/depends_command.rs +++ b/crates/shirabe/src/command/depends_command.rs @@ -113,7 +113,10 @@ impl Command for DependsCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\DependsCommand" + ); } impl BaseCommand for DependsCommand { diff --git a/crates/shirabe/src/command/diagnose_command.rs b/crates/shirabe/src/command/diagnose_command.rs index 2d00ca21..55a130bd 100644 --- a/crates/shirabe/src/command/diagnose_command.rs +++ b/crates/shirabe/src/command/diagnose_command.rs @@ -444,7 +444,10 @@ impl Command for DiagnoseCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\DiagnoseCommand" + ); } impl BaseCommand for DiagnoseCommand { diff --git a/crates/shirabe/src/command/dump_autoload_command.rs b/crates/shirabe/src/command/dump_autoload_command.rs index 906185b0..291ab7b2 100644 --- a/crates/shirabe/src/command/dump_autoload_command.rs +++ b/crates/shirabe/src/command/dump_autoload_command.rs @@ -317,7 +317,10 @@ impl Command for DumpAutoloadCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\DumpAutoloadCommand" + ); } impl BaseCommand for DumpAutoloadCommand { diff --git a/crates/shirabe/src/command/exec_command.rs b/crates/shirabe/src/command/exec_command.rs index 63017cd1..3fa909a3 100644 --- a/crates/shirabe/src/command/exec_command.rs +++ b/crates/shirabe/src/command/exec_command.rs @@ -245,7 +245,10 @@ impl Command for ExecCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ExecCommand" + ); } impl BaseCommand for ExecCommand { diff --git a/crates/shirabe/src/command/fund_command.rs b/crates/shirabe/src/command/fund_command.rs index c40a3760..e9e75cb0 100644 --- a/crates/shirabe/src/command/fund_command.rs +++ b/crates/shirabe/src/command/fund_command.rs @@ -223,7 +223,10 @@ impl Command for FundCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\FundCommand" + ); } impl BaseCommand for FundCommand { diff --git a/crates/shirabe/src/command/global_command.rs b/crates/shirabe/src/command/global_command.rs index dd1ec9c2..7331ebf8 100644 --- a/crates/shirabe/src/command/global_command.rs +++ b/crates/shirabe/src/command/global_command.rs @@ -198,7 +198,10 @@ impl Command for GlobalCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\GlobalCommand" + ); } impl BaseCommand for GlobalCommand { diff --git a/crates/shirabe/src/command/home_command.rs b/crates/shirabe/src/command/home_command.rs index f7dca941..e61cc9c2 100644 --- a/crates/shirabe/src/command/home_command.rs +++ b/crates/shirabe/src/command/home_command.rs @@ -260,7 +260,10 @@ impl Command for HomeCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\HomeCommand" + ); } impl BaseCommand for HomeCommand { diff --git a/crates/shirabe/src/command/init_command.rs b/crates/shirabe/src/command/init_command.rs index 4523d910..b74a91f9 100644 --- a/crates/shirabe/src/command/init_command.rs +++ b/crates/shirabe/src/command/init_command.rs @@ -900,7 +900,10 @@ impl Command for InitCommand { })(); } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\InitCommand" + ); } impl BaseCommand for InitCommand { diff --git a/crates/shirabe/src/command/install_command.rs b/crates/shirabe/src/command/install_command.rs index 28855cac..3e833c5b 100644 --- a/crates/shirabe/src/command/install_command.rs +++ b/crates/shirabe/src/command/install_command.rs @@ -269,7 +269,10 @@ impl Command for InstallCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\InstallCommand" + ); } impl BaseCommand for InstallCommand { diff --git a/crates/shirabe/src/command/licenses_command.rs b/crates/shirabe/src/command/licenses_command.rs index a49e567d..75407d92 100644 --- a/crates/shirabe/src/command/licenses_command.rs +++ b/crates/shirabe/src/command/licenses_command.rs @@ -328,7 +328,10 @@ impl Command for LicensesCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\LicensesCommand" + ); } impl BaseCommand for LicensesCommand { diff --git a/crates/shirabe/src/command/outdated_command.rs b/crates/shirabe/src/command/outdated_command.rs index e0892692..fd8a1497 100644 --- a/crates/shirabe/src/command/outdated_command.rs +++ b/crates/shirabe/src/command/outdated_command.rs @@ -230,7 +230,10 @@ impl Command for OutdatedCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\OutdatedCommand" + ); } impl BaseCommand for OutdatedCommand { diff --git a/crates/shirabe/src/command/prohibits_command.rs b/crates/shirabe/src/command/prohibits_command.rs index 49c8a19b..7de16831 100644 --- a/crates/shirabe/src/command/prohibits_command.rs +++ b/crates/shirabe/src/command/prohibits_command.rs @@ -120,7 +120,10 @@ impl Command for ProhibitsCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ProhibitsCommand" + ); } impl BaseCommand for ProhibitsCommand { diff --git a/crates/shirabe/src/command/reinstall_command.rs b/crates/shirabe/src/command/reinstall_command.rs index bf10aeed..dc94c4ca 100644 --- a/crates/shirabe/src/command/reinstall_command.rs +++ b/crates/shirabe/src/command/reinstall_command.rs @@ -357,7 +357,10 @@ impl Command for ReinstallCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ReinstallCommand" + ); } impl BaseCommand for ReinstallCommand { diff --git a/crates/shirabe/src/command/remove_command.rs b/crates/shirabe/src/command/remove_command.rs index eaf9ed41..3fb99653 100644 --- a/crates/shirabe/src/command/remove_command.rs +++ b/crates/shirabe/src/command/remove_command.rs @@ -711,7 +711,10 @@ impl Command for RemoveCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\RemoveCommand" + ); } impl BaseCommand for RemoveCommand { diff --git a/crates/shirabe/src/command/repository_command.rs b/crates/shirabe/src/command/repository_command.rs index 2e9e0020..fd8b4671 100644 --- a/crates/shirabe/src/command/repository_command.rs +++ b/crates/shirabe/src/command/repository_command.rs @@ -501,7 +501,10 @@ impl Command for RepositoryCommand { ) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\RepositoryCommand" + ); } impl BaseCommand for RepositoryCommand { diff --git a/crates/shirabe/src/command/require_command.rs b/crates/shirabe/src/command/require_command.rs index 2826e04b..af9f56e4 100644 --- a/crates/shirabe/src/command/require_command.rs +++ b/crates/shirabe/src/command/require_command.rs @@ -650,7 +650,10 @@ impl Command for RequireCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\RequireCommand" + ); } impl BaseCommand for RequireCommand { diff --git a/crates/shirabe/src/command/run_script_command.rs b/crates/shirabe/src/command/run_script_command.rs index 0887eb89..6590c19f 100644 --- a/crates/shirabe/src/command/run_script_command.rs +++ b/crates/shirabe/src/command/run_script_command.rs @@ -330,7 +330,10 @@ impl Command for RunScriptCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\RunScriptCommand" + ); } impl BaseCommand for RunScriptCommand { diff --git a/crates/shirabe/src/command/script_alias_command.rs b/crates/shirabe/src/command/script_alias_command.rs index 5cc4af58..da58234b 100644 --- a/crates/shirabe/src/command/script_alias_command.rs +++ b/crates/shirabe/src/command/script_alias_command.rs @@ -168,7 +168,10 @@ impl Command for ScriptAliasCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ScriptAliasCommand" + ); } impl BaseCommand for ScriptAliasCommand { diff --git a/crates/shirabe/src/command/search_command.rs b/crates/shirabe/src/command/search_command.rs index 156dd406..83c7a8bf 100644 --- a/crates/shirabe/src/command/search_command.rs +++ b/crates/shirabe/src/command/search_command.rs @@ -301,7 +301,10 @@ impl Command for SearchCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\SearchCommand" + ); } impl BaseCommand for SearchCommand { diff --git a/crates/shirabe/src/command/self_update_command.rs b/crates/shirabe/src/command/self_update_command.rs index 87efd4b9..31d95263 100644 --- a/crates/shirabe/src/command/self_update_command.rs +++ b/crates/shirabe/src/command/self_update_command.rs @@ -91,7 +91,10 @@ impl Command for SelfUpdateCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\SelfUpdateCommand" + ); } impl BaseCommand for SelfUpdateCommand { diff --git a/crates/shirabe/src/command/show_command.rs b/crates/shirabe/src/command/show_command.rs index bc36869c..18d47911 100644 --- a/crates/shirabe/src/command/show_command.rs +++ b/crates/shirabe/src/command/show_command.rs @@ -1441,7 +1441,10 @@ impl Command for ShowCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ShowCommand" + ); } impl BaseCommand for ShowCommand { diff --git a/crates/shirabe/src/command/status_command.rs b/crates/shirabe/src/command/status_command.rs index 1c8afca8..c412fa2f 100644 --- a/crates/shirabe/src/command/status_command.rs +++ b/crates/shirabe/src/command/status_command.rs @@ -385,7 +385,10 @@ impl Command for StatusCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\StatusCommand" + ); } impl BaseCommand for StatusCommand { diff --git a/crates/shirabe/src/command/suggests_command.rs b/crates/shirabe/src/command/suggests_command.rs index e42f20ba..4fd52915 100644 --- a/crates/shirabe/src/command/suggests_command.rs +++ b/crates/shirabe/src/command/suggests_command.rs @@ -219,7 +219,10 @@ impl Command for SuggestsCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\SuggestsCommand" + ); } impl BaseCommand for SuggestsCommand { diff --git a/crates/shirabe/src/command/update_command.rs b/crates/shirabe/src/command/update_command.rs index 5c0aae8a..c2f41d6a 100644 --- a/crates/shirabe/src/command/update_command.rs +++ b/crates/shirabe/src/command/update_command.rs @@ -578,7 +578,10 @@ impl Command for UpdateCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\UpdateCommand" + ); } impl BaseCommand for UpdateCommand { diff --git a/crates/shirabe/src/command/validate_command.rs b/crates/shirabe/src/command/validate_command.rs index 12e28188..fbfc45dc 100644 --- a/crates/shirabe/src/command/validate_command.rs +++ b/crates/shirabe/src/command/validate_command.rs @@ -307,7 +307,10 @@ impl Command for ValidateCommand { base_command_initialize(self, input, output) } - shirabe_external_packages::delegate_command_trait_impls_to_inner!(base_command_data); + shirabe_external_packages::delegate_command_trait_impls_to_inner!( + base_command_data, + "Composer\\Command\\ValidateCommand" + ); } impl BaseCommand for ValidateCommand { -- cgit v1.3.1