영어로 읽기

다음을 통해 공유


NuGet 1.4 릴리스 정보

NuGet 1.3 릴리스 정보 | NuGet 1.5 릴리스 정보

NuGet 1.4는 2011년 6월 17일에 릴리스되었습니다.

기능

업데이트 패키지 개선 사항

NuGet 1.4에는 업데이트 패키지 명령이 많이 개선되어 솔루션의 여러 프로젝트에서 패키지를 동일한 버전으로 쉽게 유지할 수 있습니다. 예를 들어 패키지를 최신 버전으로 업그레이드할 때는 해당 패키지가 설치된 모든 프로젝트를 동일한 verision으로 업데이트하는 것이 매우 일반적입니다.

이제 명령을 Update-Package 사용하면 다음을 더 쉽게 수행할 수 있습니다.

단일 프로젝트의 모든 패키지 업데이트

Update-Package -Project MvcApplication1

모든 프로젝트에서 패키지 업데이트

Update-Package PackageId

모든 프로젝트의 모든 패키지 업데이트

Update-Package

모든 패키지에서 "안전한" 업데이트 수행

플래그는 -Safe 주 버전 및 부 버전 구성 요소가 동일한 버전으로만 업그레이드를 제한합니다. 예를 들어 패키지 버전 1.0.0이 설치되어 있고 버전 1.0.1, 1.0.2 및 1.1을 피드 -Safe 에서 사용할 수 있는 경우 플래그는 패키지를 1.0.2로 업데이트합니다. 플래그 없이 -Safe 업그레이드하면 패키지가 최신 버전인 1.1로 업그레이드됩니다.

Update-Package -Safe

솔루션 수준에서 패키지 관리

NuGet 1.4 이전에는 대화 상자를 사용하여 패키지를 여러 프로젝트에 설치하는 것이 번거로웠습니다. 프로젝트당 한 번씩 대화 상자를 시작해야 했습니다.

NuGet 1.4는 여러 프로젝트에서 패키지를 동시에 설치/제거/업데이트하는 지원을 추가합니다. 솔루션을 마우스 오른쪽 단추로 클릭하고 NuGet 패키지 관리 메뉴 옵션을 선택하여 실행하기만 하면 됩니다 .

Solution Level Manage NuGet Packages dialog

대화 상자의 제목 표시줄에 솔루션 이름이 프로젝트 이름이 아니라 표시됩니다. 이제 패키지 작업은 작업이 적용되어야 하는 프로젝트 목록이 포함된 검사box 목록을 제공합니다.

Manage NuGet Packages Project Selection

자세한 내용은 솔루션에 대한 패키지 관리에 대한 항목을 참조하세요.

허용되는 버전으로 업그레이드 제한

기본적으로 패키지에서 Update-Package 명령을 실행하거나 대화 상자를 사용하여 패키지를 업데이트하는 경우 피드의 최신 버전으로 업데이트됩니다. 모든 패키지 업데이트에 대한 새로운 지원을 통해 패키지를 특정 버전 범위로 잠그려는 경우가 있을 수 있습니다. 예를 들어 애플리케이션이 패키지의 버전 2.*에서만 작동하지만 3.0 이상에서는 작동하지 않는다는 것을 미리 알 수 있습니다. 패키지를 실수로 3으로 업데이트하지 않도록 하기 위해 NuGet 1.4는 새 allowedVersions 특성을 사용하여 파일을 직접 편집 packages.config 하여 패키지를 업그레이드할 수 있는 버전 범위를 제한하는 지원을 추가합니다.

예를 들어 다음 예제에서는 버전 범위 2.0 - 3.0(배타적)을 패키지를 잠그 SomePackage 는 방법을 보여 줍니다. 이 특성은 allowedVersions 버전 범위 형식사용하여 값을 허용합니다.

<?xml version="1.0" encoding="utf-8"?>
<packages>
    <package id="SomePackage" version="2.1.0" allowedVersions="[2.0, 3.0)" />
