On 21 May 2015 at 20:26, Chris Barker <chris.bar...@noaa.gov> wrote: > Now that I think about it, it may seem kludgy, but conda packages can be > built from wheel right now, with no special tools. A conda recipe that > simply installs a wheel in it's build script would do just that.
That sounds about right, from what I've seen of conda builds. You could probably do better (for example, by just repacking the wheel rather than going through the whole wheel install process) but you don't have to. Some possible problem areas - when you install a wheel, it will install executable wrappers for the entry points (like pip.exe) which are tied to the install location. You'd need to deal with that. But presumably conda already has to deal with that because setuptools does precisely the same. > I'm still a bit confused about the role of wheel here. Why build a wheel, > just so you can go install it, rather than simply install the package > directly? Basically, because you can't "simply install". You may not have a compiler, or you may not have the required libraries, etc etc. Don't forget, you can build a wheel once, then install it anywhere that has a compatible Python installation. I'm surprised this isn't obvious to you, as isn't that precisely what conda does as well? Also, installing from a wheel is a *lot* faster than installing from sdist - people who deploy lots of packages to multiple servers or virtualenvs greatly appreciate the extra speed of a wheel install. That's why pure-python wheels are worth having, even though you could install from source. Also, so you don't need any install-time only requirements (e.g. setuptools) on the target production system. Generally, pretty much all of the reasons people don't compile all their software on their production machines :-) Paul _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig