qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v2 6/7] CI: Stop building docs on centos8


From: John Snow
Subject: Re: [PATCH v2 6/7] CI: Stop building docs on centos8
Date: Fri, 10 Feb 2023 11:01:18 -0500



On Fri, Feb 10, 2023, 5:41 AM Peter Maydell <peter.maydell@linaro.org> wrote:
On Fri, 10 Feb 2023 at 00:31, John Snow <jsnow@redhat.com> wrote:
>
> CentOS 8 does not ship with a sphinx new enough for our purposes (It
> necessarily uses Python 3.6), so drop this from this build. We can
> resume building docs on CentOS 9 if we wish, but we also currently test
> and build docs on Fedora, Ubuntu, Alpine and Debian.

This confuses me. We work fine with Python 3.6 today.

That won't last - Many tools such as mypy, pylint and flake8 which I use to manage our python codebase have been dropping support for 3.6 and I've had to implement an increasing number of workarounds to help keep it possible to test 3.6 via CI while also ensuring our newest platforms work as dev environments.

Our testing matrix for Python is novel and thorough enough that it's revealed  several bugs in other downstream Python distributions for Debian and Fedora, and dozens of bugs for the linters themselves.

I'm concerned that when 3.7 is EOL'd in just a few months that the support and testing gap is going to get even uglier.

In addition, Avocado framework has been asking me to drop 3.6 so they can follow suit, for much of the same reasons - maintenance cost.

The typing work we've been pursuing for our testing and qapi libraries would also be greatly helped by dropping 3.6, but it's really the maintenance argument that's driving this.

Anyway, just trying to explain that it's not just a frivolous thing I'm doing for the sake of itself.

Either:
 * CentOS 8 has fallen off the end of our "supported build platforms"
   list -- if so, we don't need to be CI'ing anything on it.
 * CentOS 8 is still a supported platform -- in this case building
   the docs is something we need to continue to support, and we
   can't drop Python 3.6 until all of our supported build
   platforms have a newer Python available.

The argument I'm making is:

- CentOS 8 is a supported build platform
- All platforms *do* have a Python modern enough to allow us to drop 3.6
- CentOS's repo version of sphinx is hardcoded to use the older 3.6, though
- You expressed a preference to me in the past to NOT use a pip installed version of sphinx in preference to the system version in "configure"
- It's still possible to build docs on CentOS 8 after this patchset, you just need a pip version.
- We've used the justification that our build platform promise does not necessarily extend to docs and tests in the past.
- So just skip docs building for CentOS 8, only in the CI.

If you believe docs in CI for CentOS 8 is a hard deal breaker, then I want to go back to discussing the possibility of using sphinx versions from pip.

Paolo mentioned wanting to do similar in reply to another patch on this series (#5) to preserve docs building on the platform.


thanks
-- PMM


reply via email to

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