You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
... traceback omitted for conciseness ...
ValueError: invalid pyproject.toml config: `tool.setuptools.package-data`.
configuration error: `tool.setuptools.package-data` keys must be named by:
at least one of the following:
- {type: string, format: 'python-module-name'}
- {predefined value: '*'}
➜ test git clone https://github.com/kfreezen/package_data_repro.gitcd package_data_repropython -m venv venv. venv/bin/activatepip install buildpython -m buildCloning into 'package_data_repro'...remote: Enumerating objects: 6, done.remote: Counting objects: 100% (6/6), done.remote: Compressing objects: 100% (4/4), done.remote: Total 6 (delta 0), reused 6 (delta 0), pack-reused 0 (from 0)Receiving objects: 100% (6/6), done.Collecting build Using cached build-1.2.2.post1-py3-none-any.whl.metadata (6.5 kB)Collecting packaging>=19.1 (from build) Using cached packaging-24.2-py3-none-any.whl.metadata (3.2 kB)Collecting pyproject_hooks (from build) Using cached pyproject_hooks-1.2.0-py3-none-any.whl.metadata (1.3 kB)Using cached build-1.2.2.post1-py3-none-any.whl (22 kB)Using cached packaging-24.2-py3-none-any.whl (65 kB)Using cached pyproject_hooks-1.2.0-py3-none-any.whl (10 kB)Installing collected packages: pyproject_hooks, packaging, buildSuccessfully installed build-1.2.2.post1 packaging-24.2 pyproject_hooks-1.2.0[notice] A new release of pip is available: 24.2 -> 24.3.1[notice] To update, run: pip install --upgrade pip* Creating isolated environment: venv+pip...* Installing packages in isolated environment: - setuptools==75.6.0* Getting build dependencies for sdist...configuration error: `tool.setuptools.package-data` keys must be named by: at least one of the following: - {type: string, format: 'python-module-name'} - {predefined value: '*'}DESCRIPTION: Mapping from package names to lists of glob patterns. Usually this option is not needed when using ``include-package-data = true`` For more information on how to include data files, check ``setuptools`` `docs <https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.GIVEN VALUE: { "some-hyphens": [ "README.md" ] }OFFENDING RULE: 'propertyNames'DEFINITION: { "type": "object", "additionalProperties": false, "propertyNames": { "anyOf": [ { "type": "string", "format": "python-module-name" }, { "const": "*" } ] }, "patternProperties": { "^.*$": { "type": "array", "items": { "type": "string" } } } }For more details about `format` seehttps://validate-pyproject.readthedocs.io/en/latest/api/validate_pyproject.formats.htmlTraceback (most recent call last): File "/Users/kfreezen/git/test/package_data_repro/venv/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module> main() File "/Users/kfreezen/git/test/package_data_repro/venv/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main json_out["return_val"] = hook(**hook_input["kwargs"]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/kfreezen/git/test/package_data_repro/venv/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 317, in get_requires_for_build_sdist return hook(config_settings) ^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/build_meta.py", line 337, in get_requires_for_build_sdist return self._get_build_requires(config_settings, requirements=[]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires self.run_setup() File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/build_meta.py", line 320, in run_setup exec(code, locals()) File "<string>", line 1, in <module> File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/__init__.py", line 117, in setup return distutils.core.setup(**attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 157, in setup dist.parse_config_files() File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/dist.py", line 648, in parse_config_files pyprojecttoml.apply_configuration(self, filename, ignore_option_errors) File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 72, in apply_configuration config = read_configuration(filepath, True, ignore_option_errors, dist) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 140, in read_configuration validate(subset, filepath) File "/private/var/folders/tm/qpl2pxbx66d29h6s9nk_gdmr0000gp/T/build-env-80m650g5/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 61, in validate raise ValueError(f"{error}\n{summary}") from NoneValueError: invalid pyproject.toml config: `tool.setuptools.package-data`.configuration error: `tool.setuptools.package-data` keys must be named by: at least one of the following: - {type: string, format: 'python-module-name'} - {predefined value: '*'}ERROR Backend subprocess exited when trying to invoke get_requires_for_build_sdist
The text was updated successfully, but these errors were encountered:
setuptools version
setuptools==75.6.0
Python version
Python 3.12.7
OS
macOS Sequoia (M3)
Additional environment information
No response
Description
This looks to be similar to #4341, but not sure.
The following works in setup.py
but, if I do the following in pyproject.toml
I get the following error message:
If this is expected behavior, it is not clearly documented in https://setuptools.pypa.io/en/stable/userguide/datafiles.html
Expected behavior
I expected to be able to use hyphens in
[tool.setuptools.package-data]
in the exact same way that I used them insetup.py
How to Reproduce
python -m build
Brainless reproduction script:
Output
The text was updated successfully, but these errors were encountered: