Hi Aaron,

My first suggestion would be to do whatever the other libraries agree
to do, based on https://python3statement.github.io/, i.e. we should
add SymPy there as well.

My second suggestion is to be conservative, but if most libraries
agree to release Python 3 only version in 2019, then that's fine.

For what is worth, I am still using Python 2.7 only. But I can
upgrade, I think most tools that I use support Python 3.

What will be the lowest Python 3 version that we will support?

Ondrej

On Thu, May 19, 2016 at 9:51 AM, Aaron Meurer <[email protected]> wrote:
> Hi all.
>
> Some of us in the broader scientific Python community have been discussing
> the future of Python 2 support for various libraries. As you may know,
> Python 2.7 will cease to be supported by the core Python development team in
> 2020, meaning all updates to it will cease, including security updates.
> However, even though we are six major versions into Python 3, the larger
> community as a whole is still slow on uptake for supporting it.
>
> The proposal is for libraries to let the community know now when they plan
> to drop Python 2.7 support, so that they will better prepared for it, and
> hopefully so as an encouragement to start transitioning now, if they haven't
> already.
>
> I propose that we put it on our roadmap to drop Python 2.7 support in 2019.
> That is, the first release we do in 2019 will be the last to support Python
> 2.7. This is consistent with what we've done so far, which is to drop
> support for Python versions once they cease being supported by core Python.
>
> Other libraries, such as IPython and likely matplotlib, are also joining
> together to sign a formal statement about this, which is drafted at
> https://python3statement.github.io/.
>
> Some libraries, such as IPython and matplotlib, are proposing to support a
> patchfix branch for an older version that supports Python 2.7, but I am
> opposed to any plan for SymPy that means supporting more than one version at
> a time, as I don't think we have the development effort for it.
>
> I would like to hear feedback on this, both positive and negative. It isn't
> an official decision yet, until the community agrees on it.
>
> Here is my rationale for doing this. I also plan to publish a blog post
> about this soon, which goes into more detail:
>
> As you also probably know, SymPy, like other Python libraries, has done
> extra work to support Python 2 and 3 in the same codebase. While this work
> is easier than it used to be, it does put a maintainence burden on SymPy,
> and it prevents us from using language features which are Python 3-only. One
> language feature in particular that I would love to be able to use in SymPy
> is keyword-only arguments. This lets you write, for instance
>
> def function(x, y, *, flag=False):
>     ...
>
> and then function(x, y, True) is a TypeError. Only function(x, y, flag=True)
> will work. This future-proofs the API, e.g., you can easily change it to
> function(x, y, z, *, flag=False) without any API breaks, and it forces
> explicitness in keyword arguments. That's one example. There are other
> Python 3-only features that we may or may not be able to make use of as well
> (like function annotations).
>
> And even without that, the maintenance burden of supporting both versions is
> nontrivial. It means all developers have to know about the quirks of Python
> 2 and 3, regardless of which one they use primarily. It means that we always
> have to remember to add all the right compatibility imports at the top of
> files, and avoid things which are one version-only. And it means extra
> builds in the test matrix.
>
> Aaron Meurer
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sympy.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CAKgW%3D6Kc4QmJ2zso4JfdwVyebxq4NMZWmNr%2BhRnvbGmfs6hT3Q%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVBM_QA9cdrvCkGsW8ebZQA3EAgm%3DQk0dWQ%2BGvxd%3Dp5v%2Bw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to