pub fn list_dir( project: &ProjectRoot, path: &str, recursive: bool, ) -> Result<Vec<DirectoryEntry>>