diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-08-06 20:38:00 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-08-06 20:38:00 +0900 |
| commit | 9411867aa23f8f4f3a6b21b4e8ca9f498a16283a (patch) | |
| tree | 1d679d8fa48fcae87b036a00301c9fba0d210b3f /crates/shirabe/src/downloader/download_manager.rs | |
| parent | f18efec69df00cf61e3ec595d07131cae7ca0372 (diff) | |
| download | php-shirabe-9411867aa23f8f4f3a6b21b4e8ca9f498a16283a.tar.gz php-shirabe-9411867aa23f8f4f3a6b21b4e8ca9f498a16283a.tar.zst php-shirabe-9411867aa23f8f4f3a6b21b4e8ca9f498a16283a.zip | |
fix(download-manager): name the downloader class in its LogicException
getDownloaderForPackage reports get_class($downloader) when the resolved
downloader's installation source does not match. Rust has no runtime class
name, so the message was built from a shim stub that panicked instead —
the error could never be returned.
DownloaderInterface now requires PhpClass, the trait already used for the
same purpose on Command, and each downloader states the name PHP reports.
That leaves get_class_obj without callers, so it is gone.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/downloader/download_manager.rs')
| -rw-r--r-- | crates/shirabe/src/downloader/download_manager.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crates/shirabe/src/downloader/download_manager.rs b/crates/shirabe/src/downloader/download_manager.rs index 7ff21a25..682fdcb8 100644 --- a/crates/shirabe/src/downloader/download_manager.rs +++ b/crates/shirabe/src/downloader/download_manager.rs @@ -149,7 +149,7 @@ impl DownloadManager { return Err(LogicException { message: format!( "Downloader \"{}\" is a {} type downloader and can not be used to download {} for package {}", - shirabe_php_shim::get_class_obj(&*downloader.borrow()), + shirabe_php_shim::PhpClass::php_class_name(&*downloader.borrow()), downloader_installation_source, installation_source.unwrap_or_default(), package, |
