Laurențiu Nicola
478b234d6a
Preparing for merge from rust-lang/rust
2024-10-29 08:13:20 +02:00
Lukas Wirth
cf8f950baa
Merge pull request #18420 from ChayimFriedman2/cfg-true-false
...
feat: Support `cfg(true)` and `cfg(false)`
2024-10-28 13:56:41 +00:00
Lukas Wirth
8672eb8adb
Merge pull request #18421 from Veykril/push-uxxwvwnqvomr
...
Move text-edit into ide-db
2024-10-28 13:52:16 +00:00
Lukas Wirth
09547e9ea5
Merge pull request #18413 from ShoyuVanilla/extern-crate-reexport
...
fix: Allow public re-export of `extern crate` import
2024-10-28 13:51:26 +00:00
Lukas Wirth
343abd9193
Merge pull request #18422 from ChayimFriedman2/cursed-name-res
...
fix: Properly resolve prelude paths inside modules inside blocks
2024-10-28 13:45:19 +00:00
Lukas Wirth
68e2d8465f
Merge pull request #18312 from LastExceed/symbolkind-variable
...
Report document symbols of kind `variable` for let statements
2024-10-28 13:40:42 +00:00
Lukas Wirth
27306c5e4b
Reformat
2024-10-28 14:37:52 +01:00
Lukas Wirth
64f56f458f
Move text-edit into ide-db
2024-10-28 14:37:41 +01:00
Lukas Wirth
80e9d014be
Merge pull request #18074 from ChayimFriedman2/typeref-source-map
...
internal: Build source map for `hir_def::TypeRef`s
2024-10-28 11:01:12 +00:00
Laurențiu Nicola
ae86e6a229
Merge pull request #18256 from MoskalykA/use-is_none_or
...
Start using `Option::is_none_or`
2024-10-28 10:12:36 +00:00
Laurențiu Nicola
d481decd06
Merge pull request #18412 from lnicola/windows-no-gz
...
internal: Stop producing .gz artifacts for Windows
2024-10-28 10:11:29 +00:00
LastExceed
167fe5fd7c
add test
2024-10-27 23:29:14 +01:00
LastExceed
7c8c28ce96
add LetStmt arm
2024-10-27 23:29:14 +01:00
Chayim Refael Friedman
1fed2403d1
Properly resolve prelude paths inside modules inside blocks
...
I.e. the following situation:
```
fn foo() {
mod bar {
fn qux() {
// Prelude path here (e.g. macro use prelude or extern prelude).
}
}
}
```
Those were previously unresolved, because, in order to support `self` and `super` properly, since #15148 we do not ascend block paths when there is a module in between, but only crate def maps register preludes, not block def maps, and we can't change this because block def map prelude can always be overridden by another block. E.g.
```
fn foo() {
struct WithTheSameNameAsPreludeItem;
{
WithTheSameNameAsPreludeItem
}
}
```
Here `WithTheSameNameAsPreludeItem` refer to the item from the top block, but if we would register prelude items in each block the child block would overwrite it incorrectly.
2024-10-27 19:23:12 +02:00
Shoyu Vanilla
eb2a50e75d
fix: Allow public re-export of extern crate
import
2024-10-27 23:44:44 +09:00
Lukas Wirth
3b3a87fe9b
Merge pull request #18419 from ChayimFriedman2/leading-or
...
fix: Put leading `|` in patterns under `OrPat`
2024-10-27 11:25:16 +00:00
Chayim Refael Friedman
e12a001b55
Put leading |
in patterns under OrPat
...
Previously it was one level above, and that caused problems with macros that expand to it, because macros expect to get only one top-level node.
2024-10-27 13:11:38 +02:00
Lukas Wirth
715b67c425
Merge pull request #18410 from Veykril/veykril/push-lvwxpnowqrxk
...
internal: Invert token iteration order in macro mapping
2024-10-27 10:44:32 +00:00
Lukas Wirth
20ac30fb75
Invert token iteration order in macro mapping
2024-10-27 11:32:12 +01:00
Lukas Wirth
79b86f25b4
Merge pull request #18418 from ChayimFriedman2/explicitly-disable
...
feat: Split `macro-error` diagnostic so users can ignore only parts of it
2024-10-27 09:37:56 +00:00
Lukas Wirth
8d10e248c8
Merge pull request #18417 from ChayimFriedman2/hash-string
...
fix: Correctly handle `#""` in edition <2024
2024-10-27 09:28:47 +00:00
Chayim Refael Friedman
074050c242
Support cfg(true)
and cfg(false)
...
As per RFC 3695.
2024-10-27 10:46:49 +02:00
Chayim Refael Friedman
f4585ea023
Split macro-error
diagnostic so users can ignore only parts of it
...
Split it into `macro-error`, `proc-macros-disabled` and `proc-macro-disabled`.
2024-10-27 02:24:15 +02:00
Chayim Refael Friedman
3b3beaab31
Correctly handle #""
in edition <2024
2024-10-27 00:47:13 +03:00
Laurențiu Nicola
cce06862a2
Bump MSRV to 1.82
2024-10-26 09:39:23 +03:00
MoskalykA
feba680c39
Use method syntax
2024-10-26 09:39:04 +03:00
MoskalykA
41fa877362
Start using Option::is_none_or
2024-10-26 09:39:04 +03:00
Laurențiu Nicola
26d2fbaef2
Merge pull request #18415 from lnicola/nicer-remove-dbg
...
fix: Turn "Remove `dbg!`" into a quick fix for better prioritization
2024-10-26 06:21:26 +00:00
Laurențiu Nicola
4e3c331d86
Turn Remove dbg into a quick fix for better prioritization
2024-10-26 09:06:10 +03:00
Laurențiu Nicola
47cb838b2c
Stop producing .gz artifacts for Windows
2024-10-25 15:14:52 +03:00
Lukas Wirth
ca3699bd50
Factor out token ranking
2024-10-25 12:03:12 +02:00
Lukas Wirth
f4466718b8
Merge pull request #18409 from Veykril/veykril/push-rkrkpvzvumvx
...
Only construct a resolver in macro descension when needed
2024-10-25 08:40:55 +00:00
Lukas Wirth
a12f1781eb
Only construct a resolver in macro descension when needed
2024-10-25 10:23:59 +02:00
Lukas Wirth
52a03ec237
Merge pull request #18408 from Veykril/veykril/push-ulxyznwzokut
...
fix: Don't compute diagnostics for non local files
2024-10-25 05:55:32 +00:00
Lukas Wirth
8eef1c5275
Add server cancellation support to pull diagnostic handler
2024-10-25 07:39:28 +02:00
Lukas Wirth
eac7840810
Don't compute diagnostics for non local files
2024-10-25 07:28:29 +02:00
Lukas Wirth
169d4469bd
Merge pull request #18407 from hackervole/code-fix-welcome-setup-tips
...
Fix formatting on welcome page, read only paths setting example
2024-10-25 05:15:39 +00:00
Chayim Refael Friedman
bf7edd3783
Shrink TypeRef
from 16 from 32 bytes
...
Only references and arrays need to be boxed, and they comprise only 9.4% of the types (according to counting on r-a's code).
This saves 17mb.
2024-10-25 06:44:56 +03:00
Chayim Refael Friedman
061e5d7f71
Shrink Path
to 16 bytes
...
Thanks to the observation (supported by counting) that the vast majority paths have neither generics no type anchors, and thanks to a new datastructure `ThinVecWithHeader` that is essentially `(T, Box<[U]>)` but with the size of a single pointer, we are able to reach this feat.
This (together with `ThinVecWithHeader`) makes the possibility to shrink `TypeRef`, because most types are paths.
2024-10-25 06:44:56 +03:00
HackerVole
d2e856ccc4
editors/code: Add md for walkthrough setup example
...
Add a separate markdown file containing the settings.json snippet from
the "Useful Setup Tips". This fixes the rendering and also makes the
text selectable.
Also use double-backticks for `code` rendering.
2024-10-24 23:20:40 -04:00
Chayim Refael Friedman
bccf0062b7
Do not allocate attributes entry if there are no attributes
...
This saves 8mb.
2024-10-25 06:15:06 +03:00
Chayim Refael Friedman
d0933cc097
Shrink ItemTreeSourceMaps
...
This saves 16mb on `analysis-stats .`.
2024-10-25 06:15:06 +03:00
Chayim Refael Friedman
39747cb518
Reuse empty GenericParams
...
This saves back 15mb that went for typeref source maps.
2024-10-25 06:15:06 +03:00
Chayim Refael Friedman
1fae57fa55
Fix memory usage calculation's queries list
2024-10-25 06:15:06 +03:00
Chayim Refael Friedman
89c0ffa6b0
Build source map for hir_def::TypeRef
s
...
So that given a `TypeRef` we will be able to trace it back to source code.
This is necessary to be able to provide diagnostics for lowering to chalk tys, since the input to that is `TypeRef`.
This means that `TypeRef`s now have an identity, which means storing them in arena and not interning them, which is an unfortunate (but necessary) loss but also a pretty massive change. Luckily, because of the separation layer we have for IDE and HIR, this change never crosses the IDE boundary.
2024-10-25 06:15:04 +03:00
Laurențiu Nicola
6a67a4d3cd
Merge pull request #18405 from lnicola/fix-changelog
...
internal: Update changelog generation for merge queues
2024-10-24 17:54:25 +00:00
Laurențiu Nicola
333952f623
Update changelog generation for merge queues
2024-10-24 20:40:57 +03:00
Lukas Wirth
58e9871038
Merge pull request #18404 from Veykril/veykril/push-swpmkoqqxrvu
...
feat: Implement diagnostics pull model
2024-10-24 15:22:49 +00:00
Lukas Wirth
8b59541237
feat: Implement diagnostics pull model
2024-10-24 17:09:43 +02:00
Lukas Wirth
6005446327
Merge pull request #18402 from Veykril/veykril/push-wrvtystlszlr
...
internal: Improve proc-macro error msg for failed build scripts
2024-10-24 12:01:29 +00:00