Condividi tramite


Note sulla versione di NuGet 6.10

Veicoli per la distribuzione di NuGet:

Versione di NuGet Disponibile nella versione di Visual Studio Disponibile in .NET SDK
6.10.2 Visual Studio 2022 versione 17.10 8.0.3xx1

1 Installato con Visual Studio 2022 con qualsiasi carico di lavoro .NET

Riepilogo: Novità nella versione 6.10.2

Problemi corretti in questa versione

  • Ripristinare in modo implicito la gestione centrale dei pacchetti quando Directory.Packages.props esiste - #11834

Elenco dei commit in questa versione

1 Installato con Visual Studio 2022 con qualsiasi carico di lavoro .NET

Riepilogo: Novità nella versione 6.10.1

Problemi corretti in questa versione

  • Il ripristino/aggiornamento di Visual Studio e PMC ha esito negativo quando più progetti packages.config nella soluzione condividono lo stesso nome (è già stato aggiunto un elemento con la stessa chiave) - #13465

  • ##[error]Il comando nuget non è riuscito con codice di uscita(1) ed error(È già stato aggiunto un elemento con la stessa chiave. - #13456

Elenco dei commit in questa versione

Riepilogo: Novità nella versione 6.10

  • [Funzionalità]: aggiungere il comando dotnet nuget config - #12469

  • Avvisa quando vengono rilevate vulnerabilità durante il ripristino packages.config - #12307

  • Visualizzare una barra delle informazioni sulla vulnerabilità quando sono presenti vulnerabilità nei progetti basati su packages.config. - #13271

  • [Bug]: Impostazione non corretta del valore del provider di credenziali di Visual Studio pari isRetry - a #11210

  • dotnet list package --vulnerable richiede l'accesso costante al feed nuget di terze parti - #12456

6.10.0 Problemi noti

NuGet.exe 6.10.0 e Visual Studio 17.10.0 potrebbero verificarsi errori durante le operazioni NuGet per i progetti che usano packages.config negli scenari seguenti:

  • Due o più progetti nella soluzione hanno lo stesso nome
  • Due o più progetti nella soluzione usano lo stesso file packages.config (i file di progetto esistono nella stessa directory)

Questi problemi sono stati risolti in NuGet.exe 6.10.1 e Visual Studio 17.10.2.

I problemi di rilevamento pubblico e le discussioni sono disponibili nelle posizioni seguenti:

Modifiche di rilievo

  • Aggiungere annotazioni nullable a NuGet.Configuration - #13250

  • [Ricerca pacchetti Dotnet] Il risultato della ricerca del pacchetto deve essere "version" anziché "latestVersion" quando si esegue il comando "dotnet package search <Package Name> --exact-match --format json" - #13158

  • ResolvedDependencyKey deve essere uno struct per ridurre le allocazioni di memoria - #13138

  • [DCR]: Gestione pacchetti centrale - Rispettare il file props come modo per acconsentire esplicitamente alla funzionalità. - #11834

  • Rimuovere NuGet.Packaging.Core - #12495

