mbox series

[v4,0/5] devtool/recipetool: add support of PEP-517

Message ID 20231025154659.2442373-1-jstephan@baylibre.com
Headers show
Series devtool/recipetool: add support of PEP-517 | expand

Message

Julien Stephan Oct. 25, 2023, 3:46 p.m. UTC
Hello all,

This series adds basic support for PEP-517 in recipetool/devtool, plus somes
others fixes.

Recipetool/devtool selftest passed locally

Missing features:
- extra or optionnal dependencies are not handled
- version number for dependencies are not handled (issue already present
  for the legacy setuptool)
- some projects can declare a minimal pyproject.toml file, and put all
  the metadata in setup.py/setup.cfg/requirements.txt .. theses cases
  are not handled. If a pyproject.toml file is found, assumes it has all
  necessary metadata.

Changes from v3
- add missing patch 

Changes from v2:
- try to use tomllib from python core (since 3.11) and if not available,
  try to import tomli (instead of toml, as tomllib and tomli have both the
  same api)
- improve support for poetry: poetry looks for metadata into the
  "tools.poetry" section instead of the "project" section
- add the selftests for the 3 supported backends. Skip the tests if
  tomliib (python > 3.11) or tomli is not installed
- fix self test failing with the new "python3-" prefix added to
  recipetool for python recipes

Julien Stephan (5):
  scripts:recipetool:create_buildsys_python: fix license note
  scripts:recipetool:create_buildsys_python: prefix created recipes with
    python3-
  scripts:recipetool:create_buildsys_python: refactor code for futur
    PEP517 addition
  scripts:recipetool:create_buildsys_python: add PEP517 support
  oeqa/selftest/recipetool: add selftest for PEP-517 recipe creation

 meta/lib/oeqa/selftest/cases/recipetool.py    |  106 +-
 .../lib/recipetool/create_buildsys_python.py  | 1019 +++++++++++------
 2 files changed, 760 insertions(+), 365 deletions(-)