<html><head><style>body{font-family:Helvetica,Arial;font-size:13px}</style></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">On July 25, 2014 at 10:03:01 AM, Daniel Holth (<a href="mailto:dholth@gmail.com">dholth@gmail.com</a>) wrote:</div> <div><blockquote type="cite" class="clean_bq" style="color: rgb(0, 0, 0); font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 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; background-color: rgb(255, 255, 255);"><span><div><div></div><div>On Fri, Jul 25, 2014 at 5:51 AM, Daniel Holth <dholth@gmail.com> wrote:<span class="Apple-converted-space"> </span><br>> Here's a little something I cooked up based on the waf (a build<span class="Apple-converted-space"> </span><br>> system) playground/package example. It's a build script for wheel<span class="Apple-converted-space"> </span><br>> (what else) that builds a .whl for wheel when you run "waf configure"<span class="Apple-converted-space"> </span><br>> and then "waf package" with waf 1.8.0. I've tested it in Python 2.7.<span class="Apple-converted-space"> </span><br>><span class="Apple-converted-space"> </span><br>> Waf is a build system that, unlike distutils, won't fall over<span class="Apple-converted-space"> </span><br>> immediately when you try to extend it. One of its features is support<span class="Apple-converted-space"> </span><br>> for building Python extensions, and it is itself written in Python.<span class="Apple-converted-space"> </span><br>><span class="Apple-converted-space"> </span><br>> Right now for expedience instead of generating the METADATA or<span class="Apple-converted-space"> </span><br>> entry_points.txt from setup() arguments it just copies them from files<span class="Apple-converted-space"> </span><br>> at the root, and the command "waf dist" (for producing sdists)<span class="Apple-converted-space"> </span><br>> includes too many files but that is easy to fix. In particular I liked<span class="Apple-converted-space"> </span><br>> using ant_glob() a lot better than MANIFEST.in. The wscript does not<span class="Apple-converted-space"> </span><br>> use MANIFEST.in.<span class="Apple-converted-space"> </span><br>><span class="Apple-converted-space"> </span><br>> https://bitbucket.org/dholth/wheel/src/1bbbd010558afe215a01cfd238a26da42ad60802/wscript<span class="Apple-converted-space"> </span><br>><span class="Apple-converted-space"> </span><br>> If there are any interested waf-wizards out there then we could take<span class="Apple-converted-space"> </span><br>> the wheel building feature and pull it out of the individual wscript,<span class="Apple-converted-space"> </span><br>> refine it a bit, and have another non-distutils way to publish Python<span class="Apple-converted-space"> </span><br>> packages.<span class="Apple-converted-space"> </span><br>><span class="Apple-converted-space"> </span><br>> Daniel Holth<span class="Apple-converted-space"> </span><br><br>This kind of thing will require us to implement a flag that tells pip<span class="Apple-converted-space"> </span><br>"setup.py cannot install; go through wheel" which is somewhere in the<span class="Apple-converted-space"> </span><br>plans..<span class="Apple-converted-space"> </span></div></div></span></blockquote></div><p>I don’t think there is any plans to tell pip *not* to use a setup.py and to use a Wheel instead. Rather I think the plans are to enable pluggable builders so that a sdist 2.0 package doesn’t rely on setup.py and could use a waf builder (for instance) plugin.</p><div><span style="font-family: helvetica, arial;">-- </span></div><div id="bloop_sign_1406297966837682944" class="bloop_sign"><div style="font-family:helvetica,arial;font-size:13px"><span style="font-family: helvetica; line-height: normal;">Donald Stufft</span><br style="font-family: helvetica; line-height: normal;"><span style="font-family: helvetica; line-height: normal;">PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA</span></div></div></body></html>