aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cargo.lock18
-rw-r--r--crates/assists/Cargo.toml1
-rw-r--r--crates/assists/src/assist_config.rs2
-rw-r--r--crates/assists/src/ast_transform.rs2
-rw-r--r--crates/assists/src/handlers/auto_import.rs2
-rw-r--r--crates/assists/src/handlers/extract_struct_from_enum_variant.rs6
-rw-r--r--crates/assists/src/handlers/fill_match_arms.rs4
-rw-r--r--crates/assists/src/handlers/generate_from_impl_for_enum.rs2
-rw-r--r--crates/assists/src/handlers/merge_imports.rs2
-rw-r--r--crates/assists/src/handlers/qualify_path.rs2
-rw-r--r--crates/assists/src/handlers/replace_derive_with_manual_impl.rs2
-rw-r--r--crates/assists/src/handlers/replace_qualified_name_with_use.rs2
-rw-r--r--crates/completion/Cargo.toml1
-rw-r--r--crates/completion/src/completions/record.rs4
-rw-r--r--crates/completion/src/completions/unqualified_path.rs2
-rw-r--r--crates/completion/src/config.rs2
-rw-r--r--crates/completion/src/item.rs2
-rw-r--r--crates/completion/src/render.rs2
-rw-r--r--crates/ide/Cargo.toml1
-rw-r--r--crates/ide/src/inlay_hints.rs4
-rw-r--r--crates/ide_db/Cargo.toml3
-rw-r--r--crates/ide_db/src/helpers.rs (renamed from crates/ide_helpers/src/lib.rs)2
-rw-r--r--crates/ide_db/src/helpers/insert_use.rs (renamed from crates/ide_helpers/src/insert_use.rs)2
-rw-r--r--crates/ide_db/src/lib.rs1
-rw-r--r--crates/ide_helpers/Cargo.toml23
-rw-r--r--crates/rust-analyzer/Cargo.toml3
-rw-r--r--crates/rust-analyzer/src/config.rs2
27 files changed, 29 insertions, 70 deletions
diff --git a/Cargo.lock b/Cargo.lock
index e7d1782cc..f50e9edd6 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -53,7 +53,6 @@ dependencies = [
53 "either", 53 "either",
54 "hir", 54 "hir",
55 "ide_db", 55 "ide_db",
56 "ide_helpers",
57 "itertools", 56 "itertools",
58 "profile", 57 "profile",
59 "rustc-hash", 58 "rustc-hash",
@@ -259,7 +258,6 @@ dependencies = [
259 "expect-test", 258 "expect-test",
260 "hir", 259 "hir",
261 "ide_db", 260 "ide_db",
262 "ide_helpers",
263 "itertools", 261 "itertools",
264 "log", 262 "log",
265 "profile", 263 "profile",
@@ -658,7 +656,6 @@ dependencies = [
658 "expect-test", 656 "expect-test",
659 "hir", 657 "hir",
660 "ide_db", 658 "ide_db",
661 "ide_helpers",
662 "indexmap", 659 "indexmap",
663 "itertools", 660 "itertools",
664 "log", 661 "log",
@@ -684,6 +681,7 @@ dependencies = [
684 "expect-test", 681 "expect-test",
685 "fst", 682 "fst",
686 "hir", 683 "hir",
684 "itertools",
687 "log", 685 "log",
688 "once_cell", 686 "once_cell",
689 "profile", 687 "profile",
@@ -696,19 +694,6 @@ dependencies = [
696] 694]
697 695
698[[package]] 696[[package]]
699name = "ide_helpers"
700version = "0.0.0"
701dependencies = [
702 "either",
703 "hir",
704 "ide_db",
705 "itertools",
706 "profile",
707 "syntax",
708 "test_utils",
709]
710
711[[package]]
712name = "idna" 697name = "idna"
713version = "0.2.0" 698version = "0.2.0"
714source = "registry+https://github.com/rust-lang/crates.io-index" 699source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1376,7 +1361,6 @@ dependencies = [
1376 "hir_ty", 1361 "hir_ty",
1377 "ide", 1362 "ide",
1378 "ide_db", 1363 "ide_db",
1379 "ide_helpers",
1380 "itertools", 1364 "itertools",
1381 "jod-thread", 1365 "jod-thread",
1382 "log", 1366 "log",
diff --git a/crates/assists/Cargo.toml b/crates/assists/Cargo.toml
index 91d9b6e3f..3fd8327d6 100644
--- a/crates/assists/Cargo.toml
+++ b/crates/assists/Cargo.toml
@@ -21,4 +21,3 @@ profile = { path = "../profile", version = "0.0.0" }
21ide_db = { path = "../ide_db", version = "0.0.0" } 21ide_db = { path = "../ide_db", version = "0.0.0" }
22hir = { path = "../hir", version = "0.0.0" } 22hir = { path = "../hir", version = "0.0.0" }
23test_utils = { path = "../test_utils", version = "0.0.0" } 23test_utils = { path = "../test_utils", version = "0.0.0" }
24ide_helpers = { path = "../ide_helpers", version = "0.0.0" }
diff --git a/crates/assists/src/assist_config.rs b/crates/assists/src/assist_config.rs
index 6d9934e93..786224cfa 100644
--- a/crates/assists/src/assist_config.rs
+++ b/crates/assists/src/assist_config.rs
@@ -5,7 +5,7 @@
5//! assists if we are allowed to. 5//! assists if we are allowed to.
6 6
7use hir::PrefixKind; 7use hir::PrefixKind;
8use ide_helpers::insert_use::MergeBehaviour; 8use ide_db::helpers::insert_use::MergeBehaviour;
9 9
10use crate::AssistKind; 10use crate::AssistKind;
11 11
diff --git a/crates/assists/src/ast_transform.rs b/crates/assists/src/ast_transform.rs
index 95b060599..66e4634b1 100644
--- a/crates/assists/src/ast_transform.rs
+++ b/crates/assists/src/ast_transform.rs
@@ -1,6 +1,6 @@
1//! `AstTransformer`s are functions that replace nodes in an AST and can be easily combined. 1//! `AstTransformer`s are functions that replace nodes in an AST and can be easily combined.
2use hir::{HirDisplay, PathResolution, SemanticsScope}; 2use hir::{HirDisplay, PathResolution, SemanticsScope};
3use ide_helpers::mod_path_to_ast; 3use ide_db::helpers::mod_path_to_ast;
4use rustc_hash::FxHashMap; 4use rustc_hash::FxHashMap;
5use syntax::{ 5use syntax::{
6 algo::SyntaxRewriter, 6 algo::SyntaxRewriter,
diff --git a/crates/assists/src/handlers/auto_import.rs b/crates/assists/src/handlers/auto_import.rs
index 0b2d508d5..bd5bba646 100644
--- a/crates/assists/src/handlers/auto_import.rs
+++ b/crates/assists/src/handlers/auto_import.rs
@@ -1,4 +1,4 @@
1use ide_helpers::{ 1use ide_db::helpers::{
2 insert_use::{insert_use, ImportScope}, 2 insert_use::{insert_use, ImportScope},
3 mod_path_to_ast, 3 mod_path_to_ast,
4}; 4};
diff --git a/crates/assists/src/handlers/extract_struct_from_enum_variant.rs b/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
index fddd5354a..d85767b4e 100644
--- a/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
+++ b/crates/assists/src/handlers/extract_struct_from_enum_variant.rs
@@ -2,11 +2,11 @@ use std::iter;
2 2
3use either::Either; 3use either::Either;
4use hir::{AsName, EnumVariant, Module, ModuleDef, Name}; 4use hir::{AsName, EnumVariant, Module, ModuleDef, Name};
5use ide_db::{defs::Definition, search::Reference, RootDatabase}; 5use ide_db::helpers::{
6use ide_helpers::{
7 insert_use::{insert_use, ImportScope}, 6 insert_use::{insert_use, ImportScope},
8 mod_path_to_ast, 7 mod_path_to_ast,
9}; 8};
9use ide_db::{defs::Definition, search::Reference, RootDatabase};
10use rustc_hash::{FxHashMap, FxHashSet}; 10use rustc_hash::{FxHashMap, FxHashSet};
11use syntax::{ 11use syntax::{
12 algo::{find_node_at_offset, SyntaxRewriter}, 12 algo::{find_node_at_offset, SyntaxRewriter},
@@ -237,7 +237,7 @@ fn update_reference(
237 237
238#[cfg(test)] 238#[cfg(test)]
239mod tests { 239mod tests {
240 use ide_helpers::FamousDefs; 240 use ide_db::helpers::FamousDefs;
241 241
242 use crate::tests::{check_assist, check_assist_not_applicable}; 242 use crate::tests::{check_assist, check_assist_not_applicable};
243 243
diff --git a/crates/assists/src/handlers/fill_match_arms.rs b/crates/assists/src/handlers/fill_match_arms.rs
index bd42e0f16..ef12ef0cf 100644
--- a/crates/assists/src/handlers/fill_match_arms.rs
+++ b/crates/assists/src/handlers/fill_match_arms.rs
@@ -1,8 +1,8 @@
1use std::iter; 1use std::iter;
2 2
3use hir::{Adt, HasSource, ModuleDef, Semantics}; 3use hir::{Adt, HasSource, ModuleDef, Semantics};
4use ide_db::helpers::{mod_path_to_ast, FamousDefs};
4use ide_db::RootDatabase; 5use ide_db::RootDatabase;
5use ide_helpers::{mod_path_to_ast, FamousDefs};
6use itertools::Itertools; 6use itertools::Itertools;
7use syntax::ast::{self, make, AstNode, MatchArm, NameOwner, Pat}; 7use syntax::ast::{self, make, AstNode, MatchArm, NameOwner, Pat};
8use test_utils::mark; 8use test_utils::mark;
@@ -213,7 +213,7 @@ fn build_pat(db: &RootDatabase, module: hir::Module, var: hir::EnumVariant) -> O
213 213
214#[cfg(test)] 214#[cfg(test)]
215mod tests { 215mod tests {
216 use ide_helpers::FamousDefs; 216 use ide_db::helpers::FamousDefs;
217 use test_utils::mark; 217 use test_utils::mark;
218 218
219 use crate::tests::{check_assist, check_assist_not_applicable, check_assist_target}; 219 use crate::tests::{check_assist, check_assist_not_applicable, check_assist_target};
diff --git a/crates/assists/src/handlers/generate_from_impl_for_enum.rs b/crates/assists/src/handlers/generate_from_impl_for_enum.rs
index 01b14d94d..3c374e5d9 100644
--- a/crates/assists/src/handlers/generate_from_impl_for_enum.rs
+++ b/crates/assists/src/handlers/generate_from_impl_for_enum.rs
@@ -1,5 +1,5 @@
1use ide_db::helpers::FamousDefs;
1use ide_db::RootDatabase; 2use ide_db::RootDatabase;
2use ide_helpers::FamousDefs;
3use syntax::ast::{self, AstNode, NameOwner}; 3use syntax::ast::{self, AstNode, NameOwner};
4use test_utils::mark; 4use test_utils::mark;
5 5
diff --git a/crates/assists/src/handlers/merge_imports.rs b/crates/assists/src/handlers/merge_imports.rs
index 8207f0e6e..b7e853994 100644
--- a/crates/assists/src/handlers/merge_imports.rs
+++ b/crates/assists/src/handlers/merge_imports.rs
@@ -1,4 +1,4 @@
1use ide_helpers::insert_use::{try_merge_imports, try_merge_trees, MergeBehaviour}; 1use ide_db::helpers::insert_use::{try_merge_imports, try_merge_trees, MergeBehaviour};
2use syntax::{ 2use syntax::{
3 algo::{neighbor, SyntaxRewriter}, 3 algo::{neighbor, SyntaxRewriter},
4 ast, AstNode, 4 ast, AstNode,
diff --git a/crates/assists/src/handlers/qualify_path.rs b/crates/assists/src/handlers/qualify_path.rs
index c0ee7ea0b..6f9810fe8 100644
--- a/crates/assists/src/handlers/qualify_path.rs
+++ b/crates/assists/src/handlers/qualify_path.rs
@@ -1,8 +1,8 @@
1use std::iter; 1use std::iter;
2 2
3use hir::AsName; 3use hir::AsName;
4use ide_db::helpers::mod_path_to_ast;
4use ide_db::RootDatabase; 5use ide_db::RootDatabase;
5use ide_helpers::mod_path_to_ast;
6use syntax::{ 6use syntax::{
7 ast, 7 ast,
8 ast::{make, ArgListOwner}, 8 ast::{make, ArgListOwner},
diff --git a/crates/assists/src/handlers/replace_derive_with_manual_impl.rs b/crates/assists/src/handlers/replace_derive_with_manual_impl.rs
index fe262377c..4d6a1956b 100644
--- a/crates/assists/src/handlers/replace_derive_with_manual_impl.rs
+++ b/crates/assists/src/handlers/replace_derive_with_manual_impl.rs
@@ -1,5 +1,5 @@
1use ide_db::helpers::mod_path_to_ast;
1use ide_db::imports_locator; 2use ide_db::imports_locator;
2use ide_helpers::mod_path_to_ast;
3use itertools::Itertools; 3use itertools::Itertools;
4use syntax::{ 4use syntax::{
5 ast::{self, make, AstNode}, 5 ast::{self, make, AstNode},
diff --git a/crates/assists/src/handlers/replace_qualified_name_with_use.rs b/crates/assists/src/handlers/replace_qualified_name_with_use.rs
index 5e5c41a6f..8bdf9eea5 100644
--- a/crates/assists/src/handlers/replace_qualified_name_with_use.rs
+++ b/crates/assists/src/handlers/replace_qualified_name_with_use.rs
@@ -1,4 +1,4 @@
1use ide_helpers::insert_use::{insert_use, ImportScope}; 1use ide_db::helpers::insert_use::{insert_use, ImportScope};
2use syntax::{algo::SyntaxRewriter, ast, match_ast, AstNode, SyntaxNode}; 2use syntax::{algo::SyntaxRewriter, ast, match_ast, AstNode, SyntaxNode};
3use test_utils::mark; 3use test_utils::mark;
4 4
diff --git a/crates/completion/Cargo.toml b/crates/completion/Cargo.toml
index 102de33f8..35e169a28 100644
--- a/crates/completion/Cargo.toml
+++ b/crates/completion/Cargo.toml
@@ -22,7 +22,6 @@ base_db = { path = "../base_db", version = "0.0.0" }
22ide_db = { path = "../ide_db", version = "0.0.0" } 22ide_db = { path = "../ide_db", version = "0.0.0" }
23profile = { path = "../profile", version = "0.0.0" } 23profile = { path = "../profile", version = "0.0.0" }
24test_utils = { path = "../test_utils", version = "0.0.0" } 24test_utils = { path = "../test_utils", version = "0.0.0" }
25ide_helpers = { path = "../ide_helpers", version = "0.0.0" }
26 25
27# completions crate should depend only on the top-level `hir` package. if you need 26# completions crate should depend only on the top-level `hir` package. if you need
28# something from some `hir_xxx` subpackage, reexport the API via `hir`. 27# something from some `hir_xxx` subpackage, reexport the API via `hir`.
diff --git a/crates/completion/src/completions/record.rs b/crates/completion/src/completions/record.rs
index 218a1923c..eaa44c97d 100644
--- a/crates/completion/src/completions/record.rs
+++ b/crates/completion/src/completions/record.rs
@@ -1,5 +1,5 @@
1//! Complete fields in record literals and patterns. 1//! Complete fields in record literals and patterns.
2use ide_helpers::FamousDefs; 2use ide_db::helpers::FamousDefs;
3use syntax::ast::Expr; 3use syntax::ast::Expr;
4 4
5use crate::{ 5use crate::{
@@ -46,7 +46,7 @@ pub(crate) fn complete_record(acc: &mut Completions, ctx: &CompletionContext) ->
46#[cfg(test)] 46#[cfg(test)]
47mod tests { 47mod tests {
48 use expect_test::{expect, Expect}; 48 use expect_test::{expect, Expect};
49 use ide_helpers::FamousDefs; 49 use ide_db::helpers::FamousDefs;
50 50
51 use crate::{test_utils::completion_list, CompletionKind}; 51 use crate::{test_utils::completion_list, CompletionKind};
52 52
diff --git a/crates/completion/src/completions/unqualified_path.rs b/crates/completion/src/completions/unqualified_path.rs
index db5dbb7dd..81691cd7f 100644
--- a/crates/completion/src/completions/unqualified_path.rs
+++ b/crates/completion/src/completions/unqualified_path.rs
@@ -2,8 +2,8 @@
2 2
3use either::Either; 3use either::Either;
4use hir::{Adt, ModuleDef, ScopeDef, Type}; 4use hir::{Adt, ModuleDef, ScopeDef, Type};
5use ide_db::helpers::insert_use::ImportScope;
5use ide_db::imports_locator; 6use ide_db::imports_locator;
6use ide_helpers::insert_use::ImportScope;
7use syntax::AstNode; 7use syntax::AstNode;
8use test_utils::mark; 8use test_utils::mark;
9 9
diff --git a/crates/completion/src/config.rs b/crates/completion/src/config.rs
index 1995b0754..654a76f7b 100644
--- a/crates/completion/src/config.rs
+++ b/crates/completion/src/config.rs
@@ -4,7 +4,7 @@
4//! module, and we use to statically check that we only produce snippet 4//! module, and we use to statically check that we only produce snippet
5//! completions if we are allowed to. 5//! completions if we are allowed to.
6 6
7use ide_helpers::insert_use::MergeBehaviour; 7use ide_db::helpers::insert_use::MergeBehaviour;
8 8
9#[derive(Clone, Debug, PartialEq, Eq)] 9#[derive(Clone, Debug, PartialEq, Eq)]
10pub struct CompletionConfig { 10pub struct CompletionConfig {
diff --git a/crates/completion/src/item.rs b/crates/completion/src/item.rs
index 3bfee1b3f..e85549fef 100644
--- a/crates/completion/src/item.rs
+++ b/crates/completion/src/item.rs
@@ -3,7 +3,7 @@
3use std::fmt; 3use std::fmt;
4 4
5use hir::{Documentation, ModPath, Mutability}; 5use hir::{Documentation, ModPath, Mutability};
6use ide_helpers::{ 6use ide_db::helpers::{
7 insert_use::{self, ImportScope, MergeBehaviour}, 7 insert_use::{self, ImportScope, MergeBehaviour},
8 mod_path_to_ast, 8 mod_path_to_ast,
9}; 9};
diff --git a/crates/completion/src/render.rs b/crates/completion/src/render.rs
index e84aef0e4..504757a6a 100644
--- a/crates/completion/src/render.rs
+++ b/crates/completion/src/render.rs
@@ -10,8 +10,8 @@ pub(crate) mod type_alias;
10mod builder_ext; 10mod builder_ext;
11 11
12use hir::{Documentation, HasAttrs, HirDisplay, ModPath, Mutability, ScopeDef, Type}; 12use hir::{Documentation, HasAttrs, HirDisplay, ModPath, Mutability, ScopeDef, Type};
13use ide_db::helpers::insert_use::{ImportScope, MergeBehaviour};
13use ide_db::RootDatabase; 14use ide_db::RootDatabase;
14use ide_helpers::insert_use::{ImportScope, MergeBehaviour};
15use syntax::TextRange; 15use syntax::TextRange;
16use test_utils::mark; 16use test_utils::mark;
17 17
diff --git a/crates/ide/Cargo.toml b/crates/ide/Cargo.toml
index 92d4e5e9f..4d483580d 100644
--- a/crates/ide/Cargo.toml
+++ b/crates/ide/Cargo.toml
@@ -24,7 +24,6 @@ stdx = { path = "../stdx", version = "0.0.0" }
24syntax = { path = "../syntax", version = "0.0.0" } 24syntax = { path = "../syntax", version = "0.0.0" }
25text_edit = { path = "../text_edit", version = "0.0.0" } 25text_edit = { path = "../text_edit", version = "0.0.0" }
26ide_db = { path = "../ide_db", version = "0.0.0" } 26ide_db = { path = "../ide_db", version = "0.0.0" }
27ide_helpers = { path = "../ide_helpers", version = "0.0.0" }
28cfg = { path = "../cfg", version = "0.0.0" } 27cfg = { path = "../cfg", version = "0.0.0" }
29profile = { path = "../profile", version = "0.0.0" } 28profile = { path = "../profile", version = "0.0.0" }
30test_utils = { path = "../test_utils", version = "0.0.0" } 29test_utils = { path = "../test_utils", version = "0.0.0" }
diff --git a/crates/ide/src/inlay_hints.rs b/crates/ide/src/inlay_hints.rs
index 9c8bb7c45..65df7979c 100644
--- a/crates/ide/src/inlay_hints.rs
+++ b/crates/ide/src/inlay_hints.rs
@@ -1,7 +1,7 @@
1use either::Either; 1use either::Either;
2use hir::{known, Callable, HirDisplay, Semantics}; 2use hir::{known, Callable, HirDisplay, Semantics};
3use ide_db::helpers::FamousDefs;
3use ide_db::RootDatabase; 4use ide_db::RootDatabase;
4use ide_helpers::FamousDefs;
5use stdx::to_lower_snake_case; 5use stdx::to_lower_snake_case;
6use syntax::{ 6use syntax::{
7 ast::{self, ArgListOwner, AstNode, NameOwner}, 7 ast::{self, ArgListOwner, AstNode, NameOwner},
@@ -428,7 +428,7 @@ fn get_callable(sema: &Semantics<RootDatabase>, expr: &ast::Expr) -> Option<hir:
428#[cfg(test)] 428#[cfg(test)]
429mod tests { 429mod tests {
430 use expect_test::{expect, Expect}; 430 use expect_test::{expect, Expect};
431 use ide_helpers::FamousDefs; 431 use ide_db::helpers::FamousDefs;
432 use test_utils::extract_annotations; 432 use test_utils::extract_annotations;
433 433
434 use crate::{fixture, inlay_hints::InlayHintsConfig}; 434 use crate::{fixture, inlay_hints::InlayHintsConfig};
diff --git a/crates/ide_db/Cargo.toml b/crates/ide_db/Cargo.toml
index 72a9212f1..0ad6e1000 100644
--- a/crates/ide_db/Cargo.toml
+++ b/crates/ide_db/Cargo.toml
@@ -18,7 +18,8 @@ rayon = "1.5.0"
18fst = { version = "0.4", default-features = false } 18fst = { version = "0.4", default-features = false }
19rustc-hash = "1.1.0" 19rustc-hash = "1.1.0"
20once_cell = "1.3.1" 20once_cell = "1.3.1"
21either = "1.5.3" 21either = "1.6.1"
22itertools = "0.9.0"
22 23
23stdx = { path = "../stdx", version = "0.0.0" } 24stdx = { path = "../stdx", version = "0.0.0" }
24syntax = { path = "../syntax", version = "0.0.0" } 25syntax = { path = "../syntax", version = "0.0.0" }
diff --git a/crates/ide_helpers/src/lib.rs b/crates/ide_db/src/helpers.rs
index ad4404b19..d988588ff 100644
--- a/crates/ide_helpers/src/lib.rs
+++ b/crates/ide_db/src/helpers.rs
@@ -1,6 +1,6 @@
1//! A module with ide helpers for high-level ide features. 1//! A module with ide helpers for high-level ide features.
2use crate::RootDatabase;
2use hir::{Crate, Enum, Module, ScopeDef, Semantics, Trait}; 3use hir::{Crate, Enum, Module, ScopeDef, Semantics, Trait};
3use ide_db::RootDatabase;
4use syntax::ast::{self, make}; 4use syntax::ast::{self, make};
5 5
6pub mod insert_use; 6pub mod insert_use;
diff --git a/crates/ide_helpers/src/insert_use.rs b/crates/ide_db/src/helpers/insert_use.rs
index 795009eb1..67e800fad 100644
--- a/crates/ide_helpers/src/insert_use.rs
+++ b/crates/ide_db/src/helpers/insert_use.rs
@@ -1,8 +1,8 @@
1//! Handle syntactic aspects of inserting a new `use`. 1//! Handle syntactic aspects of inserting a new `use`.
2use std::{cmp::Ordering, iter::successors}; 2use std::{cmp::Ordering, iter::successors};
3 3
4use crate::RootDatabase;
4use hir::Semantics; 5use hir::Semantics;
5use ide_db::RootDatabase;
6use itertools::{EitherOrBoth, Itertools}; 6use itertools::{EitherOrBoth, Itertools};
7use syntax::{ 7use syntax::{
8 algo::SyntaxRewriter, 8 algo::SyntaxRewriter,
diff --git a/crates/ide_db/src/lib.rs b/crates/ide_db/src/lib.rs
index 05139a651..fceaa089a 100644
--- a/crates/ide_db/src/lib.rs
+++ b/crates/ide_db/src/lib.rs
@@ -13,6 +13,7 @@ pub mod source_change;
13pub mod ty_filter; 13pub mod ty_filter;
14pub mod traits; 14pub mod traits;
15pub mod call_info; 15pub mod call_info;
16pub mod helpers;
16 17
17use std::{fmt, sync::Arc}; 18use std::{fmt, sync::Arc};
18 19
diff --git a/crates/ide_helpers/Cargo.toml b/crates/ide_helpers/Cargo.toml
deleted file mode 100644
index c5065b22b..000000000
--- a/crates/ide_helpers/Cargo.toml
+++ /dev/null
@@ -1,23 +0,0 @@
1[package]
2name = "ide_helpers"
3version = "0.0.0"
4description = "A set of helper methods shared between various ide-level modules"
5license = "MIT OR Apache-2.0"
6authors = ["rust-analyzer developers"]
7edition = "2018"
8
9[lib]
10doctest = false
11
12[features]
13wasm = []
14
15[dependencies]
16either = "1.6.1"
17itertools = "0.9.0"
18
19syntax = { path = "../syntax", version = "0.0.0" }
20ide_db = { path = "../ide_db", version = "0.0.0" }
21hir = { path = "../hir", version = "0.0.0" }
22profile = { path = "../profile", version = "0.0.0" }
23test_utils = { path = "../test_utils", version = "0.0.0" }
diff --git a/crates/rust-analyzer/Cargo.toml b/crates/rust-analyzer/Cargo.toml
index 3afcd2eda..08559b53a 100644
--- a/crates/rust-analyzer/Cargo.toml
+++ b/crates/rust-analyzer/Cargo.toml
@@ -39,7 +39,7 @@ tracing-tree = { version = "0.1.4" }
39stdx = { path = "../stdx", version = "0.0.0" } 39stdx = { path = "../stdx", version = "0.0.0" }
40flycheck = { path = "../flycheck", version = "0.0.0" } 40flycheck = { path = "../flycheck", version = "0.0.0" }
41ide = { path = "../ide", version = "0.0.0" } 41ide = { path = "../ide", version = "0.0.0" }
42ide_helpers = { path = "../ide_helpers", version = "0.0.0" } 42ide_db = { path = "../ide_db", version = "0.0.0" }
43profile = { path = "../profile", version = "0.0.0" } 43profile = { path = "../profile", version = "0.0.0" }
44project_model = { path = "../project_model", version = "0.0.0" } 44project_model = { path = "../project_model", version = "0.0.0" }
45syntax = { path = "../syntax", version = "0.0.0" } 45syntax = { path = "../syntax", version = "0.0.0" }
@@ -50,7 +50,6 @@ cfg = { path = "../cfg", version = "0.0.0" }
50toolchain = { path = "../toolchain", version = "0.0.0" } 50toolchain = { path = "../toolchain", version = "0.0.0" }
51 51
52# This should only be used in CLI 52# This should only be used in CLI
53ide_db = { path = "../ide_db", version = "0.0.0" }
54ssr = { path = "../ssr", version = "0.0.0" } 53ssr = { path = "../ssr", version = "0.0.0" }
55hir = { path = "../hir", version = "0.0.0" } 54hir = { path = "../hir", version = "0.0.0" }
56hir_def = { path = "../hir_def", version = "0.0.0" } 55hir_def = { path = "../hir_def", version = "0.0.0" }
diff --git a/crates/rust-analyzer/src/config.rs b/crates/rust-analyzer/src/config.rs
index d7b711f94..30299a465 100644
--- a/crates/rust-analyzer/src/config.rs
+++ b/crates/rust-analyzer/src/config.rs
@@ -12,7 +12,7 @@ use std::{convert::TryFrom, ffi::OsString, path::PathBuf};
12use flycheck::FlycheckConfig; 12use flycheck::FlycheckConfig;
13use hir::PrefixKind; 13use hir::PrefixKind;
14use ide::{AssistConfig, CompletionConfig, DiagnosticsConfig, HoverConfig, InlayHintsConfig}; 14use ide::{AssistConfig, CompletionConfig, DiagnosticsConfig, HoverConfig, InlayHintsConfig};
15use ide_helpers::insert_use::MergeBehaviour; 15use ide_db::helpers::insert_use::MergeBehaviour;
16use lsp_types::{ClientCapabilities, MarkupKind}; 16use lsp_types::{ClientCapabilities, MarkupKind};
17use project_model::{CargoConfig, ProjectJson, ProjectJsonData, ProjectManifest}; 17use project_model::{CargoConfig, ProjectJson, ProjectJsonData, ProjectManifest};
18use rustc_hash::FxHashSet; 18use rustc_hash::FxHashSet;