<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Aug 27, 2014, at 2:50 AM, Paul Moore <<a href="mailto:p.f.moore@gmail.com" class="">p.f.moore@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">tl; dr; If you know of a project that can't be successfully installed<br class="">with "pip wheel proj; pip install /path/to/the/wheel.whl" can you let<br class="">me know the details?<br class=""><br class="">One of the longer-term goals of the introduction of wheels was to<br class="">split the build and install steps for a package - specifically, in<br class="">pip, to restrict "pip install" to installing from wheels, and when no<br class="">wheel is available, to (transparently) run "pip wheel" on the sdist<br class="">followed by "pip install on the generated wheel". During a discussion<br class="">yesterday, I realised that I don't know how close we are to that goal.<br class="">So I'm looking for information on packages which don't install<br class="">properly from wheels at the moment. If anyone has examples of packages<br class="">where replacing "pip install foo" with "pip wheel -w /tmp/xxx; pip<br class="">install /tmp/xxx/*.whl" does not result in an equivalent install,<br class="">could they post them here with details of how & why they fail?<br class=""><br class="">Things I already know about (but would like specific examples):<br class=""><br class="">1. Post-install steps included in setup.py. That should be covered by<br class="">the support in Metadata 2.0. I'd also be interested in how much of an<br class="">issue omitting the postinstall would be in practice (for instance many<br class="">such steps just set up "Start Menu" type shortcuts, which are not<br class="">essential for the package to be usable).<br class="">2. Actually, that's the only one :-)<br class=""><br class="">Things that should not be a problem (but might be):<br class=""><br class="">1. Numpy (and the scipy stack) need better tagging facilities for<br class="">wheels - but that wouldn't matter for a wheel that's built, used, then<br class="">thrown away.<br class="">2. Some things are complex to build - but I don't know of any cases<br class="">where building a wheel is *more* complex than installing, and I don't<br class="">see how it could be, in theory.<br class="">3. Projects that customise setup.py so much that they aren't<br class="">compatible with setuptools and bdist_wheel. Such projects are quite<br class="">probably already incompatible with pip (which injects setuptools when<br class="">running setup.py anyway) and so not relevant for this discussion. But<br class="">if any do work with "pip install" but not "pip wheel", I'd like to<br class="">hear about them.<br class=""><br class="">Thanks in advance for any information.<br class="">Paul<br class="">_______________________________________________<br class="">Distutils-SIG maillist  -  <a href="mailto:Distutils-SIG@python.org" class="">Distutils-SIG@python.org</a><br class=""><a href="https://mail.python.org/mailman/listinfo/distutils-sig" class="">https://mail.python.org/mailman/listinfo/distutils-sig</a><br class=""></div></blockquote></div><div class=""><br class=""></div><div class=""><div class="">Numpy (and other SciPy stack) has the problem too that it uses numpy.distutils</div><div class="">so I'm not even sure if ``pip wheel`` actually works on it at all or not. They</div><div class="">might have their own support for ``setup.py bdist_wheel`` though I don't know.</div></div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">---</div><div class="">Donald Stufft</div><div class="">PGP: 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA</div></div></div>
</div>
<br class=""></body></html>