<div dir="ltr">OK, so I wanted to see what it would take to create current-format sdists, defined as anything that has a setup.py that pip can install by running said setup.py. The following script takes a flit package (in the current directory and builds a pip-installable sdist. Tested againstĀ <a href="https://github.com/pohmelie/aioftp">https://github.com/pohmelie/aioftp</a><div><br class="Apple-interchange-newline"><a href="https://gist.github.com/dholth/e17f243085dcc539813f">https://gist.github.com/dholth/e17f243085dcc539813f</a><br></div><div><br></div><div>The first script is the archiver and the second script is the setup.py embedded into the sdist by the archiver. The embedded setup.py does an isolated install of flit into the setup-requires directory, if required, and uses flit to implement bdist_wheel. The trick is that the only thing pip really needs from egg_info is the current requirements, easily generated from wheel-style .dist-info.</div><div><br></div><div>It might need slightly more metadata to pass on pypi and the argument handling is inflexible, but it demonstrates most of what would be required for a backwards compatible shim.</div><div><br></div><div>If our new sdist format is an even easier way to adapt new build systems than writing this trivial setup.py shim, then we might have something.</div></div>