Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
NuGet-distributionsmetoder
| NuGet-version | Tillgänglig i Visual Studio-version | Tillgänglig i .NET SDK(er) |
|---|---|---|
| 6.0.0 | Visual Studio 2022 version 17.0.0 | 6.0.01 |
| 6.0.1 | Visual Studio 2022 version 17.0.2 | N/A |
| 6.0.2 | Visual Studio 2022 version 17.0.11 | 6.0.3011 |
| 6.0.3 | Visual Studio 2022 version 17.0 | 6.0.1101 |
| 6.0.5 | N/A | 6.0.1181 |
| 6.0.6 | N/A | 6.0.1271 |
1 Installerat med Visual Studio 2022 with.NET Core-arbetsbelastning
Sammanfattning: Nyheter i 6.0.6
- [Säkerhet]: Microsoft Security Advisory CVE-2024-0057 | NuGet-klientsäkerhetsfunktionen kringgår sårbarhet – #12653
Sammanfattning: Nyheter i 6.0.5
- [Säkerhet]: Microsoft Security Advisory CVE-2023-29337 | Sårbarhet för körning av NuGet-klientfjärrkod – #12653
Anmärkning
Det finns ett beteende som bryter mot ändringar i Linux. Den temporära mappplatsen, där NuGet lagrar temporära filer under sina olika åtgärder, har ändrats från /tmp/NuGetScratch till /tmp/NuGetScratch<username>. T.ex. för användare User1 blir /tmp/NuGetScratchUser1temp-mappen .
Sammanfattning: Nyheter i 6.0.3
- [Säkerhet]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - #12149
Anmärkning
Visual Studio 17.0, MSBuild 17.0 och .NET 6.0 kräver NuGet.exe 6.0 eller senare.
Sammanfattning: Nyheter i 6.0.2
- [Säkerhet]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - #11883
Sammanfattning: Nyheter i 6.0.0
🎉 Det här är den första versionen som erbjuder fullständig redigering och återställning av stöd för NuGet-paket som riktar sig till .NET 6.0 🎉
.NET 6-stöd
NuGet 6.0 är den första versionen som erbjuder fullständig redigering och återställning av stöd för NuGet-paket som riktar sig till .NET 6.0. Nu kan du rikta in dig på följande målramverk:
- net6.0
- net6.0-windows
- net6.0-android
- net6.0-ios
- net6.0-macos
- net6.0-maccatalyst
- net6.0-tvos
- net6.0-tizen
Om du inte är bekant med .NET 6.0-målen idag eller hur det kommer att se ut i framtiden, glöm inte att kolla in TFM-specifikationen för .NET 6.0.
Källmappning
Tidigare i år blev många pakethanterare medvetna om beroendeförvirringsattacker där en användare lurades att installera ett skadligt beroende i stället för det som de avsåg. För att stärka din programvaruförsörjningskedja mot dessa attacker har NuGet-teamet utvecklat en ny funktion som gör att du kan mappa dina beroenden till specifika källor. Nedan visas ett exempel på hur du kan använda källmappning för att skydda dina projekt.
<!-- Define a global packages folder for your repository. -->
<!-- This is where installed packages will be stored locally. -->
<config>
<add key="globalPackagesFolder" value="globalPackagesFolder" />
</config>
<!-- Define my package sources, nuget.org and contoso.com. -->
<!-- `clear` ensures no additional sources are inherited from another config file. -->
<packageSources>
<clear />
<!-- `key` can be any identifier for your source. -->
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="contoso.com" value="https://contoso.com/packages/" />
</packageSources>
<!-- Define mappings by adding package ID patterns beneath the target source. -->
<!-- Contoso.* packages will be restored from contoso.com, everything else from nuget.org. -->
<packageSourceMapping>
<!-- key value for <packageSource> should match key values from <packageSources> element -->
<packageSource key="nuget.org">
<package pattern="*" />
</packageSource>
<packageSource key="contoso.com">
<package pattern="Contoso.*" />
</packageSource>
</packageSourceMapping>
Du kan läsa mer om källmappning i vår blogg som släpptes tidigare i år.
Paketsårbarheter i Visual Studio
När du använder NuGet Package Manager i Visual Studio ser du nu paketsårbarheter för dina paket, inklusive information som antalet och allvarlighetsgraden för säkerhetsrisker samt direkta länkar för att lära dig mer om rekommendationer.
Återförsök och backoff-beteende
Det finns nu en NUGET_ENABLE_EXPERIMENTAL_HTTP_RETRY flagga för att förbättra återförsöks- och backoff-beteendet för NuGet-klienter, till exempel att öka den maximala mängden återförsök och öka fördröjningen för en mer elastisk upplevelse när du stöter på en svagare Internetanslutning.
Exkludera standardfilnamnstillägg
Nu kan du använda MSBuild-flaggan <AllowedOutputExtensionsInPackageBuildOutputFolder> för att redigera filnamnstilläggen som ingår i kompileringsutdata för paketet. På så sätt får du mer kontroll över tilläggen som ingår i byggutdatamappen.
Förbättrad utfasningsinformation i Visual Studio
Inaktuella paket i Visual Studio innehåller nu en länk till det föreslagna alternativa paket som ska användas. Du kan använda den här funktionen för att snabbt bläddra efter och installera paket som underhålls aktivt.
Lägg till ett paket-README i Visual Studio
Nu kan du lägga till ett paket README.md fil direkt i Visual Studio. En README hjälper dig att förmedla viktig information om ditt paket. Det är ofta det första objektet en besökare kommer att se när du besöker ditt paket på NuGet.org. README-filer innehåller vanligtvis information om:
- Vad paketet gör
- Varför paketet är användbart
- Hur användare kan komma igång med paketet
- Där användare kan få hjälp eller bidra till ditt paket
Du kan läsa mer om att lägga till en README i ditt NuGet-paket på vår blogg.
Snabbare inladdning av lösningar och byte av gren i Visual Studio
I Visual Studio 2022 har NuGet omdefinierat kontraktet mellan NuGet-paketåterställning och vanliga Visual Studio-komponenter för att förbättra prestanda för stora lösningar genom att bara anropa återställning en gång i stället för flera gånger. Detta förbättrar den tid det tar för bakgrundsprocesser att slutföras avsevärt.
Installera Visual Studio 2022 Preview och meddela oss om du märker en snabbare upplevelse när du läser in dina stora lösningar eller växlar mellan grenar!
NuGets SolutionRestoreManager Visual Studio-API:er har flyttats till NuGet.VisualStudio-paketet
NuGet.SolutionRestoreManager.Interop uppdateras inte längre och dess API:er har sammanfogats i NuGet.VisualStudio-paketet. Om du uppdaterar ett befintligt Visual Studio-tillägg så att det fungerar med Visual Studio 2022 (17.0), och du tidigare använde NuGet.SolutionRestoreManager.Interop, bör du avinstallera paketet och uppgradera/installera NuGet.VisualStudio till version 6.0.0. Namnrymderna och klasserna förblir desamma, så de är kompatibla ur ett API-perspektiv.
Efter policyändringen av Visual Studio använder NuGet.VisualStudio inte längre EmbedInteropTypes.
Därför har tillägget en kompileringstidsreferens till NuGet.VisualStudio.dll.
Nuget instruerar Visual Studio att använda bindningsomdirigeringar, så ditt tillägg påverkas inte när NuGet uppdateras till nyare versioner och tillägget kompileras mot en äldre version av vår sammansättning.
Därför kan du utelämna NuGets sammansättningar från din vsix för att minska nedladdningsstorleken.
NuGets paket uppdateras för att göra detta automatiskt i NuGet 6.2 (för Visual Studio 17.2).
Om du vill utelämna NuGets sammansättningar från din vsix lägger du till följande i projektfilen:
<ItemGroup>
<SuppressFromVsix Include="NuGet.VisualStudio.dll" Visible="false" />
<SuppressFromVsix Include="NuGet.VisualStudio.Contracts.dll" Visible="false" />
</ItemGroup>
Funktioner:
Lägg till hook för att exkludera vissa build-utdatatillägg från nuget-paketet – #10690
Implementera ny prioritet för xamarin TFM:er när du använder net6.0+ – #10717
Implementera maccatalyst-varning när du "faller tillbaka" till xamarin.ios för net6.0+ projekt – #10718
Lägg till stöd för paketnamnområden som en del av konfigurationen – lägg endast till en läsfunktion – #10725
Paketnamnområden: Ta hänsyn till filtreringen av paketnamnområden vid nedladdning av paket i återställning av PackageReference – #10732
Lägg till stöd för namnrymdsfiltrering vid återskapande av packages.config i nuget.exe och msbuild /t:restore – #10737
Lägg till ett kontrakt som identifierar en återställningskälla för att hjälpa NuGet att bättre hantera batchåterställningar och grenbyten. - #10807
Lägg till stöd för net6.0-tizen och net6.0-android – #10819
Lägg till stöd för namnrymdsfiltrering för packages.config återställning i Visual Studio – #10823
Lägg till stöd för TfmSpecificDebugSymbolsFile för att tillhandahålla symboler i den inre versionen – #10913
Visa varningsikonen på fliken Installerad om det finns sårbara paket installerade – #10982
Visa varningsikonen efter paket i listan över paket om det finns en säkerhetsrisk – #10983
Visa information om paketsårbarhet i fönstret med paketinformation i PMUI – #10985
Lägg till utfasningslänkar på informationssidan i PM-användargränssnittet – #10996
[Funktion]: Gör att återförsöksbeteende och backoff-beteende kan konfigureras för Nuget-klienter – #11027
[Funktion]: Hantera alla paketinstallationsregler för paketnamnområden som fungerar i PackageReference- och PackageDownload-scenarier. - #11035
[Funktion]: Hantera alla paketinstallationsregler för paketnamnområden i paketkonfigurationsprojekt – #11036
Problem som har åtgärdats i den här versionen
DCR:ar:
Överväg att ta bort utökningsbarheten som gör att andra pakethanterare kan visas som kompatibla – #6623
Sluta använda EmbedInteropTypes för NuGets VS extenbility-paket/sammansättningar – #10892
Project.nuget.g.targets bör inte förberedas för MSBuildAllProjects i MSBuild 16 eller senare – #10895
Ta bort föråldrade kärn-API:er – #10940
Sammanfoga NuGet.SolutionRestoreManager.Interop till NuGet.VisualStudio – #10957
Ta bort RuntimeEnvironmentHelper.IsDev14 – #11000
Uppdatera Newtonsoft.Json till 13.0.1 – #11095
[DCR]: Byt namn på funktionen packageNamespaces till packageSourceMapping – #11205
Buggar:
Installation med paketsparläge "nuspec" installeras alltid om – #2402
<project>Update-Package -reinstall -ProjectName fungerar inte för PR – #6088"Ett objekt med samma nyckel har redan lagts till" – när projektdiagrammet har projectName == packageRef-namn (av samma version) – #6795
[Testfel] Föreslå att du tar bort den andra duplicerade strängen "Licensgodkännande" i dialogrutan "Godkännande av licens" – #8162
Det går inte att ta bort konfigurationsnyckeln med hjälp av nuget.exe – #8223
msbuild /t:Restore och Visual Studio skapar olika resursfiler när assemblies namn != projekt namn - #8272
PM-användargränssnittet humaniserar inte antalet nedladdningar när 999 500 <= antal <=999 999 – #8800
Roslyn Analyzer-förslag "installera med pakethanteraren" öppnar NuGet på fel flik – #10124
StaticGraph Restore bör tydligt signalera när ett projekt inte
KnownToBeMSBuildFormatanropas via en lösningsfil – #10363Kommandot "nuget spec" genererar en .nuspec-fil med en iconUrl – #10400
Rfc3161TimestampTokenInfo.GetNonce kan kasta - #10484
Kontrollera att kommandot inte är inaktiverat på Mono – #10585
Metoden CreateLockFileTargetLibrary saktar ned återställningsåtgärden – #10614
PackageArchieveReader åsidosätter inte CopyNupkgAsync så paketextraheringen misslyckas – #10708
Sprida information om paketnamnområden till återställningskommandot – #10736
Kontrollera att filtreringen av namnområden respekteras i packages.config paketinstallation/uppdateringar i PMUI – #10738
NuGet.Packaging.Extraction: undantag relaterade till att resurser inte hittades – #10776
Det går inte att använda inbäddad PackageReadmeFile när du använder snupkg för symboler – #10791
Ta bort redundanta UI-fördröjningsväxlar i NuGet Project-initiering – #10824
Ta bort onödiga ToList-uppräkningar i återställningskodvägar – #10835
Markera IVsPackageInstallerServices som inaktuell – #10836
NuGet-paket som laddats ned över 1 miljard gånger visar fel enhet – #10864
Svårt att se bakgrundsfärgen för talet till höger om flikarna "Uppdateringar" och "Konsolidera" i temat Mörk – #10896
Förbättringar av IVsProjectRestoreInfoSource – #10898
packages.lock.json bruten med Sdk-Style C#-projekt som riktar sig mot net5.0-windows – #10901
Lägg till en standardimplementering för IVsSolutionRestoreService4 – #10908
[Svarstider] Ta bort implicit RPC från bakgrundstråd via onödiga GetServiceAsync-tillägg – #10916
Boxning av bool för att beräkna hashkoder orsakar överdrivna allokeringar - #10917
Iterering över biblioteksberoenden orsakar överallokering av uppräknare – #10918
Kompatibilitetscache-sökning allokerar en Func för varje sökning – #10919
Överbeläggningar av WhereListIterator i DependencyWalker.CreateGraphNode – #10920
Undantag vid återställning: "Återställning av metadata saknar den obligatoriska listan över målramverk" – #10924
Dela en ramverksreducer över hanterade kodkonventioner – #10925
NuGet VSIX genereras med felaktiga bindningsomdirigeringar – #10946
NuGet Package Manager-användargränssnittet fördröjs när init-skript körs – #10947
Support sourceUri skickade nuget restore/install och dotnet restore package eller andra motsvarande kommandon – #10948
Stöd för namnrymdsfiltrering för kommandot nuget.exe install – #10961
Sluta generera råegenskaper för varje segment – #10969
Oväntad NU1605 från transitiv referens som aldrig valdes (beskärd subgraf) – #10972
NuGet.Localization har ingen paketikon – #10975
Undvik att ändra storlek på ordlistan i onödan vid beräkning av projektstängning – #10976
Dokumentationskonflikter för ISettings.AddOrUpdate – #10980
Använda en poolad bytematris när du kopierar filer och validerar signaturer – #10988
Undvik Task.WhenAny-allokeringar i dependency walker – #10989
Kontrollera att filtreringen av namnområden respekteras i packages.config paketinstallation/uppdateringar PMC – #11001
Kontrollera att namnrymdsfiltreringen respekteras i packages.config-packageinstallation/-uppdateringar IVs installer API - #11002
[Bugg]: PM-användargränssnittet visar 0 nedladdningsantal när det valda paketet redan är installerat – #11012
Minska allokeringar i VersionFormatter – #11014
Föråldrade oanvända typer: LibraryDependencyType och relaterade – #11015
[Bugg]:
nuget.exe install packages.configrespekterar-PackageSaveMode nuspec- inte #11018[Bugg]:
$(IsPackable)är inte citerad - #11025Skapa Apex-tester med lagringsplatser med flera källor för PMUI-paketnamnområdesfiltrering – #11026
[Bugg]: [Tillgänglighet] Svårt att läsa länkar i PM UI-sökresultat i ljust eller mörkt tema - #11055
IVsSolutionRestoreService4 bör utöka IVsSolutionRestoreService3 – #11098
[Bugg]: Rådgivande länkar bör justeras i informationsfönstret i PMUI – #11101
Knappbeskrivning för de installerade sårbara/utfasningspaketversionernas varningsikon är inte klar – #11103
[Responsivitet] RestoreOperationLogger+StatusBarProgress.Dispose som blockerar en tråd i trådpoolen som väntar på UI-huvudtråd – #11115
Lägg till tid sedan senaste återställningsmått – #11124
[Bugg]: nuget.exe regression vid hantering av rekursiva
<files>poster mellan 5.9.1 och 5.10.0 – #11125Await WhenNominated när ett projekt har en väntande nominering – #11132
Stöd för alternativet sourceUri skickat till kommandot dotnet add package – #11140
[Bugg]: VS PM-användargränssnittet visar inte JPEG-ikoner för paket – #11144
UIDelay:
nuget.packagemanagement.visualstudio.dll!NuGet.PackageManagement.VisualStudio.VsCoreProjectSystemReferenceReader+<GetProjectReferencesAsync>d__– CPS-projekt – #11162[Bugg]:
dotnet list package --outdated --interactivegör autentiseringsprovidern ogiltig cache för varje paket som anges – #11169[Bugg]: Paketnamnområden för packages.config scenarier använder alla källor som reservalternativ när inga matchande namnområden hittas för ett paket – #11170
Undvik MEF-sökningar i användargränssnittstråden under Initieringen av NuGet-projekt – #11176
[Bugg]: Verktygstips för varningsindikatorikonen i fliken Installerat fungerar inte längre – #11183
Alla ServiceLocator-anrop som hämtar MEF-tjänster bör undvika användargränssnittstråden. - #11201
[Bugg]: Telemetrihändelse saknas i Visual Studio – #11206
Undvik duplicerade EnvDTEProjectUtility.IsSupportedAsync-anrop – #11207
Lägg till IVsSolutionManager.GetSolutionDirectoryAsync – förbättra prestanda och sluta blockera den anropande tråden i asynkrona kodvägar. - #11208
Byt namn på typer/variabler i produkt-/testkoden för att återspegla nytt namn för paketnamnområdesfunktionen – #11216
[Bugg]: ArPow-versionen fungerar inte bra när den finns i en underkatalog till en orelaterad git-lagringsplats – #11227
dotnet list package --sårbar, --föråldrad, --utdaterad fungerar inte för endast transitiva positiva - #10767
Lista över alla problem som har åtgärdats i den här versionen – 6.0
Lista över incheckningar i den här versionen – 6.0.0
Sammanfattning: Nyheter i 6.0.1
Endast Visual Studio uppdaterades med den här versionen av NuGet.
Problem som har åtgärdats i den här versionen
- [Bugg]: Det går inte att hämta INuGetProjectService från tjänstkoordinatorn i Visual Studio 17 – #11367
- [Bugg]: Initiering av Package Manager-konsolen kan orsaka dödlägen – #11320
Lista över ändringar i den här releasen – 6.0.1
Bidrag från communityn
Tack till alla deltagare som hjälpte till att göra denna NuGet release awesome!
| Vem | Prs | Issues |
|---|---|---|
| omajid | 3866 | Hantera nonce som null i Rfc3161TimestampTokenInfo – #10484 |
| marcin-krystianc | 3934 | Lägga till en cache för LockFileTargetLibrary – #10614 |
| krafs | 4151 | Returvärdet har tagits bort från dokumentationen på ISettings.AddOrUpdate – #10980 |
| huangqinjin | 4148 | Korrigera att PackageSaveMode nuspec alltid installeras om – #2402 |
| Insomniak47 | 4190 | fix(docs): Ta bort en stängd eller återvändsgränd länk i bidragsriktlinjerna – #8987 |
| marcin-krystianc | 4194 | Se till att prestandaskripten kan hantera återställningsoperationers misslyckanden – #9968 |
| eriawan | 4159 | Åtgärdar Surround ($IsPackable) med enkla citattecken – #11025 |
| huangqinjin | 4193 | Installation av packages.config bör respektera PackageSaveMode – #11018 |
| mfkl | 4199 | test: använd nya DependencyGraphSpec – #11168 |
| omajid | 4254 | Använd --work-tree med git apply – #11227 |
Välkommen till feedback
Din feedback är viktig för oss. Om det finns några problem med den här versionen kan du kontrollera om det finns befintliga problem i Vår GitHub-problem och Visual Studio Developer Community . Rapportera ett GitHub-problem för nya problem i NuGet. För allmänna Problem med NuGet-upplevelsen kan du meddela oss via alternativet Rapportera ett problem som finns i din favorit-IDE under Hjälp > rapportera ett problem.