Who would like to implement PEP 660 for setuptools? Here are some resources and the outline of the strategy I would use.
setup.py develop command: setuptools/develop.py at main · pypa/setuptools · GitHub
dist_info command, using code from wheel to convert egg-info. setuptools/dist_info.py at main · pypa/setuptools · GitHub
Example of how setuptools finds all the
py_modules? may be relevant) setuptools/build_py.py at main · pypa/setuptools · GitHub
The PEP 517 driver. setuptools/build_meta.py at main · pypa/setuptools · GitHub
I would create a standalone package
setuptools_pep660 that imports the existing PEP 517 driver plus our new hook. The package would provide a setuptools command to generate the “editable” wheel, with the appropriate entry point so it gets picked up by setuptools.
The new command depends on the existing dist_info command, strategies taken from the existing develop command, and any other necessary metadata from the Distribution class to write the editable wheel’s contents to a temporary directory. A tiny wheel generator like sdl2_lib/wscript at master · dholth/sdl2_lib · GitHub does the actual zipping & RECORD writing. The editable wheel is always tagged ed.py3-none-any.
If you want to use the prototype, set
setuptools_pep660 as the build backend instead of using the standard one.