Skip to main content

依赖项关系图支持的包生态系统

依赖项关系图支持多种生态系统。

在本文中

理解表格

依赖项图支持为直接和间接(可传递)依赖项提交数据的不同方法。 请参阅“依赖项图如何识别依赖项”。

下表中:

  • 静态可传递依赖项Dependabot图形作业(当前不可用于GitHub Enterprise Server)和自动依赖项提交的列显示了支持的数据提交方法。
  • 静态可传递依赖项列还指示在该生态系统中,静态分析是否会为依赖包添加direct``transitive标签。
  • Dependabot 图作业列指示 Dependabot 是否能够使用其自身的作业基础结构生成依赖关系图。 如果受支持,此方法优先于自动依赖项提交。 请参阅“依赖项图如何识别依赖项”。
  • 推荐文件列建议使用能够显式定义所有直接和间接依赖项版本的格式。 这些文件将包版本锁定到生成中包含的版本,并使 Dependabot 能够在直接依赖项和间接依赖项中找到易受攻击的版本。

支持的包生态系统

程序包管理器语言静态可传递依赖项Dependabot 图作业自动依赖项提交建议的文件其他文件
巴泽尔Starlark
MODULE.bazelWORKSPACE
MODULE.bazel.lockmaven_install.json*.MODULE.bazel
CargoRustCargo.lockCargo.toml
ComposerPHPcomposer.lockcomposer.json
DenoTypeScript、JavaScriptdeno.lock
deno.jsondeno.jsonc
NuGet.NET语言(C#、F#、VB)、C++
.csproj.vbproj.nuspec.vcxproj.fsprojpackages.config
GitHub Actions 流程YAML
.yml.yaml
Go 模块Gogo.mod
GradleJava
朱莉娅朱莉娅Manifest.tomlProject.toml
MavenJava,Scalapom.xml
npmJavaScriptpackage-lock.jsonpackage.json
OpenTofuHCL.terraform.lock.hcl
.tf.tofu
pipPython
requirements.txtpipfile.lock
pipfilesetup.py
pnpmJavaScriptpnpm-lock.yamlpackage.json
酒馆Dartpubspec.lockpubspec.yaml
诗歌Pythonpoetry.lockpyproject.toml
RubyGemsRubyGemfile.lock
Gemfile*.gemspec
Swift包管理器 (Swift 程序包管理器)SwiftPackage.resolved
YarnJavaScriptyarn.lockpackage.json

注意

  • 如果在 setup.py 文件中列出Python依赖项,则可能无法分析和列出项目中的每个依赖项。

GitHub Actions 工作流必须位于 .github/workflows/ 存储库的目录中才能识别为清单。 使用 jobs[*].steps[*].usesjobs.<job_id>.uses 语法引用的任何操作或工作流都将被分析为依赖项。 有关详细信息,请参阅“GitHub Actions 的工作流语法”。

* 对于 GitHub Actions,系统仅针对使用语义版本控制(而不是 SHA 版本控制)的操作生成警报。 有关详细信息,请参阅 Dependabot 警报Dependabot 版本更新

社区维护的生态系统

以下生态系统由其上游社区维护者维护。 GitHub 集成了 Dependabot 及这些生态系统,但不负责直接维护这些生态系统。

生态系统由...维护
朱莉娅Julia 社区
OpenTofuOpenTofu 社区
酒馆达特社区