qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v3 0/6] Python: Drop support for Python 3.6


From: John Snow
Subject: [PATCH v3 0/6] Python: Drop support for Python 3.6
Date: Mon, 20 Feb 2023 20:24:50 -0500

CI: https://gitlab.com/jsnow/qemu/-/pipelines/783612696
    [Updated for v3, still all green.]
GL: https://gitlab.com/jsnow/qemu/-/commits/python-require-37

Hi, discussion about this series is ongoing. This series (v3) is not
meant to address all of that discussion, but rather is an updated
baseline for what we are capable of right now, today, without much
additional engineering. It's meant to serve as a reference for further
discussion.

To my knowledge, the inconveniences caused by this patchset as currently
written are:

(1) Users of CentOS 8 and OpenSUSE 15.4 would need to install an
    additional python package that will exist side-by-side with their
    base platform's Python 3.6 package.

    "zypper install python39" or "dnf install python38" is enough;
    configure will do the rest of the work.

    It's my understanding that this is largely a non-issue.

(2) Due to our Sphinx plugin that imports QAPI code from the tree,
    distro-provided versions of Sphinx that are installed and tied to
    Python 3.6 will no longer be suitable. Users may forego building
    docs or install a suitable sphinx using "pip".

    It's my understanding that this one is "kind of a bummer".

I feel that the inconvenience caused by (1) is minimized as is possible;
the inconvenience caused by (2) is slightly worse and I concede the
workaround has some complexities that I would otherwise seek to avoid.

As far as I am aware, the way forward is to work with Paolo to implement
a proper venv solution for the build tree that will help mitigate the
fallout from (2) by automating the use of a pip-provided Sphinx in the
cases where the distro-provided version is insufficient.

OK, seeya later!
--js

John Snow (6):
  configure: Look for auxiliary Python installations
  configure: Add courtesy hint to Python version failure message
  DO-NOT-MERGE: testing: Add Python >= 3.7 to Centos, OpenSuSE
  DO-NOT-MERGE: testing: add pip-installed sphinx-build to CentOS 8
  meson: prefer 'sphinx-build' to 'sphinx-build-3'
  Python: Drop support for Python 3.6

 docs/conf.py                                  |  4 +-
 docs/meson.build                              |  2 +-
 configure                                     | 41 ++++++++++++++-----
 python/Makefile                               | 10 ++---
 python/setup.cfg                              |  7 ++--
 python/tests/minreqs.txt                      |  2 +-
 scripts/qapi/mypy.ini                         |  2 +-
 tests/docker/dockerfiles/centos8.docker       |  5 +++
 tests/docker/dockerfiles/opensuse-leap.docker |  1 +
 9 files changed, 50 insertions(+), 24 deletions(-)

-- 
2.39.0





reply via email to

[Prev in Thread] Current Thread [Next in Thread]