Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Subtree update of rust-analyzer #138305

Merged
merged 74 commits into from
Mar 10, 2025
Merged
Changes from 1 commit
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
66368aa
Allow unsetting default cfgs
Veykril Feb 27, 2025
f19b205
Warn when the used toolchain looks too old for rust-analyzer
Veykril Feb 27, 2025
43c5e95
Normalize some assist names
Veykril Mar 2, 2025
2f9e558
add diagnostic for dangling dyn
Shourya742 Mar 2, 2025
1840f57
add diagnostic for dangling impl
Shourya742 Mar 2, 2025
c2a630e
Add dangling impl
Shourya742 Mar 3, 2025
c315ad9
Support tuple struct patterns for expand_rest_pattern assist
Veykril Mar 2, 2025
6610e60
Merge pull request #19244 from Veykril/push-nmnrnlysvyvk
Veykril Mar 3, 2025
73e0fe1
Merge pull request #19243 from Veykril/push-qrrqsywkwyzp
Veykril Mar 3, 2025
16644ba
Merge pull request #19261 from Veykril/push-rnqlyrvqpols
Veykril Mar 3, 2025
de07b17
Bump minimum supported toolchain to 1.82
lnicola Mar 3, 2025
d137fee
Merge pull request #19275 from lnicola/min-1-82
Veykril Mar 3, 2025
0d6dfc8
Improve keyword completion for 'let' and 'let mut'
Natural-selection1 Mar 4, 2025
120d549
change 'let mut' keyword completion into 'ietm' snippet
Natural-selection1 Mar 4, 2025
b9d157c
Twiddle with the rustup invocation on CI
lnicola Mar 5, 2025
9a8968f
Merge pull request #19265 from Shourya742/2025-03-01-add-dangling-dyn…
lnicola Mar 5, 2025
e260467
Merge pull request #19286 from lnicola/twiddle-ci
lnicola Mar 5, 2025
0ffef9b
minicore: Add size_of to prelude and add rust_2024 prelude
thaliaarchi Mar 5, 2025
653801b
Use size_of from the prelude instead of imported
thaliaarchi Mar 5, 2025
5ad05fb
Merge pull request #19288 from thaliaarchi/use-prelude-size-of
Veykril Mar 5, 2025
5421fba
add test cases for 'letm' keyword completion
Natural-selection1 Mar 5, 2025
049f4db
Add warning and debug information when `cargo metadata` fails
aibaars Mar 5, 2025
52525bc
Improve tracing log format in cargo_workspace.rs
aibaars Mar 5, 2025
87815f7
Use HIR unsafety information for unsafe syntax highlightng
Veykril Mar 3, 2025
b9f5453
Merge pull request #19274 from Veykril/push-pouwrwwrlrlt
Veykril Mar 5, 2025
8641805
Fix syntax highlightingg punct filtering ignoring mods
Veykril Mar 5, 2025
363297d
Merge pull request #19279 from Natural-selection1/master
Veykril Mar 5, 2025
2cff701
Merge pull request #19292 from Veykril/push-zonnrrlosqmv
Veykril Mar 5, 2025
bee6cdd
fix: Make RustAnalyzer:Run available in manifest file
alibektas Mar 5, 2025
d95d278
Adjust relevance scoring threshold to consistent with existing implem…
Natural-selection1 Mar 6, 2025
86741ea
Merge pull request #19297 from Natural-selection1/master
Veykril Mar 6, 2025
2e6292c
Merge pull request #19295 from alibektas/rust_analyzer_run_on_cargo_toml
Veykril Mar 6, 2025
66a1164
Change `%e` to `?e` to include detailed error message
aibaars Mar 6, 2025
6a3ede1
Merge pull request #19290 from aibaars/patch-1
Veykril Mar 6, 2025
860637a
Normalize projections in evaluated const display and layout calculation
ChayimFriedman2 Feb 27, 2025
fcb34b1
Pass the target crate in `HirFormatter`
ChayimFriedman2 Feb 27, 2025
92de0ff
Use correct crate for trait env in `render_const_scalar()`
ChayimFriedman2 Feb 27, 2025
0bd3229
Warn the user when a rename will change the meaning of the program
ChayimFriedman2 Feb 1, 2025
b58fc9c
Mark `rust-analyzer.showSyntaxTree` config option as requiring server…
ChayimFriedman2 Mar 6, 2025
c4f727b
Merge pull request #19304 from ChayimFriedman2/restart-syntax-tree
ChayimFriedman2 Mar 6, 2025
f68fd66
Fix logical error in relevance scoring implementation
Natural-selection1 Mar 7, 2025
16878eb
Refactor relevance scoring to use a named constant BASE_SCORE
Natural-selection1 Mar 7, 2025
c8d9d5a
Move project MSRV back to 1.78
Veykril Mar 7, 2025
5c6a124
Pop up a notification for the MSRV project loading warning
Veykril Mar 7, 2025
02c9b7c
Merge pull request #19307 from Natural-selection1/master
Veykril Mar 7, 2025
d11c5b8
Merge pull request #19308 from Veykril/push-rnrxutwlvmly
Veykril Mar 7, 2025
bdf602a
Log build script error output in `load_cargo::load_workspace_at`
aibaars Mar 7, 2025
e98837f
fix(hir): `VariantDef` is `impl HasSource`
snprajwal Mar 7, 2025
b6f1ce8
fix: do not apply editorconfig to git commit msg
snprajwal Mar 7, 2025
e88f892
Fix syntax fixup producing invalid punctuation
Feb 28, 2025
fee83ba
Generated doc update
Feb 28, 2025
bb82831
Bump chalk for built-in supports of async closures
ShoyuVanilla Feb 26, 2025
0e4f189
internal: Migrate `inline_local_variable` to `SyntaxEditor`
ShoyuVanilla Mar 9, 2025
965a0c0
fix: Prevent wrong invocations of `needs_parens_in` with non-ancestra…
ShoyuVanilla Mar 9, 2025
60da021
Merge pull request #19324 from ShoyuVanilla/migrate-inline-var
Veykril Mar 9, 2025
e1912f8
Rank ADT constructors as constructors for completion scoring
Veykril Mar 9, 2025
129545f
Merge pull request #19325 from Veykril/push-sxyvwwsmtxrr
Veykril Mar 10, 2025
f36e2ea
Merge pull request #19232 from ShoyuVanilla/issue-19196
Veykril Mar 10, 2025
b2501ef
Merge pull request #19252 from flodiebold/fix-fixup-delimiters
Veykril Mar 10, 2025
b2a4f3d
Merge pull request #19316 from snprajwal/git-commit-ec
Veykril Mar 10, 2025
71b9103
Merge pull request #19314 from snprajwal/variantdef-impl
Veykril Mar 10, 2025
c961ee6
Merge pull request #19311 from aibaars/log-build-script-error
Veykril Mar 10, 2025
7ee9ce8
Fix `path` macro hygiene
Veykril Mar 10, 2025
fdee1c1
Preparing for merge from rust-lang/rust
lnicola Mar 10, 2025
e1da1b0
Merge from rust-lang/rust
lnicola Mar 10, 2025
f53d1eb
Merge pull request #19327 from Veykril/push-qyyvkulltzpz
Veykril Mar 10, 2025
44fad0b
Merge pull request #19079 from ChayimFriedman2/rename-conflict
Veykril Mar 10, 2025
1c8acd4
Merge pull request #19330 from ChayimFriedman2/normalize-projection
Veykril Mar 10, 2025
ee79f3e
Run proc-macro server tests are separate CI job
Veykril Mar 10, 2025
87d5bf2
Bump rustc crates
lnicola Mar 10, 2025
c372c55
Fix simd layout test
lnicola Mar 10, 2025
af32b22
Merge pull request #19328 from Veykril/push-umwykvoskvyp
Veykril Mar 10, 2025
1d983bf
Format code
lnicola Mar 10, 2025
52f39ff
Merge pull request #19331 from lnicola/sync-from-rust
lnicola Mar 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
fix: Make RustAnalyzer:Run available in manifest file
alibektas committed Mar 5, 2025
commit bee6cdd962bc9517282e044617d6e42a657620a7
6 changes: 6 additions & 0 deletions src/tools/rust-analyzer/editors/code/src/ctx.ts
Original file line number Diff line number Diff line change
@@ -5,6 +5,7 @@ import * as ra from "./lsp_ext";
import { Config, prepareVSCodeConfig } from "./config";
import { createClient } from "./client";
import {
isCargoTomlEditor,
isDocumentInWorkspace,
isRustDocument,
isRustEditor,
@@ -429,6 +430,11 @@ export class Ctx implements RustAnalyzerExtensionApi {
return editor && isRustEditor(editor) ? editor : undefined;
}

get activeCargoTomlEditor(): RustEditor | undefined {
const editor = vscode.window.activeTextEditor;
return editor && isCargoTomlEditor(editor) ? editor : undefined;
}

get extensionPath(): string {
return this.extCtx.extensionPath;
}
19 changes: 13 additions & 6 deletions src/tools/rust-analyzer/editors/code/src/run.ts
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@ import type { CtxInit } from "./ctx";
import { makeDebugConfig } from "./debug";
import type { Config } from "./config";
import type { LanguageClient } from "vscode-languageclient/node";
import { unwrapUndefinable, type RustEditor } from "./util";
import { log, unwrapUndefinable, type RustEditor } from "./util";

const quickPickButtons = [
{ iconPath: new vscode.ThemeIcon("save"), tooltip: "Save as a launch.json configuration." },
@@ -19,7 +19,7 @@ export async function selectRunnable(
debuggeeOnly = false,
showButtons: boolean = true,
): Promise<RunnableQuickPick | undefined> {
const editor = ctx.activeRustEditor;
const editor = ctx.activeRustEditor ?? ctx.activeCargoTomlEditor;
if (!editor) return;

// show a placeholder while we get the runnables from the server
@@ -175,10 +175,17 @@ async function getRunnables(
uri: editor.document.uri.toString(),
};

const runnables = await client.sendRequest(ra.runnables, {
textDocument,
position: client.code2ProtocolConverter.asPosition(editor.selection.active),
});
const runnables = await client
.sendRequest(ra.runnables, {
textDocument,
position: client.code2ProtocolConverter.asPosition(editor.selection.active),
})
.catch((err) => {
// If this command is run for a virtual manifest at the workspace root, then this request
// will fail as we do not watch this file.
log.error(`${err}`);
return [];
});
const items: RunnableQuickPick[] = [];
if (prevRunnable) {
items.push(prevRunnable);
4 changes: 4 additions & 0 deletions src/tools/rust-analyzer/editors/code/src/util.ts
Original file line number Diff line number Diff line change
@@ -90,6 +90,10 @@ export function isRustEditor(editor: vscode.TextEditor): editor is RustEditor {
return isRustDocument(editor.document);
}

export function isCargoTomlEditor(editor: vscode.TextEditor): editor is RustEditor {
return isCargoTomlDocument(editor.document);
}

export function isDocumentInWorkspace(document: RustDocument): boolean {
const workspaceFolders = vscode.workspace.workspaceFolders;
if (!workspaceFolders) {