[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Merging branches/swig-py3 to trunk

From: Nathan Hartman <hartman.nathan_at_gmail.com>
Date: Tue, 5 Nov 2019 10:59:32 -0500

On Tue, Nov 5, 2019 at 1:30 AM Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:

> Nathan Hartman wrote on Tue, 05 Nov 2019 04:48 +00:00:
> > Subversion 1.14 continues to support Python 2.7 to ease the transition
> > to Python 3 for those who have not yet made the jump. As Subversion
> > 1.14 is a Long Term Support (LTS) release, this gives system operators
> > four additional years of Subversion support for Python 2.7. Note,
> > however, that Subversion 1.15 and beyond will gradually phase out
> > support for Python 2.7.
>
> I'm not comfortable with committing to supporting Python 2.7 for the
> lifetime of the 1.14 branch — which basically means until the next LTS,
> whenever that _actually_ is — when that Python version has been EOL'd
> upstream.
>
> I'd prefer to state that Python 2.7 works (as a point of fact), but
> support therefor might be dropped at any time, even in a 1.14.x patch
> release, at our discretion; and we don't promise to fix bugs that affect
> Python 2.7 only. Of course, we'd not drop support without a good
> reason, but I'd like us to have the option to do that.
>
> After all, if a security vulnerability is found in Python 2 in 2020, it
> might be impractical for us to even _find_ a Python 2 interpreter to
> build and test with.
>

I feel uncomfortable with that, too.

I wrote this to dev@ two months ago, on September 2:

> Py2 is EOL 1/1/2020. Keeping it in 1.14 which implies support until
> 2024 would be a mistake because support will only get harder.
> Imagine what happens when your OS vendor removes Py2 packages. Even
> if Py2 still technically "works" with 1.14 (because that makes it
> easier to support Py3 for the remainder of 1.10), I suggest to
> document that Py2 is explicitly NOT supported in the 1.14 release
> notes. The internal policy should be that once 1.10 support ends,
> changes are allowed to break Py2 support and/or not be tested with
> Py2.

But based on later discussions here, several people expressed concern
about dropping Python 2 support. For example, Mark Phippard spoke of
supporting RHEL 7. Debian still ships with Python 2.7.

I don't think a consensus was ever reached on which version(s) of
Python we actually intend to support in 1.14-LTS and what is the best
path forward for those still using Python 2.7.

Correct me if I'm wrong but I'm guessing that for downstream's
support/planning purposes, if Python 2.7 could be dropped at any
1.14.x point release, isn't that basically equivalent to saying that
Python 2.7 isn't supported at all on 1.14? Because it means that an
update could break things at any time.

I'd be perfectly happy to write something like this in the release
notes:

[[[

Support for Python 3.x:

Subversion's swig-py bindings and automated test suite now support
Python 3.x (and newer).

Support for Python 2.7 is being phased out:

As of 1 January 2020, Python 2.7 has reached end of life. This means
that Python 2.7 will no longer receive maintenance releases or
patches, even for security issues. All users are strongly encouraged
to move to Python 3.

As Subversion 1.14 is a Long Term Support (LTS) release with planned
support until 2024, well beyond end-of-life for Python 2.7, the
Subversion developers cannot commit to supporting and testing with
Python 2.7 for the duration of this release, or to fix bugs that
affect Python 2.7 only.

This means that although Subversion 1.14.0 still technically works
with Python 2.7, any later 1.14.x point release may drop this support
if it becomes too difficult to maintain.

If you must continue using Python 2.7, our previous Long Term Support
release, Subversion 1.10, is supported until 2022. Python 2.7 support
will not be removed from Subversion 1.10.

If you do not use the swig-py bindings, automated test suite, or other
Python-coded tools that ship with Subversion, this change does not
affect you.

]]]

But I get the feeling there will be objections.

Bottom line: We need to reach some sort of consensus on this issue.
I've stated my opinion, but I'll be happy to go with whatever this
community decides makes the most sense.

Nathan
Received on 2019-11-05 16:59:50 CET

This is an archived mail posted to the Subversion Dev mailing list.