Sdílet prostřednictvím


PackageReference bez verze vyvolá chybu

Od verze .NET 10 nuGet vyvolá NU1015 chybu, pokud PackageReference položka nemá zadanou verzi, a ne předchozí NU1604 upozornění.

Při použití správy centrálních balíčků není žádná změna, protože podle návrhu by XML PackageReference v tomto scénáři neměl mít verzi.

Verze byla představena

.NET 10

Předchozí chování

NuGet dříve vyvolal upozornění NU1604 s následujícím textem:

Závislost projektu PackageA neobsahuje inkluzivní dolní mez. Do verze závislosti zahrňte dolní mez, abyste zajistili konzistentní výsledky obnovení.

Nové chování

Od verze .NET 10 vyvolá NuGet chybu NU1015 s následujícím textem:

Následující položky PackageReference nemají zadanou verzi: PackageA

Typ zásadní změny

Jedná se o změnu chování.

Důvod změny

Zpráva "bez dolní hranice" byla matoucí a nebylo jasné, jak tento problém vyřešit. NuGet navíc obnovil nejnižší verzi pro tento balíček, což je zřídka, co chtějí vývojáři. Tato změna poskytuje jasnější a efektivnější chybové zprávy, když chybí metadata verze.

Přidejte do odkazu na balíček verzi, například:

- <PackageReference Include="Some.Package" />
+ <PackageReference Include="Some.Package" Version="1.2.3" />

Pokud je požadovaná nejnižší verze balíčku, použijte Version="0.0.0". V tomto případě NuGet zobrazí upozornění NU1603, nikoli předchozí NU1604.

Pokud se chcete vrátit k předchozímu upozornění, můžete nastavit SdkAnalysisLevel9.0.300 nebo snížit hodnotu. To však ovlivní všechny funkce, které jsou závislé na SdkAnalysisLevel.

Ovlivněná rozhraní API

Žádné.