Definitely +1 for both: following what pip supports and deleting avro-python3 in the 1.11.0 release.
I would expect there to be an AVRO JIRA and/or a commit for every time we "officially" drop support for a version (at the very least to update the documentation), which would keep the mailing list up to date. All my best, Ryan On Mon, Jan 4, 2021 at 2:45 PM Michael A. Smith <[email protected]> wrote: > I propose a vote on Apache Avro's official Python version support policy. > > Rationale: > > This vote should lead to clarity for maintainers wondering what to do > with the two lang/py* implementations and what versions of Python they > should support. > > Maintaining Avro on supported versions of Python ensures that we can > take best advantage of the modern features of the language including > both syntactic convenience, improvements in static analysis and > tooling, packaging, and security fixes. Pip is the mainstream Python > package installation method. It naturally tracks the supported > versions of Python itself, encouraging everyone to stay on supported, > secure versions. > > > What "support" means: > > Supported versions of Python SHOULD receive higher priority in tickets > compared to issues that are demonstrably related to an unsupported > version of Python. Contributions to the Python implementation MUST > ONLY use language features available in all supported versions of > Python, and MUST pass tests in all supported versions of Python. > (Currently we have tests for CPython 3.6-3.9 and pypy-3.6 and 3.7.) > > > What we should support: > > Officially obsoleting lang/py3: > > We should delete the lang/py3 directory and stop releasing packages > for it. It has been about a year since I released unified Python > support in lang/py > ( > https://lists.apache.org/thread.html/3e1f8ddd4a29945fe226872ce1ae336f93083aca0c5220f08de12474%40%3Cdev.avro.apache.org%3E > ). > Supporting two lang/py implementations continues to confuse > contributors (https://github.com/apache/avro/pull/979) and users, who > are still under the wrong impression that avro-python doesn't support > python3. > > Adding new versions: > > We should begin to support new versions of Python in the master branch > soon after CPython releases a new version. CPython releases since 3.9 > follow PEP 602 (https://www.python.org/dev/peps/pep-0602/), which > indicates a new major version of Python 3.x will be released every 12 > months, and supported for five years following. > > Dropping old versions: > > For determining what and when to drop support, I propose that we track > pip, the official Python package installer, in its Python support > policy. More formally, I propose that if pip creates a changelog entry > such as https://pip.pypa.io/en/latest/news/#b1-2020-10-31, indicating > a clear intent to drop support for some version of Python, that we > should take that as a green light to stop supporting that version of > Python in the master branch and subsequent releases of Avro. > > Pip's stated policy > ( > https://pip.pypa.io/en/latest/development/release-process/#python-support-policy > ) > is that they support a version of Python "until its usage on PyPI > falls below 5%", which we can see by drilling down at > https://pypistats.org/packages/pip. > > > Voting: > > The voting process is here: > https://www.apache.org/foundation/voting.html. This is a procedural > vote on our support policy, to inform users of what to expect and to > enable contributors to make informed decisions. > > Let's close the vote at 2021-01-10 23:59:59 UTC. > > On Mon, Jan 4, 2021 at 5:19 AM Ismaël Mejía <[email protected]> wrote: > > > > +1 good idea! Can you please open the vote Michael > > > > Do we have multiple-python version tests? I suppose this will be > > easier to do now with the move to github actions! > > > > On Fri, Dec 18, 2020 at 5:40 PM Michael A. Smith <[email protected]> > wrote: > > > > > > I propose that we track pip, the official Python package installer, in > > > its Python support policy. More formally, I propose that if pip > > > creates a changelog entry such as > > > https://pip.pypa.io/en/latest/news/#b1-2020-10-31, indicating a clear > > > intent to drop support for some version of Python, that we should take > > > that as a green light to stop supporting that version of Python in the > > > master branch and subsequent releases of Avro. > > > > > > To plan for the future, pip's stated policy > > > ( > https://pip.pypa.io/en/latest/development/release-process/#python-support-policy > ) > > > is that they support a version of Python "until its usage on PyPI > > > falls below 5%", which we can see by drilling down at > > > https://pypistats.org/packages/pip. > > > > > > If nobody has any immediate objections to this, I'll put it to a vote > > > in a subsequent email. > > > > > > Best regards, > > > Michael Smith >
