[Distutils] [Numpy-discussion] Proposal: stop supporting 'setup.py install'; start requiring 'pip install .' instead

Ralf Gommers ralf.gommers at gmail.com
Sun Nov 8 08:51:05 EST 2015


On Sun, Nov 8, 2015 at 2:23 PM, Paul Moore <p.f.moore at gmail.com> wrote:

> On 8 November 2015 at 11:13, Ralf Gommers <ralf.gommers at gmail.com> wrote:
> > You only have two categories? I'm missing at least one important
> category:
> > users who install things from a vcs or manually downloaded code
> (pre-release
> > that's not on pypi for example). This category is probably a lot larger
> that
> > than that of developers.
>
> Hmm, I very occasionally will install the dev version of pip to get a
> fix I need. But I don't consider myself in that role as someone who
> pip should cater for - rather I expect to manage doing so myself,
> whether that's by editing the pip code to add a local version ID, or
> just by dealing with the odd edge cases.
>
> I find it hard to imagine that there are a significant number of users
> who install from development sources but who aren't developers


There are way more of those users than actual developers, I'm quite sure of
that. See below for numbers.


> (at least to the extent that testers of pre-release code are also
> developers).
> ...
>

That's not a very helpful way to look at it from my point of view. Those
users may just want to check that their code still works, or they need a
bugfix that's not in the released version, or ....


> Personally, I think the issue here is that there are a lot of people
> in the scientific community who people outside that community would
> class as "developers",


Then I guess those "outside" would be web/app developers? For anyone
developing a library or some other infrastructure to be used somewhere
other than via a graphical or command line UI, I think the distinction I
make (I'll elaborate below) will be clear.


> but who aren't considered that way from within
> the community. I tend to try to assign to these people the expertise
> and responsibilities that I would expect of a developer, not of an end
> user. If in fact they are a distinct class of user, then I think the
> scientific community need to explain more clearly what expertise and
> responsibilities pip can expect of these users. And why treating them
> as developers isn't reasonable.
>

To give an example for Numpy:
  - there are 5-10 active developers with commit rights
  - there are 50-100 contributors who submit PRs
  - there are O(1000) people who read the mailing list
  - there are O(1 million) downloads/installs per year
Downloads/users are hard to count correctly, but there are at least 1000x
more users than developers (this will be the case for many popular
packages). Those users are often responsible for installing the package
themselves. They aren't trained programmers, only know Python to the extent
that they can get their work done, and they don't know much (if anything)
about packaging, wheels, etc. All they know may be "I have to execute
`python setup.py install`". Those are the users I'm concerned about.
There's no reasonable way you can classify/treat them as developers I
think.

By the way, everything we discuss here has absolutely no impact on what you
defined as "user" (the released-version only PyPi user). While it's
critical for what I defined as "the second kind of user".

Ralf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20151108/722c9f80/attachment.html>


More information about the Distutils-SIG mailing list