[Distutils] setup_requires and install_requires
Toby St Clere Smithe
mail at tsmithe.net
Sat May 24 18:53:51 CEST 2014
Daniel Holth <dholth at gmail.com> writes:
> The plan is that pip will cache builds automatically in the future.
> Generally build requirements should be kept separate from install
> requirements.
This sounds like the best policy. I'm glad it's on the roadmap -- I
presume this means I do not need to open a bug report? In fact, I tried
to find the bug tracker (to see if such a report existed), but I must
confess that I entirely failed in that quest.
Regards,
Toby
> On May 24, 2014 12:25 PM, "Toby St Clere Smithe" <mail at tsmithe.net> wrote:
>
>> Daniel Holth <dholth at gmail.com> writes:
>> > Just build a wheel first. Then numpy is installed twice but only built
>> once.
>>
>> Sure -- but why isn't this automatic? This solution is a bit of a hack
>> around what seems a needless inefficiency!
>>
>>
>> Best,
>>
>> Toby
>>
>>
>> > On May 24, 2014 12:16 PM, "Toby St Clere Smithe" <mail at tsmithe.net>
>> wrote:
>> >
>> >> Hi Ralf,
>> >>
>> >> Ralf Gommers <ralf.gommers at gmail.com> writes:
>> >> > I wasn't actually.
>> >>
>> >> Well, I'm glad I could be of service, I guess. Should I report this as a
>> >> bug?
>> >>
>> >> >> but I wonder if there's any progress
>> >> >> for me to be aware of. I've got an extension that I build with
>> >> >> distutils. It requires numpy both to build and to run, so I have
>> numpy
>> >> >> in both setup_requires and install_requires. Yet setup.py builds
>> numpy
>> >> >> twice -- once for the build stage, and then again on installation.
>> This
>> >> >> seems inefficient to me -- why not just build it once? Is this by
>> >> >> design?
>> >> >>
>> >> >
>> >> > Seems fairly inefficient, so I'd guess it's not by design.
>> >>
>> >> Indeed.
>> >>
>> >> > Note that if numpy is already installed, you may want to avoid adding
>> the
>> >> > *_requires arguments in order not to silently upgrade or break the
>> >> > installed numpy. Something like
>> >> > https://github.com/scipy/scipy/pull/3566/files
>> >>
>> >> This is good advice, but what about the cases in which the build machine
>> >> is not the installation machine? I already have a versioned dependency,
>> >> which will on each possible machine (trivially) either be satisfied or
>> >> not, and if it's not, then it should be.
>> >>
>> >> Cheers,
>> >>
>> >> Toby
>> >>
>> >>
>> >> --
>> >> Toby St Clere Smithe
>> >> http://tsmithe.net
>> >>
>> >> _______________________________________________
>> >> Distutils-SIG maillist - Distutils-SIG at python.org
>> >> https://mail.python.org/mailman/listinfo/distutils-sig
>> >>
>> > _______________________________________________
>> > Distutils-SIG maillist - Distutils-SIG at python.org
>> > https://mail.python.org/mailman/listinfo/distutils-sig
>>
>> --
>> Toby St Clere Smithe
>> http://tsmithe.net
>>
>> _______________________________________________
>> Distutils-SIG maillist - Distutils-SIG at python.org
>> https://mail.python.org/mailman/listinfo/distutils-sig
>>
> _______________________________________________
> Distutils-SIG maillist - Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
--
Toby St Clere Smithe
http://tsmithe.net
More information about the Distutils-SIG
mailing list