(&self, operation: F)
| 535 | |
| 536 | impl LocalWorkspaceBackend { |
| 537 | async fn run_blocking_git<T, F>(&self, operation: F) -> Result<T> |
| 538 | where |
| 539 | T: Send + 'static, |
| 540 | F: FnOnce(PathBuf) -> Result<T> + Send + 'static, |
| 541 | { |
| 542 | let root = self.root.clone(); |
| 543 | tokio::task::spawn_blocking(move || operation(root)) |
| 544 | .await |
| 545 | .map_err(|e| anyhow!("Git worker failed: {}", e))? |
| 546 | } |
| 547 | |
| 548 | async fn run_git_command(&self, args: Vec<String>) -> Result<(bool, String, String)> { |
| 549 | tokio::task::spawn_blocking(crate::git::ensure_git_installed) |
no test coverage detected