NuGet 배포 차량:
| NuGet 버전 | Visual Studio 버전에서 사용 가능 | .NET SDK에서 사용 가능 |
|---|---|---|
| 7.0.0 | Visual Studio 2026 버전 18.0.0 | 10.0.1001 |
| 7.0.1 | Visual Studio 2026 버전 18.1.0 |
1 .NET 워크로드가 있는 Visual Studio 2026과 함께 설치됨
요약: 7.0.1의 새로운 기능
이번 릴리스에서 수정된 문제
- 부동 버전이 허용된 중앙 패키지 관리를 사용할 때 발생하는 NU1011 오류 수정 #14637
요약: 7.0.0의 새로운 기능
.NET 10을 대상으로 하는 프로젝트는 기본적으로 NuGetAuditMode=all #14161로 설정하여 전이적 패키지의 취약성에 대해 경고합니다.
.NET 10 SDK 이상에서 지원하는 MCP(NuGet 모델 컨텍스트 프로토콜) 서버를 만들었습니다. NuGet의 MCP는 Visual Studio 2026에 미리 설치되며 VS 17.14 및 VS Code에서 설치할 수 있습니다. 서버는 nuget.org NuGet.Mcp.Server 패키지로 게시됩니다.
패키지가 필요 없는 레거시 PackageReference 프로젝트 패킹 활성화 - #14046
.NET 10에서 SHA-1 사용량 중단 - #13814
세부 정보 창에 감사 원본의 취약성 데이터가 반영됩니다. - #14554
패키지 관리자 UI에서 NuGet AuditSources 지원 - #13954
NuGet의 설정을 새 Visual Studio 옵션 창으로 마이그레이션
dotnet update package --vulnerable (감사 수정) - #13372
파괴적 변경
복원하는 동안 패키지 ID 유효성 검사 추가 - #14407
Project.json 더 이상 7.0에서 지원되지 않습니다. Visual Studio 2026에서 project.json 프로젝트를 PackageReference로 자동으로 마이그레이션
패키지 정리로 인해 패키지 잠금 파일에 일회성 차이가 발생합니다 (#14272).
정리는 PrivateAssets=all 및 IncludeAssets=none을 적용하여 직접 참조를 민영화합니다. - #14196
NuGet.exe의 서명, mssign 명령에서 SHA-1 지문 사용에 오류를 제기 - #13962
서비스 인덱스의 리소스에서 https가 아닌 원본을 사용하는 경우 오류 표시 - #13364
SDK 호환성이 손상되는 변경
Project.json 사용 중단
사용되지 않는 NuGet VS 확장성 API가 제거됨 - #14403
NuGet.Frameworks, NuGet.Protocol, NuGet.Commands 및 NuGet.PackageManagement에서 사용되지 않는 것으로 표시된 사용되지 않는 모든 API 제거 - #14395
NuGet.Common, NuGet.Configuration, NuGet.LibraryModel, NuGet.Packaging 및 NuGet.ProjectModel에서 사용되지 않는 API 제거 - #14393
와 같은
Standalone사용되지 않는 복원 구현에 대한 코드를 차단하고 제거합니다. - #14184제거
DotnetToolReference복원 - #14183
이번 릴리스에서 수정된 문제
NuGet SDK 수정
NuGet.Protocol에서 리플렉션 기반 역직렬화를 사용하지 않음 - #14470
JsonSerializerIsReflectionEnabledByDefault가 false로 설정된 앱에서 Nuget.Protocols 6.13.1로 업데이트할 때 JsonSerializerIsReflectionDisabled - #14111
.NET CLI (.NET 명령줄 인터페이스)
.NET Core 인증 플러그 인에 대해 CanShowDialog 사용 - #14010
"dotnet package update"는 잘못된 프로젝트 파일(csproj)을 수정합니다. - #14585
dotnet nuget verify 명령은 패키지 내용 해시를 출력해야 합니다 - #14384
dotnet 패키지 업데이트는 --verbosity - #14319를 지원해야 합니다.
dotnet 패키지 업데이트는 CPM 및 VersionOverride를 지원해야 합니다. - #14318
dotnet 패키지 업데이트는 여러 패키지를 지원해야 합니다. - #14308
dotnet 패키지 업데이트는 패키지 원본 매핑을 지원해야 합니다. - #14307
특정 버전에 대한 dotnet 패키지 업데이트 - #14306
dotnet 패키지 업데이트 초기 버전 - #14305
[버그 Bash][불안정] "0으로 나누려고 했습니다."라는 오류가 발생했습니다. "dotnet list [ProjectPath] 패키지 --vulnerable" 명령을 실행할 때 발생합니다. - #14122
[기능]: dotnet list [project | solution] 패키지가 솔루션 필터에서 작동하지 않음 - #11789
Visual Studio의 패키지 관리자 UI
검색 컨트롤을 Fluent UI로 변환 - #14469
Fluent TextBox for Project PM UI 설치 버전 사용 - #14466
[버그 Bash] PM UI의 버전 드롭다운 목록에 작은 차이가 있습니다. - #11990
[버그 Bash] PM UI의 드롭다운 목록에서 선택한 항목과 가리키기 항목 사이의 배경색을 구분하지 않습니다. - #10977
[버그 Bash] Tab 키를 사용하여 '버전' 드롭다운 상자에 포커스를 맞춘 후, 키보드의 페이지 다운 버튼을 누르면 상자가 비게 됩니다. - #13605
데드 코드: ActionsAndVersions 보기 - #14464
Visual Studio 옵션
레거시 Visual Studio 옵션 NuGet 설정 서비스 비활성화 - #14398
옵션 대화 상자에서 http 원본을 추가할 때 사용자가 확인란을 클릭하여 추가되는 AllowInsecureConnections에 더 명시적으로 동의하도록 합니다. - #14377
AllowInsecureConnections가 없는 HTTP 원본에 대한 패키지 원본 설정에 필요한 오류 - #14367
Visual Studio 옵션에서 NuGet 설정의 유효성 검사 개선 - #14359
입력하는 동안 NuGet 옵션 페이지에 유효성 검사 오류 표시 - #14358
[버그 Bash] [불안정] '패키지 원본 매핑' 대화 상자의 '패키지 원본 매핑' 목록에서 원본 매핑의 첫 번째 제거가 작동하지 않음 - #13520
[지역화] 'Options-NuGet 패키지 관리자->>패키지 원본 매핑' 페이지의 테이블 제목 '패키지 원본 매핑'이 지역화되지 않았습니다. - #14550
[버그 Bash] 오프라인 패키지 원본은 이전에 'Options-NuGet> 패키지 관리자->패키지 원본' 창의 '컴퓨터 수준 패키지 원본' 원본 목록에서 사용하지 않도록 설정한 후 사용할 수 없습니다. - #13434
[버그 Bash] "새 패키지 원본 매핑 추가" 대화 상자의 "원본" 열은 최소 너비가 설정되어 있지 않아 끌어서 보이지 않게 할 수 있습니다. - #13355
[버그 Bash] 옵션 대화 상자의 첫 번째 다시 열기는 모든 원본이 이전에 삭제된 경우 "패키지 원본" 목록에서 기본 패키지 원본 "Microsoft Visual Studio 오프라인 패키지"를 다시 가져와야 합니다. - #13278
[버그 Bash] 새로 추가된 패키지 원본 매핑은 "Option-NuGet 패키지 관리자->>패키지 원본 매핑" 창에서 대/소문자를 구분하지 않아야 합니다. - #13210
[버그 Bash] "Option-NuGet 패키지 관리자" 창의 다른 탭에서 "패키지 원본 매핑" 탭으로 다시 전환한 후 새로 추가된> 패키지 원본 매핑이 손실됩니다. - #13150
[버그 Bash] "패키지 원본 매핑" 목록에서 패키지 원본 매핑을 선택하지 않은 경우 "제거" 단추를 사용하지 않도록 설정해야 합니다. - #13115
[CSY] "옵션->NuGet 패키지 관리자->패키지 원본" 대화 상자에 중복된 바로 가기 키 표시 - #7822
VS NuGet PMUI - 컴퓨터 전체 패키지 원본 영역도 수직으로 크기를 조정할 수 있어야 합니다. - #7560
[버그 Bash] 원본 "Microsoft Visual Studio 오프라인 패키지" - #13057의 이름을 수정할 때 중복된 패키지 원본이 있습니다.
[버그 Bash] 중복된 원본이 있는 패키지 원본 중 하나에 대해 "사용" 확인란을 선택하거나 선택 취소한 후 "Options->NuGet 패키지 관리자->패키지 원본" 페이지가 비활성화됩니다. #14499
패키지 원본 추가 대화 상자에서 미리 채워진 텍스트를 수동으로 선택해야 합니다. - #14450
이름이 업데이트되면 VS에서 패키지 원본 특성을 삭제해서는 안 됩니다. - #14370
패키지 정리
PrunePackageReference에 대한 경고 롤아웃 - #14126
nuget.org 패키지 원본이 아닌 경우 "nuget install"에서 감사 경고 누락 - #14096
명령줄을 통해 지정된 HTTP 원본으로 푸시할 수 없음 - #14047
패키지 정리는 다중 대상을 포함하여 .NET 10을 대상으로 하는 모든 프로젝트에 대해 사용하도록 설정됩니다. - #14345
가지치기가 활성화된 프레임워크를 NuGet.targets로 이동 - #14424
_RestorePackagePruningDefault RestorePackagePruningDefault로 변경 - #14511
Restore
dotnet restore/Visual Studio - .esproj + Nx project.json과의 충돌 - #13512
잠긴 모드에서 가지치기 기능을 사용할 때 NU1004 개선 - #14075
복원에서 생성된 MSBuild props 파일에 NuGetToolVersion을 쓰지 않는 것이 좋습니다. - #14355
SQL Server Management Studio 21이 설치된 경우 NuGet 복원 실패 - #14349
NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING 제거 - #14257
RestoreTargetGraph.Name은 restoreTargetGraph.TargetGraphName이 널리 사용되는 버전이므로 불필요하여 제거 - #14529
사용되지 않는 기능으로 RestoreArgs.LockFileVersion 제거 - #14524
NUGET_BULK_RESTORE_COORDINATION 제거 및 대체 NUGET_SOLUTION_CACHE_INITIALIZATION - #14502
종속성 해결자
Other
일머깅 팩 중지 - #13079
VSCode에서 GitHub Copilot에 NuGet.Client의 Build.ps1 더 친숙하게 만들기 - #14453
반복되는 빌드에서 동일한 [Content_Types].xml 생성 - #14357
pack 레거시 csproj: VS 빌드 도구에 팩 대상 및 작업 포함 - #14520
솔루션의 유일한 프로젝트가 project.json 프로젝트인 경우 VS가 충돌합니다. - #14553
예외 처리 검토 - #14440
중복 사전 조회를 방지하여 성능 향상 - #14432
LockFileLibrary를 변경할 필요가 없습니다. - #14385
커뮤니티 기여
이 NuGet 릴리스를 멋지게 만드는 데 도움을 주신 모든 기여자에게 감사드립니다!
-
SimonCropp
- 6720 중복 기본 생성자 제거
- 6610 GetNupkgInfo의 메시지에 "최소 버전이 없습니다"를 추가합니다.
- 6581 MarkTransitiveOrigin에서 중복 사전 조회 제거
- PackageItemViewModelTests에서 6596의 null 허용을 활성화
- 6634 IFrameworkTargetable 제거
- 6616 PluginFindPackageByIdResource에서 중복 버전 구문 분석 방지
- ReadmePreviewViewModelTests에서 6595로 null 허용
- 6587 ProcessUnrankedEntries에서 중복 사전 조회 제거
- EmbeddedResourcesCapabilityTests에서 6598 null 허용 기능 활성화
- 6577 전용 속성 대신 필드 사용
- 6622 GetPackagesToBeReinstalled에서 사용되지 않는 목록 제거
- projectManagerService.GetMetadataAsync 반환 값에 대한 6589 중복 null 검사
- 6605 VSRestoreSettingsUtilityTests에서 nullable 사용
- 6575 CredentialServiceAdapter.GetCredentials에서 불필요한 사전 조회 제거
- NuGetInstallCommandTest에서 6601 nullabe 사용
- 6593 IProjectContextInfoExtensionsTests에서 nullable 사용
- 6614 DependencyGraphFileRequestProvider에서 중복 목록 제거
- 6625 PackageExtractor에서 사용되지 않는 변수 제거
- 6609 UnresolvedMessages의 null 허용 여부 수정
- 6608 사용되지 않는 contextForGather 제거
- 6628 CredentialsItem에서 중복 열거 제거
- 6617 MSBuildRestoreUtility에서 toolItems 목록 인스턴스 제거
- 6599 Constructor_SetReportAbuseUrl_Initialize 매개 변수 null 허용 여부 수정...
- 6604 LegacyPackageReferenceProjectTests에서 nullable 사용
- 6631 DependencyGraphSpecRequestProvider.CollectReferences 삭제
- 6635 EnvDteProjectExtensions.PathComparer 제거
- 6623 ManifestSchemaUtility에서 중복 GetManifestResourceNames 제거
- 6619 사용되지 않는 packageID 변수 제거
- 6620 PackageManagerControl에서 사용되지 않는 변수 제거
- 6640 중복 예외 처리 제거
- 6637 PackageManagerControl.AddMigratorBar 제거
- 6629 ResolverMetadataClient에서 사용되지 않는 HashSet 인스턴스 제거
- 6602 MSBuildUtilityTest에서 nullable 사용
- 6641 UpdateCommand.ExecuteCommandAsync에서 중복 null 조건 제거
- 6683 GetTempFilePath에서 중복 문자열 할당 제거
- 6626 SignedPackageArchiveIOUtility에서 사용되지 않는 변수 제거
- 6574 CreatePackageSourceMappingDictionary에서 중복 사전 조회 제거
- 6594 InfiniteScrollListTests에서 null 허용 설정
- 6682 SafeReadAsync에서 비동기 지연 사용
- 6600 NuGetUpdateCommandTests에서 nullable 사용
- 6606에서 VSNominationUtilitiesTests의 nullable 옵션을 활성화하기
- 6613 GetExternalProject에서 중복 형식 변수 제거
- 6611 사용되지 않는 solutionService 인스턴스 제거
- 6643 MsBuildUtility.GetMsBuildPathInPathVar 제거
- 6632 PackageSpecFactory.GetTargetFrameworkStrings 제거
- 6573 ProjectFactory.ProcessDependencies에서 일부 할당 방지
- 6588 GetPreviewResultsAsync에서 사전 조회 제거
- PackageModelCreationTestHelper의 6597 null 허용 여부 수정
- 6612 NuGetPackageManager에서 사용되지 않는 목록 인스턴스 제거
- 6591 PackageSourceValidatorTests에서 nullable 사용
- 6603 IVsProjectBuildProperties의 null 가능성 수정
- 6636 PackageReferenceProject에서 _project* 필드 제거
- 6630 LocalV3FindPackageByIdResource에서 사용되지 않는 ID 인스턴스 제거
- 6618 NuGetPackageManager에서 LoggerAdapter 인스턴스 제거
- 6621 SolutionUpToDateChecker에서 사용되지 않는 projectsByUniqueName 제거
- 6624 PackageBuilder에서 사용되지 않는 변수 제거
- 6633 JsonPackageSpecReader의 DelimitedStringSeparators와 VersionSeparators 제거
- 6642 CommandLineParser.AssignValue에서 as 대신 캐스트를 사용하고 null 검사를 사용합니다.
- 6615 GetPluginAsync에서 중복 목록 제거
- 6627 MisplacedAssemblyOutsideLibRule에서 사용되지 않는 GetDirectoryName 제거
- 6578 PrunePackageTree.PruneDowngrades에서 불필요한 사전 조회 제거
- 6576 RecommenderPackageFeed에서 사전의 중복 항목 조회 제거
- baronfel
- omajid
-
AlexDelepine
- 6793 VS에 대한 Ngen 우선 순위 업데이트
- 히크포드 주
- 6475 감사 소스를 일관되게 구성합니다.
-
nohwnd
- 6735 유틸리티 powershell.exe 호출에서 프로필 로드 사용 안 함
-
mmitche
- 6539 NuGet을 xliff-tasks로 이동
-
dkurepa
- 6644 Version.Details.props 추가
-
bdukes
-
6530 Visual Studio 대신 SSMS에서 MSBuild 찾기 복원 수정
nuget.exe
-
6530 Visual Studio 대신 SSMS에서 MSBuild 찾기 복원 수정
-
ToddGrun
- 6519 성능 및 정신상의 이유로 LockFileLibrary를 변경할 수 없게 만들기