From 7878d736439d8fa2b8c5eaac56a2073473b36ec9 Mon Sep 17 00:00:00 2001 From: SAY-5 Date: Thu, 21 May 2026 00:41:42 -0700 Subject: [PATCH] fix(upgrade): skip Modrinth versions with empty files A Modrinth project version can have an empty files array (some legacy/broken entries on the API). from_mr_version then calls VersionExt::get_version_file which indexes self.files[0] and panics with 'index out of bounds: the len is 0 but the index is 0'. Filter empty-files versions out of the version list before mapping, so they are silently skipped instead of crashing ferium-worker. Fixes #514 --- libium/src/upgrade/mod_downloadable.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/libium/src/upgrade/mod_downloadable.rs b/libium/src/upgrade/mod_downloadable.rs index 077a87e1..f168c6b2 100644 --- a/libium/src/upgrade/mod_downloadable.rs +++ b/libium/src/upgrade/mod_downloadable.rs @@ -64,6 +64,7 @@ impl Mod { .version_list(id) .await? .into_iter() + .filter(|v| !v.files.is_empty()) .map(from_mr_version) .collect_vec(), ModIdentifier::GitHubRepository((owner, repo), None) => GITHUB_API