Baca dalam bahasa Inggris

Bagikan melalui


Catatan Rilis NuGet 6.10

Kendaraan distribusi NuGet:

Versi NuGet Tersedia dalam versi Visual Studio Tersedia di .NET SDK
6.10.2 Visual Studio 2022 versi 17.10 8.0.3xx1

1 Diinstal dengan Visual Studio 2022 dengan beban kerja .NET apa pun

Ringkasan: Apa yang Baru di 6.10.2

Masalah yang diperbaiki dalam rilis ini

  • Kembalikan Aktifkan manajemen paket pusat secara implisit saat Directory.Packages.props ada - #11834

Daftar penerapan dalam rilis ini

1 Diinstal dengan Visual Studio 2022 dengan beban kerja .NET apa pun

Ringkasan: Apa yang Baru di 6.10.1

Masalah yang diperbaiki dalam rilis ini

  • Pemulihan/pembaruan Visual Studio dan PMC gagal ketika beberapa proyek packages.config dalam solusi memiliki nama yang sama (Item dengan kunci yang sama telah ditambahkan) - #13465

  • ##[error]Perintah nuget gagal dengan kode keluar(1) dan kesalahan(Item dengan kunci yang sama telah ditambahkan. - #13456

Daftar penerapan dalam rilis ini

Ringkasan: Apa yang Baru di 6.10

  • [Fitur]: tambahkan perintah konfigurasi nuget dotnet - #12469

  • Peringatkan ketika kerentanan terdeteksi selama pemulihan packages.config - #12307

  • Tampilkan bilah info kerentanan saat ada kerentanan dalam proyek berbasis packages.config. - #13271

  • [Bug]: Penyedia Info Masuk VS Salah Menetapkan Nilai isRetry - #11210

  • paket daftar dotnet --rentan memerlukan login konstan ke umpan nuget pihak ke-3 - #12456

6.10.0 Masalah yang diketahui

NuGet.exe 6.10.0 dan Visual Studio 17.10.0 mungkin mengalami kegagalan selama operasi NuGet untuk proyek menggunakan packages.config dalam skenario berikut:

  • Dua proyek atau lebih dalam solusi memiliki nama yang sama
  • Dua proyek atau lebih dalam solusi menggunakan file packages.config yang sama (file proyek ada di direktori yang sama)

Masalah ini telah diperbaiki di NuGet.exe 6.10.1 dan Visual Studio 17.10.2.

Masalah dan diskusi pelacakan publik dapat ditemukan di lokasi berikut:

Perubahan mencolok

  • Menambahkan anotasi nullable ke NuGet.Configuration - #13250

  • [Pencarian Paket Dotnet] Hasil pencarian paket harus "versi" alih-alih "latestVersion" saat menjalankan perintah "dotnet package search <Package Name> --exact-match --format json" - #13158

  • ResolvedDependencyKey harus dibuat untuk mengurangi alokasi memori - #13138

  • [DCR]: Manajemen Paket Pusat - Hormati file .props sebagai cara untuk ikut serta dalam fitur tersebut. - #11834

  • Hapus NuGet.Packaging.Core - #12495

