Skip to content

Commit 48f84a7

Browse files
bors[bot]Veykril
andauthored
Merge #10114
10114: fix: Deduplicate imports for qualify_path r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
2 parents 93f3c17 + 8e8ea53 commit 48f84a7

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

crates/ide_assists/src/handlers/auto_import.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,12 +89,13 @@ pub(crate) fn auto_import(acc: &mut Assists, ctx: &AssistContext) -> Option<()>
8989
if proposed_imports.is_empty() {
9090
return None;
9191
}
92-
// we aren't interested in different namespaces
93-
proposed_imports.dedup_by(|a, b| a.import_path == b.import_path);
9492

9593
let range = ctx.sema.original_range(&syntax_under_caret).range;
9694
let group_label = group_label(import_assets.import_candidate());
9795
let scope = ImportScope::find_insert_use_container_with_macros(&syntax_under_caret, &ctx.sema)?;
96+
97+
// we aren't interested in different namespaces
98+
proposed_imports.dedup_by(|a, b| a.import_path == b.import_path);
9899
for import in proposed_imports {
99100
acc.add_group(
100101
&group_label,

crates/ide_assists/src/handlers/qualify_path.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ use crate::{
3737
// ```
3838
pub(crate) fn qualify_path(acc: &mut Assists, ctx: &AssistContext) -> Option<()> {
3939
let (import_assets, syntax_under_caret) = find_importable_node(ctx)?;
40-
let proposed_imports = import_assets.search_for_relative_paths(&ctx.sema);
40+
let mut proposed_imports = import_assets.search_for_relative_paths(&ctx.sema);
4141
if proposed_imports.is_empty() {
4242
return None;
4343
}
@@ -70,6 +70,9 @@ pub(crate) fn qualify_path(acc: &mut Assists, ctx: &AssistContext) -> Option<()>
7070
}
7171
};
7272

73+
// we aren't interested in different namespaces
74+
proposed_imports.dedup_by(|a, b| a.import_path == b.import_path);
75+
7376
let group_label = group_label(candidate);
7477
for import in proposed_imports {
7578
acc.add_group(

0 commit comments

Comments
 (0)