Dependency graph supported package ecosystems

Dependency graph supports a variety of ecosystems.

Understanding the table

The dependency graph supports different methods of submitting data for direct and indirect (transitive) dependencies. See How the dependency graph recognizes dependencies.

In the table below:

Supported package ecosystems

Package manager Languages Static transitive dependencies Dependabot graph jobs Automatic dependency submission Recommended files Additional files
Bazel Starlark MODULE.bazel, WORKSPACE MODULE.bazel.lock, maven_install.json, *.MODULE.bazel
Cargo Rust Cargo.lock Cargo.toml
Composer PHP composer.lock composer.json
Deno TypeScript, JavaScript deno.lock deno.json, deno.jsonc
NuGet .NET languages (C#, F#, VB), C++ .csproj, .vbproj, .nuspec, .vcxproj, .fsproj packages.config
GitHub Actions workflows YAML .yml, .yaml
Go modules Go go.mod
Gradle Java
Julia Julia Manifest.toml Project.toml
Maven Java, Scala pom.xml
npm JavaScript package-lock.json package.json
OpenTofu HCL .terraform.lock.hcl .tf, .tofu
pip Python requirements.txt, pipfile.lock pipfile, setup.py
pnpm JavaScript pnpm-lock.yaml package.json
pub Dart pubspec.lock pubspec.yaml
Poetry Python poetry.lock pyproject.toml
RubyGems Ruby Gemfile.lock Gemfile, *.gemspec
Swift Package Manager Swift Package.resolved
Yarn JavaScript yarn.lock package.json

Note

Community-maintained ecosystems

The following ecosystems are maintained by their upstream community maintainers. GitHub integrates Dependabot with these ecosystems but does not maintain them directly.

Ecosystem Maintained by
Julia Julia community
OpenTofu OpenTofu community
pub Dart community