Commit graph

277547 commits

Author SHA1 Message Date
jnyfah
05712c6c85 added tests 2025-01-16 16:19:47 +01:00
jnyfah
715e457500 revert blocklike changes 2025-01-16 12:54:26 +01:00
jnyfah
39a1bb9e98 update blocklike 2025-01-16 12:11:55 +01:00
jnyfah
337f2c9061 Missing errors 2025-01-10 14:22:00 +01:00
Lukas Wirth
65a97e6475
Merge pull request #18900 from ChayimFriedman2/stupid-hang
fix: Do not compute `prettify_macro_expansion()` unless the "Inline macro" assist has actually been invoked
2025-01-10 11:02:54 +00:00
Lukas Wirth
78213905bc
Merge pull request #18902 from Veykril/push-znlsxykqrkoo
internal: Add Definition::Crate
2025-01-10 10:01:43 +00:00
Lukas Wirth
c4ffd32ac4 internal: Add Definition::Crate
This is its own thing so it should be handled specifically where possible
2025-01-10 10:45:44 +01:00
Lukas Wirth
ab7f367f2a
Merge pull request #18901 from ChayimFriedman2/hir-reexport
minor: Remove two hir reexports
2025-01-10 06:57:18 +00:00
Lukas Wirth
5adca85d1b
Merge pull request #18813 from Giga-Bowser/syntax-tree-view
feat: Add a new and improved syntax tree view
2025-01-10 06:56:34 +00:00
Lukas Wirth
669d34da46
Merge pull request #18899 from ChayimFriedman2/issue-18898
fix: Fix another issue with fixup reversing
2025-01-10 06:55:45 +00:00
Chayim Refael Friedman
62a92b3840 Remove two hir reexports 2025-01-10 03:19:28 +02:00
Chayim Refael Friedman
c9f75a0b2f Do not compute prettify_macro_expansion() unless the "Inline macro" assist has actually been invoked
And not just called to be listed.

This was a major performance hang when repeatedly switching back-and-forth between a large `include!`d file (but there are others)..
2025-01-10 00:56:00 +02:00
Giga Bowser
56d06fb40f Add an action to copy an element from the syntax tree view 2025-01-09 14:03:18 -06:00
Chayim Refael Friedman
37b089d973 Fix another issue with fixup reversing
We need to *remove* the whole subtree, but we don't advance `i` by this, because it hasn't gotten there yet (and never will).
2025-01-09 22:02:44 +02:00
Giga Bowser
628db53612 Remove the old syntax tree viewer 2025-01-09 13:20:06 -06:00
Giga Bowser
78c377f956 Add a new and improved syntax tree viewer 2025-01-09 13:20:06 -06:00
Lukas Wirth
d1b9176f24
Merge pull request #18889 from ChayimFriedman2/subtle-completion
fix: Fix actual token lookup in completion's `expand()`
2025-01-09 12:12:38 +00:00
Lukas Wirth
e4708fec85
Merge pull request #18880 from PrototypeNM1/extra-includes
Add config setting which allows adding additional include paths to the VFS.
2025-01-09 10:24:51 +00:00
Lukas Wirth
f6e8974fa8
Merge pull request #18861 from ChayimFriedman2/await-edition
fix: Make edition per-token, not per-file
2025-01-09 10:20:11 +00:00
Lukas Wirth
f4ecc34aa7
Merge pull request #18885 from qjerome/refactor-cargo-cfgs
refactor: struct holding cargo cfgs settings
2025-01-09 10:19:55 +00:00
Lukas Wirth
85310c4f25
Merge pull request #18890 from Veykril/push-nwnozlyppvzo
minor: Fixup macro error kinds
2025-01-09 08:54:05 +00:00
Lukas Wirth
cd60477dc8 minor: Fixup macro error kinds 2025-01-09 09:38:58 +01:00
Lukas Wirth
547a12e323
Merge pull request #18887 from vishruth-thimmaiah/refactor_completions_tests
refactor test helpers within ide-completions
2025-01-09 08:15:53 +00:00
Lukas Wirth
fbc1d511e9
Merge pull request #18524 from Giga-Bowser/migrate-wrap-unwrap-return
internal: Migrate `(un)wrap_return_type` assists to use `SyntaxEditor`
2025-01-09 07:05:48 +00:00
Chayim Refael Friedman
89a72c78fc Make edition per-token, not per-file
More correctly, *also* per-token. Because as it turns out, while the top-level edition affects parsing (I think), the per-token edition affects escaping of identifiers/keywords.
2025-01-09 05:43:08 +02:00
Chayim Refael Friedman
13e302c324 Fix actual token lookup in completion's expand()
It should be left biased, not right biased, because when e.g. the use has typed `h` then requested completion, the `h` is what we want to find, not the next token (which might indeed be inside a macro call).

I'm not sure why I wrote `right_biased()` to begin with (I remember I had a reason and not just "both should work"), I might've copied the code in `expand_and_analyze()` (which is wrong, because there it lookups on the speculative file, where right biased will always find the correct token and left biased not).