Problemi corretti in questa versione

  • Avvisa quando vengono rilevate vulnerabilità durante il ripristino packages.config negli scenari dell'interfaccia della riga di comando. - #13253

  • Interrompere l'uso di JObject nella lettura dei file di asset per ridurre le allocazioni. #12715

  • Aggiungere la traccia eventi da ripristinare per misurare le prestazioni - #13274

  • Leggere auditSources dai file nuget.config - #13211

  • SourceRepository.GetResourceAsync deve essere annullabile. - #13234

  • CreateWalkAsync non deve essere ricorsivo - #13222

  • ProjectModel.HashObjectWriter.OnFlush usa un hash SHA512 rispetto a un hash più economico che sembra eccessivo - #13214

  • I metadati del pacchetto proprietario sono una matrice in JSON, ma una stringa in Tipi di protocollo - #13186

  • dotnet package search --verbosity detailed output table too wide - #13162

  • Le chiamate in SetWarningProperties() hanno un sovraccarico di allocazione dovuto a più enumerazione - #13151

  • L'uso di ConcurrentStack nell'implementazione del pool di oggetti crea grandi quantità di allocazioni - #13147

  • IsBestVersion riquadri HashSet<T> enumeratori che comportano un sovraccarico di allocazione elevato durante il ripristino. - #13146

  • Deprecare NuGet.exe elenco a favore di NuGet.exe ricerca - #7912

  • [Ricerca pacchetti Dotnet] Viene generata un'eccezione non gestita durante la ricerca con "--verbosity detailed" e "--format json" - #13300

  • dotnet package search arresti anomali in .NET 9 preview 2 nightly - #13286

  • Usare StringBuilderPool anziché allocare un nuovo StringBuilder - #13285

  • Passare una dimensione appropriata per List<T> - #13284

  • JsonTextWriter alloca un numero elevato di stringhe - #13283

  • L'utilizzo di StringBuilder.Append() viene allocato quando si aggiunge un int - #13282

  • Boxing non necessario degli enumeratori struct - #13281

  • Gli oggetti processo devono essere eliminati in modo che il finalizzatore non venga eseguito - #13280

  • Evitare enumeratori boxing per le raccolte - #13279

  • [.NET 9 Preview 3] Il ripristino no-op non è più operativo - #13269

  • Ridurre le allocazioni nella chiamata a IVsProjectAdpater.IsCapabilityMatchAsync - #13268

  • Consolidare le implementazioni di ripristino packages.config riducendo al minimo le discrepanze - #13233

  • Annullare la registrazione dell'utilizzo di LINQ per ridurre alcune allocazioni in AddMSBuildAssets - #13223

  • PackageSpecWriter chiama Any in istanze di ICollection<T>/IList<T> anziché . Conteggio - #13213

  • StringBuilder.Append(int) causa allocazioni non necessarie - #13207

  • La memorizzazione nella cache dei risultati delle attività può causare l'esecuzione di tutte le continuazioni nello stesso thread - #13206

  • LibraryDependency crea una raccolta che è per lo più vuota - #13184

  • PackageSpecWriter deve scrivere la stringa originale per le versioni invece di allocare una nuova stringa - #13183

  • SetCentralDependencies chiama OrderBy senza specificare il confronto predefinito con confronto sensibile alla lingua - #13182

  • I risultati della ricerca in formato JSON dalla ricerca di pacchetti dotnet non devono includere campi per i quali non vengono forniti valori - #13166

  • Il risultato della ricerca del pacchetto deve essere "totalDownloads" anziché "total downloads" durante l'esecuzione del comando "dotnet package search <Package Name> --format json" - #13165

  • [dotnet package search] L'errore di caricare un indice serivce deve essere un errore e non un avviso. - #13163

  • Il formato di ricerca del pacchetto dotnet mostra l'output della Guida oltre a un file JSON - #13161

  • L'annullamento del ripristino statico basato su grafo non termina il processo di ripristino - #13140

  • Usare la stringa. Contiene anziché IEnumerable.Contains nell'analisi VersionRange - #13124

  • Il ripristino statico del grafo non ripristina la soluzione packages.config - #13109

  • Il ripristino NuGet ha sempre toccato il file project.assets.json anche se non viene modificato alcun contenuto quando è necessario registrare i messaggi di errore. - #13098

  • Il controllo in fase di ripristino non deve generare e non eseguire l'operazione - #13085

  • Durante il ripristino viene visualizzato l'errore "Un elemento con la stessa chiave è già stato aggiunto". - #13067

  • Lo scorrimento dell'interfaccia utente pm non carica più pacchetti aggiuntivi. - #13063

  • Il controllo della cache di ripristino NuGet non usa più la cache di esistenza dei file - #13058

  • L'aggiunta di un riferimento a un esproj da un progetto ASP.Net genera un errore NU1105 - #12986

  • RemoteDependencyWalker alloca molto a causa del fatto che viene chiamato in modo ricorsivo - #12748

  • [Bug]: L'annullamento del ripristino di msbuild è lento quando è configurata un'origine non valida/non raggiungibile - #11813

  • Ripristino: clonazione eccessiva di ProjectSpec - #9041

Elenco dei commit in questa versione

Contributi alla community

Grazie a tutti i collaboratori che hanno contribuito a rendere incredibile questa versione di NuGet.

  • Erarndt
    • 5659 Ridurre il boxing durante l'enumerazione degli elenchi
    • 5662 Usare StringBuilder.AppendInt() in più posizioni per ridurre le allocazioni durante l'aggiunta di numeri interi a stringBuilder
    • 5663 Rimuovere allocazioni dall'implementazione TextWriter.NewLine
    • 5665 Usare StringBuilder in pool
    • 5661 Evitare il boxing dell'enumeratore in PackageSpecificWarningProperties.AddRangeOfCodes e TransitiveNoWarnUtils.AddToSeen
    • 5660 Assicurarsi che gli oggetti Process vengano eliminati quando si avviano i plug-in di autenticazione
    • 5664 Specificare le dimensioni dell'elenco in TopologicalSortUtility.CalculateRelationships
    • 5624 Passare a CreateNodeAsync a un approccio iterativo
    • 5584 Annullare la registrazione dell'utilizzo di LINQ per ridurre alcune allocazioni in AddMSBuildAssets
    • 5574 Annullare la registrazione di diverse chiamate LINQ
    • 5593 Ridurre ulteriormente le allocazioni in CreateGraphNodeAsync
    • 5592 Evitare più enumerare durante la scrittura di oggetti Json
    • 5600 Evitare l'allocazione di stringhe intermedia causata da StringBuilder Append(i...
    • 5555 Annullare la registrazione di Linq in GetFlags
    • 5588 Evitare il boxing dell'enumeratore HashSet in IsBestVerion
    • 5589 Aggiornare l'implementazione del pool per usare uno stack con un blocco per evitare al...
    • 5568 Modificare ResolvedDependencyKey in uno struct
    • 5553 Evitare alcune allocazioni in GetCompatibilityData
    • 5554 Passare da tupla a ValueTuple per le chiavi del dizionario
    • 5552 Evitare di creare la classe di acquisizione per le chiamate a WithExtension
    • 5556 Passare da ConcurrentDictionary a Dictionary con blocco per evitare rep...
    • 5551 Usare una stringa. Contiene anziché IEnumerable.Contains
    • 5550 Evitare l'enumeratore List<T> boxing
  • GenelleM
    • 5655 Aggiungere algo hash non crypto a 64 bit per il calcolo dell'univocità dgspec
    • 5629 Sostituire le chiamate a Any() in ICollection in PackageSpecWriter con numero > 0 numero 13213
    • 5619 Riduce l'utilizzo del tempo della CPU in SetCentralDependencies
  • NikolaMilosavkolvic
    • 5673 Abilitare la pubblicazione in VMR
    • 5625 Eliminare il pacchetto predefinito System.CommandLine
  • brianrob
    • 5650 Aggiungere strumentazione di ripristino