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

Support .NET (Core) #1060

Open
timbussmann opened this issue Oct 4, 2022 · 4 comments
Open

Support .NET (Core) #1060

timbussmann opened this issue Oct 4, 2022 · 4 comments

Comments

@timbussmann
Copy link

With .NET Core being supported on Linux, it would be great to use the actual .NET runtime instead of Mono. The latest LTS .NET version (6.0) would bring massive performance benefits and many new useful language features. Writing code for Mono is a lot more effort compared to just using .NET nowadays, both on Windows and Linux.

One major issue with .NET is that it's very difficult to compile single code files. Compiling a C# file usually requires a project file, otherwise, the dotnet commands will fail, and bypassing this with direct use of the compiler is brittle. The project file could easily be hard-coded or generated on the fly though.

I'd be happy to assist with this but given my lack of experience with the server implementation and Python, I'm struggling to get started. I've already proposed this PR to add the .NET 6 SDK to the runtimes image.

@Riolku
Copy link
Contributor

Riolku commented Oct 4, 2022

Rust uses some amount of a project file (it has a Cargo.toml hardcoded), so maybe we could do something like that for .NET as well.

@timbussmann
Copy link
Author

Thanks for the hint with the Rust executor @Riolku , that helped to get me started. I'm struggling to grasp how get_versionable_commands is working, is there any documentation that you can point me to?

@Riolku
Copy link
Contributor

Riolku commented Oct 9, 2022

Go read base_executor.py. Seems the command returns the canonical name and path of all parts relevant to a runtime's version.

@timbussmann
Copy link
Author

I've started a first draft via #1064, help and feedback are very welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants