[PATCH] setup: use setuptools on Windows (issue5400)

Pierre-Yves David pierre-yves.david at ens-lyon.org
Thu May 4 00:12:39 UTC 2017


On 04/09/2017 02:30 AM, Matt Harbison wrote:
> On Thu, 09 Mar 2017 23:06:34 -0500, Gregory Szorc
> <gregory.szorc at gmail.com> wrote:
>
>> # HG changeset patch
>> # User Gregory Szorc <gregory.szorc at gmail.com>
>> # Date 1489118392 28800
>> #      Thu Mar 09 19:59:52 2017 -0800
>> # Node ID b51f9adb41e68d9f3d88582f044d2742ae29ce09
>> # Parent  cd29673cebdbe2d998009322e4c3657389d6aed0
>> setup: use setuptools on Windows (issue5400)
>>
>> We've had a long, complicated history with setuptools. We want to
>> make it the universal default. But when we do, it breaks things.
>>
>> `python setup.py build` is broken on Windows today. Forcing
>> the use of setuptools via FORCE_SETUPTOOLS=1 unbreaks things.
>>
>> Since the previous bustage with making setuptools the default
>> was on !Windows, it seems safe to move ahead with the setuptools
>> transition on Windows. So this patch does that.
>
> I'm not sure why, or what we should do about it, but test-hghave.t fails
> with this on Windows.  I can get a similar failure on Linux with
> FORCE_SETUPTOOLS=1.  Is this an expected diff with setuptools (and
> deserving a '(glob) (?)'?

It seems like your setuptools version/config installs '.egg'. That is 
awful since '.egg' is one of the worse things that happened to python 
packaging (their implementation is awful, has performance issue and 
break multiple basic assumption about python install/import).

I though the time were setuptools were intalling '.egg' were over. I 
wonder why your version installed '.eggs', is it some global 
configuration? Is it an older version? Am I wrong when I think '.egg' 
are no longer the default?

In all cases, I don't know if Mercurial setup tools can make sure it is 
never installed as an 'egg'. Maybe redefining the egg related commands 
in setup.py to abort ?

Cheers,

-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list