<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">> conda-build doesn't produce or consume wheels.  It works by creating a clean<br>
> conda environment and running a shell script to install the python package<br>
> into that environment</span></blockquote><div><br></div><div>To be really clear -- conda build doesn't directly use ANY build/install system.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">All files produced by the install<br>
> script are then put into a tar file, which is conda's version of a wheel.<br></span></blockquote><div><br></div><div>right -- conda-build simply runs the script it is told to run (by the recipe), and then looks and sees what files were installed.</div><div><br></div><div>In theory, one could build a conda package directly out of a binary wheel -- after all, as mentioned, they are actually pretty similar, but most folks would probably just use pip inside their conda-build recipe.</div><div><br></div><div>In fact, that is already being done -- most python packages are built with "setup.py install", but some are built by using pip to install a wheel.</div><div><br></div><div>But I didn't think that the goal of PEP 517 was to ensconce pip as the only way to install a package in Python.</div><div><br></div><div>So if a build system can install (like setuptools currently does), then conda recipes may well call it directly.</div><div><br></div><div>I don't think this really has any bearing on the the PEP, though -- As I understand it, the goal of the PEP is to formalize the interface between build systems and package managers -- and that can only be a good thing for other package managers.</div><div><br></div><div><br></div><div>NOTE: For the most part, folks want to use a pip-compatible install in conda-build, because users tend to also directly use pip to install stuff in conda environments e.g. if there is not a conda package available. If a conda package were built with, say, plain distutils, then pip won't find the meta data it's looking for, and might falsely see an unresolved dependency.</div><div><br></div><div>Personally, I've always avoided pip installing packages in conda -- preferring to make conda packages for all the deps I need, but conda-pip compatibility has come a long way, so it does work fine for many users.</div><div><br></div><div>But it would be nice if packages didn't NEED to be pip installed -- but I think that's an issue with the wheel spec (that may well be solved).</div><div><br></div><div>-CHB</div><div><br></div><div><br></div><div><br></div></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><br>Christopher Barker, Ph.D.<br>Oceanographer<br><br>Emergency Response Division<br>NOAA/NOS/OR&R            (206) 526-6959   voice<br>7600 Sand Point Way NE   (206) 526-6329   fax<br>Seattle, WA  98115       (206) 526-6317   main reception<br><br><a href="mailto:Chris.Barker@noaa.gov" target="_blank">Chris.Barker@noaa.gov</a></div>
</div></div>