.NET Runtime
runtimelab
Our great sponsors
.NET Runtime | runtimelab | |
---|---|---|
492 | 33 | |
11,151 | 1,132 | |
2.3% | 1.8% | |
10.0 | 4.1 | |
7 days ago | 6 days ago | |
C# | ||
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
.NET Runtime
-
Serilog... why?
This issue is still open: https://github.com/dotnet/runtime/issues/35995
-
Blazor wasm app really slow in Edge and Chrome on mobile
Also, it seems that initial memory settings have a big effect on mobile, this is a fix that will make it for 7.0.4 (April): https://github.com/dotnet/runtime/pull/80849
-
I hear you guys like large files... I raise 623,000 lines of code. My first ever game project, I was meant to carry on learning how to code properly but I have pretty bad ADHD so I just kept adding features and 8 years later here we are... It's sold over 30k copies on steam though lol
looked it up and engine.cpp seems to only be 8.5k lines, which doesn't seem super unreasonable to work with. It ain't no gc.cpp that's for sure.
-
ConcurrentDictionary as a job queue? Better data structures?
Threading.Channel has more or less replaced all the concurrent queue alternatives for me. channels have the benefit of nonblocking wait for when the channel can be written.
-
Top 10 bugs found in C# projects in 2022
My teammate created an issue on GitHub: the developers fixed the order of arguments and added a test.
-
how to bring order to a legacy codebase using editorconfig and dotnet format? it is only fixing whitespace issues
i have tried with an adapted .editorconfig but even using the "official" dotnet team editorconfig
- Am I dumb or does rust have a garbage collector?
-
Google wants RISC-V to be a “tier-1” Android architecture
Technically Mono supports RISC-V, so you can get .NET code running on it. Also it looks like if you're willing to go through messy and poorly documented build processes you can build CoreCLR on RISC-V: https://github.com/dotnet/runtime/issues/36748
So proper support is likely coming soonish, I'd guess by the time .NET 8 comes out.
-
Could SignalR be simpler?
There's an issue on simplifying WebSockets specifically https://github.com/dotnet/runtime/issues/77060 that may be of interest.
-
The AVL Tree: Implementation and Testing
See CLR is also using left/right for its not-quite-binary-tree in SortedSet. Though this also uses the Enum-As-Discriminator trick instead of boolean/array. I know the JVM also has/uses left/right but I can't find the backing source file right now.
runtimelab
- .NET INFORMAZIONI
-
Blazor: Is Microsoft going to support Blazor for long term?
The thing that is great here is dotnet -> wasm, and there is sounder work on that at an earlier stage in the runtimelab NativeAOT-LLVM branch https://github.com/dotnet/runtimelab/issues/1828.
-
In support of single binary executable packages
> There's something nice about the ergonomics of a single file compared to a single folder though
Agreed. We are going to move to proper single file (or as close as we can get) as soon as any sort of meaningful AOT compilation is available:
https://github.com/dotnet/runtimelab/tree/feature/NativeAOT
https://github.com/dotnet/runtimelab/issues/248
There is a "PublishSingleFile" option, but that is just a zip file in disguise.
- Compiling .NET into Native
-
Is C# a poor language choice if I care about not making my code easily reverse engineerable?
Good choice of words. Indeed, one nonetheless can compile their app to native code without IL at all, for example, via NativeAOT
-
.NET 6
You can, as sbelskie mentioned below. In .Net 6, it's available as a Preview [1]. But it's going to ship with the main framework in 7.0 [2].
The preview works quite well. You can build self-contained, smaller executables, and shared libraries callable from say, C code.
[1]: https://github.com/dotnet/runtimelab/blob/feature/NativeAOT/...
-
Announcing .NET 6 — The Fastest .NET Yet
Can you share any resources how to build such a DLL? I found this document, but it sounds like it would produce an EXE rather than a DLL: https://github.com/dotnet/runtimelab/blob/feature/NativeAOT/docs/using-nativeaot/compiling.md
Here
-
AWS Lambda Cold Start Times
> “.Net has almost the same performance as Golang and Rust, but only after 1k iterations(after JIT).”
Additions like async/await and nullable reference types make it easier to write bug-free code, which for a lot of folks is a better trade off than “speaking to the hardware directly”.
.NET also runs natively on a bunch of platforms now, including ARM.
I’d call all of that continuous improvement. Perhaps even reinvention?
[1] https://docs.microsoft.com/en-us/dotnet/core/deploying/ready...
[2] https://github.com/dotnet/runtimelab/tree/feature/NativeAOT
[3] https://www.techempower.com/benchmarks/#section=test&runid=5...
-
ZeroIoC - reflectionless IoC Container for .NET
For example, ordinary IoC containers depend on reflection emit. Such an approach will not work on platforms where AOT compilation is supported. They will throw an error in runtime. The AOT compilation is supported in Xamarin, Unity and Native AOT So, if you want to use AOT compilation to improve startup performance and ioc container then the source generation is a single option.
What are some alternatives?
Ryujinx - Experimental Nintendo Switch Emulator written in C#
ASP.NET Core - ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
actix-web - Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
WASI - WebAssembly System Interface
vgpu_unlock - Unlock vGPU functionality for consumer grade GPUs.
CoreCLR - CoreCLR is the runtime for .NET Core. It includes the garbage collector, JIT compiler, primitive data types and low-level classes.
sdk - Core functionality needed to create .NET Core projects, that is shared between Visual Studio and CLI
Uno.Wasm.Bootstrap - A simple nuget package to run C# code in a WASM-compatible browser
Roslyn - The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.
Introducing .NET Multi-platform App UI (MAUI) - .NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
core - Home repository for .NET Core
dotnet-wasi-sdk - Packages for building .NET projects as standalone WASI-compliant modules