async fn check_directory( directory: PathBuf, remote_path: String, directories: &Mutex<Vec<(PathBuf, String)>>, result_sender: &Sender<Result<FileHash>>) -> Result<()>