From cc5d73c05a0abca2eebcc8a6afa0b1543ee49850 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 27 May 2026 00:49:33 +0900 Subject: refactor(package): pass package handles by value throughout Co-Authored-By: Claude Opus 4.7 (1M context) --- crates/shirabe/src/command/archive_command.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'crates/shirabe/src/command/archive_command.rs') diff --git a/crates/shirabe/src/command/archive_command.rs b/crates/shirabe/src/command/archive_command.rs index 225b092..aab7b51 100644 --- a/crates/shirabe/src/command/archive_command.rs +++ b/crates/shirabe/src/command/archive_command.rs @@ -201,10 +201,9 @@ impl ArchiveCommand { None => return Ok(1), } } else { - let _rc = self.require_composer(None, None)?; - // TODO(phase-c): composer.get_package() returns &dyn RootPackageInterface, not a - // handle, so it cannot be shared as a CompletePackageInterfaceHandle yet. - todo!("share composer.get_package() as a CompletePackageInterfaceHandle") + let rc = self.require_composer(None, None)?; + let composer = crate::command::composer_full(&rc); + composer.get_package().clone().into() }; io.write_error(&format!( -- cgit v1.3.1