Lukas Wirth
6f346c91be
Re-implement tidy as an xtask action
2024-07-07 09:12:16 +02:00
Lukas Wirth
d00f4749b1
re-generate feature docs in release
2024-07-07 09:01:35 +02:00
Lukas Wirth
58ec8b2028
Drop sourcegen
2024-07-07 09:00:19 +02:00
Lukas Wirth
2d14f47eb7
Move feature-doc generation to xtask codegen
2024-07-07 09:00:18 +02:00
Lukas Wirth
4465fff75e
Update hover test fixture
2024-07-07 08:55:10 +02:00
Lukas Wirth
e96601bbe0
Move parser test generation to xtask
2024-07-07 08:51:19 +02:00
Lukas Wirth
004a24e808
Allow new clippy lint in test
2024-07-07 08:41:41 +02:00
Lukas Wirth
7deebd6792
Fix stop_watch on linux
2024-07-07 08:40:41 +02:00
Lukas Wirth
7dfc583b0e
Update generated lint definitions
2024-07-07 08:35:18 +02:00
Lukas Wirth
20dc1b615d
Drop unused profile things
2024-07-07 08:24:10 +02:00
Lukas Wirth
faa13cbe20
fix: Fix parameter completions using macro expanded source ranges
2024-07-07 08:11:16 +02:00
Lukas Wirth
070f95c12e
Move capability querying out of the config module
2024-07-07 07:42:12 +02:00
bors
9194c7a5e9
Auto merge of #17551 - Veykril:has-errors, r=Veykril
...
Also mark InferenceResult::has_errors flag when there are error types
Should work around https://github.com/rust-lang/rust-analyzer/issues/15090#issuecomment-2211647133
2024-07-06 18:56:23 +00:00
Lukas Wirth
725e15fc80
Also mark InferenceResult::has_errors flag when there are error types
2024-07-06 20:45:23 +02:00
bors
e907f8175c
Auto merge of #17549 - Veykril:runnables-fix, r=Veykril
...
fix: Fix runnables being incorrectly constructed
I've misunderstood parts of the code here which caused runnables to arbitrarily break :) (I have yet to understand the conditions that made them break though, there is some odd caching involved I feel like ...)
Fixes https://github.com/rust-lang/rust-analyzer/issues/17402
2024-07-06 18:24:30 +00:00
Lukas Wirth
807fdd6ab1
fix: Fix runnables being incorrectly constructed
2024-07-06 20:23:14 +02:00
bors
162ecedd99
Auto merge of #17548 - Veykril:debug-fix, r=Veykril
...
fix: Fix passing `message-format` after -- in debugging
Fixes https://github.com/rust-lang/rust-analyzer/pull/17495#issuecomment-2211717224
2024-07-06 16:04:53 +00:00
Lukas Wirth
28981813e6
Fix passing message-format after -- in debugging
2024-07-06 18:03:33 +02:00
bors
98238b53b9
Auto merge of #17547 - Veykril:runnables-env, r=Veykril
...
internal: Clean up runnable lsp extension
This feels like a natural addition to me, and also allows us to drop the expect-test hardcoding from the extension. Additionally, `cargoExtraArgs` is pointless, all the client will do is merge it with `cargoArgs` so the server can do that instead of delegating that to the client.
2024-07-06 15:02:41 +00:00
Lukas Wirth
ac4e6c3046
Don't emit current dir as cwd for runnables
2024-07-06 16:44:57 +02:00
Lukas Wirth
9959546c8a
Flatten cargoExtraArgs away from the runnable lsp extension
2024-07-06 16:36:27 +02:00
Lukas Wirth
0859772dbe
Add environment to runnable lsp extension
2024-07-06 16:20:25 +02:00
bors
e33dcc6ab2
Auto merge of #17508 - jjoeldaniel:landing-page, r=Veykril
...
feat: Add landing/faq walkthrough pages
This is a basic implementation of a landing and FAQ page; I've included the bare-bones information as well as a [recommended section on inlay hints](https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/Landing.20Page/near/446135321 ).
I've also added `rust-analyzer: Open Walkthrough` and `rust-analyzer: Open FAQ` commands for ease of access.
I am hoping to create a small list of FAQ to include that might be useful as well as any other information I may have missed in the landing page. Feel free to share any suggestions!

