implement channel limit option; increase minor version

This commit is contained in:
yggverse 2026-04-07 11:52:19 +03:00
parent 532f87311b
commit f52fe3a710
5 changed files with 9 additions and 3 deletions

2
Cargo.lock generated
View file

@ -2448,7 +2448,7 @@ dependencies = [
[[package]]
name = "ytd"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"anyhow",
"chrono",

View file

@ -1,6 +1,6 @@
[package]
name = "ytd"
version = "0.2.1"
version = "0.3.0"
edition = "2024"
license = "MIT"
readme = "README.md"

View file

@ -16,6 +16,7 @@ sleep = 1
is_live = false
is_short = false
is_upcoming = false
# limit = 1
# Channel item commands to apply (in order)

View file

@ -10,4 +10,5 @@ pub struct Channel {
pub is_live: bool,
pub is_short: bool,
pub is_upcoming: bool,
pub limit: Option<usize>,
}

View file

@ -43,7 +43,11 @@ async fn main() {
Ok(result) => {
let items = result.content.items;
debug!("received {:?} items to handle...", items.len());
for item in items {
for (i, item) in items.into_iter().enumerate() {
if channel.limit.is_some_and(|l| i > l) {
debug!("items limit for channel `{c}` reached at {i}; break.");
break;
}
match database.get(&item.id) {
Ok(id) => {
if id.is_some() {