artifacts: beets: for some reason beets prints ratings as strings

This commit is contained in:
2026-06-30 09:08:23 +02:00
parent c3a4dffff0
commit 9cc27da0ab
+4 -3
View File
@@ -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<BeetsTimestamp>,
mixxx_last_played: Option<BeetsTimestamp>,
added: Option<BeetsTimestamp>,
mixxx_rating: Option<u32>,
mixxx_times_played: Option<u32>,
mixxx_rating: Option<Value>,
mixxx_times_played: Option<Value>,
mb_trackid: Option<String>
}
@@ -273,7 +274,7 @@ impl From<BeetsTrack> 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)