diff options
| author | metamuffin <metamuffin@disroot.org> | 2026-03-07 23:28:45 +0100 |
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2026-03-07 23:28:45 +0100 |
| commit | 9d1e1772c02032f70b6db584dddae8fd06b490d6 (patch) | |
| tree | 9d97b4d3e1252c4b99f30a19f339700eaab44c45 /import/src/plugins | |
| parent | d1b7691adb7c40bf21053d324fdac16c544cd536 (diff) | |
| download | jellything-9d1e1772c02032f70b6db584dddae8fd06b490d6.tar jellything-9d1e1772c02032f70b6db584dddae8fd06b490d6.tar.bz2 jellything-9d1e1772c02032f70b6db584dddae8fd06b490d6.tar.zst | |
manual clippy
Diffstat (limited to 'import/src/plugins')
| -rw-r--r-- | import/src/plugins/acoustid.rs | 4 | ||||
| -rw-r--r-- | import/src/plugins/infojson.rs | 12 | ||||
| -rw-r--r-- | import/src/plugins/media_info.rs | 2 | ||||
| -rw-r--r-- | import/src/plugins/misc.rs | 30 | ||||
| -rw-r--r-- | import/src/plugins/mod.rs | 9 | ||||
| -rw-r--r-- | import/src/plugins/musicbrainz.rs | 2 | ||||
| -rw-r--r-- | import/src/plugins/tags.rs | 9 | ||||
| -rw-r--r-- | import/src/plugins/tmdb.rs | 18 | ||||
| -rw-r--r-- | import/src/plugins/trakt.rs | 18 | ||||
| -rw-r--r-- | import/src/plugins/vgmdb.rs | 8 | ||||
| -rw-r--r-- | import/src/plugins/wikidata.rs | 22 |
11 files changed, 65 insertions, 69 deletions
diff --git a/import/src/plugins/acoustid.rs b/import/src/plugins/acoustid.rs index caeeea5..07abb45 100644 --- a/import/src/plugins/acoustid.rs +++ b/import/src/plugins/acoustid.rs @@ -181,13 +181,13 @@ impl ImportPlugin for AcoustID { let duration = (seg.info.duration.unwrap_or_default() * seg.info.timestamp_scale as f64) / 1_000_000_000.; - if duration > 600. || duration < 10. { + if !(10. ..=600.).contains(&duration) { return Ok(()); } let fp = acoustid_fingerprint(&ct.ic.cache, path)?; - let Some((atid, mbid)) = self.get_atid_mbid(&ct.ic.cache, &fp, &ct.rt)? else { + let Some((atid, mbid)) = self.get_atid_mbid(&ct.ic.cache, &fp, ct.rt)? else { return Ok(()); }; diff --git a/import/src/plugins/infojson.rs b/import/src/plugins/infojson.rs index dfa5279..ab50171 100644 --- a/import/src/plugins/infojson.rs +++ b/import/src/plugins/infojson.rs @@ -185,16 +185,16 @@ impl ImportPlugin for Infojson { node = node.insert_s(ct.is, NO_TITLE, title); if let Some(cid) = &data.channel_id { node = node.update(NO_IDENTIFIERS, |ids| { - ids.insert_s(ct.is, IDENT_YOUTUBE_CHANNEL, &cid) + ids.insert_s(ct.is, IDENT_YOUTUBE_CHANNEL, cid) }); } if let Some(uid) = &data.uploader_id { node = node.update(NO_IDENTIFIERS, |ids| { - ids.insert_s(ct.is, IDENT_YOUTUBE_CHANNEL_HANDLE, &uid) + ids.insert_s(ct.is, IDENT_YOUTUBE_CHANNEL_HANDLE, uid) }) } if let Some(desc) = &data.description { - node = node.insert_s(ct.is, NO_DESCRIPTION, &desc); + node = node.insert_s(ct.is, NO_DESCRIPTION, desc); } if let Some(followers) = data.channel_follower_count { node = node.update(NO_RATINGS, |rat| { @@ -248,15 +248,15 @@ impl ImportPlugin for Infojson { && title != &infojson.title && !node.has(NO_SUBTITLE.0) { - node = node.insert_s(ct.is, NO_SUBTITLE, &title); + node = node.insert_s(ct.is, NO_SUBTITLE, title); } if let Some(up) = &infojson.uploader && !node.has(NO_SUBTITLE.0) { - node = node.insert_s(ct.is, NO_SUBTITLE, &clean_uploader_name(&up)); + node = node.insert_s(ct.is, NO_SUBTITLE, clean_uploader_name(up)); } if let Some(desc) = &infojson.description { - node = node.insert_s(ct.is, NO_DESCRIPTION, &desc); + node = node.insert_s(ct.is, NO_DESCRIPTION, desc); } if let Some(tag) = infojson.tags.clone() { node = node.extend(NO_TAG, tag.iter().map(String::as_str)); diff --git a/import/src/plugins/media_info.rs b/import/src/plugins/media_info.rs index 5daa3ba..780af45 100644 --- a/import/src/plugins/media_info.rs +++ b/import/src/plugins/media_info.rs @@ -92,7 +92,7 @@ impl ImportPlugin for MediaInfo { if let Some(end) = cha.time_end { chapter.push(CH_END, end as f64 * 1e-9); } - if let Some(display) = cha.displays.iter().next() { + if let Some(display) = cha.displays.first() { chapter.push(CH_NAME, &display.string); } chapter.finish() diff --git a/import/src/plugins/misc.rs b/import/src/plugins/misc.rs index db9a8ab..283a1b6 100644 --- a/import/src/plugins/misc.rs +++ b/import/src/plugins/misc.rs @@ -183,22 +183,22 @@ impl ImportPlugin for EpisodeIndex { } fn media(&self, ct: &PluginContext, node: RowNum, path: &Path, _seg: &Segment) -> Result<()> { let filename = path.file_name().unwrap().to_string_lossy(); - if let Some(cap) = RE_EPISODE_FILENAME.captures(&filename) { - if let Some(episode) = cap.name("episode").map(|m| m.as_str()) { - let season = cap.name("season").map(|m| m.as_str()); - let episode = episode.parse::<u64>().context("parse episode num")?; - let season = season - .unwrap_or("1") - .parse::<u64>() - .context("parse season num")?; + if let Some(cap) = RE_EPISODE_FILENAME.captures(&filename) + && let Some(episode) = cap.name("episode").map(|m| m.as_str()) + { + let season = cap.name("season").map(|m| m.as_str()); + let episode = episode.parse::<u64>().context("parse episode num")?; + let season = season + .unwrap_or("1") + .parse::<u64>() + .context("parse season num")?; - ct.ic.update_node(node, |mut node| { - node = node.insert_s(ct.is, NO_SEASON_INDEX, season); - node = node.insert_s(ct.is, NO_INDEX, episode); - node = node.insert_s(ct.is, NO_KIND, KIND_EPISODE); - node - })?; - } + ct.ic.update_node(node, |mut node| { + node = node.insert_s(ct.is, NO_SEASON_INDEX, season); + node = node.insert_s(ct.is, NO_INDEX, episode); + node = node.insert_s(ct.is, NO_KIND, KIND_EPISODE); + node + })?; } Ok(()) } diff --git a/import/src/plugins/mod.rs b/import/src/plugins/mod.rs index 8fd1e67..cebe30e 100644 --- a/import/src/plugins/mod.rs +++ b/import/src/plugins/mod.rs @@ -61,6 +61,7 @@ pub trait ImportPlugin: Send + Sync { } } +#[allow(clippy::vec_init_then_push)] pub fn init_plugins(secrets: &ApiSecrets) -> Vec<Box<dyn ImportPlugin>> { let mut plugins = Vec::<Box<dyn ImportPlugin>>::new(); @@ -73,16 +74,16 @@ pub fn init_plugins(secrets: &ApiSecrets) -> Vec<Box<dyn ImportPlugin>> { plugins.push(Box::new(media_info::MediaInfo)); plugins.push(Box::new(infojson::Infojson)); if let Some(api_key) = &secrets.trakt { - plugins.push(Box::new(trakt::Trakt::new(&api_key))); + plugins.push(Box::new(trakt::Trakt::new(api_key))); } if let Some(api_key) = &secrets.tmdb { - plugins.push(Box::new(tmdb::Tmdb::new(&api_key))); // deps: trakt + plugins.push(Box::new(tmdb::Tmdb::new(api_key))); // deps: trakt } if let Some(api_key) = &secrets.omdb { - plugins.push(Box::new(omdb::Omdb::new(&api_key))); // deps: trakt + plugins.push(Box::new(omdb::Omdb::new(api_key))); // deps: trakt } if let Some(api_key) = &secrets.acoustid { - plugins.push(Box::new(acoustid::AcoustID::new(&api_key))); + plugins.push(Box::new(acoustid::AcoustID::new(api_key))); } plugins.push(Box::new(musicbrainz::MusicBrainz::new())); // deps: acoustid plugins.push(Box::new(wikidata::Wikidata::new())); // deps: musicbrainz diff --git a/import/src/plugins/musicbrainz.rs b/import/src/plugins/musicbrainz.rs index deed38b..3b9a156 100644 --- a/import/src/plugins/musicbrainz.rs +++ b/import/src/plugins/musicbrainz.rs @@ -357,7 +357,6 @@ impl ImportPlugin for MusicBrainz { impl MusicBrainz { fn process_recording(&self, ct: &PluginContext, node_row: RowNum) -> Result<()> { let data = ct.ic.get_node(node_row)?.unwrap(); - let data = data; let Some(mbid) = data .get(NO_IDENTIFIERS) @@ -425,7 +424,6 @@ impl MusicBrainz { fn process_artist(&self, ct: &PluginContext, node_row: RowNum) -> Result<()> { let data = ct.ic.get_node(node_row)?.unwrap(); - let data = data; let Some(mbid) = data .get(NO_IDENTIFIERS) diff --git a/import/src/plugins/tags.rs b/import/src/plugins/tags.rs index 901bcc6..be3b262 100644 --- a/import/src/plugins/tags.rs +++ b/import/src/plugins/tags.rs @@ -44,9 +44,9 @@ impl ImportPlugin for Tags { for (key, value) in &tags { match key.as_str() { "DESCRIPTION" | "SYNOPSIS" => { - node = node.insert_s(ct.is, NO_DESCRIPTION, &value) + node = node.insert_s(ct.is, NO_DESCRIPTION, value) } - "COMMENT" => node = node.insert(NO_TAGLINE, &value), + "COMMENT" => node = node.insert(NO_TAGLINE, value), "CONTENT_TYPE" => { node = node.insert_s( ct.is, @@ -69,9 +69,8 @@ impl ImportPlugin for Tags { "BARCODE" => IDENT_BARCODE, _ => continue, }; - node = node.update(NO_IDENTIFIERS, |idents| { - idents.insert_s(ct.is, idty, &value) - }); + node = node + .update(NO_IDENTIFIERS, |idents| idents.insert_s(ct.is, idty, value)); } } } diff --git a/import/src/plugins/tmdb.rs b/import/src/plugins/tmdb.rs index 832e240..6e496d1 100644 --- a/import/src/plugins/tmdb.rs +++ b/import/src/plugins/tmdb.rs @@ -217,13 +217,13 @@ impl Tmdb { let backdrop = details .backdrop_path .as_ref() - .map(|path| self.image(&ct.ic.cache, &path, ct.rt)) + .map(|path| self.image(&ct.ic.cache, path, ct.rt)) .transpose() .context("backdrop image")?; let poster = details .poster_path .as_ref() - .map(|path| self.image(&ct.ic.cache, &path, ct.rt)) + .map(|path| self.image(&ct.ic.cache, path, ct.rt)) .transpose() .context("poster image")?; @@ -236,21 +236,21 @@ impl Tmdb { ct.ic.update_node(node, |mut node| { if let Some(title) = &details.title { - node = node.insert_s(ct.is, NO_TITLE, &title); + node = node.insert_s(ct.is, NO_TITLE, title); } if let Some(tagline) = &details.tagline { - node = node.insert_s(ct.is, NO_TAGLINE, &tagline); + node = node.insert_s(ct.is, NO_TAGLINE, tagline); } node = node.insert_s(ct.is, NO_DESCRIPTION, &details.overview); node = node.update(NO_RATINGS, |rat| { rat.insert_s(ct.is, RTYP_TMDB, details.vote_average) }); if let Some(poster) = &poster { - node = node.update(NO_PICTURES, |rat| rat.insert_s(ct.is, PICT_COVER, &poster)); + node = node.update(NO_PICTURES, |rat| rat.insert_s(ct.is, PICT_COVER, poster)); } if let Some(backdrop) = &backdrop { node = node.update(NO_PICTURES, |rat| { - rat.insert_s(ct.is, PICT_BACKDROP, &backdrop) + rat.insert_s(ct.is, PICT_BACKDROP, backdrop) }); } if let Some(releasedate) = release_date { @@ -262,7 +262,6 @@ impl Tmdb { } fn process_episode(&self, ct: &PluginContext, node: RowNum) -> Result<()> { let data = ct.ic.get_node(node)?.unwrap(); - let data = data; let (Some(episode), Some(season)) = (data.get(NO_INDEX), data.get(NO_SEASON_INDEX)) else { return Ok(()); @@ -289,7 +288,7 @@ impl Tmdb { let cover = details .still_path .as_ref() - .map(|path| self.image(&ct.ic.cache, &path, ct.rt)) + .map(|path| self.image(&ct.ic.cache, path, ct.rt)) .transpose() .context("still image download")?; let release_date = parse_release_date(&details.air_date)?; @@ -304,7 +303,7 @@ impl Tmdb { }); if let Some(cover) = &cover { node = node.update(NO_PICTURES, |picts| { - picts.insert_s(ct.is, PICT_COVER, &cover) + picts.insert_s(ct.is, PICT_COVER, cover) }); } node @@ -313,7 +312,6 @@ impl Tmdb { fn process_person(&self, ct: &PluginContext, node: RowNum) -> Result<()> { let data = ct.ic.get_node(node)?.unwrap(); - let data = data; let Some(id) = data .get(NO_IDENTIFIERS) diff --git a/import/src/plugins/trakt.rs b/import/src/plugins/trakt.rs index 9c5786c..9fe25e6 100644 --- a/import/src/plugins/trakt.rs +++ b/import/src/plugins/trakt.rs @@ -473,29 +473,29 @@ impl Trakt { node = node.insert_s(ct.is, NO_KIND, trakt_kind.as_node_kind()); node = node.insert_s(ct.is, NO_TITLE, &details.title); if let Some(overview) = &details.overview { - node = node.insert_s(ct.is, NO_DESCRIPTION, &overview); + node = node.insert_s(ct.is, NO_DESCRIPTION, overview); } if let Some(tagline) = &details.tagline { - node = node.insert_s(ct.is, NO_TAGLINE, &tagline); + node = node.insert_s(ct.is, NO_TAGLINE, tagline); } if let Some(x) = details.ids.imdb.clone() { node = node.update(NO_IDENTIFIERS, |idents| { idents.insert_s(ct.is, IDENT_IMDB, &x) }); } - if let Some(x) = details.ids.tvdb.clone() { + if let Some(x) = details.ids.tvdb { node = node.update(NO_IDENTIFIERS, |idents| { idents.insert_s(ct.is, IDENT_TVDB, &x.to_string()) }); } - if let Some(x) = details.ids.tmdb.clone() { - if let Some(key) = match trakt_kind { + if let Some(x) = details.ids.tmdb + && let Some(key) = match trakt_kind { TraktKind::Movie => Some(IDENT_TMDB_MOVIE), TraktKind::Show => Some(IDENT_TMDB_SERIES), _ => None, - } { - node = node.update(NO_IDENTIFIERS, |idents| idents.insert(key, &x.to_string())); - }; + } + { + node = node.update(NO_IDENTIFIERS, |idents| idents.insert(key, &x.to_string())); } if let Some(rating) = details.rating { node = node.update(NO_RATINGS, |idents| idents.insert(RTYP_TRAKT, rating)); @@ -587,7 +587,7 @@ impl Trakt { node = node.insert_s(ct.is, NO_INDEX, episode.number); node = node.insert_s(ct.is, NO_TITLE, &episode.title); if let Some(overview) = &episode.overview { - node = node.insert_s(ct.is, NO_DESCRIPTION, &overview); + node = node.insert_s(ct.is, NO_DESCRIPTION, overview); } if let Some(r) = episode.rating { node = node.update(NO_RATINGS, |rats| rats.insert_s(ct.is, RTYP_TRAKT, r)); diff --git a/import/src/plugins/vgmdb.rs b/import/src/plugins/vgmdb.rs index f93e84c..5c02a42 100644 --- a/import/src/plugins/vgmdb.rs +++ b/import/src/plugins/vgmdb.rs @@ -99,10 +99,10 @@ impl Vgmdb { rt: &Handle, ) -> Result<Option<String>> { let html = self.scrape_artist_page(cache, id, rt)?; - if let Some(cap) = RE_IMAGE_URL_FROM_HTML.captures(&str::from_utf8(&html).unwrap()) { - if let Some(url) = cap.name("url").map(|m| m.as_str()) { - return Ok(Some(url.to_string())); - } + if let Some(cap) = RE_IMAGE_URL_FROM_HTML.captures(str::from_utf8(&html).unwrap()) + && let Some(url) = cap.name("url").map(|m| m.as_str()) + { + return Ok(Some(url.to_string())); } Ok(None) } diff --git a/import/src/plugins/wikidata.rs b/import/src/plugins/wikidata.rs index 5b79592..3ef51f2 100644 --- a/import/src/plugins/wikidata.rs +++ b/import/src/plugins/wikidata.rs @@ -101,17 +101,17 @@ impl Wikidata { pub fn query_image_path(&self, cache: &Cache, id: &str, rt: &Handle) -> Result<Option<String>> { let response = self.query(cache, id, rt)?; - if let Some(entity) = response.entities.get(id) { - if let Some(images) = entity.claims.get(properties::IMAGE) { - for image in images { - if image.mainsnak.datatype != "commonsMedia" { - bail!("image is of type {:?}", image.mainsnak.datatype); - } - if let Some(dv) = &image.mainsnak.datavalue { - if let Value::String(filename) = &dv.value { - return Ok(Some(filename.to_owned())); - } - } + if let Some(entity) = response.entities.get(id) + && let Some(images) = entity.claims.get(properties::IMAGE) + { + for image in images { + if image.mainsnak.datatype != "commonsMedia" { + bail!("image is of type {:?}", image.mainsnak.datatype); + } + if let Some(dv) = &image.mainsnak.datavalue + && let Value::String(filename) = &dv.value + { + return Ok(Some(filename.to_owned())); } } } |