2025-05-20 18:37:54.698 [error] Error: Cannot activate the ‘C# Dev Kit’ extension because it depends on unknown extension ‘ms-dotnettools.csharp’
at iK.j (file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:135:3203)
at file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:135:2390
at Array.map ()
at iK.h (file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:135:2378)
at iK.activateById (file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:135:2290)
at $oe.bb (file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:139:10881)
at $oe.$activate (file:///c:/Users/myuser/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:139:22648)
Hi! Please install the 2nd extension (Anysphere C#); the C# Dev Kit is unsupported as it will link to the Microsoft C# extension, which is not available.
Please uninstall the C# Dev Kit extension, reload the window, and then install Anysphere C#.
C# Anysphere makes C# work, but now the F# Ionide extension breaks as it depends on the C# dev extension:
Cannot activate the ‘Ionide for F#’ extension because it depends on the ‘C#’ extension from ‘Anysphere’, which is not installed. Would you like to install the extension and reload the window?
As you can see, somehow the dependency automatically switched to Anysphere over the official C# dev extension, but nonetheless it can’t find it even when installed. And I can’t use the official C# dev extension with Anysphere side by side either.
I am also now unable to use Ionide for F# support because it depends on the C# extension. As BrunoZ mentioned, it looks like it is trying to map to the new extension but failing.
@BrunoZ@Ryan-Palmer thanks for flagging this issue. We forked and published the F# extension that doesn’t depend on the MS C# extension. It is available in the extension marketplace – attaching a screenshot:
@ravirahman Thank you for responding so quickly. Unfortunately the plugin installs but fails to start up. I’ve tried reinstalling / restarting etc etc. I also uninstalled all the MS plugins and the official Ionide before I started to avoid conflicts:
2025-05-29 13:17:17.181 [info] ExtensionService#_doActivateExtension anysphere.Ionide-fsharp, startup: false, activationEvent: 'onLanguage:fsharp'
2025-05-29 13:17:17.211 [error] Activating extension anysphere.Ionide-fsharp failed due to an error:
2025-05-29 13:17:17.211 [error] Error: couldn't resolve plugin path
at ■■ (c:\Users\Ryan\.cursor\extensions\anysphere.ionide-fsharp-7.25.10\fsharp.js:2:656561)
at c:\Users\Ryan\.cursor\extensions\anysphere.ionide-fsharp-7.25.10\fsharp.js:2:746416
at c:\Users\Ryan\.cursor\extensions\anysphere.ionide-fsharp-7.25.10\fsharp.js:2:845262
at Object.<anonymous> (c:\Users\Ryan\.cursor\extensions\anysphere.ionide-fsharp-7.25.10\fsharp.js:2:845283)
at Module._compile (node:internal/modules/cjs/loader:1484:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1564:10)
at Module.load (node:internal/modules/cjs/loader:1295:32)
at Module._load (node:internal/modules/cjs/loader:1111:12)
at c._load (node:electron/js2c/node_init:2:16955)
at i._load (file:///c:/Users/Ryan/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:195:10980)
at t._load (file:///c:/Users/Ryan/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:187:23640)
at s._load (file:///c:/Users/Ryan/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:179:21717)
at Module.require (node:internal/modules/cjs/loader:1318:19)
at require (node:internal/modules/helpers:179:18)
at Joe.yb (file:///c:/Users/Ryan/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:187:25336)
at async Promise.all (index 0)