Radish alpha
r
Radicle web interface
Radicle
Git (anonymous pull)
Log in to clone via SSH
httpd: Sort issues and patches by creation date
Sebastian Martinez committed 3 years ago
commit 9efea143ab2e2e607d9abec917288b1dbd816766
parent ac0994a3be2ff7b899e64a0d368571dd0a43b596
1 file changed +4 -4
modified radicle-httpd/src/api/v1/projects.rs
@@ -394,10 +394,10 @@ async fn issues_handler(
    let storage = &ctx.profile.storage;
    let repo = storage.repository(project)?;
    let issues = Issues::open(ctx.profile.public_key, &repo)?;
+
    let mut issues: Vec<_> = issues.all()?.filter_map(|r| r.ok()).collect::<Vec<_>>();
+
    issues.sort_by(|(_, a, _), (_, b, _)| b.timestamp().cmp(&a.timestamp()));
    let issues = issues
-
        .all()?
        .into_iter()
-
        .filter_map(|r| r.ok())
        .map(|(id, issue, _)| api::json::issue(id, issue))
        .skip(page * per_page)
        .take(per_page)
@@ -532,10 +532,10 @@ async fn patches_handler(
    let storage = &ctx.profile.storage;
    let repo = storage.repository(project)?;
    let patches = Patches::open(ctx.profile.public_key, &repo)?;
+
    let mut patches = patches.all()?.filter_map(|r| r.ok()).collect::<Vec<_>>();
+
    patches.sort_by(|(_, a, _), (_, b, _)| b.timestamp().cmp(&a.timestamp()));
    let patches = patches
-
        .all()?
        .into_iter()
-
        .filter_map(|r| r.ok())
        .map(|(id, patch, _)| api::json::patch(id, patch))
        .skip(page * per_page)
        .take(per_page)