From 1921f173ea219cb4b25847294d2d3fa465550fbb Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 25 May 2026 00:58:20 +0900 Subject: refactor(package): introduce Rc> handles for packages PHP packages have reference semantics, so introduce shared-ownership handles over an AnyPackage enum (PackageInterfaceHandle and friends) and replace Box throughout. Co-Authored-By: Claude Opus 4.7 (1M context) --- crates/shirabe/src/dependency_resolver/local_repo_transaction.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'crates/shirabe/src/dependency_resolver/local_repo_transaction.rs') diff --git a/crates/shirabe/src/dependency_resolver/local_repo_transaction.rs b/crates/shirabe/src/dependency_resolver/local_repo_transaction.rs index b4aa4a4..7b60522 100644 --- a/crates/shirabe/src/dependency_resolver/local_repo_transaction.rs +++ b/crates/shirabe/src/dependency_resolver/local_repo_transaction.rs @@ -14,9 +14,9 @@ impl LocalRepoTransaction { locked_repository: &dyn RepositoryInterface, local_repository: &dyn InstalledRepositoryInterface, ) -> Self { - // TODO(phase-b): RepositoryInterface::get_packages returns Box - // but Transaction::new wants Box. Upcast each via PackageInterface - // trait once a `into_package_interface` helper is added. + // TODO(phase-c): RepositoryInterface::get_packages yields BasePackageHandle; widen each to + // PackageInterfaceHandle (via .into()) and feed them to Transaction::new once the repository + // getters expose handles here. let _ = (locked_repository, local_repository); Self { inner: Transaction::new(Vec::new(), Vec::new()), -- cgit v1.3.1