Howdy, this series increases our minimum python version to 3.7. CI: https://gitlab.com/jsnow/qemu/-/pipelines/771780626 (All green!) GL: https://gitlab.com/jsnow/qemu/-/commits/python-require-37
Patches 1 and 2 are loose pre-requisites; I'd like to merge them into qemu.git within the week whether or not we take this series. I'd appreciate an "ACK" on those specifically. They're just riding along here because they make this series a bit nicer. Patches 3-6 are the hard pre-requisites, and 7 does the dirty work. The motivation for this series is that Python 3.6 was EOL at the end of 2021; upstream tools are beginning to drop support for it, including setuptools, pylint, mypy, etc. As time goes by, it becomes more difficult to support and test against the full range of Python versions that QEMU supports. The closer we get to Python 3.12, the harder it will be to cover that full spread of versions. The qemu.qmp library and the avocado testing framework both have motivations for dropping 3.6 support, but are committed to not doing so until QEMU drops support. So, I'd like to talk about doing it. V2: - Added R-Bs to patch 1 - Updated commit message for patch 7 with explicit version info - Added DO-NOT-MERGE to patch 5's title - Tested tests/vm/freebsd, netbsd, and openbsd in addition to full CI RFC: - Patch 5 is just a proof-of-concept; we need to update lcitool instead. - Cleber, I need to update your ansible scripts. How do I test them? Thanks! --js John Snow (7): python: support pylint 2.16 python: drop pipenv configure: Look for auxiliary Python installations configure: Add nice hint to Python failure message DO-NOT-MERGE: testing: Add Python >= 3.7 to Centos, OpenSuSE CI: Stop building docs on centos8 Python: Drop support for Python 3.6 docs/conf.py | 4 +- python/README.rst | 3 - configure | 40 +- .gitlab-ci.d/buildtest.yml | 2 +- .gitlab-ci.d/static_checks.yml | 4 +- python/.gitignore | 4 +- python/Makefile | 57 ++- python/Pipfile | 13 - python/Pipfile.lock | 347 ------------------ python/qemu/qmp/protocol.py | 2 +- python/qemu/qmp/qmp_client.py | 2 +- python/qemu/utils/qemu_ga_client.py | 6 +- python/setup.cfg | 11 +- python/tests/minreqs.txt | 45 +++ scripts/qapi/mypy.ini | 2 +- tests/docker/dockerfiles/centos8.docker | 1 + tests/docker/dockerfiles/opensuse-leap.docker | 1 + tests/docker/dockerfiles/python.docker | 1 - tests/qemu-iotests/iotests.py | 4 +- .../tests/migrate-bitmaps-postcopy-test | 2 +- 20 files changed, 135 insertions(+), 416 deletions(-) delete mode 100644 python/Pipfile delete mode 100644 python/Pipfile.lock create mode 100644 python/tests/minreqs.txt -- 2.39.0