Masalah yang diperbaiki dalam rilis ini

  • Peringatkan ketika kerentanan terdeteksi selama pemulihan packages.config dalam skenario CLI. - #13253

  • Berhenti menggunakan JObject dalam pembacaan file aset untuk mengurangi alokasi. #12715

  • Tambahkan pelacakan peristiwa untuk memulihkan agar memungkinkan untuk mengukur performa - #13274

  • Membaca auditSources dari file nuget.config - #13211

  • SourceRepository.GetResourceAsync harus dapat dibatalkan. - #13234

  • CreateWalkAsync tidak boleh rekursif - #13222

  • ProjectModel.HashObjectWriter.OnFlush menggunakan hash SHA512 versus hash yang lebih murah yang tampaknya seperti overkill - #13214

  • Metadata paket pemilik adalah array di JSON tetapi string dalam jenis Protokol - #13186

  • pencarian paket dotnet --verbosity detail tabel output terlalu lebar - #13162

  • Panggilan di SetWarningProperties() memiliki overhead alokasi karena beberapa enumerasi - #13151

  • Penggunaan ConcurrentStack dalam implementasi kumpulan objek menciptakan alokasi dalam jumlah besar - #13147

  • IsBestVersion kotak HashSet<T> enumerator menghasilkan banyak overhead alokasi selama pemulihan. - #13146

  • Menghentikan daftar NuGet.exe mendukung pencarian NuGet.exe - #7912

  • [Pencarian Paket Dotnet] Pengecualian yang tidak tertangani dilemparkan saat mencari dengan "--verbosity terperinci" dan "--format json" - #13300

  • dotnet package search crash pada pratinjau .NET 9 2 malam - #13286

  • Gunakan StringBuilderPool daripada mengalokasikan StringBuilder baru - #13285

  • Lulus dalam ukuran yang sesuai untuk Daftar<T> - #13284

  • JsonTextWriter mengalokasikan string angka besar - #13283

  • Penggunaan StringBuilder.Append() mengalokasikan saat menambahkan int - #13282

  • Tinju enumerator struktur yang tidak perlu - #13281

  • Objek proses harus dibuang sehingga finalizer tidak berjalan - #13280

  • Hindari enumerator tinju untuk koleksi - #13279

  • [.NET 9 Pratinjau 3] pemulihan tanpa operasi tidak lagi merupakan no-op - #13269

  • Mengurangi alokasi dalam memanggil IVsProjectAdpater.IsCapabilityMatchAsync - #13268

  • Mengonsolidasikan implementasi pemulihan packages.config dengan meminimalkan perbedaan - #13233

  • Batalkan pendaftaran penggunaan LINQ untuk memangkas beberapa alokasi di AddMSBuildAssets - #13223

  • PackageSpecWriter memanggil Any pada instans T/IList<T>> ICollection<alih-alih . Count - #13213

  • StringBuilder.Append(int) menyebabkan alokasi yang tidak perlu - #13207

  • Penembolokan hasil tugas dapat menyebabkan semua kelanjutan terjadi pada utas yang sama - #13206

  • LibraryDependency membuat koleksi yang sebagian besar kosong - #13184

  • PackageSpecWriter harus menulis string asli untuk versi alih-alih mengalokasikan yang baru - #13183

  • SetCentralDependencies memanggil OrderBy tanpa menentukan perbandingan default dengan perbandingan sensitif budaya - #13182

  • Hasil pencarian dalam format json dari pencarian paket dotnet tidak boleh menyertakan bidang yang tidak ada nilai yang disediakan - #13166

  • Hasil pencarian paket harus "totalDownloads" alih-alih "total unduhan" saat menjalankan perintah "dotnet package search <Package Name> --format json" - #13165

  • [pencarian paket dotnet] kegagalan memuat indeks serivce harus berupa kesalahan dan bukan peringatan. - #13163

  • format pencarian paket dotnet menunjukkan output bantuan selain file json - #13161

  • Membatalkan pemulihan berbasis grafik statis tidak mengakhiri proses pemulihan - #13140

  • Gunakan string. Berisi alih-alih IEnumerable.Contains dalam penguraian VersionRange - #13124

  • Pemulihan grafik statis tidak memulihkan solusi packages.config saja - #13109

  • Pemulihan NuGet selalu menyentuh file project.assets.json bahkan tidak ada konten yang diubah ketika perlu pesan kesalahan log. - #13098

  • Audit pada waktu pemulihan tidak boleh melempar dan gagal operasi - #13085

  • Mendapatkan kesalahan "Item dengan kunci yang sama telah ditambahkan" saat memulihkan. - #13067

  • PM UI Scrolling tidak lagi memuat paket tambahan. - #13063

  • Pemeriksaan cache pemulihan NuGet tidak lagi menggunakan cache keberadaan file - #13058

  • Menambahkan referensi ke esproj dari proyek ASP.Net menghasilkan kesalahan NU1105 - #12986

  • RemoteDependencyWalker mengalokasikan banyak hal karena fakta bahwa itu disebut secara rekursif - #12748

  • [Bug]: Membatalkan pemulihan msbuild lambat ketika sumber yang tidak valid/tidak dapat dijangkau dikonfigurasi - #11813

  • Pemulihan: kloning mendalam projectSpec yang berlebihan - #9041

Daftar penerapan dalam rilis ini

Kontribusi komunitas

Terima kasih untuk semua kontributor yang membantu membuat rilis NuGet ini luar biasa!

  • Erarndt
    • 5659 Kurangi tinju saat menghitung daftar
    • 5662 Gunakan StringBuilder.AppendInt() di lebih banyak tempat untuk mengurangi alokasi saat menambahkan bilangan bulat ke StringBuilder
    • 5663 Menghapus alokasi dari implementasi TextWriter.NewLine
    • 5665 Gunakan StringBuilder terkumpul
    • 5661 Hindari tinju enumerator dalam PackageSpecificWarningProperties.AddRangeOfCodes dan TransitiveNoWarnUtils.AddToSeen
    • 5660 Pastikan objek Proses dibuang saat meluncurkan plug-in autentikasi
    • 5664 Tentukan ukuran daftar dalam TopologicalSortUtility.CalculateRelationships
    • 5624 Beralih CreateNodeAsync ke pendekatan berulang
    • 5584 Penggunaan Unroll LINQ untuk memangkas beberapa alokasi di AddMSBuildAssets
    • 5574 Membatalkan pendaftaran beberapa panggilan LINQ
    • 5593 Mengurangi alokasi lebih lanjut di CreateGraphNodeAsync
    • 5592 Hindari beberapa enumerasi saat menulis objek Json
    • 5600 Hindari alokasi string perantara yang disebabkan oleh StringBuilder Append(i...
    • 5555 Unroll Linq di GetFlags
    • 5588 Hindari Enumerator HashSet tinju di IsBestVerion
    • 5589 Memperbarui implementasi kumpulan untuk menggunakan tumpukan dengan kunci untuk menghindari...
    • 5568 Ubah ResolvedDependencyKey ke struct
    • 5553 Hindari beberapa alokasi di GetCompatibilityData
    • 5554 Beralih dari Tuple ke ValueTuple untuk kunci Kamus
    • 5552 Hindari membuat kelas pengambilan untuk panggilan ke WithExtension
    • 5556 Beralih dari ConcurrentDictionary ke Kamus dengan kunci untuk menghindari rep...
    • 5551 Gunakan string. Berisi alih-alih IEnumerable.Contains
    • 5550 Hindari enumerator T> Daftar<tinju
  • GenelleM
    • 5655 Tambahkan algo hash non kripto 64-bit untuk komputasi keunikan dgspec
    • 5629 Ganti panggilan ke Any() pada ICollection di PackageSpecWriter dengan Count > 0 Issue #13213
    • 5619 Mengurangi beberapa penggunaan waktu CPU di SetCentralDependencies
  • NikolaMilosavljevic
    • 5673 Mengaktifkan penerbitan di VMR
    • 5625 Menghilangkan paket bawaan System.CommandLine
  • brianrob
    • 5650 Tambahkan Instrumentasi Pemulihan