Compartir a través de


Notas de la versión de NuGet 7.0

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
7.0.0 Visual Studio 2026, versión 18.0.0 10.0.1001
7.0.1 Visual Studio 2026, versión 18.1.0
7.0.2 Visual Studio 2026, versión 18.1.1 10.0.1021

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

Resumen: Novedades de la versión 7.0.2

  • La barra de información de vulnerabilidades de Visual Studio ahora tiene el vínculo "Cómo corregir con GitHub Copilot" a la documentación del servidor MCP de NuGet: #14680

Problemas corregidos en esta versión

  • dotnet nuget por qué está escribiendo el paquete de destino en una nueva línea en lugar de en el gráfico de paquetes: #14664

Lista de confirmaciones en esta versión

Resumen: Novedades de la versión 7.0.1

Problemas corregidos en esta versión

  • Se corrigió el error NU1011 que se produjo al usar la administración de paquetes central con versiones flotantes permitidas #14637

Lista de confirmaciones en esta versión

Resumen: Novedades de la versión 7.0.0

  • Los proyectos que tienen como destino .NET 10 advierten sobre vulnerabilidades en paquetes transitivos de manera predeterminada, estableciendo NuGetAuditMode=all #14161

  • La poda de paquetes está habilitada para todos los proyectos destinados a .NET 10 #14345

  • Se creó el servidor de Protocolo de contexto de modelo de NuGet (MCP), compatible con el SDK de .NET 10 o posterior. MCP de NuGet está preinstalado en Visual Studio 2026 y se puede instalar en Visual Studio 17.14 y VS Code. El servidor se publica en nuget.org como paquete NuGet.Mcp.Server .

  • Permitir empaquetar proyectos PackageReference heredados sin que se requiera un paquete: #14046

  • Desuso del uso de SHA-1 en .NET 10: #13814

  • El panel Detalles refleja los datos de vulnerabilidad de los orígenes de auditoría: #14554

  • Compatibilidad con AuditSources de NuGet en la interfaz de usuario del Administrador de paquetes: #13954

  • Migrar la configuración de NuGet a la nueva ventana Opciones de Visual Studio

    • Migración de la configuración de "Orígenes de paquetes" en Opciones de Visual Studio: #14233

    • Migración de la configuración de "Asignación de origen de paquetes" en Opciones de Visual Studio: #14234

  • paquete de actualización dotnet --vulnerable (Corrección de auditoría): #13372

Cambios críticos

  • Adición de la validación del identificador de paquete durante la restauración: #14407

  • Project.json ya no se admite en la versión 7.0. Visual Studio 2026 migró automáticamente los proyectos project.json a PackageReference

  • La eliminación de paquetes provocará una diferencia única en el archivo de bloqueo de paquetes: #14272

  • La poda privatiza referencias directas aplicando PrivateAssets=all e IncludeAssets=none - #14196

  • Generar un error para el uso de huellas digitales SHA-1 en NuGet.exe signo, comandos mssign: #13962

  • Mostrar un error cuando se usa un origen que no es https en un recurso de un índice de servicio: #13364

Cambios importantes del SDK

  • Project.json en desuso

    • Quitar project.json pack: #7931

    • Quitar compatibilidad con project.json: #7199

    • Eliminar PackageSpec.Dependencies - #14446

    • Limpieza de las APIs redundantes en la especificación del paquete: #6231

  • Las API de extensibilidad no utilizadas de NuGet para VS han sido eliminadas: #14403

  • Quite todas las API sin usar marcadas como obsoletas en NuGet.Frameworks, NuGet.Protocol, NuGet.Commands & NuGet.PackageManagement - #14395

  • Quitar las API obsoletas de NuGet.Common, NuGet.Configuration, NuGet.LibraryModel, NuGet.Packaging y NuGet.ProjectModel: #14393

  • Bloquear y quitar código para implementaciones de restauración sin usar, como Standalone. - #14184

  • Eliminar/restaurar - DotnetToolReference

Problemas corregidos en esta versión

Correcciones del SDK de NuGet

  • No use la deserialización basada en la reflexión en NuGet.Protocol: #14470

  • JsonSerializerIsReflectionDisabled al actualizar a NuGet.Protocols 6.13.1 en aplicaciones con JsonSerializerIsReflectionEnabledByDefault configurado como false - #14111

