22085 Commits

Author SHA1 Message Date
Lukas Wirth
1d1771c15f
Merge pull request #19501 from ChayimFriedman2/macro-expansion
fix: Fix a bug in MBE expansion that arose from incorrect fixing of an older bug in MBE
2025-04-05 13:00:30 +00:00
Jonathan Chan Kwan Yin
1428aa9b6f
the rustdoc file prefix for constants is "constant" not "const" 2025-04-05 18:16:39 +08:00
Lukas Wirth
55c8cdeafb
Merge pull request #19519 from snprajwal/project-control-no-deps
feat(project-model): provide flag for no deps
2025-04-04 16:50:27 +00:00
David Barsky
9aa99eec60 internal: fix salsa-ified crate graph working with lazy project discovery 2025-04-04 12:14:55 -04:00
Lukas Wirth
2261e4e892
Merge pull request #19522 from davidbarsky/davidbarsky/fix-panic-in-view-crate-graph
internal: fix panic in `view_crate_graph`
2025-04-04 16:00:18 +00:00
Lukas Wirth
8b6621a138
Merge pull request #19515 from jrmuizel/multiple-definitions
fix: don't drop references with more than one definition.
2025-04-04 15:50:33 +00:00
David Barsky
069de21793 internal: fix panic in view_crate_graph 2025-04-04 11:38:19 -04:00
Jeff Muizelaar
e9d997e97d fix: don't drop references with more than one definition.
Implicit field references during struct initialization were
being dropped because get_definition was returning None because
there were multiple definitions.

This adds a new helper, `get_defintions`, that supports returning
more than one definition for a given token and hooks it up.

Fixes #19393
2025-04-04 11:37:14 -04:00
BenjaminBrienen
2462624a7d prefer default over new 2025-04-04 15:49:50 +02:00
Prajwal S N
865681d779
feat(project-model): provide flag for no deps
A Cargo project can now be built without any dependency metadata being fetched.

Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
2025-04-04 18:57:10 +05:30
Prajwal S N
094407aba4
feat(proc-macro-srv): support metadata version 10
Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
2025-04-03 14:58:59 +05:30
Prajwal S N
e02d76aa61
fix(ide-assists): remove AssistKind::None
This was being used by a single assist, which qualifies under the "refactor"
kind. The variant has been removed, and all usages updated accordingly.

Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
2025-04-03 14:38:31 +05:30
Chayim Refael Friedman
3953b604ce Fix a bug in MBE expansion that arose from incorrect fixing of an older bug in MBE
Specifically, #18744 was the PR that was supposed to fix the old bug, but it fixed it incorrectly (and didn't add a test!) The underlying reason was that we marked metavariables in expansions as joint if they were joint in the macro call, which is incorrect.

This wrong fix causes other bug, #19497, which this PR fixes by removing the old (incorrect) fix.
2025-04-01 21:05:51 +03:00
Lukas Wirth
c7845a6d70
Merge pull request #19494 from Veykril/push-uzmzppouxuvr
chore: Remove unnecessary `Arc` clones
2025-04-01 11:29:33 +00:00
Lukas Wirth
1c7f253ec9 chore: Remove unnecessary Arc clones 2025-04-01 13:18:37 +02:00
Lukas Wirth
bcc8e3a0b6 chore: Replace some invokes with invoke_actual in hir-ty 2025-04-01 13:13:20 +02:00
Chayim Refael Friedman
cdcadb4265
Merge pull request #19492 from ChayimFriedman2/experiment
Avoid relying on `block_def_map()` needlessly
2025-04-01 04:08:26 +00:00
Chayim Refael Friedman
2d99b5ead5 Avoid relying on block_def_map() needlessly
We can compute the wanted information from the block's interned data.
2025-04-01 06:58:21 +03:00
Ross Delinger
1b49b41248 fix: Fix panic in progress due to splitting unicode incorrectly 2025-03-31 17:32:02 -07:00
Lukas Wirth
1e1571e1c8 fix: Fix new nightly lints 2025-03-31 13:27:54 +02:00
Lukas Wirth
2b382eb772 fix: Cleanup param name inlay hint filtering 2025-03-31 09:40:57 +02:00
Lukas Wirth
faf1b49a9a fix: Fix, clarify and require a value for proc_macro_cwd of CrateData 2025-03-29 08:08:48 +01:00
Lukas Wirth
2e1ff255ae
Merge pull request #19375 from ChayimFriedman2/do-not-complete
feat: Allow crate authors to control completion of their things
2025-03-28 09:06:19 +00:00
Chayim Refael Friedman
246d678d77 Fix a bug in orphan rules calculation
Where a fundamental type applied twice wasn't considered local.
2025-03-28 05:37:29 +03:00
Chayim Refael Friedman
7b584ef9bf Allow crate authors to control completion of their things
Via the new `#[rust_analyzer::completions(...)]` attribute.

