Is your feature request related to a problem? Please describe.
We previously had an organization-level bot handling dependency updates, but it was phased out. We currently have no automated dependency update mechanism, which means dependencies go stale and security patches are missed.
Describe the solution you'd like
Automated weekly dependency updates across the entire monorepo, ideally consolidated into a single PR per week to keep the review burden low.
Tool comparison: Dependabot vs Renovate
We need to evaluate which tool best fits our monorepo workflow.
Dependabot
| Aspect |
Detail |
| Cost |
Free (built into GitHub) |
| Setup |
Simple .github/dependabot.yml |
| Grouping |
Can group dependencies per directory entry, but cannot group across directories |
| Monorepo PR volume |
~14 PRs/week worst case (one per package directory + GitHub Actions) |
| pnpm support |
Yes |
| Auto-merge |
Supported via GitHub settings |
Limitation: Dependabot creates a separate PR per directory entry. In our monorepo with 14 package directories, this means up to 14 PRs per week even with grouping enabled. There is no way to consolidate all updates into a single PR.
Renovate
| Aspect |
Detail |
| Cost |
Free (open source, free GitHub App for public and private repos) |
| Setup |
renovate.json config file + install GitHub App |
| Grouping |
Full control - can group all monorepo updates into a single PR via groupName |
| Monorepo PR volume |
1 PR/week (all updates grouped) |
| pnpm support |
Yes, with native pnpm workspace awareness |
| Auto-merge |
Supported |
Advantage: Renovate's groupName feature can consolidate updates from all 14 directories into one weekly PR, which matches our preferred workflow.
Recommendation
If our priority is one PR per week with all dependency updates grouped together, Renovate is the better fit. Dependabot is simpler to set up but cannot group across package directories in a monorepo.
If we're okay with ~14 grouped PRs per week (one per package), Dependabot works fine and requires no external app installation.
Monorepo considerations
- We have 14 package directories: root, 9 in
packages/, 3 in apps/, 1 in scripts/
- Internal
@equinor/* cross-dependencies use workspace:* and are not affected by either tool
- pnpm lockfile is updated automatically when any package dependency changes
- Our existing
claude-code-review.yml will automatically review dependency update PRs regardless of which tool we choose
Next steps
Is your feature request related to a problem? Please describe.
We previously had an organization-level bot handling dependency updates, but it was phased out. We currently have no automated dependency update mechanism, which means dependencies go stale and security patches are missed.
Describe the solution you'd like
Automated weekly dependency updates across the entire monorepo, ideally consolidated into a single PR per week to keep the review burden low.
Tool comparison: Dependabot vs Renovate
We need to evaluate which tool best fits our monorepo workflow.
Dependabot
.github/dependabot.ymldirectoryentry, but cannot group across directoriesLimitation: Dependabot creates a separate PR per
directoryentry. In our monorepo with 14 package directories, this means up to 14 PRs per week even with grouping enabled. There is no way to consolidate all updates into a single PR.Renovate
renovate.jsonconfig file + install GitHub AppgroupNameAdvantage: Renovate's
groupNamefeature can consolidate updates from all 14 directories into one weekly PR, which matches our preferred workflow.Recommendation
If our priority is one PR per week with all dependency updates grouped together, Renovate is the better fit. Dependabot is simpler to set up but cannot group across package directories in a monorepo.
If we're okay with ~14 grouped PRs per week (one per package), Dependabot works fine and requires no external app installation.
Monorepo considerations
packages/, 3 inapps/, 1 inscripts/@equinor/*cross-dependencies useworkspace:*and are not affected by either toolclaude-code-review.ymlwill automatically review dependency update PRs regardless of which tool we chooseNext steps