</packages>

1.4에서는 패키지를 특정 버전 범위로 잠그려면 직접 편집해야 합니다. NuGet 1.5에서는 명령을 통해 이 범위를 배치하기 위한 지원을 추가할 계획입니다 Install-Package .

패키지 시각화 도우미

도구 -라이브러리 패키지 관리자 ->>Package 시각화 도우미 메뉴 옵션을 통해 시작된 새 패키지 시각화 도우미를 사용하면 솔루션 내의 모든 프로젝트 및 해당 패키지 종속성을 쉽게 시각화할 수 있습니다.

중요 참고: 이 기능은 Visual Studio에서 DGML 지원을 활용합니다. 시각화 만들기는 Visual Studio Ultimate에서만 지원됩니다. DGML 다이어그램 보기는 Visual Studio Premium 이상에서만 지원됩니다.

Package Visualizer

NuGet 대화 상자에 대한 자동 업데이트 확인

NuGet의 일부 버전에서는 이전 버전의 NuGet 대화 상자에서 인식할 수 없는 파일을 통해 .nuspec 표현된 새로운 기능을 소개합니다. 한 가지 예는 프레임워크 어셈블리를 지정하기 위한 NuGet 1.4의 소개입니다. 이 때문에 최신 버전의 NuGet을 사용하여 최신 기능을 활용하는 패키지를 사용할 수 있도록 하는 것이 중요합니다. NuGet에 대한 업데이트를 더 잘 표시하기 위해 NuGet 대화 상자에는 최신 버전을 사용할 수 있는 시기를 강조 표시하는 논리가 포함되어 있습니다.

참고: 검사 현재 세션에서 온라인 탭이 선택된 경우에만 수행됩니다.

Manage NuGet Packages dialog with new version available

업데이트에 대한 자동 검사 해제하려면 NuGet 설정 대화 상자로 이동하여 업데이트를 자동으로 검사 검사.

NuGet Settings

이 기능은 실제로 NuGet 1.3에 추가되었지만 NuGet 1.4와 같은 1.3 업데이트가 제공될 때까지는 표시되지 않습니다.

패키지 관리자 대화 상자 개선 사항

  • 메뉴 이름이 개선됨: 대화 상자를 시작하는 메뉴 옵션이 명확하게 변경되었습니다. 이제 메뉴 옵션이 NuGet 패키지 관리입니다.
  • 세부 정보 창에는 최신 업데이트 날짜가 표시됩니다. NuGet 대화 상자에는 온라인 또는 업데이트 탭이 선택된 패키지의 세부 정보 창에 최신 업데이트 날짜가 표시됩니다.
  • 표시된 태그 목록: Nuget 대화 상자에 태그가 표시됩니다.

Powershell 개선 사항

  • 서명된 PowerShell 스크립트: NuGet에는 보다 제한적인 환경에서 사용할 수 있도록 하는 서명된 Powershell 스크립트가 포함되어 있습니다.
  • 지원 메시지 표시: 패키지 관리자 콘솔은 이제 명령 및 $host.ui.PromptForChoice 명령을 통해 프롬프트를 $host.ui.Prompt 지원합니다.
  • 패키지 원본 이름: 플래그를 사용하여 -Source 패키지 원본을 지정할 때 패키지 원본의 이름을 제공하는 것이 지원됩니다.