cc #13351
2024-07-06 13:59:36 +00:00
Lukas Wirth
e8be2a0ac5
Diagnose unresolved self value in path expression
2024-07-06 15:44:12 +02:00
Shoyu Vanilla
90814f4170
Disallow nested impl traits
2024-07-04 23:31:55 +09:00
bors
58bf5936c0
Auto merge of #17536 - Veykril:syntax-diags, r=Veykril
...
fix: Don't emit semantic diagnostics in files with a lot of syntax errors
These will only add to the noise when something very unexpected breaks or where parser recovery fails to kick in.
2024-07-03 09:01:48 +00:00
Lukas Wirth
87da256395
fix: Don't emit semantic diagnostics in files with a lot of syntax errors
2024-07-03 10:59:46 +02:00
Lukas Wirth
5e60845f52
Fix up the syntax tree for macro 2.0
2024-07-03 10:41:19 +02:00
Lukas Wirth
8f8f440cb2
Skip match exhaustiveness checking if pattern type contains errors
2024-07-03 08:31:40 +02:00
Lukas Wirth
0fef8f01a3
Move lifetimes in front of type and const params but after self
2024-07-02 14:17:34 +02:00
Lukas Wirth
99e432d253
Make GenericParams::lifetimes private
2024-07-02 13:45:53 +02:00
Lukas Wirth
446e15484c
Make GenericParams::where_predicates private
2024-07-02 13:45:50 +02:00
Lukas Wirth
1da9ade53d
Make GenericParams::type_or_consts private
2024-07-02 13:45:48 +02:00
Lukas Wirth
5fa5378856
Fix lifetime parameters moving paramter defaults
2024-07-02 12:34:32 +02:00
Lukas Wirth
fe9337311c
Improve error message when the proc-macro server unexpectedly exits
2024-07-01 14:30:21 +02:00
bors
94e5efdab1
Auto merge of #17495 - listochkin:pass-cargo-extra-args-for-debugger, r=Veykril
...
pass cargo extra args when debugging
fixes #17128
2024-07-01 10:34:09 +00:00
bors
29fbc2414d
Auto merge of #17494 - harrysarson:harry/keep-braces, r=Veykril
...
do not normalize `use foo::{self}` to `use foo`
It changes behaviour and can cause collisions. E.g. for the following snippet
```rs
mod foo {
pub mod bar {}
pub const bar: i32 = 8;
}
// transforming the below to `use foo::bar;` causes the error:
//
// the name `bar` is defined multiple times
use foo::bar::{self};
const bar: u32 = 99;
fn main() {
let local_bar = bar;
}
```
we still normalize
```rs
use foo::bar;
use foo::bar::{self};
```
to `use foo::bar;` because this cannot cause collisions.
See: https://github.com/rust-lang/rust-analyzer/pull/17140#issuecomment-2079189725
2024-07-01 10:20:01 +00:00
bors
dffbad50c1
Auto merge of #17522 - Veykril:comptimes, r=Veykril
...
internal: Cut compiletimes slightly
2024-07-01 08:43:11 +00:00
Lukas Wirth
d40bc51e3d
Bump rustc_pattern_analysis
2024-06-30 18:41:55 +02:00
Lukas Wirth
1653889bad
Remove serde flag from indexmap dependency
2024-06-30 18:14:53 +02:00
bors
2cac9a5684
Auto merge of #17520 - Veykril:slim-proc-macro-api, r=Veykril
...
internal: Cleanup proc-macro-srv some more
2024-06-30 15:12:50 +00:00
Lukas Wirth
fefcb46c3f
Arc proc-macro expander paths
2024-06-30 17:03:03 +02:00
Lukas Wirth
45362de42f
Abstract proc-macro-srv protocol format
2024-06-30 16:56:30 +02:00
Lukas Wirth
b1518b262e
Simplify
2024-06-30 16:43:22 +02:00
Lukas Wirth
58286ccbd1
Actual dummy server for the server cli
2024-06-30 16:34:06 +02:00
Lukas Wirth
f3b3eef221
Fix proc-macro-test build script
2024-06-30 16:26:39 +02:00
Lukas Wirth
4c6235948d
Faster env snapshotting in proc-macro-srv
2024-06-30 16:10:20 +02:00
Lukas Wirth
ef4b97490f
Move proc-macro-test test path fetching from include to env var
2024-06-30 15:37:00 +02:00
Lukas Wirth
d8a74a2b60
Rename proc-macro-srv::server to server_impl
2024-06-30 15:36:46 +02:00
Lukas Wirth
05c77898d9
Move proc-macro-srv RUSTC_VERSION fetching from include to env var
2024-06-30 15:28:31 +02:00