|
|
|
@ -26,23 +26,17 @@ impl super::command::Command for LsRemote {
@@ -26,23 +26,17 @@ impl super::command::Command for LsRemote {
|
|
|
|
|
let mut all_versions = remote_node_index::list(&config.node_dist_mirror, &self.sort)?; |
|
|
|
|
|
|
|
|
|
if let Some(lts) = &self.lts { |
|
|
|
|
all_versions = all_versions |
|
|
|
|
.into_iter() |
|
|
|
|
.filter(|v| match lts { |
|
|
|
|
None => v.lts.is_some(), |
|
|
|
|
Some(lts) => v |
|
|
|
|
.lts |
|
|
|
|
.as_ref() |
|
|
|
|
.is_some_and(|this_lts| this_lts.eq_ignore_ascii_case(lts)), |
|
|
|
|
}) |
|
|
|
|
.collect(); |
|
|
|
|
all_versions.retain(|v| match lts { |
|
|
|
|
None => v.lts.is_some(), |
|
|
|
|
Some(lts) => v |
|
|
|
|
.lts |
|
|
|
|
.as_ref() |
|
|
|
|
.is_some_and(|this_lts| this_lts.eq_ignore_ascii_case(lts)), |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if let Some(filter) = &self.filter { |
|
|
|
|
all_versions = all_versions |
|
|
|
|
.into_iter() |
|
|
|
|
.filter(|v| filter.matches(&v.version, config)) |
|
|
|
|
.collect(); |
|
|
|
|
all_versions.retain(|v| filter.matches(&v.version, config)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for version in &all_versions { |
|
|
|
|