Ich habe Argu zu meinem Projekt hinzugefügt und ca. 700MB Pakete wurden zusammen mit ihm heruntergeladen. Dies steht im Zusammenhang mit Paket installs extra packages, aber ich möchte die feinen Unterschiede bei der Spezifizierung der Rahmenbeschränkungen mit> = oder nur Framework: net46 verstehen.Paket Rahmenbeschränkung Unterschiede
Auf meinem ersten Versuch ich nur Argu zur paket.dependencies
Datei hinzugefügt:
nuget Argu
Da dies in einem Download von fast einem GB-Paketen geführt, fragte ich:
.\.paket\paket.exe why nuget System.Threading.Thread
und antwortet:
Paket version 3.27.02
NuGet System.Threading.Thread is a transitive dependency.
It's a part of following dependency chains:
-> Argu
-> FSharp.Core
-> System.Threading.Thread
-> MathNet.Numerics.FSharp
-> FSharp.Core
-> System.Threading.Thread
0 seconds - ready.
Dann habe ich die folgende Beschränkung auf paket.dependencies:
nuget Argu framework: >= net46
jedoch diese die gleichen Pakete in das Herunterladen geführt.
Schließlich habe ich:
nuget Argu framework: net46
Und diese spezifische Einschränkung alle unneccassary Pakete haben in der Tat entfernen:
Garbage collecting Microsoft.NETCore.Platforms
Garbage collecting Microsoft.Win32.Primitives
Garbage collecting NETStandard.Library
Garbage collecting System.AppContext
Garbage collecting System.Collections.Concurrent
...
jedoch alle meine anderen Abhängigkeiten werden wie folgt angegeben (meist als Folge , aber nicht immer, da ich das ursprüngliche Problem beseitigte):
source https://www.nuget.org/api/v2
nuget FAKE framework: >= net46
nuget FileHelpers framework: >= net46
nuget FSharp.Collections.ParallelSeq 1.0.2 framework: >= net46
nuget Fsharp.Data framework: >= net46
nuget MathNet.Numerics.FSharp 3.14.0-beta01 beta framework: >= net46
nuget MathNet.Numerics.MKL.Win-x64 2.2.0 framework: >= net46
nuget NuGet.CommandLine framework: >= net46
nuget Streams 0.4.1 framework: >= net46
nuget System.Linq.Dynamic 1.0.7 framework: >= net46
nuget Fsharp.Configuration framework: >= net46
Also meine Frage ist Argu
spezielle in irgendeiner Weise, oder sollte ich immer Framework-Einschränkungen und zielen gezielt 46 (oder 45) anstelle von> =.