This is still not perfect, because there might not be an identifier already typed then we might still end up in a macro call, but this is the best we can do.
2025-01-09 05:22:14 +02:00
Giga Bowser
3d6c2f2ea1 minor: Use placeholders in unwrap_return_type 2025-01-08 18:12:06 -06:00
Giga Bowser
9b6b629334 internal: Migrate unwrap_return_type assist to use SyntaxEditor
Also changes `make::expr_empty_block()` to return `ast::BlockExpr` instead of `ast::Expr`
2025-01-08 18:12:06 -06:00
Giga Bowser
4001c468dd internal: Migrate wrap_return_type assist to use SyntaxEditor 2025-01-08 15:19:10 -06:00
Nicholas Rishel
253bba044e Add config setting which allows adding additional include paths to the VFS. 2025-01-08 10:57:46 -08:00
Vishruth-Thimmaiah
8d1ae29294
refactor test helpers within ide-completions 2025-01-08 23:51:18 +05:30
qjerome
93d08b7c77
fix: requested changed 2025-01-08 14:47:46 +01:00
qjerome
c59ecb3af4
fix: autogenerate files 2025-01-08 14:47:21 +01:00
qjerome
2be4ce099d
refactor: struct holding cargo cfgs settings 2025-01-08 11:20:08 +01:00
Lukas Wirth
8982535dc2
Merge pull request #18884 from Veykril/push-xwqkorxozzkq
fix: Fix `env`/`option_env` macro check disregarding macro_rules definitions
2025-01-08 10:14:51 +00:00
Lukas Wirth
bc1a7fa834 fix: Fix env/option_env macro check disregarding macro_rules definitions 2025-01-08 10:59:58 +01:00
Lukas Wirth
16721e33dc
Merge pull request #18855 from Giga-Bowser/migrate-if-let
internal: Migrate `if let` replacement assists to `SyntaxEditor`
2025-01-08 08:59:42 +00:00
Laurențiu Nicola
7c256e56ce
Merge pull request #18882 from lnicola/publish-test-fixture
minor: Fix `test-fixture` autopublishing
2025-01-08 08:34:41 +00:00
Laurențiu Nicola
cc07c98314 Fix test-fixture autopublishing 2025-01-08 10:19:46 +02:00
Laurențiu Nicola
a748001095
Merge pull request #18877 from ChayimFriedman2/crazy-hang
fix: Fix a bug with missing binding in MBE
2025-01-08 06:53:07 +00:00
Chayim Refael Friedman
bce64358b7 Fix a bug with missing binding in MBE
We should immediately mark them as finished, on the first entry.

The funny (or sad) part was that this bug was pre-existing, but previously to #18327, it was causing us to generate bindings non-stop, 65535 of them, until we get to the hardcoded repetition limit, and then throw it all away. And it was so Blazingly Fast that nobody noticed.

With #18327 however, this is still what happens, except that now instead of *merging* the fragments into the result, we write them on-demand. Meaning that when we hit the limit, we've already written all previous entries. This is a minor change, I thought for myself when I was writing this, and it's actually for the better, so who cares. Minor change? Not so fast. This caused us to emit 65535 repetitions, all of which the MBE infra needs to handle when calling other macros with the expansion, and convert to rowan tree etc., which resulted a *massive* hang.

The test (and also `analysis-stats`) used to crash with stack overflow on this macro, because we were dropping some crazily deep rowan tree. Now they work properly. Because I am lazy, and also because I could not find the exact conditions that causes a macro match but with a missing binding, I just copied all macros from tracing. Easy.
2025-01-07 23:04:53 +02:00
Laurențiu Nicola
fd1e95538f
Merge pull request #18874 from lnicola/sync-from-rust
minor: Sync from downstream
2025-01-07 16:13:25 +00:00
Laurențiu Nicola
e103ab1608 Merge from rust-lang/rust 2025-01-07 17:57:53 +02:00
Laurențiu Nicola
aa1ef0a432 Preparing for merge from rust-lang/rust 2025-01-07 17:57:18 +02:00
Lukas Wirth
8e4409cce3
Merge pull request #18870 from Veykril/push-vnpsptpolyol
Drop unnecessary tracing::warn
2025-01-07 13:55:28 +00:00
Lukas Wirth
21faec1fec
Merge pull request #18867 from Veykril/push-ntmxlropxkrr
internal: target-triple -> target-tuple + version fetching cleanup
2025-01-07 13:46:58 +00:00
Lukas Wirth
b039d3fc5c Drop unnecessary tracing::warn
We already emit an error
2025-01-07 14:40:00 +01:00
Lukas Wirth
380439c5f3 Add some smoke tests to toolchain_info 2025-01-07 14:33:24 +01:00
Lukas Wirth
d28a0b8fcd Align toolchain version fetching with other toolchain info querying
Fix --target flag argument order in rustc_cfg fetching
2025-01-07 14:30:46 +01:00
Lukas Wirth
05770f2599 target-triple -> target-tuple 2025-01-07 14:25:43 +01:00