{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": ["config:best-practices", ":approveMajorUpdates"],
  "ignorePresets": [":semanticPrefixFixDepsChoreOthers", "docker:pinDigests", "helpers:pinGitHubActionDigests"],
  "semanticCommits": "disabled",
  "postUpdateOptions": ["gomodTidy", "gomodUpdateImportPaths", "npmDedupe"],
  "platformAutomerge": false,
  "packageRules": [
    {
      "description": "Require approval for go and python minor version",
      "matchDepNames": ["go", "python", "docker.io/library/golang"],
      "matchUpdateTypes": ["minor"],
      "dependencyDashboardApproval": true
    },
    {
      "description": "Automerge renovate updates",
      "matchDatasources": ["docker"],
      "matchPackageNames": ["ghcr.io/visualon/renovate"],
      "matchUpdateTypes": ["minor", "patch", "digest"],
      "automerge": true
    },
    {
      "description": "Update renovate only daily",
      "matchDatasources": ["docker"],
      "matchDepNames": ["ghcr.io/visualon/renovate"],
      "extends": ["schedule:daily"]
    },
    {
      "description": "Disable actions/cascading-pr for now <https://github.com/renovatebot/renovate/issues/28120>",
      "matchDepNames": ["actions/cascading-pr"],
      "matchManagers": ["github-actions"],
      "enabled": false
    }
  ],
  "customManagers": [
    {
      "description": "Update go-version in forgejo workflows",
      "customType": "regex",
      "fileMatch": ["^.forgejo/workflows/.+\\.yml$"],
      "matchStrings": ["\\s+go-version: ['\"]?(?<currentValue>.+?)['\"]?\\s"],
      "depNameTemplate": "go",
      "datasourceTemplate": "golang-version",
      "versioningTemplate": "go-mod-directive"
    }
  ]
}