aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/json/json_file.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-06-03 21:05:15 +0900
committernsfisis <nsfisis@gmail.com>2026-06-03 21:05:15 +0900
commit27764ef4447a02e5c59bbcc7b4547838aae82d89 (patch)
treeade2b2c9ba2d4cc0a0b3ed66aa9b4e04754a9b7a /crates/shirabe/src/json/json_file.rs
parenteacd2abcc53659a9fa20b1274a30ac4d9ad8bdb6 (diff)
downloadphp-shirabe-27764ef4447a02e5c59bbcc7b4547838aae82d89.tar.gz
php-shirabe-27764ef4447a02e5c59bbcc7b4547838aae82d89.tar.zst
php-shirabe-27764ef4447a02e5c59bbcc7b4547838aae82d89.zip
refactor(downloader,repository,json): drop stale try/catch TODOs; fix svn getFileContent catch type
Remove 17 TODO(phase-b) markers across exception-modeling sites where the existing single-Result closure+match already faithfully models the PHP try/catch (catch paths only rethrow, retry, log, or silently ignore and never yield a recoverable value, so a double Result is unnecessary). Fix SvnDriver::get_file_content to catch only RuntimeException (matching PHP's catch RuntimeException) and extract its .message instead of calling e.to_string() on the anyhow::Error, which would panic while the shim exception Display is unimplemented; other errors now propagate. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/json/json_file.rs')
-rw-r--r--crates/shirabe/src/json/json_file.rs2
1 files changed, 0 insertions, 2 deletions
diff --git a/crates/shirabe/src/json/json_file.rs b/crates/shirabe/src/json/json_file.rs
index 364c2b9..33496df 100644
--- a/crates/shirabe/src/json/json_file.rs
+++ b/crates/shirabe/src/json/json_file.rs
@@ -102,7 +102,6 @@ impl JsonFile {
/// @throws \RuntimeException
/// @return mixed
pub fn read(&mut self) -> Result<PhpMixed> {
- // TODO(phase-b): use anyhow::Result<Result<T, E>> to model PHP try/catch
let json: Option<String> = match (|| -> Result<Option<String>> {
if let Some(http_downloader) = &self.http_downloader {
Ok(http_downloader
@@ -216,7 +215,6 @@ impl JsonFile {
let mut retries = 3;
while retries > 0 {
retries -= 1;
- // TODO(phase-b): use anyhow::Result<Result<T, E>> to model PHP try/catch
let attempt: Result<()> = (|| -> Result<()> {
self.file_put_contents_if_modified(
&self.path,