On Mon, Jul 16, 2018 at 11:27 AM, Donald Stufft email@example.com wrote:
On Jul 16, 2018, at 5:22 AM, Paul Moore firstname.lastname@example.org wrote:
- If [build-system] is present but requires is missing, raise an error.
- If [build-system] is missing, they can take one of the following
two approaches: a) Act as if pyproject.toml is missing altogether b) Act as if [build-system] is present, with a requires value of ["setuptools", "wheel"]
Whether tools act differently in cases 2a and 2b is tool-dependent (for pip, we would isolate in case 2b but not in case 2a) which is why the choice is left to individual tools. That makes the "Thomas/Nathaniel" debate into a tool implementation choice, and both of the options are allowable from the perspective of the PEP.
This sounds fine to me, and I prefer a 2b approach.
I also prefer option 2 (and specifically 2b but like you say, 2a vs 2b isn't something the PEP cares about), just because it's the simplest possible approach: we always act the same when build-system.requires is missing, regardless of why it's missing. And it's the same logic as we use to handle a missing build-system.build-backend.
It doesn't matter that much though. It seems extremely unlikely that anyone's going to create an empty [build-system] section just because they can...