CLI de .NET

  • Habilitación de CanShowDialog para complementos de autenticación de .NET Core: #14010

  • "dotnet package update" modifica el archivo de proyecto incorrecto (csproj): #14585

  • dotnet nuget verify debe generar el hash de contenido del paquete: #14384

  • La actualización del paquete dotnet debe admitir --verbosity - #14319

  • La actualización del paquete dotnet debe admitir CPM y VersionOverride: #14318

  • La actualización del paquete dotnet debe admitir varios paquetes: #14308

  • La actualización del paquete dotnet debe admitir la asignación de código fuente del paquete: #14307

  • Actualización del paquete dotnet a una versión específica: #14306

  • Actualización de paquete dotnet versión inicial - #14305

  • [Bug Bash][Inestable] Error "Se intentó dividir por cero". se produce al ejecutar el comando "dotnet list [ProjectPath] package --vulnerable" - #14122

  • [Característica]: el paquete dotnet list [project | solution] no funciona con filtros de solución: #11789

Interfaz de usuario del Administrador de paquetes en Visual Studio

  • Conversión del control de búsqueda a fluent UI - #14469

  • Usar Fluent TextBox para la versión instalada de la interfaz de usuario de Project PM - #14466

  • [Bug Bash] Hay una pequeña brecha en la lista desplegable de versiones de la interfaz de usuario de PM : #11990

  • [Bug Bash] La lista desplegable de la interfaz de usuario de PM no diferencia entre el color de fondo del elemento seleccionado y el del elemento bajo el cursor: #10977

  • [Bug Bash] Al presionar el botón de página hacia abajo del teclado al centrarse en el cuadro desplegable "Versión" con la tecla Tab, el cuadro está vacío: #13605

  • Código fallido: Vista ActionsAndVersions - #14464

Opciones de Visual Studio

  • Eliminación de opciones heredadas de VS en la configuración de NuGet: #14398

  • Al agregar un origen http en el cuadro de diálogo de opciones, haga que el usuario haga clic en una casilla de verificación para aceptar más explícitamente que AllowInsecureConnections se añadirá: #14377

  • Error requerido en la configuración de las fuentes de paquetes para el origen HTTP sin "AllowInsecureConnections" - #14367

  • Mejora de la validación de la configuración de NuGet en las opciones de Visual Studio: #14359

  • Mostrar errores de validación en las páginas de opciones de NuGet al escribir : #14358

  • [Bug Bash] [Inestable] La primera eliminación de una asignación de origen de la lista "Asignaciones de origen de paquete" en el cuadro de diálogo "Asignación de origen de paquete" no funciona: #13520

  • [Localización] El título de la tabla "Asignación de origen de paquetes" en la página "Opciones>-Administrador de paquetes NuGet>-Asignación de origen de paquetes" no fue localizado - #14550

  • [Bug Bash] El origen del paquete sin conexión no se puede habilitar después de deshabilitarlo en la lista de "Orígenes de paquetes para toda la máquina" anteriormente en la ventana "Opciones->Administrador de paquetes NuGet->Orígenes de paquetes" - #13434

  • [Bug Bash] La columna "origen" del cuadro de diálogo "Agregar nueva asignación de origen de paquete" no tiene el ancho mínimo establecido, lo que hace que se pueda arrastrar fuera de vista- #13355

  • [Bug Bash] La primera reapertura del cuadro de diálogo Opciones debe devolver el origen de paquete predeterminado "Paquetes sin conexión de Microsoft Visual Studio" en la lista "orígenes de paquetes" cuando todos los orígenes se eliminaron anteriormente: #13278

  • [Bug Bash] La asignación de origen del paquete recién agregada no debe distinguir entre mayúsculas y minúsculas en la ventana "Option->NuGet Package Manager->Package Source Mapping" - #13210

  • [Bug Bash] La nueva asignación de fuente de paquete agregada se perderá después de cambiar de nuevo a la pestaña "Asignación de fuente de paquete" desde otra pestaña en la ventana "Opciones - Administrador de paquetes NuGet>" - #13150

  • [Bug Bash] El botón "Quitar" debería estar deshabilitado cuando no se selecciona ningún mapeo de origen de paquete en la lista "Mapeos de Origen de Paquetes" - #13115

  • [CSY] Las teclas de acceso rápido duplicadas se muestran en el cuadro de diálogo "Opciones-Administrador de paquetes NuGet-Orígenes de paquetes" - >

  • VS NuGet PMUI: la sección de orígenes de paquetes globales también debe ser redimensionable verticalmente: #7560

  • [Bug Bash] Habrá un origen de paquete duplicado al modificar el nombre del origen "Paquetes sin conexión de Microsoft Visual Studio" - #13057

  • [Bug Bash] La página "Options-NuGet> Package Manager-Package> Sources" está deshabilitada después de activar o desactivar la casilla "Habilitado" de cualquiera de las fuentes de paquetes que tienen fuentes duplicadas: #14499

  • Se debe seleccionar manualmente el texto rellenado previamente en el cuadro de diálogo Agregar origen del paquete: #14450

  • VS no debe eliminar los atributos de origen del paquete cuando se actualiza Name : #14370