Also fix a bug with existing settings for that where the paths wouldn't resolve correctly.
2025-03-27 14:01:26 +02:00
Lukas Wirth
5bbf2ce419
Merge pull request #19460 from Veykril/push-krmvxxvrlmyx
fix: Fix `format_args` lowering using wrong integer suffix
2025-03-27 08:12:29 +00:00
Lukas Wirth
1fb465fa5e
Merge pull request #19459 from Veykril/push-swywyozvsqow
refactor: Shuffle some unsafety around in proc-macro-srv
2025-03-27 07:57:57 +00:00
Lukas Wirth
9a5a11fb30 fix: Fix format_args lowering using wrong integer suffix 2025-03-27 08:56:15 +01:00
Lukas Wirth
c6d3c4fc39 refactor: Shuffle some unsafety around in proc-macro-srv 2025-03-27 08:41:53 +01:00
Lukas Wirth
d6b9261fed
Merge pull request #19457 from Veykril/push-xpmluxlzprpy
chore: Remove salsa dependency from proc-macro server again
2025-03-27 07:28:39 +00:00
Lukas Wirth
7b9e0911b5 chore: Remove salsa dependency from proc-macro server again 2025-03-27 07:27:57 +01:00
Lukas Wirth
042e6d8efb
Merge pull request #19451 from Veykril/push-tuqmmvkrtpzl
refactor: Use MEDIUM durability for crate-graph changes, high for library source files
2025-03-26 06:02:56 +00:00
Lukas Wirth
454e4be40d refactor: Use MEDIUM durability for crate-graph changes, high for library source files
The idea here is that the crate graph may change over time, but library source file contents *never* will (or really never should). Disconnecting the two means that queries that depend on library sources will not need to re-validatewhen the crate graph changes (unless they depend on the crate graph in some capacity).
2025-03-26 06:46:49 +01:00
Lukas Wirth
62e7d9f0fc
Merge pull request #19433 from snprajwal/fix-replace-let-else
fix(ide-assists): `let else` to `if let else`
2025-03-25 13:20:12 +00:00
Lukas Wirth
389323ca09 minor: Simplify impl-ty parse validation 2025-03-25 10:14:40 +01:00
Lukas Wirth
749fde9017
Merge pull request #19388 from Veykril/push-oqysrnttwywu
feat: parse `unsafe` record fields
2025-03-25 08:12:20 +00:00
Lukas Wirth
452e2ca031 feat: parse unsafe record fields 2025-03-25 08:55:31 +01:00
Lukas Wirth
ed7e25a0c0
Merge pull request #19347 from Shourya742/2025-03-13-add-diagnostic-for-dnagling-impl-with-lifetime
Add diagnostic for missing ambiguity error for impl trait
2025-03-25 07:49:45 +00:00
Lukas Wirth
7a1e9c4b0c ci: Require miri step 2025-03-25 08:10:27 +01:00
Lukas Wirth
d3aeddfb77
Merge pull request #19446 from Veykril/push-olslsvoxlxwk
ci: run `intern` tests via `cargo miri`
2025-03-25 06:42:40 +00:00
Lukas Wirth
c96421ecf4 ci: run intern tests via cargo miri 2025-03-25 07:26:43 +01:00
David Barsky
19b62b2778 analysis-stats: redesign printing of item tree stats 2025-03-24 14:04:07 -07:00
David Barsky
7d050feb5f analysis-stats: expose and print some limited statistics from hir-def 2025-03-24 09:59:51 -07:00
David Barsky
288d78353f analysis-stats: cleanup printing of some workspace stats 2025-03-24 09:59:51 -07:00
David Barsky
5ad27fdafb analysis-stats: add UsizeWithUnderscore for readability of large numbers 2025-03-24 09:59:51 -07:00
David Barsky
756c42409c analysis-stats: always print source stats 2025-03-24 09:59:51 -07:00
David Barsky
6af729166e analysis-stats: emit lines of code and item tree counts for workspace; dependencies 2025-03-24 09:59:51 -07:00
Lukas Wirth
dcd742301e refactor: Replace custom ThinVec with thin-vec crate 2025-03-24 13:44:13 +01:00
Lukas Wirth
dd2354c985
Merge pull request #19435 from Veykril/push-owstqqlrtsko
fix: Fix closure return inlayhints using macro ranges
2025-03-24 07:00:54 +00:00
Laurențiu Nicola
fcbba4ec72
Merge pull request #19436 from lnicola/rm-rustc-hashes
minor: drop `rustc_hashes` dependency, add `syn` feature
2025-03-24 06:56:05 +00:00