From: Paolo Bonzini <pbonzini@redhat.com>
To: "Peter Maydell" <peter.maydell@linaro.org>,
"Daniel P. Berrangé" <berrange@redhat.com>
Cc: "John Snow" <jsnow@redhat.com>,
qemu-devel <qemu-devel@nongnu.org>,
"Cleber Rosa" <crosa@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Thomas Huth" <thuth@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>,
"Michael Roth" <michael.roth@amd.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Markus Armbruster" <armbru@redhat.com>,
Qemu-block <qemu-block@nongnu.org>,
"Hanna Reitz" <hreitz@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Kevin Wolf" <kwolf@redhat.com>
Subject: Re: [PATCH v2 6/7] CI: Stop building docs on centos8
Date: Fri, 10 Feb 2023 19:27:41 +0100 [thread overview]
Message-ID: <dc989fbd-14ec-4a62-d227-826c6244dfcb@redhat.com> (raw)
In-Reply-To: <CAFEAcA-Gi_hn7uSGMpgMhwgw-e3yjX8DjUNcqwu2MJFem4P0MQ@mail.gmail.com>
On 2/10/23 18:15, Peter Maydell wrote:
> Right. All of these things together seem to say:
> * Python is not an unreasonable thing for the project
> to depend on
> * CentOS 8 is not an unreasonable distro for us to
> want to continue to support
> * Therefore we should continue to work with the Python
> that ships with CentOS 8...
>
> [snip]
>
>> We don't have to drop python 3.6. It is a choice because
>> of a desire to be able to use some shiny new python
>> features without caring about back compat.
>>
>> Similarly we don't have to use the new meson which drops
>> support for python 3.6, it is again a choice because we
>> want to rely on some new meson features.
>>
>> QEMU could easily carry on supporting python 3.6 until
>> the affected distros drop out ofo our support matrix, but
>> we would have to opt out of using certain new features,
>> or put more effort into back compat.
>>
>> Personally I'm still on the side of carrying on supporting
>> 3.6 per our distro support policy, but if broad consensus
>> is to drop 3.6 I'm not going push back anymore.
>
> This is really where I'm at as well -- we set our distro
> support policy, and we know that means that sometimes
> we have to deal with continuing to support older versions
> of dependencies even when it might be easier for us if we
> could require newer versions.
There are four possibilities:
* we change the support policy and stop supporting CentOS 8 and SLE 15,
not a good idea since a lot of people have not migrated to CentOS 9 yet.
* we keep supporting Python 3.6 until CentOS 8 and SLE 15 stop being
supported. This means several more years since SLE 16 hasn't even been
released.
* we support Python 3.6 just for building documentation, i.e. we are
careful not to use Python 3.7+ features in our Sphinx extensions but are
free to use them elsewhere. CentOS 8 users can install sphinx from
either RPMs (which will use Python 3.6) or pip (which will use Python 3.8).
* we only support Python 3.7+, which means CentOS 8 CI and users have to
either install Sphinx from pip or disable documentation.
The only difference between the last two is documentation and CI
configuration. The code is exactly the same.
> I'm reluctant to say that
> Python gets a special derogation from that policy.
Note that its not the Python runtime but the Python dependencies, for
which we already install avocado and some Python development tools in a
virtual environment. So, the questions are:
* to what extent can we rely on pip packages (preinstalled by the user)
instead of the distro packages?
* to what extent should QEMU install its own dependencies via pip in a
virtual environment instead of requiring the user to preinstall them?
Right now the answers for both are "avocado gets an exception for
tests/, Python development tools such as mypy get an exception for python/".
The Python 3.7+ series (not this one by John) currently adds "sphinx
gets an exception to the first answer only".
In the future I would like to unify virtual environment generation for
tests/ and python/ and move it to configure. If desirable, this would
make it possible to implement something like "the user need not care
about Python dependencies, configure can (but need not) install them all
via pip". Distros would still package the dependencies, but users would
have a slightly easier time building QEMU.
Thanks,
Paolo
next prev parent reply other threads:[~2023-02-10 18:28 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-10 0:31 [PATCH v2 0/7] Python: Drop support for Python 3.6 John Snow
2023-02-10 0:31 ` [PATCH v2 1/7] python: support pylint 2.16 John Snow
2023-02-10 0:31 ` [PATCH v2 2/7] python: drop pipenv John Snow
2023-02-10 0:31 ` [PATCH v2 3/7] configure: Look for auxiliary Python installations John Snow
2023-02-10 7:39 ` Thomas Huth
2023-02-10 10:45 ` Paolo Bonzini
2023-02-10 15:28 ` John Snow
2023-02-10 15:53 ` Peter Maydell
2023-02-10 16:17 ` Paolo Bonzini
2023-02-10 16:21 ` John Snow
2023-02-10 16:26 ` Paolo Bonzini
2023-02-10 19:56 ` Eric Blake
2023-02-10 0:31 ` [PATCH v2 4/7] configure: Add nice hint to Python failure message John Snow
2023-02-10 7:45 ` Thomas Huth
2023-02-10 19:19 ` John Snow
2023-02-10 0:31 ` [PATCH v2 5/7] DO-NOT-MERGE: testing: Add Python >= 3.7 to Centos, OpenSuSE John Snow
2023-02-10 0:31 ` [PATCH v2 6/7] CI: Stop building docs on centos8 John Snow
2023-02-10 7:06 ` Philippe Mathieu-Daudé
2023-02-10 10:41 ` Peter Maydell
2023-02-10 16:01 ` John Snow
2023-02-10 16:32 ` Peter Maydell
2023-02-10 16:51 ` Daniel P. Berrangé
2023-02-10 17:15 ` Peter Maydell
2023-02-10 18:27 ` Paolo Bonzini [this message]
2023-02-15 12:30 ` Daniel P. Berrangé
2023-02-14 7:40 ` Markus Armbruster
2023-02-14 8:35 ` Thomas Huth
2023-02-14 9:59 ` Alex Bennée
2023-02-14 12:10 ` Daniel P. Berrangé
2023-02-16 1:08 ` Markus Armbruster
2023-02-16 11:00 ` Daniel P. Berrangé
2023-02-14 10:33 ` Peter Maydell
2023-02-14 11:03 ` Kevin Wolf
2023-02-15 19:17 ` Markus Armbruster
2023-02-14 11:48 ` Daniel P. Berrangé
2023-02-14 14:03 ` Paolo Bonzini
2023-02-14 14:17 ` Daniel P. Berrangé
2023-02-14 17:26 ` Kevin Wolf
2023-02-14 20:52 ` Paolo Bonzini
2023-02-15 10:38 ` Kevin Wolf
2023-02-15 11:35 ` Daniel P. Berrangé
2023-02-16 1:46 ` Markus Armbruster
2023-02-16 11:06 ` Daniel P. Berrangé
2023-02-17 22:49 ` John Snow
2023-02-20 8:51 ` Markus Armbruster
2023-02-16 11:12 ` Daniel P. Berrangé
2023-02-16 10:40 ` Markus Armbruster
2023-02-10 17:55 ` John Snow
2023-02-10 18:09 ` Peter Maydell
2023-02-10 20:31 ` Paolo Bonzini
2023-02-10 0:31 ` [PATCH v2 7/7] Python: Drop support for Python 3.6 John Snow
2023-02-10 10:04 ` [PATCH v2 0/7] " Markus Armbruster
2023-02-14 18:35 ` John Snow
2023-02-15 10:53 ` Kevin Wolf
2023-02-15 19:05 ` Markus Armbruster
2023-02-16 10:17 ` Peter Maydell
2023-02-16 12:31 ` Markus Armbruster
2023-02-16 10:58 ` Thomas Huth
2023-02-17 9:06 ` Markus Armbruster
2023-02-17 9:56 ` Thomas Huth
2023-02-17 15:37 ` Peter Maydell
2023-02-17 15:41 ` Daniel P. Berrangé
2023-02-17 10:01 ` Daniel P. Berrangé
2023-02-17 20:46 ` John Snow
2023-02-20 6:16 ` Thomas Huth
2023-02-20 19:56 ` John Snow
2023-02-21 12:00 ` Thomas Huth
2023-02-17 11:37 ` Proposed way forward " Daniel P. Berrangé
2023-02-17 13:46 ` Thomas Huth
2023-02-17 13:52 ` Daniel P. Berrangé
2023-02-17 14:40 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=dc989fbd-14ec-4a62-d227-826c6244dfcb@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=bleal@redhat.com \
--cc=crosa@redhat.com \
--cc=hreitz@redhat.com \
--cc=jsnow@redhat.com \
--cc=kwolf@redhat.com \
--cc=michael.roth@amd.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).