[Numpy-discussion] Proposal of timeline for dropping Python 2.7 support

Robert McLeod robbmcleod at gmail.com
Fri Nov 10 17:03:01 EST 2017

On Wed, Nov 8, 2017 at 2:50 PM, Matthew Brett <matthew.brett at gmail.com>

> Hi,
> On Wed, Nov 8, 2017 at 7:08 PM, Julian Taylor
> <jtaylor.debian at googlemail.com> wrote:
> > On 06.11.2017 11:10, Ralf Gommers wrote:
> >>
> >>
> >> On Mon, Nov 6, 2017 at 7:25 AM, Charles R Harris
> >> <charlesr.harris at gmail.com <mailto:charlesr.harris at gmail.com>> wrote:
> >>
> >>     Hi All,
> >>
> >>     Thought I'd toss this out there. I'm tending towards better sooner
> >>     than later in dropping Python 2.7 support as we are starting to run
> >>     up against places where we would like to use Python 3 features. That
> >>     is particularly true on Windows where the 2.7 compiler is really old
> >>     and lacks C99 compatibility.
> >>
> >>
> >> This is probably the most pressing reason to drop 2.7 support. We seem
> >> to be expending a lot of effort lately on this stuff. I was previously
> >> advocating being more conservative than the timeline you now propose,
> >> but this is the pain point that I think gets me over the line.
> >
> >
> > Would dropping python2 support for windows earlier than the other
> > platforms a reasonable approach?
> > I am not a big fan of to dropping python2 support before 2020, but I
> > have no issue with dropping python2 support on windows earlier as it is
> > our largest pain point.
> I wonder about this too.  I can imagine there are a reasonable number
> of people using older Linux distributions on which they cannot upgrade
> to a recent Python 3, but is that likely to be true for Windows?
> We'd have to make sure we could persuade pypi to give the older
> version for Windows, by default - I don't know if that is possible.

Pip repo names and actual module names don't have to be the same.  One
potential work-around would be to make a 'numpylts' repo on PyPi which is
the 1.17 version with support for Python 2.7 and bug-fix releases as
required.  This will still cause regressions but it's a matter of modifying
`requirements.txt` in downstream Python 2.7 packages and not much else.

E.g. in `requirements.txt`:

numpy;    python_version>"3.0"
numpylts; python_version<"3.0"

In both cases you still call `import numpy` in the code.


Robert McLeod, Ph.D.
robbmcleod at gmail.com
robbmcleod at protonmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20171110/0fd44cf0/attachment.html>

More information about the NumPy-Discussion mailing list