サポートされているパッケージ エコシステムの

依存関係スキャンでは、サポートされているすべてのパッケージ エコシステムに対して、直接的および推移的な依存関係の両方がサポートされます。 依存関係のスキャンでは、リポジトリ内のベンダーの依存関係を検出できません。

依存関係スキャンの検出を実行する方法により、正しいパッケージ バージョンが決定されるように、ビルド パイプラインにパッケージ復元手順があることを確認してください。そうしないと、結果が見つからないか不完全になる可能性があります。

エコシステムとバージョン

パッケージ マネージャー 言語 サポートされている形式 開発依存関係のラベル付け サポートされているバージョン
Cargo Rust Cargo.tomlCargo.lock サポートしていません v1
CocoaPods Swift Podfile.lock サポートしていません 該当なし
Go モジュール Go go.modgo.sum サポートしていません 該当なし
Gradle Java *.lockfile サポートされている 該当なし
Maven Java pom.xml サポートされている 該当なし
npm JavaScript package-lock.jsonpackage.jsonnpm-shrinkwrap.jsonlerna.json サポートされている v6、v7 、 lockfile <= v3
NuGet C# *.packages.config*.project.assets*.csproj サポートしていません 該当なし
pip Python setup.pyrequirements.txt サポートしていません 該当なし
pnpm JavaScript package.json サポートされている v7、v8
RubyGems Ruby Gemfile.lock サポートしていません 該当なし
Yarn JavaScript package.json サポートされている v1、v2

Cargo

v1.77 以降 Cargo cli がインストールされている場合は、 cargo metadata が使用されます。これはより正確です。

Go モジュール

Go v1.17 以降を使用している場合、 go.mod はエージェントに存在する場合は go cli と共に直接使用されます。 それ以外の場合は、 go.sum ファイルがスキャンされます。

Maven

検出するには、 maven CLI をエージェントにインストールする必要があります。

開発依存関係は、 test 依存関係スコープを使用するときに識別されます。

npm

依存関係スキャンではルート package.json ファイルが検出されますが、 package.json の依存関係が意味的にバージョン管理されていない場合でも、ビルド時にパッケージの復元なしで特定のパッケージ バージョンを解決することはできません。

開発の依存関係は、package.jsondevDependencies プロパティと、package-lock.jsondev フラグによって識別されます。

NuGet

パッケージの復元がない場合、依存関係スキャンでは、 *.csproj の依存関係が意味的にバージョン管理されていない場合でも、特定のパッケージ バージョンは解決されません。

pip

pip v22.2.0以上を使用してpip reportスキャンを有効にすると、より正確な検出が可能になります。

環境変数 PIP_INDEX_URL は、 pip install --report detectionに使用するパッケージ フィードを決定するために使用されます。 pip の既定値がグローバルに構成されていない限り、既定値は PyPi インデックスを使用します。

pnpm

開発の依存関係は、pnpm ロックファイルの packages/{package}/dev フラグによって識別されます。

Yarn

開発の依存関係は、package.jsondevDependencies プロパティによって識別されます。