Sat 2019-07-13 09:54 UTC, Antonio Rojas:
>
> Today I tested building Sage on Arch against our python3 packages.
> Not surprisingly, it failed to even start. This is due to our python3
> ipython package being at version 7 already, with includes some
> API changes that require some porting in Sage.
>
> More and more python modules are completely dropping python2
> support: ipython, sphinx, networkx, scipy, matplotlib... These packages
> can't be upgraded in sage-the-distribution and are therefore stuck
> to an old version until python2 support is dropped in Sage, which
> presumably won't happen for at least a couple of years. This is going
> to be a big problem for distributions in the period when Sage defaults
> to Python3 but still supports Python 2: much patching will probably
> be needed to support the newer versions of python3 modules with
> are still not upgraded in Sage due to not supporting python2.
>
> My first question is: would Sage accept patches to support this newer
> version of python modules (while still keeping compatibility with the
> older versions shipped by Sage)?. That would allow to reduce the
> patching required by distros.
>
> However, this would still not be completely satisfactory - the updated
> version code path would not be tested so the risk of regressions would
> be quite high. Ideally, Sage should allow to ship different versions for
> the python2 and python3 versions of these modules, so when compiling
> with python3 it would use the latest versions. Are there any plans in this
> direction, or are these packages going to be stuck to old versions until
> python2 support is dropped?
For reference, this was posted both to sage-devel and sage-packaging,
and the discussion is happening in two threads:
https://groups.google.com/d/topic/sage-devel/9zRrmIQzKfI/discussion
https://groups.google.com/d/topic/sage-packaging/i9VosTO9-cM/discussion
Removing Python 2 support is the object of Trac ticket 28000,
aptly numbered in reference to "there will be no Python 2.8":
https://trac.sagemath.org/ticket/28000
This ticket can be indicated as a prerequisite for other tickets
that depend on that transition.
One thing we could do for a start, given that for now we build
both Python 2 and Python 3 in any case, would be to transition
the Jupyter part of Sage-the-distribution to be python3-based,
allowing us to upgrade all the Jupyter stack to current versions.
I don't know if there are any obstacles to that.