From 9cc27da0ab2722042190a44db87d4f615c947a47 Mon Sep 17 00:00:00 2001 From: Victoria Fischer Date: Tue, 30 Jun 2026 09:08:23 +0200 Subject: [PATCH] artifacts: beets: for some reason beets prints ratings as strings --- src/artifacts/beets.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/artifacts/beets.rs b/src/artifacts/beets.rs index 79b2b29..ffbd000 100644 --- a/src/artifacts/beets.rs +++ b/src/artifacts/beets.rs @@ -1,6 +1,7 @@ use std::{collections::HashSet, fmt::Display, process::Stdio}; use chrono::{DateTime, NaiveDate, NaiveTime, Utc}; +use serde_json::Value; use tokio::process::Command; use schemars::JsonSchema; @@ -220,8 +221,8 @@ struct BeetsTrack { date: Option, mixxx_last_played: Option, added: Option, - mixxx_rating: Option, - mixxx_times_played: Option, + mixxx_rating: Option, + mixxx_times_played: Option, mb_trackid: Option } @@ -273,7 +274,7 @@ impl From for Artifact { release_date: val.date.map(BeetsTimestamp::into), last_played: val.mixxx_last_played.map(BeetsTimestamp::into), added: val.added.map(BeetsTimestamp::into), - rating: val.mixxx_rating, + rating: val.mixxx_rating.map(|x| x.as_u64().unwrap_or_default() as u32 ), bpm: None, }; let builder = ArtifactBuilder::new(SourceID::Beets)