python config_error ai_generated true

error in setup.cfg: InvalidConfigError: metadata.name is required

ID: python/setuptools-metadata-name-missing

Also available as: JSON · Markdown · 中文
80%Fix Rate
86%Confidence
0Evidence
2024-04-16First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
3.8+ active — — —

Root Cause

The build configuration (setup.cfg/pyproject.toml) lacks a package name. setuptools cannot produce valid metadata without a name field.

generic

中文

构建配置(setup.cfg/pyproject.toml)缺少包名。setuptools 无法在没有 name 字段的情况下生成有效元数据。

Workarounds

  1. 96% success
    # setup.cfg
    [metadata]
    name = mypackage
    version = 1.0.0
    # or pyproject.toml
    [project]
    name = "mypackage"
    version = "1.0.0"
  2. 85% success
    # pyproject.toml
    [project]
    name = "mypackage"
    dynamic = ["version"]
    # provide version in setup.py: setup(version=compute_version())

Dead Ends

Common approaches that don't work:

  1. 70% fail

    If pyproject.toml declares build-backend setuptools.build_meta and config files disagree, duplicate/overriding metadata can still error or be ignored.

  2. 85% fail

    Empty string is invalid metadata; setuptools raises a different validation error.