NuGet 1.5 リリース ノート
NuGet 1.4 リリース ノート | NuGet 1.6 リリース ノート
NuGet 1.5 は、2011 年 8 月 30 日にリリースされました。
機能
プレインストールされた NuGet パッケージが含まれたプロジェクト テンプレート
新しい ASP.NET MVC 3 プロジェクト テンプレートを作成する場合、NuGet パッケージをインストールすることで、プロジェクトに含まれる jQuery スクリプト ライブラリは、そこに実際に配置されます。
ASP.NET MVC 3 プロジェクト テンプレートには、プロジェクト テンプレートが呼び出されるとインストールされる NuGet パッケージのセットが含まれています。 プロジェクト テンプレートに NuGet パッケージを含めるこの機能は、 NuGet の機能で、任意のプロジェクト テンプレートが利用できるようになったものです。
この機能の詳細については、この機能の開発者によるこのブログ記事を参照してください。
明示的なアセンブリ リファレンス
パッケージ内のどのアセンブリを参照するかを明示的に指定するのに使用される、新しい<references />
要素を追加しました。
例えば、次のように入力することができます。
<references>
<reference file="xunit.dll" />
<reference file="xunit.extensions.dll" />
</references>
その後、フォルダー内に他のアセンブリがある場合でも、xunit.dll
とxunit.extensions.dll
のみがlib
フォルダーの適切なフレームワーク/プロファイル サブフォルダーから参照されます。
この要素を省略すると、通常の動作が適用され、lib
フォルダー内のすべてのアセンブリが参照されます
この機能は何に使用するものなのでしょうか。
この機能は、デザイン時のみのアセンブリをサポートします。 例えば、コード コントラクトを使うときは、Visual Studio がコントラクト アセンブリを検出できるように、コントラクト アセンブリはそれが拡張するランタイム アセンブリの隣に存在する必要がありますが、プロジェクトでコントラクト アセンブリを参照したり、プロジェクトのbin
フォルダーにコントラクト アセンブリをコピーしたりする必要はありません。
同様に、この機能を使用し、ツール アセンブリをランタイム アセンブリの横に配置する必要があるが、プロジェクト リファレンスから除外する XUnit などの単体テスト フレームワークに使用できます。
.nuspec 内のファイルを除外できる機能を追加しました
<file>
ファイル内の.nuspec
要素を使用し、ワイルドカードを使用して、特定のファイルまたはファイルのセットを含めることができます。 ワイルドカードを使用する場合、その含まれるファイルの特定のサブセットを除外する方法はありません。 例えば、ユーザーが特定のテキスト ファイルを除いてフォルダー内のすべてのテキスト ファイルが必要であるとします。
<files>
<file src="*.txt" target="content\docs" exclude="admin.txt" />
</files>
セミコロンを使用して、複数のファイルを指定することができます。
<files>
<file src="*.txt" target="content\docs" exclude="admin.txt;log.txt" />
</files>
または、ワイルドカードを使用して、すべてのバックアップ ファイルなどのファイル セットを除外します
<files>
<file src="tools\*.*" target="tools" exclude="*.bak" />
</files>
ダイアログ プロンプトを使用してパッケージを削除し、依存関係を削除します
依存関係のあるパッケージをアンインストールすると、NuGet がメッセージを表示して、パッケージの依存関係とパッケージの削除が許可されます。
Get-Package
コマンドの改善
Get-Package
コマンドで-ProjectName
パラメーターがサポートされるようになりました。 コマンドは、
Get-Package –ProjectName A
プロジェクト A にインストールされるすべてのパッケージをリスト表示します。
認証を要件とするプロキシのサポート
認証を必須とするプロキシの背後で NuGet を使用するときに、NuGet がプロキシ認証情報の入力を求めるプロンプトを表示するようになりました。 認証情報を入力すると、NuGet がリモート リポジトリに接続できるようになります。
認証を必須とするリポジトリのサポート
NuGet は、基本認証または NTLM 認証を必要とするプライベート リポジトリへの接続をサポートするようになりました。
ダイジェスト認証のサポートは今後のリリースで追加予定です。
nuget.org リポジトリのパフォーマンスの改善
nuget.org ギャラリーのパフォーマンスをいくつか改善し、パッケージの一覧表示と検索を高速化しました。
ソリューション ダイアログ プロジェクト フィルタリング
[ソリューション レベル] ダイアログでは、インストールするプロジェクトの入力を求めるプロンプトを表示すると、選択したパッケージと互換性のあるプロジェクトのみが表示されます。
パッケージ リリース ノート
NuGet パッケージにリリース ノート サポートが含まれるようになりました。 リリース ノートはパッケージの更新情報の閲覧中にのみ表示されるものです。したがって、最初のリリースに追加しても機能しません。
リリース ノートをパッケージに追加するには、NuSpec ファイルの新規の<releaseNotes />
メタデータ要素を使用する必要があります。
.nuspec <files /> improvement
この.nuspec
ファイルで空の<files />
要素が許可されるようになりました。これにより、パッケージにファイルを含めないように nuget.exe に指示されます。
バグの修正
NuGet 1.5 では、合計 107 件の作業項目が修正されました。 そのうちの 103 件がバグとしてマークされました。
NuGet 1.5 で修正された作業項目の全リストについては、[NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=All&type=All&priority=All&release=NuGet%201.5&assignedTo=All&component=All&sortField=Summary&sortDirection=Descending&page=0)
を参照してください。
注目すべきバグ修正:
[Issue 1273](http://nuget.codeplex.com/workitem/1273)
: パッケージをアルファベット順に並べ替え、余分な空白を削除することで、packages.config
のバージョン管理をより使いやすくしました。[Issue 844](http://nuget.codeplex.com/workitem/844)
: バージョン番号が正規化されたことにより、バージョン1.0.0
を含むパッケージ上でInstall-Package 1.0
が動作するようになりました。[Issue 1060](http://nuget.codeplex.com/workitem/1060)
: nuget.exe を使用してパッケージを作成する場合、-Version
フラグが<version />
要素をオーバーライドします。