<p dir="ltr"><br>
On 18 Jul 2013 21:48, "Oscar Benjamin" <<a href="mailto:oscar.j.benjamin@gmail.com">oscar.j.benjamin@gmail.com</a>> wrote:<br>
><br>
> On 17 July 2013 22:43, Nick Coghlan <<a href="mailto:ncoghlan@gmail.com">ncoghlan@gmail.com</a>> wrote:<br>
> ><br>
> > On 18 Jul 2013 01:46, "Daniel Holth" <<a href="mailto:dholth@gmail.com">dholth@gmail.com</a>> wrote:<br>
> >><br>
> >> On Wed, Jul 17, 2013 at 11:12 AM, Brett Cannon <<a href="mailto:brett@python.org">brett@python.org</a>> wrote:<br>
> >> > I'm going to be pushing an update to one of my projects to PyPI this<br>
> >> > week<br>
> >> > and so I figured I could use this opportunity to help with patches to<br>
> >> > the<br>
> >> > User Guide's packaging tutorial.<br>
> >> ><br>
> >> > But to do that I wanted to ask what the current best practices are.<br>
> >> ><br>
> >> > * Are we even close to suggesting wheels for source distributions?<br>
> >><br>
> >> No, wheels don't replace source distributions at all. They just let<br>
> >> you install something without having to have whatever built the wheel<br>
> >> from its sdist. It is currently nice to have them available.<br>
> >><br>
> >> I'd like to see an ambitious person begin uploading wheels that have<br>
> >> no traditional sdist.<br>
> ><br>
> > Argh, don't even suggest that. Such projects could never be included in a<br>
> > Linux distribution - we need the original source to push into a trusted<br>
> > build system.<br>
><br>
> What do you mean by this?<br>
><br>
> I interpret Daniel's comment as meaning that there's no setup.py in<br>
> the sdist. And I think it's a great idea and that lots of others would<br>
> be very happy to ditch the setup.py concept in favour of something<br>
> entirely different from the distutils way of doing things.</p>
<p dir="ltr">No, that's not what he said, he said no sdist at all. Wheel fills the role of a prebuilt binary format, it's not suitable as the *sole* upload format for a project.</p>
<p dir="ltr">Tarball, sdist, wheel. Three different artifacts for three different phases of distribution.</p>
<p dir="ltr">> In another thread you mentioned the idea that someone would build<br>
> without using distutils/setuptools by using a setup.py that simply<br>
> invokes an alternate build system that is build-required by the sdist.<br>
> That's fine for simple cases but how many 'python setup.py <command>'s<br>
> should the setup.py support?</p>
<p dir="ltr">Please read PEP 426, as I cover this in detail. If anything needs further clarification, please let me know.</p>
<p dir="ltr">Cheers,<br>
Nick.</p>
<p dir="ltr">><br>
> Setuptools setup() supports the following:<br>
> build, build_py, build_ext, build_clib, build_scripts, clean, install,<br>
> install_lib, install_headers, install_scripts, install_data, sdist,<br>
> register, bdist, bdist_dumb, bdist_rpm, bdist_wininst, upload, check,<br>
> rotate, develop, setopt, saveopts, egg_info, upload_docs,<br>
> install_egg_info, alias, easy_install, bdist_egg, test<br>
><br>
> (Presumably bdist_wheel would be there if I had a newer setuptools).<br>
><br>
><br>
> Oscar<br>
</p>