File tree Expand file tree Collapse file tree 1 file changed +11
-3
lines changed Expand file tree Collapse file tree 1 file changed +11
-3
lines changed Original file line number Diff line number Diff line change @@ -19,6 +19,16 @@ let ctx: Ctx | undefined;
1919const RUST_PROJECT_CONTEXT_NAME = "inRustProject" ;
2020
2121export async function activate ( context : vscode . ExtensionContext ) {
22+ // For some reason vscode not always shows pop-up error notifications
23+ // when an extension fails to activate, so we do it explicitly by ourselves.
24+ // FIXME: remove this bit of code once vscode fixes this issue: https://github.com/microsoft/vscode/issues/101242
25+ await tryActivate ( context ) . catch ( err => {
26+ void vscode . window . showErrorMessage ( `Cannot activate rust-analyzer: ${ err . message } ` ) ;
27+ throw err ;
28+ } ) ;
29+ }
30+
31+ async function tryActivate ( context : vscode . ExtensionContext ) {
2232 // Register a "dumb" onEnter command for the case where server fails to
2333 // start.
2434 //
@@ -58,9 +68,7 @@ export async function activate(context: vscode.ExtensionContext) {
5868
5969 const workspaceFolder = vscode . workspace . workspaceFolders ?. [ 0 ] ;
6070 if ( workspaceFolder === undefined ) {
61- const err = "Cannot activate rust-analyzer when no folder is opened" ;
62- void vscode . window . showErrorMessage ( err ) ;
63- throw new Error ( err ) ;
71+ throw new Error ( "no folder is opened" ) ;
6472 }
6573
6674 // Note: we try to start the server before we activate type hints so that it
You can’t perform that action at this time.
0 commit comments