Skip to content

Workaround Presets

workarounds:all

A collection of workarounds for known problems with packages.

{
  "extends": [
    "workarounds:mavenCommonsAncientVersion",
    "workarounds:ignoreSpringCloudNumeric",
    "workarounds:ignoreWeb3jCoreWithOldReleaseTimestamp",
    "workarounds:ignoreHttp4sDigestMilestones",
    "workarounds:typesNodeVersioning",
    "workarounds:reduceRepologyServerLoad",
    "workarounds:doNotUpgradeFromAlpineStableToEdge",
    "workarounds:supportRedHatImageVersion",
    "workarounds:javaLTSVersions",
    "workarounds:disableMavenParentRoot"
  ],
  "ignoreDeps": []
}

workarounds:disableMavenParentRoot

Avoid version fetching for Maven packages detected as project root.

{
  "packageRules": [
    {
      "enabled": false,
      "matchDepTypes": [
        "parent-root"
      ],
      "matchManagers": [
        "maven"
      ]
    }
  ]
}

workarounds:doNotUpgradeFromAlpineStableToEdge

Do not upgrade from Alpine stable to edge.

{
  "packageRules": [
    {
      "allowedVersions": "<20000000",
      "matchCurrentVersion": "<20000000",
      "matchDatasources": [
        "docker"
      ],
      "matchPackageNames": [
        "alpine"
      ]
    }
  ]
}

workarounds:ignoreHttp4sDigestMilestones

Ignore http4s digest-based 1.x milestones.

{
  "packageRules": [
    {
      "allowedVersions": "!/^1\\.0-\\d+-[a-fA-F0-9]{7}$/",
      "matchManagers": [
        "sbt"
      ],
      "matchPackagePrefixes": [
        "org.http4s:"
      ]
    }
  ]
}

workarounds:ignoreSpringCloudNumeric

Ignore spring cloud 1.x releases.

{
  "packageRules": [
    {
      "allowedVersions": "/^[A-Z]/",
      "matchDatasources": [
        "maven"
      ],
      "matchPackageNames": [
        "org.springframework.cloud:spring-cloud-starter-parent"
      ]
    }
  ]
}

workarounds:ignoreWeb3jCoreWithOldReleaseTimestamp

Ignore web3j 5.0.0 release.

{
  "packageRules": [
    {
      "allowedVersions": "!/^5\\.0\\.0/",
      "matchDatasources": [
        "maven"
      ],
      "matchPackageNames": [
        "org.web3j:core"
      ]
    }
  ]
}

workarounds:javaLTSVersions

Limit Java runtime versions to LTS releases.

{
  "packageRules": [
    {
      "allowedVersions": "/^(?:8|11|17)(?:\\.|-|$)/",
      "description": "Limit Java runtime versions to LTS releases. To receive all major releases add `workarounds:javaLTSVersions` to the `ignorePresets` array.",
      "matchDatasources": [
        "docker",
        "adoptium-java"
      ],
      "matchPackageNames": [
        "eclipse-temurin",
        "amazoncorretto",
        "adoptopenjdk",
        "openjdk",
        "java",
        "java-jre",
        "sapmachine"
      ],
      "versioning": "regex:^(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>\\d+))?(-(?<compatibility>.*))?$"
    }
  ]
}

workarounds:mavenCommonsAncientVersion

Fix some problems with very old Maven commons versions.

{
  "packageRules": [
    {
      "allowedVersions": "!/^200\\d{5}(\\.\\d+)?/",
      "matchDatasources": [
        "maven",
        "sbt-package"
      ],
      "matchPackagePrefixes": [
        "commons-"
      ]
    }
  ]
}

workarounds:reduceRepologyServerLoad

Limit concurrent requests to reduce load on Repology servers until we can fix this properly, see issue #10133.

{
  "hostRules": [
    {
      "concurrentRequestLimit": 1,
      "matchHost": "repology.org"
    }
  ]
}

workarounds:supportRedHatImageVersion

Use specific versioning for Red Hat-maintained container images.

{
  "packageRules": [
    {
      "matchDatasources": [
        "docker"
      ],
      "matchPackageNames": [
        "registry.access.redhat.com/rhel",
        "registry.access.redhat.com/rhel-atomic",
        "registry.access.redhat.com/rhel-init",
        "registry.access.redhat.com/rhel-minimal"
      ],
      "matchPackagePrefixes": [
        "registry.access.redhat.com/rhceph/",
        "registry.access.redhat.com/rhgs3/",
        "registry.access.redhat.com/rhel7",
        "registry.access.redhat.com/rhel8/",
        "registry.access.redhat.com/rhel9/",
        "registry.access.redhat.com/rhscl/",
        "registry.access.redhat.com/ubi7",
        "registry.access.redhat.com/ubi8",
        "registry.access.redhat.com/ubi9",
        "redhat/"
      ],
      "versioning": "redhat"
    }
  ]
}

workarounds:typesNodeVersioning

Use node versioning for @types/node.

{
  "packageRules": [
    {
      "matchManagers": [
        "npm"
      ],
      "matchPackageNames": [
        "@types/node"
      ],
      "versioning": "node"
    }
  ]
}