Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | internal: start new diagnostics API | Aleksey Kladov | 2021-06-13 | 1 | -6/+35 |
| | | | | | | | | | | | | | | | | | | At the moment, this moves only a single diagnostic, but the idea is reafactor the rest to use the same pattern. We are going to have a single file per diagnostic. This file will define diagnostics code, rendering range and fixes, if any. It'll also have all of the tests. This is similar to how we deal with assists. After we refactor all diagnostics to follow this pattern, we'll probably move them to a new `ide_diagnostics` crate. Not that we intentionally want to test all diagnostics on this layer, despite the fact that they are generally emitted in the guts on the compiler. Diagnostics care to much about the end presentation details/fixes to be worth-while "unit" testing. So, we'll unit-test only the primary output of compilation process (types and name res tables), and will use integrated UI tests for diagnostics. | ||||
* | minor: put a mark back | Aleksey Kladov | 2021-06-13 | 1 | -0/+1 |
| | |||||
* | clippy::redudant_borrow | Maan2003 | 2021-06-13 | 1 | -3/+3 |
| | |||||
* | internal: cross-crate cov-marks | Aleksey Kladov | 2021-06-12 | 1 | -0/+2 |
| | |||||
* | internal: move diagnostics infra to hir | Aleksey Kladov | 2021-06-12 | 1 | -0/+354 |
| | |||||
* | Move some hir_ty diagnostics to hir | Aleksey Kladov | 2021-06-12 | 1 | -1/+1303 |
| | |||||
* | internal: move missing unsafe diagnostic to hir | Aleksey Kladov | 2021-06-12 | 1 | -0/+84 |
| | |||||
* | internal: move inference diagnostics to hir | Aleksey Kladov | 2021-06-12 | 1 | -1/+140 |
| | |||||
* | Diagnose unimplemented built-in macros | Jonas Schievink | 2021-05-30 | 1 | -0/+5 |
| | |||||
* | Stop expanding UseTrees during ItemTree lowering | Jonas Schievink | 2021-05-26 | 1 | -0/+2 |
| | |||||
* | internal: move diagnostics to hir | Aleksey Kladov | 2021-05-25 | 1 | -20/+45 |
| | | | | | | | | | | | | | | | | | | | | | | | The idea here is to eventually get rid of `dyn Diagnostic` and `DiagnosticSink` infrastructure altogether, and just have a `enum hir::Diagnostic` instead. The problem with `dyn Diagnostic` is that it is defined in the lowest level of the stack (hir_expand), but is used by the highest level (ide). As a first step, we free hir_expand and hir_def from `dyn Diagnostic` and kick the can up to `hir_ty`, as an intermediate state. The plan is then to move DiagnosticSink similarly to the hir crate, and, as final third step, remove its usage from the ide. One currently unsolved problem is testing. You can notice that the test which checks precise diagnostic ranges, unresolved_import_in_use_tree, was moved to the ide layer. Logically, only IDE should have the infra to render a specific range. At the same time, the range is determined with the data produced in hir_def and hir crates, so this layering is rather unfortunate. Working on hir_def shouldn't require compiling `ide` for testing. | ||||
* | Add pub mod option for UnlinkedFile | rainy-me | 2021-05-18 | 1 | -21/+42 |
| | |||||
* | internal: scalable module structure for fixits | Aleksey Kladov | 2021-05-17 | 1 | -530/+1 |
| | |||||
* | internal: use mutable syntax trees when filling fields | Aleksey Kladov | 2021-05-16 | 1 | -3/+3 |
| | |||||
* | fix: use raw idents in `make::name{_ref}` with keywords | Jonas Schievink | 2021-05-07 | 1 | -0/+20 |
| | |||||
* | Resolve single assist only | Kirill Bulatov | 2021-05-03 | 1 | -3/+3 |
| | |||||
* | Add a way to resolve certain assists | Kirill Bulatov | 2021-05-03 | 1 | -12/+31 |
| | |||||
* | Include path in `unresolved-macro-call` diagnostic | Jonas Schievink | 2021-04-16 | 1 | -1/+1 |
| | |||||
* | feat: improve performance by delaying computation of fixes for diagnostics | Aleksey Kladov | 2021-04-13 | 1 | -21/+39 |
| | |||||
* | internal: prepare for lazy diagnostics | Aleksey Kladov | 2021-04-12 | 1 | -39/+44 |
| | |||||
* | Shrink `unlinked-file` diagnostic to 3 characters | Jonas Schievink | 2021-04-09 | 1 | -7/+9 |
| | |||||
* | Don't mark unlinked file diagnostic as unused | Jonas Schievink | 2021-03-28 | 1 | -1/+0 |
| | |||||
* | Redo it properly and add a quickfix | Jonas Schievink | 2021-03-15 | 1 | -7/+154 |
| | |||||
* | Diagnose files that aren't in the module tree | Jonas Schievink | 2021-03-10 | 1 | -3/+13 |
| | |||||
* | For unresolved macros, hightlight only the last segment | Aleksey Kladov | 2021-02-28 | 1 | -11/+56 |
| | |||||
* | Add diagnostic for filter_map followed by next | Phil Ellison | 2021-01-23 | 1 | -0/+3 |
| | |||||
* | Handle self/super/crate in PathSegment as NameRef | Lukas Wirth | 2021-01-15 | 1 | -2/+2 |
| | |||||
* | Phase out SourceFileEdits in favour of a plain HashMap | Lukas Wirth | 2021-01-14 | 1 | -7/+5 |
| | |||||
* | Group file source edits by FileId | Lukas Wirth | 2021-01-14 | 1 | -10/+9 |
| | |||||
* | Switch test marker | Phil Ellison | 2021-01-07 | 1 | -1/+1 |
| | |||||
* | Add fix to wrap return expression in Some | Phil Ellison | 2021-01-07 | 1 | -2/+51 |
| | |||||
* | Change <|> to $0 - Rebase | Kevaundray Wedderburn | 2021-01-07 | 1 | -22/+22 |
| | |||||
* | test for new behavior | AdnoC | 2020-12-30 | 1 | -0/+16 |
| | |||||
* | Smarter bracketed use diagnostic | AdnoC | 2020-12-30 | 1 | -0/+6 |
| | |||||
* | Simplify more | Aleksey Kladov | 2020-12-24 | 1 | -43/+22 |
| | |||||
* | Simplify | Aleksey Kladov | 2020-12-24 | 1 | -35/+7 |
| | |||||
* | Prevent multiple incorrect case diagnostics in functions | unexge | 2020-12-23 | 1 | -0/+13 |
| | |||||
* | Update test diagnostics in ide | Daiki Ihara | 2020-12-21 | 1 | -0/+1 |
| | |||||
* | Merge #6769 | bors[bot] | 2020-12-10 | 1 | -0/+3 |
|\ | | | | | | | | | | | | | | | | | | | 6769: Add native "remove this semicolon" diagnostics r=matklad a=ivan770 Closes #6739  Co-authored-by: ivan770 <[email protected]> | ||||
| * | Remove this semicolon | ivan770 | 2020-12-08 | 1 | -0/+3 |
| | | |||||
* | | Introduce anchored_path | Aleksey Kladov | 2020-12-09 | 1 | -4/+6 |
|/ | | | | | They allow to represent paths like `#[path = "C:\path.rs"] mod foo;` in a lossless cross-platform & network-transparent way. | ||||
* | Don't diagnose `#[cfg]` in macros | Jonas Schievink | 2020-12-03 | 1 | -0/+5 |
| | |||||
* | More accurately place proc-macro diagnostic | Jonas Schievink | 2020-11-27 | 1 | -4/+6 |
| | |||||
* | Publish diagnostics for macro expansion errors | Jonas Schievink | 2020-11-27 | 1 | -0/+7 |
| | |||||
* | Fill the diagnostic code field in publish_diagnostics | Lukas Wirth | 2020-11-17 | 1 | -8/+32 |
| | |||||
* | Do insertion lookahead in algo::diff | Lukas Wirth | 2020-10-26 | 1 | -1/+1 |
| | |||||
* | Re-export base_db from ide_db | Igor Aleksanov | 2020-10-24 | 1 | -1/+1 |
| | |||||
* | Rewrite algo::diff to support insertion and deletion | Lukas Wirth | 2020-10-22 | 1 | -1/+1 |
| | |||||
* | Fixup botched rename | Jonas Schievink | 2020-10-20 | 1 | -1/+1 |
| | |||||
* | Add a (hint) diagnostic for unconfigured items | Jonas Schievink | 2020-10-20 | 1 | -1/+15 |
| |