Eliminación de paquetes

  • Despliegue de advertencia para PrunePackageReference: #14126

  • Faltan advertencias de auditoría de "nuget install" cuando nuget.org no es una fuente de paquetes - #14096

  • No es posible realizar push a orígenes HTTP especificados a través de la línea de comandos: #14047

  • El recorte de paquetes está habilitado para todos los proyectos dirigidos a .NET 10, incluidos aquellos con múltiples destinos: #14345

  • Traslado de marcos habilitados para la eliminación a NuGet.targets: #14424

  • Cambiar _RestorePackagePruningDefault a RestorePackagePruningDefault - #14511

Restore

  • dotnet restore/Visual Studio en conflicto con .esproj + Nx project.json - #13512

  • Mejorar NU1004 cuando se usa la poda con el modo bloqueado: #14075

  • Considere la posibilidad de no escribir NuGetToolVersion en archivos de propiedades de MSBuild generados en restauración: #14355

  • Se produce un error en la restauración de NuGet si SQL Server Management Studio 21 está instalado: #14349

  • Eliminar NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING: #14257

  • Elimina RestoreTargetGraph.Name ya que es redundante con restoreTargetGraph.TargetGraphName, que es la versión ampliamente usada: #14529

  • Eliminar RestoreArgs.LockFileVersion ya que su funcionalidad no se utiliza: #14524

  • Quitar NUGET_BULK_RESTORE_COORDINATION y NUGET_SOLUTION_CACHE_INITIALIZATION alternativas - #14502

Resolución de dependencias

  • La nueva resolución de dependencias no controla correctamente las versiones preliminares flotantes: #13833

  • Reactivar la nueva resolución del algoritmo con archivos de cerrojo: #13800

Other

  • Detener el paquete de ilmerging: #13079

  • Hacer que nuGet.Client Build.ps1 sea más fácil de usar para GitHub Copilot en VSCode - #14453

  • Generar [Content_Types].xml idénticos en compilaciones repetidas: #14357

  • pack heredado csproj: incluye destinos de paquete y tareas en las herramientas de compilación de VS: #14520

  • VS se bloquea cuando el único proyecto de la solución es un proyecto basado en project.json: #14553

  • revisión del control de excepciones: #14440

  • Mejora del rendimiento evitando búsquedas redundantes de diccionario: #14432

  • LockFileLibrary no necesita ser mutable: #14385

Lista de confirmaciones en esta versión

Contribuciones de la comunidad

