Tyrrrz/Onova

My Onova-related projects generate too many system*.dlls in the bin directory

YueLu0116 opened this issue · 5 comments

  • Issue description
    In the generated bin\Release directory, there exist 16 system*.dlls, such as System.Buffers.dll/System.Buffers.xml, System.Memory.dll/System.Memory.xml, System.ValueTuple.dll/System.ValueTuple.xml, etc.
  • Possible reason
    Refer to why does my net standard nuget package trigger so many dependencies and Using .NET Standard with Full Framework .NET, these redundant output dlls may be the result of that current version of Onova depends on .netframework v4.6.1 and .netstandard v2.0, and .netframework 4.6.1 is just partially .net standard 2.0 compliant. Update to .netframework 4.7.2 or higher may resolve this issue.

Yeah, you may be seeing this because you're on old .NET Framework version. Starting from v4.7.2 it should be fine.
Ideally, of course, moving to .NET 5 will help too. The .NET Standard targets will be phased out eventually across most libraries in the eventual future, in favor of .NET 5/6+.

Yeah, you may be seeing this because you're on old .NET Framework version. Starting from v4.7.2 it should be fine.
Ideally, of course, moving to .NET 5 will help too. The .NET Standard targets will be phased out eventually across most libraries in the eventual future, in favor of .NET 5/6+.

Thanks for your reply.
My project has been already on .Net Framework v4.8 and 16 system-related dlls were generated. I checked Onova in NuGet packages management in vs-2019, and in the dependencies list, it said Onova depended on both .Net Framework v4.6.1 and .Net Core v2.0. Should Onova itself be rebuild under higher version of .Net Framework instead of my project to avoid system-related dlls?

Actually, because it has a .NET Framework v4.6.1 target, it shouldn't bring any System dependencies -- this is something that only happens with .NET Standard packages. I thought it might be because of System.Text.Json dependency but that one also seems to have .NET Framework v4.6.1 target. So I'm not sure where the System dll's are coming from in the first place.

Thanks for your advice. It seems I need to check all the packages' dependencies of my project.
By the way, as a newbie (my career began just two months ago), I really appreciate your contribution to the open source community. So much to learn from you :)

You're welcome 🙂