Notas de la versión de NuGet 6.12

Nota

En respuesta a los comentarios de los desarrolladores para garantizar la continuidad de las compilaciones al actualizar a .NET SDK 9, hemos revertido el valor predeterminado de NuGetAuditMode a direct en Visual Studio 17.12.3 y .NET 9.0.101.

Vehículos de distribución de NuGet:

Versión de NuGet Disponible en la versión de Visual Studio Disponible en los SDK de .NET
6.12 Visual Studio 2022, versión 17.12 9.0.1xx1
6.12.4 Visual Studio 2022, versión 17.12.8 9.0.1061
6.12.5 Visual Studio 2022, versión 17.12.19 9.0.1161

1 Instalado con Visual Studio 2022 con cualquier carga de trabajo de .NET

Problemas conocidos

  • Proyecto y los paquetes en el mismo gráfico con nombres iguales pero con diferentes dependencias pueden provocar versiones incorrectas de esas dependencias para ese identificador #13888
  • La interfaz de usuario de VS PM muestra el icono de advertencia sobre la vulnerabilidad del paquete incluso después de la actualización 13866
  • dotnet nuget por qué notifica que falta el argumento, aunque ejecutó #13908

Resumen: Novedades de la versión 6.12.5

  • Aviso de seguridad | Actualización de defensa en profundidad para el cliente NuGet: 14857

Lista de confirmaciones en esta versión

Resumen: Novedades de la versión 6.12.4

NuGet 6.12.4 está disponible en Visual Studio 17.12.8.

Problemas corregidos en esta versión

  • La operación de restauración debería fallar más rápidamente con orígenes HTTP: #14210

Resumen: Novedades de la versión 6.12.3

NuGet 6.12.3 está disponible en Visual Studio 17.12.4.

Problemas corregidos en esta versión

  • El tamaño de la interfaz de usuario de PM de Solution Small puede causar una System.ArgumentException en SolutionView.ListView_SizeChanged - #13928

Resumen: Novedades de la versión 6.12.1

NuGet 6.12.1 está disponible en Visual Studio 17.12.0 y el SDK de .NET 9.0.101.

Problemas corregidos en esta versión

  • Se produce un error al deserializar un intervalo de versiones vacío en una dependencia de paquete en .NET SDK 9.0.100-rc.2 #13869

Resumen: Novedades de la versión 6.12

NuGet 6.12.0 está disponible en el SDK de .NET 9.0.100.

  • Adición de un nuevo algoritmo de resolución de grafos para mejorar el rendimiento con gráficos grandes: #13692

  • NuGetAudit genera advertencias para paquetes transitivos vulnerables de forma predeterminada cuando el SDK de .NET 9 está instalado #13293

  • Cambie el valor predeterminado de NuGetAuditMode de directo a todo, emitiendo advertencias para paquetes transitivos vulnerables en proyectos que no utilizan el estilo SDK: #13584

  • Auditar vulnerabilidades de seguridad sin agregar nuget.org como origen del paquete: #12698

  • Hipervínculos de perfil de propietario necesarios en el panel de detalles de la interfaz de usuario de PM: #13686

  • Desuso del uso de huellas digitales SHA-1 en los comandos de inicio de sesión de NuGet en favor de las huellas digitales de la familia SHA-2 #13891

  • Resaltar indicadores conocidos de vulnerabilidad en el Explorador de Soluciones para paquetes transitivos - #13636

  • Habilitación de dependencias transitivas y vulnerabilidades para el nivel de solución en Visual Studio: #13216

Cambios importantes

  • Obsoletizar el uso de HTTP: elevar de advertencia a error - #13289