Gracias a todos los colaboradores que ayudaron a hacer que esta versión de NuGet sea impresionante.

  • SimonCropp
    • 6720 Quitar constructores predeterminados redundantes
    • 6610 agregar "no tiene una versión mínima" a los mensajes de GetNupkgInfo
    • 6581 quitar búsquedas de diccionario redundantes en MarkTransitiveOrigin
    • 6596 habilita la nulabilidad en PackageItemViewModelTests
    • 6634 eliminar IFrameworkTargetable
    • 6616 evitar el análisis de versiones redundantes en PluginFindPackageByIdResource
    • 6595 habilita la nulabilidad en ReadmePreviewViewModelTests
    • 6587 Quitar la búsqueda de diccionario redundante en ProcessUnrankedEntries
    • 6598 habilitar la nulabilidad en EmbeddedResourcesCapabilityTests
    • 6577 usar campos en lugar de propiedades privadas
    • 6622 quitar la lista no usada en GetPackagesToBeReinstalled
    • 6589 comprobación nula redundante para el valor devuelto por projectManagerService.GetMetadataAsync
    • 6605 habilitar la capacidad de nulidad en VSRestoreSettingsUtilityTests
    • 6575 quitar la búsqueda de diccionario redundante en CredentialServiceAdapter.GetCredentials
    • 6601 habilitar nullabe en NuGetInstallCommandTest
    • 6593 habilitar nullable en IProjectContextInfoExtensionsTests
    • 6614 quitar listas redundantes en DependencyGraphFileRequestProvider
    • 6625 Quitar variables no usadas en PackageExtractor
    • Corregir la anulabilidad en UnresolvedMessages 6609
    • 6608 Quitar contexto no usadoForGather
    • 6628 Quitar la enumeración redundante en CredentialsItem
    • 6617 Eliminar la instancia de la lista toolItems en MSBuildRestoreUtility
    • 6599 corregir la nulabilidad de los parámetros en Constructor_SetReportAbuseUrl_Initialize...
    • 6604 habilitar nullable en LegacyPackageReferenceProjectTests
    • 6631 remover DependencyGraphSpecRequestProvider.CollectReferences
    • 6635 eliminar EnvDteProjectExtensions.PathComparer
    • 6623 eliminar redundantes GetManifestResourceNames en ManifestSchemaUtility
    • 6619 Quitar la variable packageID sin usar
    • 6620 quitar variables no usadas en PackageManagerControl
    • 6640 Quitar el control de excepciones redundantes
    • 6637 Eliminar PackageManagerControl.AddMigratorBar
    • 6629 Quitar la instancia de HashSet no usada en ResolverMetadataClient
    • 6602 habilitar nullable en MSBuildUtilityTest
    • 6641 quitar la condición null redundante en UpdateCommand.ExecuteCommandAsync
    • 6683 Eliminar la asignación de cadena redundante en GetTempFilePath
    • 6626 quitar variables no usadas en SignedPackageArchiveIOUtility
    • 6574 Quitar búsqueda de diccionario redundante en CreatePackageSourceMappingDictionary
    • 6594 habilitar la nulabilidad en InfiniteScrollListTests
    • 6682 Usa retraso asincrónico en SafeReadAsync
    • 6600 Habilitar nullable en NuGetUpdateCommandTests
    • 6606 habilitar nullable en VSNominationUtilitiesTests
    • 6613 Quitar la variable de tipo redundante en GetExternalProject
    • 6611 Quitar instancias de solutionService no usadas
    • 6643 eliminar MsBuildUtility.GetMsBuildPathInPathVar
    • 6632 quitar de PackageSpecFactory.GetTargetFrameworkStrings
    • 6573 evitar alguna asignación en ProjectFactory.ProcessDependencies
    • 6588 eliminar las consultas de diccionario de GetPreviewResultsAsync
    • 6597 corregir nullability en PackageModelCreationTestHelper
    • 6612 Quitar instancias de lista no usadas en NuGetPackageManager
    • 6591 habilitar nulabilidad en PackageSourceValidatorTests
    • 6603 corrección de la nulabilidad en IVsProjectBuildProperties
    • 6636 quitar los campos _project* de PackageReferenceProject
    • 6630 quitar la instancia de identidad no usada en LocalV3FindPackageByIdResource
    • 6618 quitar la instancia de LoggerAdapter en NuGetPackageManager
    • 6621 Quitar proyectos no usadosByUniqueName en SolutionUpToDateChecker
    • 6624 Quitar variables no usadas en PackageBuilder
    • 6633 eliminar JsonPackageSpecReader DelimitedStringSeparators y VersionSeparators
    • 6642 use la conversión en lugar de como y la comprobación null en CommandLineParser.AssignValue
    • 6615 Quitar lista redundante en GetPluginAsync
    • 6627 Eliminar GetDirectoryName no usado en MisplacedAssemblyOutsideLibRule
    • 6578 eliminar la redundante búsqueda de diccionario en PrunePackageTree.PruneDowngrades
    • 6576 Quitar búsqueda de diccionario redundante en RecommenderPackageFeed
  • baronfel
    • 6554 Corrección del flujo de código de NuGet-SDK>
    • 6514 Anclar y estabilizar la NuGetToolVersion propiedad en los archivos de propiedades de NuGet generados durante la restauración.
  • omajid
    • 6500 Garantizar un orden estable de entradas en Content_Types.xml
    • 6507 Admite la construcción en Linux cuando la firma completa no está disponible
  • AlexDelepine
    • 6793 Actualizar prioridades de Ngen para VS
  • hickford
    • 6475 Poblar fuentes de auditoría de forma coherente
  • nohwnd
    • 6735 Deshabilitar el perfil de carga en las llamadas de utilidad powershell.exe
  • mmitche
    • 6539 Mover NuGet a las xliff-tasks
  • dkurepa
    • 6644 Agregar Version.Details.props
  • bdukes
    • 6530 Corrección de la restauración de la búsqueda de MSBuild desde SSMS en lugar de Visual Studio
  • ToddGrun
    • 6519 Hacer que LockFileLibrary sea inmutable por motivos de rendimiento y integridad