nuget.exe 명령줄 개선 사항

  • NuGet 사용자 지정 명령: nuget.exe MEF를 사용하는 사용자 지정 명령을 통해 확장할 수 있습니다.
  • 기호 패키지를 만드는 워크플로가 더 간단합니다. -Symbols 폴더 내의 원본 및 .pdb 파일만 포함하여 기호 패키지를 만드는 일반 규칙 기반 폴더 구조에 플래그를 적용할 수 있습니다.
  • 여러 원본 지정: 명령은 NuGet install 세미콜론을 구분 기호로 사용하거나 여러 번 지정하여 여러 원본을 지정할 수 있습니다 -Source .
  • 프록시 인증 지원: NuGet 1.4는 인증이 필요한 프록시 뒤에서 NuGet을 사용할 때 사용자 자격 증명을 묻는 메시지를 표시하는 지원을 추가합니다.
  • nuget.exe 업데이트 호환성이 손상되는 변경: -Self 이제 nuget.exe 자체 업데이트에 플래그가 필요합니다. nuget.exe Update 이제 파일의 경로를 packages.config 가져와서 패키지를 업데이트하려고 시도합니다. 이 업데이트는 **프로젝트 파일의 콘텐츠 업데이트, 추가, 제거와 같이 제한되지 않습니다. ** 패키지 내에서 Powershell 스크립트를 실행합니다.

nuget.exe 사용하여 패키지 푸시에 대한 NuGet 서버 지원

NuGet에는 NuGet 패키지를 통해 간단한 웹 기반 NuGet 리포지토리를 호스트하는 NuGet.Server 간단한 방법이 포함되어 있습니다. NuGet 1.4를 사용하면 경량 서버에서 nuget.exe 사용하여 패키지 푸시 및 삭제를 지원합니다. 최신 버전의 NuGet.ServerappSetting라는 이름을 apiKey추가합니다. 키를 생략하거나 비워 두면 피드에 패키지를 푸시할 수 없습니다. apiKey를 값(이상적으로 강력한 암호)으로 설정하면 nuget.exe 사용하여 패키지를 푸시할 수 있습니다.

<appSettings>
    <!-- Set the value here to allow people to push/delete packages from the server.
            NOTE: This is a shared key (password) for all users. -->
    <add key="apiKey" value="" />
</appSettings>

Windows 전화 Tools Mango Edition 지원

NuGet은 이제 Windows 전화 Tools for Mango의 릴리스 후보 버전에서 지원됩니다. 현재 Windows 전화 Tools는 Visual Studio 확장 관리자를 지원하지 않으므로 Windows 전화 Tools용 NuGet을 설치하려면 VSIX를 수동으로 다운로드하여 실행해야 할 수 있습니다.

Windows 전화 Tools용 NuGet을 제거하려면 다음 명령을 실행합니다.

vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5

버그 수정

NuGet 1.4에는 총 88개의 작업 항목이 수정되었습니다. 그 중 71개는 버그로 표시되었습니다.

NuGet 1.4에서 수정된 작업 항목의 전체 목록은 다음을 [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=All&type=All&priority=All&release=NuGet%201.4&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0)참조하세요.

주목할 만한 버그 수정:

  • [Issue 603](http://nuget.codeplex.com/workitem/603): 특정 패키지 원본을 지정할 때 서로 다른 리포지토리의 패키지 종속성이 올바르게 확인됩니다.
  • [Issue 1036](http://nuget.codeplex.com/workitem/1036): 빌드 후 이벤트에 추가 NuGet Pack SomeProject.csproj 하면 더 이상 무한 루프가 발생하지 않습니다.
  • [Issue 961](http://nuget.codeplex.com/workitem/961): -Source 플래그는 상대 경로를 지원합니다.

NuGet 1.4 업데이트

NuGet 1.4 릴리스 직후, 해결해야 할 몇 가지 문제를 발견했습니다. 이 업데이트의 특정 버전 번호는 1.4.20615.9020입니다.

버그 수정

  • [Issue 1220](http://nuget.codeplex.com/workitem/1220): 둘 이상의 프로젝트가 있는 경우 업데이트-패키지가 모든 프로젝트에서 실행 install.ps1/uninstall.ps1 되지 않습니다.
  • [Issue 1156](http://nuget.codeplex.com/workitem/1156): 패키지 관리자 Consol이 W2K3/XP에서 중단됨(Powershell 2가 설치되지 않은 경우)