[prev in list] [next in list] [prev in thread] [next in thread] 

List:       python-distutils-sig
Subject:    Re: [Distutils] setup.py install using pip
From:       Robert Collins <robertc () robertcollins ! net>
Date:       2015-12-23 19:21:59
Message-ID: CAJ3HoZ2dpSkvaNEk+ujn6FaseZjZNbsEK-qokjhyrFm1c4pLpw () mail ! gmail ! com
[Download RAW message or body]

Thanks for digging that up.

-Rob

On 24 December 2015 at 06:35, Erik Bray <erik.m.bray@gmail.com> wrote:
> On Thu, Dec 10, 2015 at 5:12 PM, Robert Collins
> <robertc@robertcollins.net> wrote:
>> On 8 December 2015 at 09:14, Erik Bray <erik.m.bray@gmail.com> wrote:
>>> On Mon, Dec 7, 2015 at 2:40 PM, Paul Moore <p.f.moore@gmail.com> wrote:
>>>> On 7 December 2015 at 18:58, Erik Bray <erik.m.bray@gmail.com> wrote:
>>>>> I wasn't able to produce this problem.  Even with --no-binary
>>>>> specified pip installs (by default) with
>>>>> --single-version-externally-managed.  My prototype implicitly disables
>>>>> the --pip flag if --single-version-externally-managed was specified
>>>>> (true to the purpose of that flag).
>>>>
>>>> Ah - that was the bit I was missing, the
>>>> --single-version-externally-managed flag can be used to trigger
>>>> ignoring --pip.
>>>>
>>>>> What *is* a problem is if --pip is in setup.cfg, and one invokes `pip
>>>>> install --egg .`.  I wasn't quite able to make that go into an
>>>>> infinite loop, but it did invoke pip.main recursively, and stuff broke
>>>>> on the second invocation for reasons not clear to me.
>>>>
>>>> Yeah, but honestly I don't think pip install --egg is that important a
>>>> use case. I may be wrong (there's lots of ways people use pip that I
>>>> know nothing of :-)) but as a starting point it might be OK just to
>>>> say that at the same time as the --pip flag was introduced, "pip
>>>> install --egg" was deprecated (and we explicitly document that pip
>>>> install --egg is known to interact badly with setup.py --pip).
>>>
>>> I'd be fine with that too.  IIRC pip install --egg was introduced in
>>> part to work around problems with namespace packages.  This doesn't
>>> completely eliminate the need for that workaround, but it does reduce
>>> it.
>>
>> Huh? No, my understanding was that it was introduced solely to support
>> interop with folk using 'easy-install', and its considered deprecated
>> and delete-as-soon-as-practical.
>
> The original issue that motivated it did have to do with (lack of)
> interoperability of different ways namespace packages are implemented:
>
> https://github.com/pypa/pip/issues/3
>
> The fact that it introduced general backwards-compat for
> easy-install-like installation was a side "benefit", useful I'm sure
> to a few people.  But otherwise as you say, was intended to be deleted
> as soon as practical.
>
> Erik



-- 
Robert Collins <rbtcollins@hpe.com>
Distinguished Technologist
HP Converged Cloud
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic