Microsoft、パッケージマネジャー「NuGet 6.5」を公開 大規模プロジェクト向け機能を追加パッケージ管理の効率化を支援

Microsoftは2023年2月28日(米国時間)、オープンソースの.NET Frameworkパッケージマネジャー「NuGet 6.5」を公開した。

» 2023年03月20日 08時00分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2023年2月28日(米国時間)、オープンソースの.NET Frameworkパッケージマネジャー「NuGet 6.5」を公開した。セキュリティ面を強化する管理方式や「Visual Studio」ユーザー向け機能が追加された。

 Nuget 6.5は「Visual Studio 2022」および「.NET 7.0」に同梱されている。

NuGet 6.5で追加された機能

Visual Studio内のパッケージ管理を迅速にする「Directory.Packages.Props」ファイルをサポート

 パッケージの依存関係を一元管理することは、依存関係によるエラーのリスクを低減する対策として有効だ。NuGet 6.5では、中央パッケージ管理(Central Package Management)を有効化することで、ルートフォルダにあるDirectory.Packages.Propsファイルを認識する。これにより、定義したパッケージのインストールやアップデートなどパッケージ管理を支援する。

Visual Studio内のオプションで利用しているパッケージを一覧表示

 nuget.configファイルを利用して、プロジェクトで利用しているパッケージやパッケージの配布元をVisual Studioのオプション画面で確認できるようになった。

Visual Studioのオプション画面(提供:Microsoft) Visual Studioのオプション画面(提供:Microsoft)

HTTPステータスコードに含まれる「Retry-Afterヘッダ」に対応

 ビジー状態のHTTPサーバはクライアントに対し、一定時間待機してからリトライするよう、Retry-Afterヘッダを含むHTTPステータスコード(429)を送信する。

 NuGet 6.5では、HTTPサーバからRetry-Afterヘッダを含むHTTPステータスコードが送信された場合、一定時間待機するようになった。なお、不当な待機時間を要求された場合に備えて、環境変数を利用して最大待機時間を制限することもできる。

dotnet list packageコマンドをJSON形式で出力可能に

 dotnet list packageコマンドをJSON形式で出力することが可能になった。

dotnet list package --format json > dependencies.json
JSON形式で出力する場合のコマンド例
上記コマンドの実行結果イメージ(提供:Microsoft) 上記コマンドの実行結果イメージ(提供:Microsoft)

NuGetの警告で「WarningsNotAsErrors」をサポート

 特定のパッケージまたはプロジェクトにおいて問題が検出された場合に、NuGetは警告を発する。これをエラーに昇格させるか抑制するかは設定できるようになっている。

 NuGet 6.5では、警告を表示しながらもビルド全体を失敗させないを利用できる。この機能を使うには、以下のようにWarningsNotAsErrorsプロパティに警告コードを追加する必要がある。

<WarningsNotAsErrors>$(WarningsNotAsErrors);NU1603</WarningsNotAsErrors>。

Visual Studio以外で加えられたnuget.configの変更を自動検出

 Visual Studio以外でnuget.configに変更が加えられた場合、Visual Studioを再読み込みする必要があった。NuGet 6.5では利用しているエディターやdotnet CLI、他のツールでnuget.configを書き換えた場合、自動で検出するようになった。

Visual Studioで読み込まれていないプロジェクトも依存関係の修復対象に

 Visual Studioの起動時にロードされるプロジェクトをフィルタリングできるJSON形式の「ソリューションフィルターファイル」(.slnf)を利用することで、ソリューション内全体のプロジェクトにおける依存関係を修復できるようになった。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。