Skip to content

Docker digest-only update incorrectly classified as semver-major #726

Description

@shawntoffel

Hello.

My dependabot configuration has all three update-types ignored so that only the docker digest is updated for mutable tags. This is supported by dependabot/dependabot-core#6628.

However, when fetching the metadata, since lastVersion is parsed from the "Updates" string as `e1b523f` (note it includes the backticks), and nextVersion is parsed from the dependency-version as the docker tag 1.0-alpine3.24, the calculateUpdateType function compares the digest to the tag resulting in version-update:semver-major, which prevents downstream workflows from approving the PR.

The dependabot PR commit:

Bumps the docker group with 1 update: shawntoffel/dependabot-digest-test.


Updates `shawntoffel/dependabot-digest-test` from `e1b523f` to `5fdf1f3`

---
updated-dependencies:
- dependency-name: shawntoffel/dependabot-digest-test
  dependency-version: 1.0-alpine3.24
  dependency-type: direct:production
  dependency-group: docker
...

Signed-off-by: dependabot[bot] <support@github.com>

Metadata output:

outputs.dependency-names: shawntoffel/dependabot-digest-test
outputs.dependency-type: direct:production
outputs.update-type: version-update:semver-major
outputs.directory: /
outputs.package-ecosystem: docker
outputs.target-branch: master
outputs.previous-version: `e1b523f`
outputs.new-version: 1.0-alpine3.24
outputs.compatibility-score: 0
outputs.maintainer-changes: false
outputs.dependency-group: docker
outputs.alert-state: 
outputs.ghsa-id: 
outputs.cvss: 0
Dependabot configuration for reference
version: 2
updates:
  - package-ecosystem: "docker"
    directory: "/"
    schedule:
      interval: "weekly"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
    groups:
      docker:
        patterns:
          - "*"

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions