aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crates/yt/src/cli.rs23
-rw-r--r--crates/yt/src/main.rs55
-rw-r--r--crates/yt/src/update/mod.rs2
3 files changed, 1 insertions, 79 deletions
diff --git a/crates/yt/src/cli.rs b/crates/yt/src/cli.rs
index dc200eb..cd7ce2f 100644
--- a/crates/yt/src/cli.rs
+++ b/crates/yt/src/cli.rs
@@ -145,32 +145,9 @@ pub(crate) enum Command {
#[arg(short, long)]
max_backlog: Option<usize>,
- /// How many subs were already checked.
- ///
- /// Only used in the progress display in combination with `--grouped`.
- #[arg(short, long, hide = true)]
- current_progress: Option<usize>,
-
- /// How many subs are to be checked.
- ///
- /// Only used in the progress display in combination with `--grouped`.
- #[arg(short, long, hide = true)]
- total_number: Option<usize>,
-
/// The subscriptions to update
#[arg(add = ArgValueCompleter::new(complete_subscription))]
subscriptions: Vec<String>,
-
- /// Perform the updates in blocks.
- ///
- /// This works around the memory leaks in the default update invocation.
- #[arg(
- short,
- long,
- conflicts_with = "total_number",
- conflicts_with = "current_progress"
- )]
- grouped: bool,
},
/// Manipulate subscription
diff --git a/crates/yt/src/main.rs b/crates/yt/src/main.rs
index fcbe0da..f9f48bf 100644
--- a/crates/yt/src/main.rs
+++ b/crates/yt/src/main.rs
@@ -168,9 +168,6 @@ async fn main() -> Result<()> {
Command::Update {
max_backlog,
subscriptions,
- grouped,
- current_progress,
- total_number,
} => {
let all_subs = Subscriptions::get(&app).await?;
@@ -185,57 +182,7 @@ async fn main() -> Result<()> {
let max_backlog = max_backlog.unwrap_or(app.config.update.max_backlog);
- if grouped {
- const CHUNK_SIZE: usize = 50;
-
- assert!(current_progress.is_none() && total_number.is_none());
-
- let subs = {
- if subscriptions.is_empty() {
- all_subs.0.into_iter().map(|sub| sub.0).collect()
- } else {
- subscriptions
- }
- };
-
- let total_number = subs.len();
- let mut current_progress = 0;
- for chunk in subs.chunks(CHUNK_SIZE) {
- info!(
- "$ yt update {}",
- chunk
- .iter()
- .map(|sub_name| format!("{sub_name:#?}"))
- .collect::<Vec<_>>()
- .join(" ")
- );
-
- let status = std::process::Command::new(
- current_exe().context("Failed to get the current exe to re-execute")?,
- )
- .args((0..args.verbosity).map(|_| "-v"))
- .arg("update")
- .args(["--current-progress", current_progress.to_string().as_str()])
- .args(["--total-number", total_number.to_string().as_str()])
- .args(chunk)
- .status()?;
-
- if !status.success() {
- bail!("grouped yt update: Child process failed.");
- }
-
- current_progress += CHUNK_SIZE;
- }
- } else {
- update::update(
- &app,
- max_backlog,
- subscriptions,
- total_number,
- current_progress,
- )
- .await?;
- }
+ update::update(&app, max_backlog, subscriptions).await?;
}
Command::Subscriptions { cmd } => match cmd {
SubscriptionCommand::Add { name, url } => {
diff --git a/crates/yt/src/update/mod.rs b/crates/yt/src/update/mod.rs
index 11e70de..2fb1069 100644
--- a/crates/yt/src/update/mod.rs
+++ b/crates/yt/src/update/mod.rs
@@ -35,8 +35,6 @@ pub(crate) async fn update(
app: &App,
max_backlog: usize,
subscription_names_to_update: Vec<String>,
- total_number: Option<usize>,
- current_progress: Option<usize>,
) -> Result<()> {
let subscriptions = Subscriptions::get(app).await?;