NuGet 5.0 リリース ノート
NuGet 配布の種類:
NuGet のバージョン | 利用可能な Visual Studio バージョン | 利用可能な .NET SDK |
---|---|---|
5.0.0 | Visual Studio 2019 バージョン 16.0 | 2.1.6021、2.2.2022 |
5.0.2 | Visual Studio 2019 バージョン 16.0.4 | 2.1.60X1、2.2.20X2 |
1 NET Core ワークロードを使用した Visual Studio 2019 がインストールされている
2 .NET Core ワークロードを使用した Visual Studio 2019 でのオプションのインストールとして使用可能
概要: 5.0 の新機能
- Visual Studio 2019 でのフィルター処理されたソリューションの復元のサポート - #5820
BuildTransitive
フォルダーを使用すると、パッケージがホスト プロジェクトに推移的にターゲット/プロパティを提供できる - #6091- NuGet IVs API での PackageReference シナリオのサポート強化 - #7005、 #7493
nuget.exe pack project.json
は非推奨になった - #7928- Gen 1 資格情報プロバイダー プラグインは Gen 2 に置き換わり、間もなく非推奨になる - #7819
このリリースで修正された問題
バグ
NoOp 復元を実行する場合は、obj ディレクトリでの *.dgspec.json の書き込みを避ける - #7854
~/.nuget 内で作成されたファイルに対するアクセス許可の範囲が広すぎる - #7673
認証が必要なソースで
dotnet list package --outdated
が動作しない - #7605NuGet.VisualStudio.IVsPackageInstaller - パッケージ参照のないプロジェクトを呼び出すと、既定値が PackageReference - に設定されている場合でも、packages.config が常に使用される #7005
PMC: リストから削除されたパッケージで、更新プログラムパッケージの再インストールが失敗する ("パッケージが見つかりません")。 - #7268
リポジトリと VSIX にサード パーティの通知を追加する - #7409
NuGet.VisualStudio.IVsPackageInstaller.InstallPackage は、バージョンが指定されていない場合に最新バージョンをインストールする必要がある - #7493
--dotnet nuget プッシュの対話型サポート - #7519
ロック ファイルを使用して復元する場合、NU1603 警告を発生させてはならない。 - #7529
NuGet は、最小限のログ記録で復元中にプロジェクト パスを印刷してはならない - #7647
--dotnet remove パッケージの対話型サポート - #7727
TypeForwardedTo attrs を使用して NuGet.Packaging.Core を追加する - #7768
plugins_cache が適切に動作するには、より短いパスが必要である - #7770
ユーザーが特定の msbuild バージョンを要求しなかった場合は、msbuild 検出のパスを優先する - #7786
nuget.exe /?
は正しい msbuild バージョンを一覧表示する必要がある - #7794NuGet.targets(498,5): エラー: パス '/tmp/NuGetScratch - on mono の一部が見つかりませんでした - #7793
復元で、マシン キャッシュ内のすべてのバージョンの参照先パッケージの内容が不必要に列挙される - #7639
VS 2019 プレビューのインストール後、MSBuild 自動検出で常に 16.0 が選択される - #7621
ソリューションの dotnet list package がフレームワークの重複エントリを出力する - #7607
古いプロジェクトとパッケージ フォルダーで IVsPackageInstaller.InstallPackage を呼び出すときに例外 "空のパス名は有効ではありません" が存在しない。 - #5936
msbuild /t:restore の最小詳細度は、より小さく必要がある - #4695
VS 16.0 の NuGet UI には、色の問題が原因で読み取れないタブがある - #7735
NuGet.Core & NuGet.Clients License.txt の説明 - #7629
種類の決定を試みるときに、復元でグローバル パッケージ フォルダーが不必要に列挙される - #7596
ロック ファイルの強制によるエラーがエラー一覧ウィンドウに表示される必要がある - #7429
NuGet.Configuration の問題を修正する - #7326
MSBuild のインストール場所の更新に適応する - #7325
NuGet.Build.Tasks.Pack は開発依存関係である必要がある - #7249
デバッグ シンボルを含めるためにパック拡張点を追加する - #7234
dotnet pack
は、作成された nupkg 内の依存関係のバージョン範囲を保持する必要がある (フローティング バージョンが使用されている場合でも) - #7232dotnet restore
は、ユーザー レベルの構成にもソースがある場合、認証されたソースで失敗する - #7209パックはコンテンツ ファイルの BuildActions のセットを制限してはならない - #7155
AssetTargetFallback を成功させる必要がある ProjectReference を使用すると、警告が表示される必要がある。 - #7137
CPS への呼び出し時のスレッドの問題が原因でデッドロック状態になる (CommonProjectSystem) - #7103
dotnet add package
がローカル構成で指定されたソースに対してグローバル構成の認証情報を使用しない - #6935非同期コード パスで MEF が呼び出されるスレッドの問題 - #6771
署名: エラーが 2 回報告され、呼び出し履歴がない - #6455
信頼されていない署名証明書を使用して署名済みパッケージをインストールすると、エラーが表示される必要がある - #6318
2 つのプロジェクトが obj ディレクトリを共有している場合、NuGet が不適切に NoOps を復元する - #6114
認証されたフィードからのパッケージがある Linux の
dotnet restore
で PAT を使用できない - #5651無効になっているコンピューター全体のフィードが原因で、dotnet の復元が失敗する - #5410
DCR
"dotnet pack project.json" の今後の削除に関する警告 - #7928
Gen1 認証情報プラグインの非推奨の警告を追加する - #7819
署名: RepositorySignatures/5.0.0 リソースを使用して、リポジトリが署名されたリポジトリとしてすべてのパッケージのクライアント確認を要求できるようにした - #7759
NuGet.Config を使用してソースごとの http 要求数を制限する - #4538
NuGet は Net472 をターゲットにする必要がある (VSIX の 16.0 ビルドのクリーンアップに役立つ) - #7143
PMC: OpenPackagePage コマンドを削除する - #7384
NetCoreApp 3.0 を NetStandard 2.1 にマッピングする - #7762
Netstandard2.0 のサポートを NuGet.* パッケージに追加する - #6516
パッケージ作成者がビルドアセットの推移的な動作を定義できるようにする - #6091
VS 2019 ソリューション フィルター機能をサポートする。 また、ソリューション内にないプロジェクトやアンロードされたプロジェクトもサポートする。 (CLI または VS を使用して) 完全なソリューションを最初に復元する必要がある - #5820
.NET 4.7.2 を必要とする NuGet 5.0 アセンブリ (TFM 変更による) - #7510
NuGet.Packaging の NuGetLicenseData はパブリック型である必要がある。 spdx から取り込まれたライセンス メタデータを更新する。 - #7471
古い設定 API を削除する - #7294
1 CPU のシステムでの回避策の復元タイムアウト - #6742
NuGet.config に認証情報がある場合でも、NuGet が NTLM 認証を優先する - 認証情報の認証の種類をフィルター処理する構成オプションを追加する - #5286
PackageReference の EmbedInteropTypes を有効にする (Packages.Config 機能に一致) - #2365
この 5.0 RTM リリースで修正されたすべての問題のリスト
概要: 5.0.2 の新機能
セキュリティ (dotnet.exe または mono.exe 経由で実行する場合) - 正しいアクセス許可 を使用して obj フォルダーを作成する必要がある #7908
mono/MacOS での nuget.exe の復元がカスタム nuget.config と
PackageSignatureValidity: False
で失敗する #8011
既知の問題
.NET Core SDK によってインストールされる FallbackFolders 内のパッケージがカスタム インストールされ、署名の検証に失敗する。 - #7414
問題点
dotnet.exe 2.x を使って netcoreapp 1.x と netcoreapp 2.x をマルチターゲットにするプロジェクトを復元すると、そのフォールバック フォルダーがファイル フィードとして扱われます。 つまり、復元するときに、NuGet ではフォールバック フォルダーからパッケージを選択し、それをグローバル パッケージ フォルダーにインストールしようと試み、通常の署名の検証を行って、失敗します。
回避策
RestoreAdditionalProjectSources
に何も設定しないことで、フォールバック フォルダーの使用を無効にする。
<RestoreAdditionalProjectSources></RestoreAdditionalProjectSources>
これは慎重に使う必要があります。フォールバック フォルダーから復元されていたはずのパッケージが、NuGet.org からダウンロードされることになるためです。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示