Skip to content

Error updating build-system dependencies with uv #12124

@Rasmus-S-Kristensen

Description

@Rasmus-S-Kristensen

Is there an existing issue for this?

  • I have searched the existing issues

Package ecosystem

uv

Package manager version

uv 0.6.14

Language version

Python 3.13.3

Manifest location and content before the Dependabot update

No response

dependabot.yml content

version: 2
updates:

  • package-ecosystem: "uv"
    directory: "/"
    schedule:
    interval: "weekly"

Updated dependency

setuptools from 77.0.1 to 79.0.0

What you expected to see, versus what you actually saw

Expected pyproject.toml to be updated with the new version.

Saw the following logs:
(trimmed for brevity)

INFO Checking if setuptools 77.0.1 needs updating
...
INFO Updating setuptools from 77.0.1 to 79.0.0
...
INFO Running command: pyenv exec uv lock --upgrade-package setuptools
...
ERROR Error processing setuptools (RuntimeError)
ERROR Expected lockfile to change!
...
Dependabot encountered '1' error(s) during execution, please check the logs for more details.
+--------------------------------------------+
|       Dependencies failed to update        |
+------------+---------------+---------------+
| Dependency | Error Type    | Error Details |
+------------+---------------+---------------+
| setuptools | unknown_error | null          |
+------------+---------------+---------------+

It seems like it tries to update the lockfile, but since the build-system dependency is not tracked there, it sees no changes to the lock file and errors out.

Native package manager behavior

No response

Images of the diff or a link to the PR, issue, or logs

No response

Smallest manifest that reproduces the issue

A project consisting on the following reproduces the error for me:

pyproject.toml:

name = "dependabot-uv-issue-reproduction"
version = "0.1.0"
requires-python = ">=3.13"
dependencies = []

[build-system]
requires = ["setuptools==77.0.1"]
build-backend = "setuptools.build_meta"

.github/dependabot.yml:

version: 2
updates:
  - package-ecosystem: "uv"
    directory: "/"
    schedule:
      interval: "weekly"

uv.lock:

version = 1
revision = 1
requires-python = ">=3.13"

[[package]]
name = "dependabot-uv-issue-reproduction"
version = "0.1.0"
source = { editable = "." }

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions