diff --git a/src/model/project.rs b/src/model/project.rs index dd3acdc..2f0620c 100644 --- a/src/model/project.rs +++ b/src/model/project.rs @@ -261,20 +261,11 @@ impl Project { ))); } - // Sort by release type (release > beta > alpha) and date - let mut sorted_files = compatible_files.clone(); + // Sort by release type (Release < Beta < Alpha) and date (newest first) + let mut sorted_files = compatible_files.to_vec(); sorted_files.sort_by(|a, b| { - use super::enums::ReleaseType; - let type_order = |rt: &ReleaseType| { - match rt { - ReleaseType::Release => 0, - ReleaseType::Beta => 1, - ReleaseType::Alpha => 2, - } - }; - - type_order(&a.release_type) - .cmp(&type_order(&b.release_type)) + a.release_type + .cmp(&b.release_type) .then_with(|| b.date_published.cmp(&a.date_published)) });