[Distutils] What does it mean for Python to "bundle pip"?

Oscar Benjamin oscar.j.benjamin at gmail.com
Wed Aug 21 12:46:20 CEST 2013


On 21 August 2013 11:39, Paul Moore <p.f.moore at gmail.com> wrote:
> On 21 August 2013 11:29, Oscar Benjamin <oscar.j.benjamin at gmail.com> wrote:
>>
>> I may have misunderstood it but looking at this
>>
>> https://github.com/numpy/numpy/blob/master/tools/win32build/nsis_scripts/numpy-superinstaller.nsi.in#L147
>> I think that the installer ships variants for each architecture and
>> decides at install time which to place on the target system. If that's
>> the case then would it be possible for a wheel to ship all variants so
>> that a post-install script could sort it out (rename/delete) after the
>> wheel is installed?
>
> Wheel 1.0 does not have the ability to bundle multiple versions (and I don't
> think tags are fine-grained enough to cover the differences numpy need,
> which are at the "do you have the SSE instruction set?" level AIUI).
> Multi-version wheels are a possible future extension, but I don't know if
> anyone has thought about fine-grained tags.

No, but the wheel could do like the current numpy installer and ship
    _numpy.pyd.nosse
    _numpy.pyd.sse1
    _numpy.pyd.sse2
    _numpy.pyd.sse3
as platlib files and then a post-install script can check for SSE
support, rename the appropriate file to _numpy.pyd and delete the
other _numpy.pyd.* files.

> This is precisely the sort of input that the numpy people could provide to
> make sure that the wheel design covers their needs.

I'm I right in guessing (since the question keeps being evaded :) )
that a post-install script is not possible with pip+wheel+PyPI?.


Oscar


More information about the Distutils-SIG mailing list