On Mon, Sep 4, 2017 at 6:08 PM, xoviat <xoviat@gmail.com> wrote:
In any case, we're going to need this for prepare_metadata, so the question you should ask is: what are the reasons for *not* merging this? I haven't heard any so far but that doesn't mean that they don't exist. If there are none, then I don't see why we cannot merge my wheel PR and do a release.
FYI, you're not the only one waiting for PR's to be merged. There are 56 other PR's, some of which have already been approved by repo members with commit access. I would try to be a little more patient. Otherwise, everyone can be emailing the list saying the same thing and asking why their PR isn't being merged. --Chris
2017-09-04 19:51 GMT-05:00 xoviat <xoviat@gmail.com>:
The only reason I can think of that setuptools would need a dist_info command would be to implement the PEP 517 prepare_wheel_metadata hook.
Yes. That is absolutely correct.
But this hook is optional and in fact provides no value right now, so it can't be a blocker for anything.
The simplest way to start on this issue is to replace egg_info in pip with prepare_metadata_for_build_wheel. It is absolutely a historical artifact but I need to work on one issue at a time. The next issue will be replacing egg_info in pip with prepare_metadata_for_build_wheel.
2017-09-04 19:34 GMT-05:00 Nathaniel Smith <njs@pobox.com>:
On Mon, Sep 4, 2017 at 5:09 PM, xoviat <xoviat@gmail.com> wrote:
Nathaniel:
Pip requires egg_info to discover dependencies of source distributions so that it can build wheels all at once after downloading the requirements. I need to move pip off of egg_info as soon as possible and dist_info is required to do that.
"Requires" is a strong word -- AFAIK this is just a historical artifact. I don't really know what you're talking about in the second sentence.
The only reason I can think of that setuptools would need a dist_info command would be to implement the PEP 517 prepare_wheel_metadata hook. But this hook is optional and in fact provides no value right now, so it can't be a blocker for anything. (In fact I can't see any reason why pip would ever call it before the resolver lands.) So either (a) there's some other reason you want a dist_info command, (b) there's some reason I'm missing why prepare_wheel_metadata matters, or (c) one of us is misunderstanding something :-).
-n
2017-09-03 21:00 GMT-05:00 Nathaniel Smith <njs@pobox.com>:
On Sun, Sep 3, 2017 at 11:14 AM, xoviat <xoviat@gmail.com> wrote:
Just an update for everyone here:
1. We're currently waiting on the implementation of the 'dist_info" command in the wheel project. 2. Once that is done we can switch pip over to reading dist-info rather than egg_info. 3. Then we can move the backend over to setuptools. Because Jacob has a much more efficient release system than pip, I anticipate having a release of setuptools first and then we can switch pip over to requiring a newer setuptools via PEP 518.
I don't think pip actually has any use for the PEP 517 prepare_wheel_metadata hook right now though? Historically 'setup.py egg-info' was needed to kluge around unwanted behavior in 'setup.py install', but with a PEP 517 backend that's irrelevant because 'setup.py install' is never used. And in the future when pip has a real resolver, then prepare_wheel_metadata should allow some optimizations. But right now, prepare_wheel_metadata is completely useless AFAIK.
So why is 'setup.py dist_info' a blocker for things?
-n
-- Nathaniel J. Smith -- https://vorpus.org
-- Nathaniel J. Smith -- https://vorpus.org