vscodium icon indicating copy to clipboard operation
vscodium copied to clipboard

Current state C# .NET debugging in VSCodium (C# extension)

Open baconsplit opened this issue 11 months ago • 11 comments

Describe the bug Cannot debug C# .NET applications in VSCodium via the Microsoft C# extension. There exists a 2 year old issue in this repo, but I wanted to ask on the current situation. Back then, and currently in the docs, a possible workaround is to use netcoredbg from Samsung. Are there any new alternatives/workarounds?

Please confirm that this problem is VSCodium-specific

  • [x] This bug doesn't happen if I use Microsoft's Visual Studio Code. It only happens in VSCodium.

Please confirm that the issue/resolution isn't already documented

To Reproduce Steps to reproduce the behavior: Try to debug a C# .NET application in VSCodium.

Expected behavior The debugging session begins.

Screenshots image

Desktop (please complete the following information):

  • OS: Windows 10 64bit
  • Version: 10.0.19045 Build 19045

Additional context No real issue, I know. But I still hope for some help :)

baconsplit avatar Mar 10 '24 13:03 baconsplit

edit the debugging extension and patch out the check

tadghh avatar Mar 17 '24 04:03 tadghh

edit the debugging extension and patch out the check

Could you please provide details on how this can be done.

Thank you.

YogiCoder8888 avatar May 31 '24 08:05 YogiCoder8888

edit the debugging extension and patch out the check

Could you please provide details on how this can be done.

Thank you. Google "WSL run under VScodium". The snswer is on a github issues page. You would need to repatch for any non cached docker images

tadghh avatar May 31 '24 16:05 tadghh

Does the free software C# debugger netcoredbg work with VSCodium now?

someone-aka-sum1 avatar Aug 15 '24 11:08 someone-aka-sum1

To answer my own question, it seems the C# extension packs netcoredbg which enables debugging. Thanks to the extension and the debugger authors

someone-aka-sum1 avatar Aug 19 '24 12:08 someone-aka-sum1

@someone-aka-sum1

I'd suggest using my more updated fork here: https://github.com/blipk/vscodium-csharp

The version provided by muhammed samy is built on some older version of .NET and has problems with the razor language server

blipk avatar Aug 30 '24 12:08 blipk

@blipk I have a couple of questions: What are the main differences between your patches and Muhammad Samy's? Could you release the tools you use to autopatch it, or describe the process? And finally, could you add a step to push it to the Open VSX Registry so as to make it easier to install? Note: Your README links to Muhammad Sammy's release at Open VSX.

someone-aka-sum1 avatar Aug 30 '24 16:08 someone-aka-sum1

@someone-aka-sum1

The patches are the same except they're applied to the official branch via patch files, whereas samy's is done manually and has diverged quite a lot so his repo is using a couple of out date dependencies, settings etc.

You can see what he is missing from official main here: https://github.com/muhammadsammy/free-vscode-csharp/compare/master...dotnet%3Avscode-csharp%3Amain

I built these patch files manually by comparing and filtering the diff from what he is changed from main and then also applied some adjustments (mainly to the build process): https://github.com/dotnet/vscode-csharp/compare/main...muhammadsammy:free-vscode-csharp:master

I've also updated the package build to build against dotnet 8 rather than dotnet 7 and improved the CI process.

The main reason I did this was the old version of the razor language server he was building against was causing me (and others) issues.

You can see some notes in the Development notes section on my README or check out the _patches directory and .github/workflows/*.yml files.

I'm just finalising a few things with the CI and then I will look at getting it published on Open VSX.

blipk avatar Aug 30 '24 22:08 blipk

@someone-aka-sum1

CI workflows are finalised and it will be automatically published to Open VSX shortly after they approve my namespace claim

blipk avatar Aug 31 '24 03:08 blipk

@someone-aka-sum1 Oh, and what if you have a merge conflict? I'm also concerned that you are not using your real name for the extension. Mind you, I am not using my real name right now either, but then I'm not trying to get you to install my software :)

someone-aka-sum1 avatar Aug 31 '24 23:08 someone-aka-sum1

Patches are applied to the current state of the upstream official extension so there will be no "merge conflict" with git.

The patches may fail if the upstream changes significantly, however I've designed them to avoid that as much as possible. If they do, then the build process will detect that and fail, and then they will have to be manually updated.

I suggest you read the development notes section in the README and look at the source code in ___patching and .github/workflows

I'm not trying to get you to install anything, I'm just presenting a solution for anyone who encountered the same issues I did with sammy's fork.

It's now available on Open VSX - https://open-vsx.org/extension/blipk/csharp

blipk avatar Sep 01 '24 02:09 blipk