From efe5bdb1987411a473d4af15451a376d20928245 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 12 Jun 2026 03:19:34 +0900 Subject: refactor(php-shim): replace literal sprintf calls with format! Convert every sprintf() call with a compile-time literal format string to format!, implementing Display for PhpMixed (delegating to php_to_string) so PhpMixed values render with PHP string semantics through {}. Also merge the format!-wrapped and conditional-literal dynamic sites into single format! calls. Genuinely runtime format strings (table styles, configurable error messages, command synopsis, progress-bar modifiers, regex-built messages) still go through sprintf. Co-Authored-By: Claude Opus 4.8 (1M context) --- crates/shirabe/src/repository/vcs/gitlab_driver.rs | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'crates/shirabe/src/repository/vcs/gitlab_driver.rs') diff --git a/crates/shirabe/src/repository/vcs/gitlab_driver.rs b/crates/shirabe/src/repository/vcs/gitlab_driver.rs index 8ab30d4..bc47db8 100644 --- a/crates/shirabe/src/repository/vcs/gitlab_driver.rs +++ b/crates/shirabe/src/repository/vcs/gitlab_driver.rs @@ -88,9 +88,9 @@ impl GitLabDriver { .unwrap_or(false) { return Err(InvalidArgumentException { - message: sprintf( - "The GitLab repository URL %s is invalid. It must be the HTTP URL of a GitLab project.", - &[PhpMixed::String(self.inner.url.clone())], + message: format!( + "The GitLab repository URL {} is invalid. It must be the HTTP URL of a GitLab project.", + PhpMixed::String(self.inner.url.clone()), ), code: 0, } @@ -366,9 +366,10 @@ impl GitLabDriver { }) { support.insert( "source".to_string(), - Box::new(PhpMixed::String(sprintf( - "%s/-/tree/%s", - &[PhpMixed::String(web_url), PhpMixed::String(label_str)], + Box::new(PhpMixed::String(format!( + "{}/-/tree/{}", + PhpMixed::String(web_url), + PhpMixed::String(label_str), ))), ); } @@ -396,9 +397,9 @@ impl GitLabDriver { }) { support.insert( "issues".to_string(), - Box::new(PhpMixed::String(sprintf( - "%s/-/issues", - &[PhpMixed::String(web_url)], + Box::new(PhpMixed::String(format!( + "{}/-/issues", + PhpMixed::String(web_url), ))), ); } @@ -617,7 +618,7 @@ impl GitLabDriver { ]), true, ) { - format!("%{}", sprintf("%02X", &[PhpMixed::Int(ord(&character))])) + format!("%{}", format!("{:02X}", ord(&character))) } else { character }; -- cgit v1.3.1