aboutsummaryrefslogtreecommitdiff
path: root/crates/base_db/src
Commit message (Collapse)AuthorAgeFilesLines
* internal: introduce minicore -- a subset of libcore for testingAleksey Kladov2021-06-151-3/+28
|
* internal: move diagnostics to a new crateAleksey Kladov2021-06-141-0/+8
|
* clippy::redudant_borrowMaan20032021-06-131-1/+1
|
* Fix coercion in match with expected typeFlorian Diebold2021-06-121-1/+1
| | | | Plus add infrastructure to test type mismatches without expect.
* Add more profiling for flyimportsKirill Bulatov2021-06-101-0/+1
|
* Merge #8866bors[bot]2021-05-312-91/+2
|\ | | | | | | | | | | | | | | 8866: Update salsa r=matklad a=jonas-schievink This updates salsa to include https://github.com/salsa-rs/salsa/pull/265, and removes all cancellation-related code from rust-analyzer Co-authored-by: Jonas Schievink <[email protected]>
| * Update salsaJonas Schievink2021-05-272-91/+2
| |
* | Thread proc-macro types through the HIRJonas Schievink2021-05-291-1/+1
| |
* | simplifyLukas Wirth2021-05-281-8/+2
|/
* Update `CrateGraph` commentJonas Schievink2021-05-241-5/+9
| | | | | `cfg` flags are now implemented, and crates *may* have names, it doesn't doesn't matter for name resolution
* Add one more profiling span to add_depLaurențiu Nicola2021-04-221-0/+1
|
* Add some more error messages to fixture failure casesLukas Wirth2021-04-171-2/+2
|
* Add an error message to fixture errorsYoshua Wuyts2021-04-171-1/+3
|
* Adjust fixture docs a bitKirill Bulatov2021-04-061-59/+1
|
* internal: track missing `.check_cancelled`Aleksey Kladov2021-03-291-0/+3
|
* Improve readabilityAleksey Kladov2021-03-231-0/+1
|
* Align naming of deps and revdepsAleksey Kladov2021-03-231-4/+1
|
* Align semantics of deps and rev depsAleksey Kladov2021-03-231-2/+2
|
* Compute more mathematically well-rounded notion of transitive depsAleksey Kladov2021-03-231-1/+3
| | | | | | | | By including the crate itself, we make the resulting set closed with respect to `transitve_reveres_dependencies` operation, as it becomes a proper transitive closure. This just feels more proper and mathy. And, indeed, this actually allows us to simplify call sites somewhat.
* a lot of clippy::style fixesMatthias Krüger2021-03-211-1/+1
|
* avoid converting types into themselves via .into() (clippy::useless-conversion)Matthias Krüger2021-03-171-1/+1
| | | | example: let x: String = String::from("hello world").into();
* Don't repeat work in transitive_reverse_dependenciesLukas Wirth2021-03-161-11/+10
|
* Add new_source_root meta to test fixturesLukas Wirth2021-03-161-2/+10
|
* Implement Crate::transitive_reverse_dependenciesLukas Wirth2021-03-151-0/+28
|
* Fixed remaining references to `AnalysisChange` (now: `Change`)Vincent Esche2021-02-281-1/+1
| | | | (The type was renamed/moved in 8716c4cec3a05ba891b20b5f28df69d925b913ad)
* Make more common assist easier to uesAleksey Kladov2021-02-221-1/+10
|
* Fix warnings when running `cargo doc --document-private-items`Joshua Nelson2021-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were the warnings previously: ``` warning: could not parse code block as Rust code --> crates/stdx/src/lib.rs:137:9 | 137 | /// ∀ x in slice[..idx]: pred(x) | _________^ 138 | | /// && ∀ x in slice[idx..]: !pred(x) | |____^ | = note: error from rustc: unknown start of token: \u{2200} warning: 1 warning emitted warning: unresolved link to `package` --> crates/base_db/src/input.rs:181:15 | 181 | /// it's [package].name, can be different for other project types or even | ^^^^^^^ no item named `package` in scope | = note: `#[warn(broken_intra_doc_links)]` on by default = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: unresolved link to `package` --> crates/base_db/src/input.rs:181:15 | 181 | /// it's [package].name, can be different for other project types or even | ^^^^^^^ no item named `package` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: 2 warnings emitted warning: unresolved link to `package` --> crates/base_db/src/input.rs:181:15 | 181 | /// it's [package].name, can be different for other project types or even | ^^^^^^^ no item named `package` in scope | = note: `#[warn(broken_intra_doc_links)]` on by default = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: unresolved link to `package` --> crates/base_db/src/input.rs:181:15 | 181 | /// it's [package].name, can be different for other project types or even | ^^^^^^^ no item named `package` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: 2 warnings emitted ``` This does *not* fix the following warning, because it is actually rust code and rustdoc is being over eager: ``` warning: Rust code block is empty --> crates/parser/src/grammar.rs:16:5 | 16 | //! ``` | _____^ 17 | | //! // test function_with_zero_parameters 18 | | //! // fn foo() {} 19 | | //! ``` | |_______^ | help: mark blocks that do not contain Rust code as text | 16 | //! ```text | ^^^^^^^ ``` https://github.com/rust-lang/rust/pull/79816 should make this configurable so the warning can be `allow`ed.
* Better fixture highlightAleksey Kladov2021-01-071-5/+11
|
* Add support for Rust 2021.Mara Bos2021-01-011-2/+5
|
* Pass crate environment to proc macrosJonas Schievink2020-12-271-2/+10
|
* Move TokenExpander to base_db and rename itJonas Schievink2020-12-272-4/+9
| | | | It's only used to break the dependency to proc_macro_api
* Introduce anchored_pathAleksey Kladov2020-12-091-8/+2
| | | | | They allow to represent paths like `#[path = "C:\path.rs"] mod foo;` in a lossless cross-platform & network-transparent way.
* .Aleksey Kladov2020-12-091-3/+4
|
* Retain types of proc macros and allow attr. macrosJonas Schievink2020-12-072-5/+10
|
* Compress codeAleksey Kladov2020-11-171-2/+18
|
* Deny unreachable-pubAleksey Kladov2020-11-022-5/+3
| | | | | | | | It's very useful when `pub` is equivalent to "this is crate's public API", let's enforce this! Ideally, we should enforce it for local `cargo test`, and only during CI, but that needs https://github.com/rust-lang/cargo/issues/5034.
* More type safety around namesAleksey Kladov2020-10-203-11/+24
|
* Introduce CrateDisplayNameAleksey Kladov2020-10-201-1/+23
|
* Rename declaration_name -> display_nameAleksey Kladov2020-10-201-9/+11
| | | | | | | | Declaration names sounds like a name of declaration -- something you can use for analysis. It empathically isn't, and is just a label displayed in various UI. It's important not to confuse the two, least we accidentally mix semantics with UI (I believe, there's already a case of this in the FamousDefs at least).
* Add a hacky remidy for #6038Aleksey Kladov2020-10-201-0/+23
| | | | | | | The proper fix I think is: * move rust-lang/rust library crates to a separate workspace * when packaging rust-src component, vendor sources of external deps
* Improve prime_caches and display its progressJonas Schievink2020-10-121-0/+28
|
* Properly name the fieldKirill Bulatov2020-10-021-6/+7
|
* Fix the hover dash issuesKirill Bulatov2020-10-022-5/+5
|
* Add a dash testKirill Bulatov2020-10-021-2/+2
|
* Get rid of MockAnalysisAleksey Kladov2020-10-021-6/+8
|
* Rewrite fixtures on top of ChangeAleksey Kladov2020-10-021-83/+90
|
* Move ide::AnalysisChange -> base_db::ChangeAleksey Kladov2020-10-022-0/+99
| | | | | | This seems like a better factoring logically; ideally, clients shouldn't touch `set_` methods of the database directly. Additionally, I think this should remove the unfortunate duplication in fixture code.
* Move most of the logic into the completion moduleKirill Bulatov2020-09-092-83/+9
|
* Finally cretae the mod completion moduleKirill Bulatov2020-09-091-1/+1
|
* Move rust-related logic from vfs to base_db levelKirill Bulatov2020-09-091-1/+69
|