aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Better error when a proc macro panicsJonas Schievink2020-12-081-1/+2
|
* Merge #6761bors[bot]2020-12-085-112/+354
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6761: Make config.rs a single source of truth for configuration. r=matklad a=matklad Configuration is editor-independent. For this reason, we pick JSON-schema as the repr of the source of truth. We do specify it using rust-macros and some quick&dirty hackery though. The idea for syncing truth with package.json is to just do that manually, but there's a test to check that they are actually synced. I'll add something like `rust-analyzer --config-schema` in a follow-up commit. Co-authored-by: Aleksey Kladov <[email protected]>
| * Make config.rs a single source of truth for configuration.Aleksey Kladov2020-12-085-112/+354
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Configuration is editor-independent. For this reason, we pick JSON-schema as the repr of the source of truth. We do specify it using rust-macros and some quick&dirty hackery though. The idea for syncing truth with package.json is to just do that manually, but there's a test to check that they are actually synced. There's CLI to print config's json schema: $ rust-analyzer --print-config-schema We go with a CLI rather than LSP request/response to make it easier to incorporate the thing into extension's static config. This is roughtly how we put the thing in package.json.
* | Fix logic for determining macro callsJonas Schievink2020-12-081-9/+7
| | | | | | | | | | | | I believe this currently goes back all the way to the initial user-written call, but that seems better than the current broken behavior.
* | Use `original_file_range` in `TestDB`Jonas Schievink2020-12-081-9/+3
| |
* | Make `original_range` a method on `InFile<&SyntaxNode>`Jonas Schievink2020-12-085-89/+88
| |
* | Add test for `$crate` in builtin macrosJonas Schievink2020-12-081-0/+28
| | | | | | | | Fixes #6716
* | Handle macros in `TestDB::check_diagnostics`Jonas Schievink2020-12-081-2/+9
|/
* Merge #6760bors[bot]2020-12-082-15/+17
|\ | | | | | | | | | | | | | | | | 6760: Open Cargo.toml opens more specific manifest r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Open Cargo.toml opens more specific manifestAleksey Kladov2020-12-082-10/+12
| |
| * cleanup: match over unwrapAleksey Kladov2020-12-081-5/+5
| |
* | Merge #6750bors[bot]2020-12-0812-213/+137
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6750: Remove documentation query, move doc handling to attributes r=matklad a=Veykril Fixes #3182 Removes the documentation query in favor of `Attrs::docs`. Attrs already handlded doc comments partially but the alloc saving check was wrong so it only worked when other attributes existed as well. Unfortunately the `new` constructor has to do an intermediate allocation now because we need to keep the order of mixed doc attributes and doc comments. I've also partially adjusted the `hover` module to have its tests check the changes, it still has some `HasSource` trait usage due to the `ShortLabel` trait usage, as that is only implemented on the Ast parts and not the Hir, should this ideally be implemented for the Hir types as well?(would be a follow up PR of course) Co-authored-by: Lukas Wirth <[email protected]>
| * | Simplify ast::Comment api surfaceLukas Wirth2020-12-081-10/+15
| | |
| * | Escape string literals in Attr::from_srcLukas Wirth2020-12-082-12/+6
| | |
| * | Replace Arc<[str]> with String in attr::DocumentationLukas Wirth2020-12-071-2/+2
| | |
| * | Keep doc attribute orderLukas Wirth2020-12-073-55/+61
| | |
| * | Remove raw pre and suffixes from string attr literalsLukas Wirth2020-12-071-2/+5
| | |
| * | Remove hir_def/docs.rs moduleLukas Wirth2020-12-076-114/+63
| | |
| * | Remove documentation queryLukas Wirth2020-12-076-59/+26
| | |
* | | Tweak the search query params for better lookup speedKirill Bulatov2020-12-082-32/+38
| | |
* | | Better config nameKirill Bulatov2020-12-085-13/+13
| | |
* | | Disable the completion for no corresponding client resolve capabilitiesKirill Bulatov2020-12-0711-160/+84
| | |
* | | Document the featureKirill Bulatov2020-12-071-0/+43
| | |
* | | SimplifyKirill Bulatov2020-12-074-36/+35
| | |
* | | Check lsp completions' edits for disjointnessKirill Bulatov2020-12-072-1/+176
| | |
* | | Less panic, more testsKirill Bulatov2020-12-073-11/+62
| | |
* | | Fix the profiling labelKirill Bulatov2020-12-071-1/+1
| | |
* | | Use stateless completion resolveKirill Bulatov2020-12-076-71/+124
| | |
* | | Remove the stateKirill Bulatov2020-12-077-107/+37
| | |
* | | Make completion resolve asyncKirill Bulatov2020-12-077-53/+116
| | |
* | | Simplify import edit calculationKirill Bulatov2020-12-0712-111/+114
| | |
* | | Remove redundant codeKirill Bulatov2020-12-078-103/+80
| | |
* | | Refactor the codeKirill Bulatov2020-12-0711-34/+48
| | |
* | | Add eager resolve capabilityKirill Bulatov2020-12-078-13/+43
| | |
* | | Better support client completion resolve capsKirill Bulatov2020-12-075-105/+120
| | |
* | | Properly fill client completion resolve capabilities dataKirill Bulatov2020-12-075-5/+56
| | |
* | | Resolve import inserts betterKirill Bulatov2020-12-072-38/+91
| | |
* | | Remove unnecessary leftoversKirill Bulatov2020-12-072-3/+0
| | |
* | | Working resolve completion imports prototypeKirill Bulatov2020-12-079-46/+78
| | |
* | | Draft the new lsp handlerKirill Bulatov2020-12-075-24/+52
| |/ |/|
* | Apply environment set by build scriptsJonas Schievink2020-12-072-2/+20
| |
* | Merge #6752bors[bot]2020-12-071-0/+5
|\ \ | |/ |/| | | | | | | | | | | 6752: Pass `--target` when loading out dirs from check r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Pass `--target` when loading out dirs from checkJonas Schievink2020-12-071-0/+5
| |
* | Merge #6719bors[bot]2020-12-075-23/+23
|\ \ | |/ |/| | | | | | | | | | | 6719: Use items can also have doc comments r=matklad a=Veykril Prior to this change modules show more docs than they have cause they inherit the docs from documented use items inside of them. Co-authored-by: Lukas Wirth <[email protected]>
| * Use items can also have doc commentsLukas Wirth2020-12-045-23/+23
| |
* | Use the right `def_crate` for builtin macrosJonas Schievink2020-12-071-1/+1
| |
* | Merge #6745bors[bot]2020-12-0711-99/+83
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6745: Some more proc macro cleanups r=jonas-schievink a=jonas-schievink * Remove `ProcMacroClient::dummy` and just use `Option<ProcMacroClient>` instead * Remember the type of proc macros (later allows us to reject using an incorrect macro type) * Prepare a few internals for procedural attribute macros bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Remove resolved FIXMEJonas Schievink2020-12-071-1/+0
| | |
| * | Remove dummy ProcMacroClient in favor of OptionJonas Schievink2020-12-075-71/+59
| | |
| * | Retain types of proc macros and allow attr. macrosJonas Schievink2020-12-075-22/+29
| | |