Skip to content

Compatibility with Renovate ​

The Count covers the managers most repositories on GitHub actually use, and does them fast. Renovate covers far more ground: more platforms, more managers, private registries and vulnerability alerts. This page says which is which, so you can tell whether your repositories will notice the switch.

Renovate's lists below come from its public documentation (version 44.174), never from its source. "Yes" means supported, "partial" says what is missing, and "no" means not yet. Some of the "no"s are deliberate, and departures explains why.

Platforms ​

PlatformRenovateCount Patchula
GitHub and GitHub Enterprise ServeryesGitHub.com only
GitLab, Bitbucket Cloud and Server, Azure DevOps, Gitea, Forgejoyesno
CodeCommit, Gerrit, SCM-Manager, localexperimentalno

Managers ​

Managers the Count supports, under Renovate's names:

RenovateCount PatchulaNotes
npmnpmnpm, pnpm, Yarn and Bun lockfiles, catalogs, overrides, packageManager
bunbun, or npmtext bun.lock only, not bun.lockb
nvm, nodenvnpm.nvmrc, .node-version
github-actionsgithub-actionsincludes runner labels and setup-action version inputs
mise, asdfmisemise.toml, .tool-versions, mise.lock
cargocargo
rust-toolchaincargo
gomodgoindirect requirements too; no /vN module path migrations
dockerfiledockerfile
docker-composecompose
kuberneteskuberneteson by default; Renovate needs file patterns
kustomizekustomize
fluxflux
helm-valueshelm-values
helmv3helmpartial: Chart.lock is not regenerated
terraformterraformpublic registry only; no git modules
terraform-versionterraform
pip_requirementsrequirements
pip-compilerequirementspartial: inputs are read, pip-compile is not run
pep621, poetrypyprojectuv and Poetry lockfiles regenerated
pyenvpyproject.python-version
pre-commitpre-commitGitHub, GitLab, Codeberg, Gitea and Forgejo hooks
devcontainerdevcontainer
mavenmaven
gradlegradlecatalogs, scripts, variables, gradle.properties; gradle.lockfile not regenerated
gradle-wrappergradlethe wrapper checksum is refreshed
nugetnuget
bundlerbundlergems without a requirement are left to lockfile maintenance
ruby-versionbundler
composercomposer
regexregexPkl extractors

Renovate managers with no Count equivalent yet:

ansible, ansible-galaxy, ant, apm, argocd, azure-pipelines, batect, batect-wrapper, bazel, bazel-module, bazelisk, bicep, bitbucket-pipelines, bitrise, buildkite, buildpacks, bun-version, cake, cdnurl, circleci, cloudbuild, cocoapods, conan, copier, cpanfile, crossplane, crow, deno, deps-edn, devbox, droneci, fleet, fvm, git-submodules, gitlabci, gitlabci-include, glasskube, gleam, haskell-cabal, helm-requirements, helmfile, helmsman, hermit, homeassistant-manifest, homebrew, html, jenkins, jsonata, jsonnet-bundler, kotlin-script, leiningen, maven-wrapper, meteor, mint, mix, nix, ocb, osgi, pep723, pip_setup, pipenv, pixi, proto, pub, puppet, quadlet, runtime-version, sbt, scalafmt, setup-cfg, smithy, sveltos, swift, tekton, terragrunt, terragrunt-version, tflint-plugin, travis, typst, unity3d, vendir, velaci, woodpecker, xcodegen.

renovate-config has no equivalent on purpose: the Count's config is Pkl, and he does not read Renovate presets.

Datasources ​

RenovateCount Patchula
npmnpm
cratecrates
gogo
pypipypi
dockerdocker, and oci for OCI Helm charts
helmhelm
terraform-provider, terraform-moduleterraform
github-releases, github-tagsthe same, through mise-versions when possible
github-runnersgithub-runners
gitlab-tags, gitea-tags, forgejo-tagsforge-tags
maven, gradle-versionmaven, and the wrapper through mise
nuget, dotnet-versionnuget, and the SDK through github-releases
rubygems, ruby-versionrubygems, and Ruby through mise
packagistpackagist
node-version, golang-version, python-version, rust-versionmise

The rest of Renovate's 82 datasources (git-refs, git-tags, the GitLab and Gitea release sources, artifactory, conda, hex, dart, pod, cdnjs, endoflife-date, repology, deb, rpm, apk, AWS and Azure sources, custom and others) have no equivalent. The Count also has a mise source of his own, resolving tools through mise's registry.

Versioning ​

RenovateCount Patchula
npm, cargo, semversemver, with separate npm and Cargo requirement parsers
dockerdocker
pep440, poetrypep440, poetry
gomod, go-mod-directivego
hashicorphashicorp
maven, gradlemaven
nugetnuget
rubyrubygems
composercomposer
looseloose

Renovate's other schemes, including regex versioning, node, debian, ubuntu, semver-coerced and same-major, have no equivalent.

Lockfiles ​

LockfileRenovateCount Patchula
package-lock.jsonnpmaube by default, npm with npmEngine = "npm"
pnpm-lock.yamlpnpmaube
yarn.lockYarnYarn
bun.lockBunBun
bun.lockbBunno
Cargo.lock, go.sum, .terraform.lock.hclyesyes
uv.lock, poetry.lockyesyes
packages.lock.json, Gemfile.lock, composer.lockyesyes
mise.locknot listed in its docsyes
Chart.lock, gradle.lockfileyesno
Pipfile.lock, pdm.lock and othersyesno

Features ​

FeatureRenovateCount Patchula
Config formatJSON or JSON5 with presetsPkl, with amends and import instead of presets
Onboarding PRyesno; repositories opt in with a config file
Config migration PRsyesno
packageRulesyesrules, with typed selectors
GroupinggroupNamegroup
Separate PRs per update typeseparateMajorMinor and friendsone PR per update line by default
rangeStrategyauto, pin, bump, replace, widen, ...versions: exact, preserve or widen
Digest pinningopt-inon by default for actions and images
minimumReleaseAgeoff by defaultwaitHours, 24 by default
Schedulesnatural language and croncron windows with a timezone
PR limitsprConcurrentLimit, prHourlyLimitconcurrent, perHour, unlimited by default
rebaseWhenseveral modesconflicts or behind
Automergebranch, PR or PR comment, native or notnative auto-merge, or a checked fallback on a later run
Dependency dashboardyesyes
Dashboard approvalyescreate a held-back update from the dashboard
Lockfile maintenanceyesyes
Release notesyesyes, with mention and backlink suppression
Custom regex managersyesyes
JSONata managers, custom datasourcesyesno
Private registries, hostRulesyesno; tool environments are scrubbed
postUpgradeTasksyes, admin-allowedno, on purpose
Vulnerability alerts, OSVyesno
Merge confidenceMend betano
Abandonment detectionyesno
Replacement PRsyesno
Draft PRsyesno
Commit signingconfigurable authoralways API commits signed by GitHub
Batch PR by checkboxnoyes
Machine-readable outputlogsa versioned JSON report
Self-hosted serverRenovate CE, the Mend apppatchula --server

Performance ​

On six large public repositories, on the same EC2 instance, the Count was 6.1 times faster than Renovate 44.173.1 cold and 18.5 times faster warm, at a fifth to a sixteenth of the memory. Coverage, measured as unique dependency names, matched closely on four of them. The benchmarks page has the numbers and the method.

MIT licensed. Clean-room: no Renovate source was read in the making of this bat.