urschrei / pyzotero

Pyzotero: a Python client for the Zotero API
https://pyzotero.readthedocs.org
Other
908 stars 99 forks source link

1.5.20: invalid pyproject.toml config #178

Closed Nowa-Ammerlaan closed 4 months ago

Nowa-Ammerlaan commented 4 months ago

Wheel for version 1.5.20 fails to build:

python3.12 -m gpep517 build-wheel --prefix=/usr --backend setuptools.build_meta --output-fd 3 --wheel-dir /tmp/portage/dev-python/pyzotero-1.5.20/work/pyzotero-1.5.20-python3_12/wheel
2024-07-05 11:32:03,591 gpep517 INFO Building wheel via backend setuptools.build_meta
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/lib/python3.12/site-packages/gpep517/__main__.py", line 443, in <module>
sys.exit(main())
^^^^^^
File "/usr/lib/python3.12/site-packages/gpep517/__main__.py", line 439, in main
return func(args)
^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/gpep517/__main__.py", line 229, in build_wheel
print(build_wheel_impl(args, args.wheel_dir), file=out)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/gpep517/__main__.py", line 221, in build_wheel_impl
wheel_name = backend.build_wheel(str(wheel_dir), args.config_json)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/setuptools/build_meta.py", line 415, in build_wheel
return self._build_with_temp_dir(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/setuptools/build_meta.py", line 397, in _build_with_temp_dir
self.run_setup()
File "/usr/lib/python3.12/site-packages/setuptools/build_meta.py", line 313, in run_setup
exec(code, locals())
File "<string>", line 12, in <module>
File "/usr/lib/python3.12/site-packages/setuptools/__init__.py", line 103, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 158, in setup
dist.parse_config_files()
File "/usr/lib/python3.12/site-packages/setuptools/dist.py", line 632, in parse_config_files
pyprojecttoml.apply_configuration(self, filename, ignore_option_errors)
File "/usr/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 70, in apply_configuration
config = read_configuration(filepath, True, ignore_option_errors, dist)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 135, in read_configuration
validate(subset, filepath)
File "/usr/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 59, in validate
raise ValueError(f"{error}\n{summary}") from None
ValueError: invalid pyproject.toml config: `project.classifiers[10]`.
configuration error: `project.classifiers[10]` must be trove-classifier
urschrei commented 4 months ago

The trove classifier in question is very new, but is valid. My assumption is that gpep517 hasn't caught up yet. Can you try building with a first-party tool?

Nowa-Ammerlaan commented 4 months ago

Thanks, resolved by upgrading trove-classifiers.