Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 905229 - distutils-r1.eclass: python build-backend should fallback to setuptools.build_meta:__legacy__ also when pyproject.toml is present
Summary: distutils-r1.eclass: python build-backend should fallback to setuptools.build...
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-28 13:44 UTC by Simó Albert i Beltran
Modified: 2023-04-29 05:37 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simó Albert i Beltran 2023-04-28 13:44:25 UTC
Firstly thanks for your work.

As described in

http s://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/#fallback-behaviour

the build-backend should fallback to setuptools.build_meta:__legacy__ but in

http s://gitweb.gentoo.org/repo/gentoo.git/tree/eclass/distutils-r1.eclass#n1193

build-backend doesn't fallback to setuptools.build_meta:__legacy__ if pyproject.toml file is present.

See also: http s://gitlab.com/mkdocs-i18n/mkdocs-i18n/-/merge_requests/16

(New accounts are forbidden from posting URLs in bug comments. Please wait at least 24 hours before posting URLs. We are sorry for the inconvenience.)
Comment 1 Simó Albert i Beltran 2023-04-28 14:04:16 UTC
See also github.com/projg2/gpep517/issues/8
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-04-29 05:37:54 UTC
I think our current behavior is better.

Packages that override build-system requires but not build-backend are extremely rare.  I've seen only one, and there was no valid reason to use the legacy backend there.

All things considered, the current behavior helps us find potentially buggy packages and changing it doesn't really fix anything that isn't broken already.