Skip to content

Commit

Permalink
fix(core): fix cli filters regression in 2340ea9
Browse files Browse the repository at this point in the history
  • Loading branch information
JamieMason committed Feb 9, 2025
1 parent a65dd1e commit 6d8ee61
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 19 deletions.
1 change: 0 additions & 1 deletion src/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ impl Cli {
Self {
check: matches!(&subcommand, Subcommand::Lint) || matches!(&subcommand, Subcommand::Format) && matches.get_flag("check"),
cwd: env::current_dir().unwrap(),
// @TODO
filter: get_filters(matches),
disable_ansi: matches.get_flag("no-ansi"),
inspect_formatting: matches!(&subcommand, Subcommand::Format),
Expand Down
7 changes: 5 additions & 2 deletions src/context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,11 @@ impl Context {
descriptor.internal_name = group.label.clone();
}

if let Some(cli_group) = &config.cli.filter {
descriptor.matches_cli_filter = cli_group.can_add(&descriptor);
match &config.cli.filter {
Some(cli_group) => {
descriptor.matches_cli_filter = cli_group.can_add(&descriptor);
}
None => descriptor.matches_cli_filter = true,
}

let semver_group = semver_groups.iter().find(|group| group.selector.can_add(&descriptor));
Expand Down
2 changes: 1 addition & 1 deletion src/dependency.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ impl Dependency {
expected: RefCell::new(None),
instances: RefCell::new(vec![]),
local_instance: RefCell::new(None),
matches_cli_filter: true,
matches_cli_filter: false,
internal_name,
pinned_specifier,
snapped_to_packages,
Expand Down
8 changes: 4 additions & 4 deletions src/packages.rs
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ impl Packages {
on_instance(InstanceDescriptor {
dependency_type: dependency_type.clone(),
internal_name: name.to_string(),
matches_cli_filter: true,
matches_cli_filter: false,
name: name.to_string(),
package: Rc::clone(package),
specifier: Specifier::new(&raw_specifier, local_versions.get(&name)),
Expand All @@ -110,7 +110,7 @@ impl Packages {
on_instance(InstanceDescriptor {
dependency_type: dependency_type.clone(),
internal_name: name.to_string(),
matches_cli_filter: true,
matches_cli_filter: false,
name: name.to_string(),
package: Rc::clone(package),
specifier: Specifier::new(raw_specifier, local_versions.get(name)),
Expand All @@ -123,7 +123,7 @@ impl Packages {
on_instance(InstanceDescriptor {
dependency_type: dependency_type.clone(),
internal_name: dependency_type.name.clone(),
matches_cli_filter: true,
matches_cli_filter: false,
name: dependency_type.name.clone(),
package: Rc::clone(package),
specifier: Specifier::new(&raw_specifier, local_versions.get(&dependency_type.name)),
Expand All @@ -137,7 +137,7 @@ impl Packages {
on_instance(InstanceDescriptor {
dependency_type: dependency_type.clone(),
internal_name: name.to_string(),
matches_cli_filter: true,
matches_cli_filter: false,
name: name.to_string(),
package: Rc::clone(package),
specifier: Specifier::new(&raw_specifier, local_versions.get(&name)),
Expand Down
22 changes: 11 additions & 11 deletions src/version_group.rs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ impl VersionGroup {
pub fn get_catch_all() -> VersionGroup {
VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector: GroupSelector::new(
/* all_packages: */ &Packages::new(),
Expand All @@ -68,9 +68,9 @@ impl VersionGroup {
/* snap_to: */ self.snap_to.clone(),
)
});
if !instance.matches_cli_filter {
self.matches_cli_filter = false;
dependency.matches_cli_filter = false;
if instance.matches_cli_filter {
self.matches_cli_filter = true;
dependency.matches_cli_filter = true;
}
dependency.add_instance(Rc::clone(&instance));
std::mem::drop(dependencies);
Expand All @@ -90,7 +90,7 @@ impl VersionGroup {
if let Some(true) = group.is_banned {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: None,
Expand All @@ -100,7 +100,7 @@ impl VersionGroup {
if let Some(true) = group.is_ignored {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: None,
Expand All @@ -110,7 +110,7 @@ impl VersionGroup {
if let Some(pin_version) = &group.pin_version {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: Some(Specifier::new(pin_version, None)),
selector,
snap_to: None,
Expand All @@ -121,7 +121,7 @@ impl VersionGroup {
if policy == "sameRange" {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: None,
Expand All @@ -135,7 +135,7 @@ impl VersionGroup {
if let Some(snap_to) = &group.snap_to {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: Some(
Expand All @@ -156,7 +156,7 @@ impl VersionGroup {
if let Some(prefer_version) = &group.prefer_version {
return VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: None,
Expand All @@ -169,7 +169,7 @@ impl VersionGroup {
}
VersionGroup {
dependencies: RefCell::new(BTreeMap::new()),
matches_cli_filter: true,
matches_cli_filter: false,
pin_version: None,
selector,
snap_to: None,
Expand Down

0 comments on commit 6d8ee61

Please sign in to comment.