about summary refs log tree commit diff
path: root/src/tools/rust-analyzer
AgeCommit message (Collapse)AuthorLines
2024-10-24Merge pull request #18394 from Wilfred/pretty_print_statusLukas Wirth-1/+1
internal: Pretty-print Config in status command
2024-10-23fix: Add missing cfg flags for `core` crateWilfred Hughes-3/+4
Some types in `core` are conditionally compiled based on `target_has_atomic` or `target_has_atomic_load_store` without an argument, for example `AtomicU64`. This is less noticeable in Cargo projects, where rust-analyzer adds the output `RUSTC_BOOTSTRAP=1 cargo rustc --print cfg` so it gets the full set of cfg flags. This fixes go-to-definition on `std::sync::atomic::AtomicU64` in non-cargo projects.
2024-10-23internal: Pretty-print Config in status commandWilfred Hughes-1/+1
Config can become very big, even for relatively small rust project, and printing everything on one line makes reading the output in VS Code harder.
2024-10-23Merge pull request #18392 from Veykril/veykril/push-wktpkuklnzotLukas Wirth-2/+1
Swap query call order in `file_item_tree_query`
2024-10-23Swap query call order in file_item_tree_queryLukas Wirth-2/+1
2024-10-23internal: log original syntax on panicDavid Barsky-1/+2
2024-10-24fix: Prevent public reexport of private itemShoyu Vanilla-9/+98
2024-10-23Rewrite `label_details_support` condition to be consistent with other parts ↵Jason Boatman-4/+1
of the codebase.
2024-10-23Fix checking for `false` `labelDetailsSupport` value.Jason Boatman-1/+2
2024-10-23fix: Handle missing time offsets gracefullyWilfred Hughes-6/+14
The tracing_subscribe docs state that missing offsets likely mean that we're in a multithreaded context: https://docs.rs/tracing-subscriber/latest/tracing_subscriber/fmt/time/struct.OffsetTime.html#method.local_rfc_3339 We're not in a multithreaded context at this point, but some platforms (e.g. OpenBSD) still don't have time offsets available. Since this is only a rust-analyzer debugging convenience, just use system time logging in this situation. Fixes #18384
2024-10-23Fix alphabetical order of handlersGiga Bowser-2/+2
No idea how this slipped past me
2024-10-23Add assist to generate a type alias for a functionGiga Bowser-0/+474
2024-10-23fix: auto-complete import for aliased function and moduleKhanh Duong Quoc-2/+50
2024-10-23Merge pull request #18264 from ChayimFriedman2/semi-transparentLukas Wirth-164/+671
fix: Implement mixed site hygiene
2024-10-23fix dyn incompatible hint messageusamoi-1/+1
2024-10-23Merge pull request #18376 from Veykril/veykril/push-ptmnsoqzsmqkLukas Wirth-63/+93
feat: Add text edits to more inlay hints
2024-10-23Don't emit edits for postfix adjustment hintsLukas Wirth-23/+28
2024-10-23Add text edit to implicit 'static hintsLukas Wirth-1/+2
2024-10-23Add text edit to discriminant hintsLukas Wirth-5/+6
2024-10-23Add text edit to binding mode hintsLukas Wirth-36/+38
2024-10-23Add text edit to adjustment hintsLukas Wirth-21/+42
2024-10-22Correctly resolve variables and labels from before macro definition in macro ↵Chayim Refael Friedman-50/+287
expansion E.g.: ```rust let v; macro_rules! m { () => { v }; } ``` This was an existing bug, but it was less severe because unless the variable was shadowed it would be correctly resolved. With hygiene however, without this fix the variable is never resolved.
2024-10-22Implement semitransparent hygieneChayim Refael Friedman-124/+394
Or macro_rules hygiene, or mixed site hygiene. In other words, hygiene for variables and labels but not items. The realization that made me implement this was that while "full" hygiene (aka. def site hygiene) is really hard for us to implement, and will likely involve intrusive changes and performance losses, since every `Name` will have to carry hygiene, mixed site hygiene is very local: it applies only to bodies, and we very well can save it in a side map with minor losses. This fixes one diagnostic in r-a that was about `izip!()` using hygiene (yay!) but it introduces a huge number of others, because of #18262. Up until now this issue wasn't a major problem because it only affected few cases, but with hygiene identifiers referred by macros like that are not resolved at all. The next commit will fix that.
2024-10-22Merge pull request #18254 from ChayimFriedman2/fix-mutLukas Wirth-860/+1171
fix: Nail destructuring assignment once and for all
2024-10-22Add test for tuple struct destructuring assignment where the path comes from ↵Chayim Refael Friedman-0/+34
a macro
2024-10-22docs: remove unnecessary prerequisites setup.mdDavid Kurilla-9/+3
2024-10-22Merge binding_mode inlay hints into oneLukas Wirth-11/+29
2024-10-22Merge adjustment inlay hints into oneLukas Wirth-145/+83
2024-10-22Merge closure capture inlay hints into oneLukas Wirth-90/+41
2024-10-22Merge pull request #18372 from Kobzol/ci-merge-queueMarco Ieni-20/+17
Switch CI from bors to merge queues
2024-10-22Auto merge of #18370 - duncpro:goto-def-ranges, r=Veykrilbors-8/+124
feat: resolve range patterns to their structs Closes #18367
2024-10-22Auto merge of #18368 - Veykril:test-lsif_contains_generated_macros, r=lnicolabors-17/+199
tests: Add `lsif_contains_generated_constant` test Closes https://github.com/rust-lang/rust-analyzer/pull/18309
2024-10-22Switch CI from bors to merge queuesJakub Beránek-20/+17
2024-10-22Auto merge of #18349 - dqkqd:issue-18344, r=Veykrilbors-1/+166
feat: render docs from aliased type when type has no docs Trying to close #18344 - [x] ~Find the docs by traversing upwards if the type itself has none but aliasing for another type that might have.~ - [x] Show docs from aliased type. - [x] Showing description that we are displaying documentation for different definition in hover box. ![image](https://github.com/user-attachments/assets/820d6f97-aa2c-4dc4-8a25-75746e32d950)
2024-10-22Auto merge of #18371 - Veykril:veykril/push-kwttrusywysp, r=Veykrilbors-25/+184
fix: Fix incorrect parsing of use bounds Fixes https://github.com/rust-lang/rust-analyzer/issues/18357
2024-10-22fix: Fix incorrect parsing of use boundsLukas Wirth-25/+184
Also lower them a bit more
2024-10-22feat: render docs from aliased type when docs are missingKhanh Duong Quoc-1/+166
2024-10-22tidyDuncan Proctor-2/+1
2024-10-22tidyDuncan Proctor-5/+5
2024-10-22remove duplicate testDuncan Proctor-16/+0
2024-10-22resolve range patterns to the their struct typesDuncan Proctor-8/+141
2024-10-22Fix new nightly lintsLukas Wirth-51/+81
2024-10-22tests: Add `lsif_contains_generated_constant` testJohann Hemmann-17/+199
2024-10-22Cleanup file structure proto handlingLukas Wirth-10/+3
2024-10-22Fix status bar messagen not being marked markdownLukas Wirth-1/+1
2024-10-22Auto merge of #18362 - duncpro:goto-def-ranges, r=Veykrilbors-17/+139
feat: goto definition on range operators Closes #18342
2024-10-22tidyDuncan Proctor-15/+27
2024-10-22Replace some LayoutError variants with the rustc_abi errorsLaurențiu Nicola-24/+22
2024-10-22Bump rustc cratesLaurențiu Nicola-5/+5
2024-10-22Merge from rust-lang/rustLaurențiu Nicola-5/+4