bors
d3b129f04f
Auto merge of #14444 - zapkub:runable-debug-env-is-not-passing-properly, r=Veykril
...
Missing runnable env on debug target
Fix bug in Rust Analyzer VSCode where runnable debugging did not pass
environment variable from configuration to child process of Cargo on binary build stage
There is a missing env passing along to `cargo` in debug target which give an in-consistent result from debug and run target
For example
```json
{
"rust-analyzer.runnableEnv": {
"OUT_DIR": "/test/path2"
}
}
```
## run
![image](https://user-images.githubusercontent.com/4373581/228749503-fa55f62c-13d3-4d3c-bee6-1cfbe042bdd0.png )
## debug
compiling binary is failed. Missing env
![image](https://user-images.githubusercontent.com/4373581/228749688-3fe42efb-b5ca-41be-862d-f2d97ecab7be.png )
## debug (after fix)
![image](https://user-images.githubusercontent.com/4373581/228750057-1db60051-3465-47db-8b18-4159ec58cfdb.png )
2023-03-30 13:38:36 +00:00
bors
562477b4da
Auto merge of #14439 - Veykril:proc-mac-attr-durability, r=Veykril
...
internal: Set Durability to HIGH for enable_proc_attr_macros input
2023-03-30 13:21:49 +00:00
Lukas Wirth
e244942209
internal: Set Durability to HIGH for enable_proc_attr_macros input
2023-03-30 15:11:22 +02:00
bors
5c6a38abde
Auto merge of #14449 - Veykril:parser-vis-recov, r=Veykril
...
fix: Recover from `pub()` visibility modifier
2023-03-30 13:08:14 +00:00
bors
5390949c11
Auto merge of #14448 - Veykril:infer-table, r=Veykril
...
internal: Don't expose InferenceTable outside of hir-ty
2023-03-30 12:49:23 +00:00
bors
02ea92fecb
Auto merge of #14445 - Veykril:adt-flags, r=Veykril
...
internal: Introduce StructFlags
2023-03-30 12:34:37 +00:00
bors
fc8c5139fa
Auto merge of #14410 - Veykril:query-lru-capacities, r=Veykril
...
internal: Add config to specifiy lru capacities for all queries
Might help figuring out what queries should be limited by LRU by default, as currently we only limit `parse`, `parse_macro_expansion` and `macro_expand`.
2023-03-30 12:20:24 +00:00
Lukas Wirth
cb546390da
fix: Recover from pub()
visibility modifier
2023-03-30 13:42:15 +02:00
Lukas Wirth
fc840dbb2d
internal: Don't expose InferenceTable outside of hir-ty
2023-03-30 13:27:10 +02:00
Lukas Wirth
5616d91b73
internal: Add config to specifiy lru capacities for all queries
2023-03-30 12:52:28 +02:00
Lukas Wirth
33b6012827
Introduce StructFlags
2023-03-30 12:49:08 +02:00
bors
b915eb32fa
Auto merge of #14427 - davidbarsky:davidbarsky/allow-subsequent-workspaces-to-have-proc-macros, r=Veykril
...
fix: allow new, subsequent `rust-project.json`-based workspaces to get proc macro expansion
As detailed in https://github.com/rust-lang/rust-analyzer/issues/14417#issuecomment-1485336174 , `rust-project.json` workspaces added after the initial `rust-project.json`-based workspace was already indexed by rust-analyzer would not receive procedural macro expansion despite `config.expand_proc_macros` returning true. To fix this issue:
1. I changed `reload.rs` to check which workspaces are newly added.
2. Spawned new procedural macro expansion servers based on the _new_ workspaces.
1. This is to prevent spawning duplicate procedural macro expansion servers for already existing workspaces. While the overall memory usage of duplicate procedural macro servers is minimal, this is more about the _principle_ of not leaking processes 😅 .
3. Launched procedural macro expansion if any workspaces are `rust-project.json`-based _or_ `same_workspaces` is true. `same_workspaces` being true (and reachable) indicates that that build scripts have finished building (in Cargo-based projects), while the build scripts in `rust-project.json`-based projects have _already been built_ by the build system that produced the `rust-project.json`.
I couldn't really think of structuring this code in a better way without engaging with https://github.com/rust-lang/rust-analyzer/issues/7444 .
2023-03-30 07:50:27 +00:00
bors
ef7756cb9e
Auto merge of #14441 - Veykril:simplify, r=Veykril
...
minor: Simplify
2023-03-30 07:36:57 +00:00
Lukas Wirth
251b3a47af
Simplify
2023-03-30 09:21:10 +02:00
Rungsikorn Rungsikavarnich
fb9a1dd87e
Missing runnable env on debug target
...
Fix bug in Rust Analyzer where runnable debugging did not pass
environment variable from configuration to child process of Cargo
on binary build stage
2023-03-30 15:39:49 +09:00
bors
17e31b7d3b
Auto merge of #14440 - Veykril:deref-fix, r=Veykril
...
fix: Handle box and raw pointers correctly in builtin_deref
2023-03-29 19:39:02 +00:00
Lukas Wirth
e797479651
fix: Handle box and raw pointers correctly in builtin_deref
2023-03-29 21:38:32 +02:00
David Barsky
25c59b8e92
address PR comments
2023-03-29 15:29:32 -04:00
bors
5351c21b7e
Auto merge of #14435 - Veykril:index-adjustments, r=Veykril
...
fix: Add missing autoborrow adjustment for index expressions
2023-03-29 17:36:33 +00:00
Lukas Wirth
f1f64e92d7
Fix mutability_error::overloaded_index test
2023-03-29 18:07:25 +02:00
Lukas Wirth
798990bf33
fix: Add missing autoborrow adjustment for index expressions
2023-03-29 16:11:48 +02:00
bors
a486f34048
Auto merge of #14434 - Veykril:ty-tail-norm, r=Veykril
...
fix: Use struct_tail_without_normalization in Expectation::rvalue_hint
2023-03-29 12:49:24 +00:00
Lukas Wirth
bea1c71f83
Use struct_tail_without_normalization in Expectation::rvalue_hint
2023-03-29 14:49:06 +02:00
bors
7a98e24777
Auto merge of #14431 - Veykril:simplify, r=Veykril
...
minor: Simplify
2023-03-29 07:28:42 +00:00
bors
0d1ed56bb3
Auto merge of #14430 - Veykril:canonicalize-project-manifest, r=Veykril
...
fix: Canonicalize rust-project.json manifest path
Looked a bit more into this and I think we can do this after all, I don't see any place where this should break things
cc https://github.com/rust-lang/rust-analyzer/pull/14168 https://github.com/rust-lang/rust-analyzer/pull/14402#issuecomment-1487257246
2023-03-29 07:11:02 +00:00
Lukas Wirth
8ea1afce28
Simplify
2023-03-28 16:32:26 +02:00
David Barsky
e5bfd7ef0a
it, uh, turns out that we should be spawning for new servers. oops.
2023-03-28 09:56:01 -04:00
David Barsky
6a42d7f627
fix: allow new, subsequent rust-project.json
-based workspaces to get
...
proc macro expansion.
2023-03-28 09:17:16 -04:00
bors
e7337fc9c3
Auto merge of #14426 - HKalbasi:master, r=HKalbasi
...
fix stack overflow in `is_ty_uninhabited_from`
fix #14421
2023-03-28 12:52:18 +00:00
hkalbasi
d0d4245a74
use FxHashSet
instead of FxHashMap
2023-03-28 15:59:16 +03:30
hkalbasi
d5c7ec499a
fix stack overflow in is_ty_uninhabited_from
2023-03-28 15:45:35 +03:30
bors
a375ad668c
Auto merge of #14425 - Eclips4:fix_typo, r=Veykril
...
Fix typo
2023-03-28 09:34:53 +00:00
Eclips4
0a2a50a663
Fix typo
2023-03-28 12:32:51 +03:00
bors
5bba438c9c
Auto merge of #14366 - Veykril:linked-proj, r=Veykril
...
feat: Pop a notification prompting the user to add a Cargo.toml of unlinked file to the linkedProjects
cc https://github.com/rust-lang/rust-analyzer/issues/13226 https://github.com/rust-lang/rust-analyzer/issues/9661
2023-03-28 07:05:43 +00:00
bors
f73510560f
Auto merge of #14424 - Veykril:local-trait-impls, r=Veykril
...
fix: Properly handle local trait impls
Before we only handled trait impls that came from the block of either the trait or the target type, we now handle them correctly by tracking the block we are currently inferring from, then walking that up to collect all block trait impls.
2023-03-28 06:36:35 +00:00
Lukas Wirth
342fd2b9f3
fix: Properly handle local trait impls
2023-03-28 08:34:29 +02:00
bors
a869ca3c29
Auto merge of #14422 - garlicbreadcleric:rustdoc-hashes-escaping, r=HKalbasi
...
fix(rustdoc): don't escape double hashes outside of Rust code blocks
Fixes #14376
2023-03-27 23:10:51 +00:00
Daniil Kolesnichenko
be17eab08b
fix(rustdoc): don't escape double hashes outside of Rust code blocks
...
Fixes #14376
2023-03-28 05:32:59 +07:00
Lukas Wirth
f1de133820
Canonicalize rust-project.json manifest path
2023-03-27 21:55:02 +02:00
bors
284c1741d6
Auto merge of #14419 - Veykril:proc-ids, r=Veykril
...
fix: Fix proc-macro paths using incorrect CrateId's for `rust-project.json` workspaces
2023-03-27 15:17:47 +00:00
Lukas Wirth
b03a218b57
fix: Fix proc-macro paths using incorrect CrateId's for rust-project.json workspaces
2023-03-27 17:17:09 +02:00
Lukas Wirth
c04a13cb19
Simplify
2023-03-27 17:16:45 +02:00
bors
b99d5eb973
Auto merge of #14415 - davidbarsky:davidbarsky/fix-unrenamed-reload-proc-macros-command, r=Veykril
...
finish renaming `rust-analyzer/reloadProcMacros` to `rust-analyzer/rebuildProcMacros`
I was trying out #14409 , but noticed that actually _running_ that command resulted in VS Code raising an error. This allows me to successfully run `rust-analyzer/rebuildProcMacros`.
2023-03-26 19:24:09 +00:00
David Barsky
ef422406ef
finish renaming rust-analyzer/reloadProcMacros
to rust-analyzer/rebuildProcMacros
2023-03-26 15:12:25 -04:00
bors
f85fc28508
Auto merge of #14412 - Veykril:proc-macro-op-queue, r=Veykril
...
internal: Handle proc macro fetching via OpQueue
2023-03-26 07:34:23 +00:00
Lukas Wirth
ee02213e65
Handle proc macro fetching via OpQueue
2023-03-26 09:33:41 +02:00
bors
27c076a367
Auto merge of #14409 - Veykril:vscode-reload-proc, r=Veykril
...
minor: Add user facing command for reloading proc-macros in VSCode
2023-03-25 20:01:24 +00:00
Lukas Wirth
586db0790c
minor: Add user facing command for reloading proc-macros in VSCode
2023-03-25 20:54:24 +01:00
bors
82ec4586f1
Auto merge of #14408 - Veykril:intern-block, r=Veykril
...
internal: Only intern blocks that declare items
We only used `BlockId` for the block defmap, so this is wasted memory. Lowering for non item declaring blocks is also cheaper now as we no longer have to fully lower a block that defines not items.
2023-03-25 19:48:04 +00:00
Lukas Wirth
675fc88afd
internal: Only intern blocks that declare items
2023-03-25 20:44:12 +01:00