NuGet 4.8 Sürüm Notları
Visual Studio 2017 15.8 RTW , NuGet 4.8 işlevselliğiyle birlikte gelir.
Aynı işlevselliğin komut satırı sürümleri de kullanılabilir:
- NuGet.exe 4.8 - nuget.org/downloads
- DotNet.exe - .NET Core SDK 2.1.400
- NuGet.exe artık Windows 10 'da longfilenames - #6937'i destekliyor
- Kimlik doğrulama eklentileri artık platformlar arası da dahil olmak üzere MsBuild, DotNet.exe, NuGet.exe ve Visual Studio'da çalışır. İlk nesil kimlik doğrulama eklentileri MsBuild, DotNet.exe'da desteklenmiyordu. Not: VS 2017 15.9 Önizleme derlemelerinde VSTS kimlik doğrulaması eklentisi bulunur. #6486
- MsBuild'in SDK Çözümleyicisi artık NuGet'in bir parçası olarak derlenip VS için NuGet araçlarıyla yüklenir. Bu, sürümlerin eşitlenmesini önler. #6799
- PackageReference artık DevelopmentDependency meta verilerini destekliyor - #4125
- Güvenlik Düzeltmesi: ~/.nuget içinde oluşturulan dosyalardaki izinler çok açık #7673 CVE-2019-0757
Makine İnternet erişimini kısıtladıysa (CI/CD senaryosunda derleme makinesi gibi), imzalı bir nuget paketini yüklemek/geri yüklemek, iptal sunucularına ulaşılamadığından bir uyarı (NU3028) ile sonuçlanır. Bu beklenen bir durumdur. Ancak bazı durumlarda, paket yükleme/geri yükleme işlemi normalden daha uzun sürüyor gibi istenmeyen tartışmalar olabilir.
İptal denetim modunu değiştirmek için bir ortam değişkeni sunduğumuz Visual Studio 15.8.4 ve NuGet.exe 4.8.1'e güncelleştirin.
Ortam değişkeninin NUGET_CERT_REVOCATION_MODE
olarak offline
ayarlanması, NuGet'i sertifikanın iptal durumunu yalnızca önbelleğe alınmış sertifika iptal listesinde denetlemeye zorlar ve NuGet iptal sunucularına ulaşmaya çalışmaz. İptal denetimi modu olarak offline
ayarlandığında, uyarı bir bilgiye indirilir.
Uyarı
Normal geçişler altında iptal denetim modunu çevrimdışına almak önerilmez. Bunun yapılması NuGet'in çevrimiçi iptal denetimini atlayıp önbelleğe alınmış sertifika iptal listesinde yalnızca çevrimdışı iptal denetimi gerçekleştirmesine neden olur ve bu da güncel olmayabilir. Bu, imzalama sertifikasının iptal edilmiş olabileceği, yüklenmeye/geri yüklenmeye devam edeceği, aksi takdirde iptal denetiminin başarısız olacağı ve yüklenmeyeceği paketler anlamına gelir.
Bir proje ilk açıldığında, NuGet işlemi gerçekleştirilinceye kadar NuGet başlatılmamış olabilir. Bu, geçiş seçeneğinin veya References
üzerindeki sağ tıklama bağlam menüsünde gösterilmemesine packages.config
neden olur.
Aşağıdaki NuGet eylemlerinden herhangi birini gerçekleştirin:
- Paket Yöneticisi kullanıcı arabirimini açma - Sağ tıklayın
References
veManage NuGet Packages...
- Paket Yöneticisi Konsolunu açın - Kimden
Tools > NuGet Package Manager
öğesini seçinPackage Manager Console
- NuGet geri yüklemesini çalıştırma - Çözüm Gezgini çözüm düğümüne sağ tıklayın ve
Restore NuGet Packages
- NuGet geri yüklemesini de tetikleyen projeyi oluşturma
Artık geçiş seçeneğini görebilmeniz gerekir. Bu seçeneğin desteklenmediğini ve ASP.NET ve C++ proje türleri için gösterilmeyeceğini unutmayın. Not: Bu, VS 2017 15.9 Önizleme 3'te düzeltilmiştir
- İmzalama: İmzalı paketi çevrimdışı ortama yükleme #7008 -- 4.8.1'de düzeltildi
- İmzalama: yanlış URL denetimi - #7174
- İmzalama: RepositorySignatureVerifier'da paket bütünlüğünü denetlemek için paket deposunun ne zaman imzalandığı - #6926
- "Paket Bütünlüğü denetimi başarısız oldu." iletisinde paket kimliği (ve hata kodu) olmalıdır - #6944
- Depo imzalı paket doğrulama, farklı sertifika tarafından imzalanan paketlere izin veriyor - #6884
- NuGet - İmzalama - Zaman damgası URL'si https:// olamaz mı? - #6871
- NuSpec paketleme senaryosunda NullRef yapmayın, seçenekleri de geliştirin - #6866
- İmzalama işaretine zaman damgası eklenirken imzalayan bilgileri güncelleştirilirken bellek geçersiz - #6840
- İmzalama: CTL özel durumlarını kaldırma - #6794
- İmzalama: contentUrl HTTPS olmalıdır - #6777
- İmzalama: SignedPackageVerifierSettings.VSClientDefaultPolicy kullanılmadı - #6601
- nuspec'i paketlemek için dotnet.exe kullanılırken geri yükleme ve derleme gerekli olmamalıdır - #6866
- NuspecProperties içinde boş değiştirme belirteçlerine izin ver - #6722
- NuspecProperties belirtildiğinde PackTask NullReferenceException oluşturur - #4649
- [Erişilebilirlik] Paket düğmesinin altındaki 'Ön sürüm' dizesi PM kullanıcı arabirimindeki paket açıklamasıyla ele alınmıştır - #4504
- [Erişilebilirlik] PM kullanıcı arabiriminde 'Microsoft Visual Studio Çevrimdışı Paketler' seçildiğinde paket kaynağı açılan listesi ve ayarlar düğmesi kesildi - #4502
Update-Package
PackageReference sürüm aralığını yoksayar - #6775Update-Package -reinstall
çözüm genelinde sorun - #3127Update-Package [packagename] -reinstall
yalnızca adlandırılmış paket yerine tüm paketleri yeniden yükler - #737- Paket Yöneticisi Konsolundan listelenmemiş NuGet paketine güncelleştirilebilir - #4553
- NuGet.Commandline nupkg dosyasını düzeltmek
NuGet update self
için semver2.0 olmamalıdır - #7116 - NU1107 yükleme hatalarıyla ilgili deneyimleri geliştirme - #7107
- GetAuthenticationCredentialRequest serileştirmesi yanlış - #6983
- NuGet Visual Studio AsyncPackage kullanıcı arabirimi iş parçacığından başlatıldığında yüklenemiyor - #6976
- Geri yükleme, project.json gerektiğini belirten yanıltıcı hatalar bildiriyor - #6959
- Paket yöneticisi kullanıcı arabirimi: değişiklikleri önizleme, tamam düğmesi klavye tarafından otomatik olarak kullanılamaz - #6893
- p2p başvuruları olan proje için RestoreSources yoksayıldı - #6776
- .NET Framework şablonu kullanarak birim testi projesi oluşturmak packages.config ile eski proje modelini açar - #6736
- paket bağımlılığını geçersiz kılmak için proje başvurusuna izin ver - #6536
- MSBuild görevinde NoDefaultExcludes'i kullanıma sunma - #6450
- "Tüm NuGet Önbelleklerini Temizle" durum iletisi pencere yeniden boyutlandırmada gizlenebilir - #5938