Informacje o wersji narzędzia NuGet 4.3

Program Visual Studio 2017 15.3 RTW zawiera pakiet NuGet 4.3 RTM, który dodaje obsługę nowych scenariuszy, takich jak .NET Standard 2.0/.NET Core 2.0, zawiera wiele poprawek jakości i poprawia wydajność. W tej wersji wprowadzono również kilka ulepszeń, takich jak obsługa semantycznej wersji 2.0.0, integracja programu MSBuild z ostrzeżeniami i błędami NuGet i nie tylko.

Podsumowanie: Co nowego w wersji 4.3.0

Podsumowanie: Co nowego w wersji 4.3.1

  • Poprawka zabezpieczeń: Uprawnienia do plików utworzonych wewnątrz pliku ~/.nuget są zbyt otwarte #7673CVE-2019-0757
  • Poprawka zabezpieczeń: pliki wewnątrz grup NUPKG mogą mieć ścieżkę względną powyżej katalogu NUPKG #7906

Znane problemy

Przywracanie pakietów NuGet może w niektórych przypadkach traktować wyłączone źródła pakietów jako włączone

Problem

Poniższe techniki przywracania wiersza polecenia traktują wyłączone źródła pakietów jako włączone. NuGet#5704

  • msbuild /t:restore
  • dotnet restore (z dotnet.exe dostarczanym z programem VS lub dostarczanym z zestawem NetCore SDK 2.0.0)

Rozwiązanie

  1. Użyj programu Visual Studio (2017 15.3 lub nowszego) lub NuGet.exe (4.3.0 lub nowszego)
  2. Usuń wyłączone źródła i dalej używaj programu msbuild lub programu dotnet.exe.
  3. Na potrzeby rozwiązania możesz użyć polecenia „Clear” (Wyczyść) w pliku NuGet.config, a następnie zdefiniować źródła dla tego rozwiązania.

Podczas korzystania z konsoli Menedżera pakietów może nie działać klawisz „Enter”

Problem

Czasami klawisz Enter nie działa w konsoli Menedżera pakietów. Jeśli tak się dzieje, sprawdź postęp poprawki i podaj wszystkie przydatne informacje dodatkowe dotyczące kroków odtwarzania. NuGet#4204NuGet#4570

Rozwiązanie

Uruchom ponownie program Visual Studio, a następnie otwórz konsolę zarządzania pakietami przed otwarciem rozwiązania. Alternatywnie spróbuj usunąć element project.lock.json i przywrócić go ponownie.

Nie można wyświetlić, dodać ani zaktualizować narzędzia DotNetCLITools przy użyciu Menedżer pakietów Nuget

Problem

Menedżer pakietów NuGet nie wyświetla składnika DotNetCLITools ani nie zezwala na jego dodawanie/aktualizowanie. NuGet#4256

Rozwiązanie

Należy ręcznie edytować składnik DotNetCLIToolReferences w pliku projektu.

Przekierowanie wersji platformy docelowej może prowadzić do niekompletnej funkcji IntelliSense

Problem

Przekierowanie wersji platformy docelowej może prowadzić do niekompletnej funkcji IntelliSense w programie Visual Studio. Dzieje się tak w przypadku używania składnika PackageReferences jako formatu Menedżera pakietów. NuGet#4216

Rozwiązanie

Wykonaj przywracanie ręczne.

Problemy rozwiązane w przedziale czasowym NuGet 4.3 RTM

Informacje o wersji narzędzia NuGet 4.0 RTM — zawiera listę wszystkich problemów rozwiązanych dla narzędzia NuGet 4.0 RTM

Funkcje

  • Ulepszanie wydajności przywracania nuGet — implementowanie inteligentniejszego noOp na potrzeby przywracania wiersza polecenia i programu VS — #5080

  • NET Core 2.0: interfejs wiersza polecenia vs/Dotnet powinien zacząć korzystać z istniejącej funkcji NuGet: Foldery FallBack — #4939

  • NET Core 2.0: umożliwia użytkownikom ignorowanie określonych ostrzeżeń przywracania (lub podniesienie poziomu do błędu) — #4898

  • NET Core 2.0: zlokalizowane zestawy interfejsu wiersza polecenia — #4896

  • NET Core 2.0: zarejestruj wszystkie ostrzeżenia/błędy w pliku zasobów (w tym PackageTargetFallback) — #4895

  • Włączanie obsługi serwera TFM: NetStandard2.0, Tizen — #4892

  • Zmniejsz liczbę projektów NuGet.Core i NuGet.Client (a tym samym bibliotek DLL) — #2446

  • Dodawanie możliwości oznaczania ostrzeżeń nuget jako błędów — #2395

Usterki

  • Program msbuild /t:pack kończy się niepowodzeniem z parametrem "DevelopmentDependency" nie jest obsługiwany przez zadanie "PackTask" — #5584

  • Struktura katalogów dla plików zawartości spłaszczone, jeśli nie dodaje separatora katalogów systemu Windows na końcu packagePath — #4795

  • Projekty netcore nie obsługują ustawienia jako programowaniaZależność — #4694

  • RestoreManagerPackage jest ładowany synchronicznie, co zablokowało wątek interfejsu użytkownika i zakleszczone vs — #4679

  • dotnet

  • Jeśli rozwiązanie ma wnioskowanie projektu odwołujące się do tego samego projektu, z inną wielkością liter, przywracanie może nie działać. Ma to również wpływ na różne ścieżki względne bez różnicy w wielkości liter — #4574

  • Pliki wykonywalne przywrócone z pakietów NuGet nie są już wykonywalne przy użyciu platformy .NET Core 2.0 — #4424

  • NuGet.exe szczegóły wyjątku podczas analizowania pliku rozwiązania — #4411

  • Pakiet umieszcza pliki zawartości w niewłaściwej lokalizacji, jeśli folder ContentTargetFolders zawiera ścieżkę kończącą się ciągiem "/" w systemie Windows — #4407

  • Nie można przywrócić elementu DotNetCliToolReference dla pakietu narzędzi przeznaczonego dla aplikacji netcoreapp1.1 — #4396

  • Interfejs wiersza polecenia aktualizacji nuget pozostawia stary warunek wersji pakietu w pliku projektu (C++) — #2449

Kontrolery domeny

  • Przeczytaj dotnetCliToolTargetFramework z nomation CPS — #5397

  • Sprawdzanie TPMinV powinno działać w przypadku platformy UWP w stylu pj — #4763

  • Ulepszanie opisu interfejsu użytkownika dla pakietów AutoReferenced — #4471

  • Przywracanie nuGet wybiera kompilowanie zasobów z sekcji środowiska uruchomieniowego. - #4207

  • Umieść diagnostykę zależności w pliku blokady — #1599

Lista problemów