Problemas corregidos en esta versión

  • Habilitar dotnet nuget why en proyectos de estilo que no son sdk: #13576

  • NuGetAuditSuppress para packages.config: #13575

  • Despliegue del nuevo proceso de cambio disruptivo para las herramientas del SDK, respetar SdkAnalysisLevel - #13309

  • Agregue la propiedad para alternar al solucionador de NuGet anterior: RestoreUseLegacyDependencyResolver - #13700

  • Reducción de asignaciones en TokenSegment.TryMatch: #12728

  • Use SDKAnalysisLevel al restaurar "HTTPS en todas partes: elevar de advertencia a error" - #13546

  • ajuste del texto de NU1603: #13446

  • Icono de paquete predeterminado que se muestra incluso cuando existe un archivo de icono incrustado en el disco: #13766

  • Telemetría de navegación para hipervínculos: Licencia, ReportAbuse, Readme, ProjectUrl - #13749

  • Telemetría de navegación para las URL de los perfiles de propietarios en la interfaz de usuario de PM: #13738

  • La interfaz de usuario de PM debe mostrar la ruta transitiva: #13574

  • NuGetVersion debe usar una factoría para interner las versiones analizadas #13532

  • Eliminación del código NuGet.Packaging.Core: #13385

  • Las dependencias transitivas de la interfaz de usuario de PM deben mostrar todas las dependencias transitivas, no solo las que se incluyen a través de paquetes instalados directamente en un proyecto: #13060

  • Quitar el campo "propietarios" en desuso del panel de detalles de la interfaz de usuario de VS: #10666

  • "El valor no puede ser null; Nombre de parámetro: origen" se muestra en la lista de errores al hacer clic en la pestaña instalada en la interfaz de usuario de PM - #13801

  • La nueva resolución de dependencias no controla correctamente las versiones de paquete que faltan al usar CPM: #13788

  • Al guardar PackageManagementFormat, se lanza un error indicando que el objeto Nullable debe tener un valor. - #13773

  • ProjectReference que provoca un error en la interfaz de usuario de PM con "El valor no puede ser NULL. Nombre del parámetro: frameworkIdentifier" - #13737

  • LockFileUtils.CreateLockFileTargetProject asigna mucha memoria: #13712

  • ConvertToProjectPaths provoca asignaciones adicionales debido al uso del rendimiento: #13677

  • dotnet add package con CPM instala una versión diferente de la que se restaura: #13657

  • dotnet list package no funciona si el proyecto usa el sistema de administración de paquetes central, después de actualizar a .NET 8.0 - #13632

  • Agregar un código de registro NuGetAuditSuppress para elementos duplicados: #13620

  • La búsqueda en Solution Explorer se puede romper por las actualizaciones omitidas del flujo de datos: #13619

  • Agregar declaraciones de nulabilidad a ResolverUtility y RemoteWalkContext: #13617

  • Uso del ctor X509Certificate2 obsoleto: #13612

  • Las advertencias de restauración de nuget no se pueden suprimir con NoWarn en Visual Studio: #13571

  • La restauración puede escribir valores NULL en project.assets.json: #13563

  • VS 17.10: error al compilar proyectos con CPM habilitado explícitamente si ManagePackageVersionsCentrally está establecido en false en Directory.Build.props - #13560

  • PERF: Las asignaciones de versión y de VersionRange son frecuentes en los perfiles de carga de soluciones de Roslyn: #13559

  • PERF: LockFileFormat se completa por completo cuando los llamadores comunes solo necesitan algunos de los datos: #13558

  • PERF: Construcción innecesaria del diccionario LockFileItem.Properties - #13557

  • Narator no lee el valor de allowInsecureConnections - #13555

  • Error de NuGet debido a caracteres no válidos en el encabezado User-Agent: #13531

  • Los comandos «why» y «config» no se muestran en la salida «dotnet nuget --help» - #13517

  • asignación: nuget.protocol.dll!NuGet.Protocol.HttpCacheUtility+<CreateCacheFileAsync>d__.MoveNext|nuget.protocol.dll!NuGet.Protocol.PackageDependencyGroupConverter.ReadJson - #13445

  • Reducción de asignaciones en ContentItemCollection: #12657

  • Cuando no se puede acceder a un origen, surgen problemas al leer el índice de servicio, lo que suprime el mensaje interno y complica entender la causa raíz: #12530

  • [Error]: Espacio adicional al principio de la descripción del paquete en la información sobre herramientas - #12105

  • Asignar nombre de rama de sourcelink a RepositoryBranch para el paquete NuGet: #13625

Lista de confirmaciones en esta versión

Contribuciones de la comunidad

Gracias a todos los colaboradores que han ayudado a que esta versión de NuGet sea impresionante.

  • akoeplinger
    • 6005 Mejorar build.sh y corregir la compilación en arm64 macOS
    • 5956 Agregue System.Formats.Asn1 a Version.Details.xml
    • 5911 No use el constructor X509Certificate2 obsoleto en net9.0
  • ToddGrun
    • 5862 Reducir las asignaciones para versiones y rangos de versiones
    • 5857 Reducir las asignaciones de memoria durante la carga de la solución en VS
    • 5861 Aplazar la construcción del diccionario LockFileItem.Properties hasta que sea necesario
  • KirillOsenkov
    • 6008 Depurar siempre RestoreTask y RestoreEx cuando se establece la variable de entorno
  • vernou
    • 5982 Corrección de la restauración cuando se instala un paquete con una versión especificada en CPM
  • mthalman
    • 5959 Permitir invalidación de la versión del paquete System.Formats.Asn1
  • MattKotsenas
    • 5923 Mapa SourceBranchName de sourcelink a RepositoryBranch para el paquete NuGet