GHA is broken due to update to pip>=22.0. This happens because now it stops backtracking packages on build failure making it impossible to find working combination of versions.
We're not able to build 'hacking', because 'wheel' is not installed at that point in time. Installing it separately to fix the issue, so pip can find compatible versions of packages by backtracking. Unfortunately, new version of backtracking leads to installation of incompatible versions of flake8 and hacking. Presumably because current versions of hacking are not compatible with flake8>=4.0 and very old hacking-0.5.4 for some reason is considered suitable while resolving dependencies. So, we end up with flake8-4.0.1 and hacking-0.5.4 installed. And that doesn't work. Limiting the version of hacking to >=3.0 to have flake8-3.9.2 and hacking-3.0.0 installed during backtracking. Signed-off-by: Ilya Maximets <i.maxim...@ovn.org> --- .ci/linux-prepare.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.ci/linux-prepare.sh b/.ci/linux-prepare.sh index b3addf404..1fe890846 100755 --- a/.ci/linux-prepare.sh +++ b/.ci/linux-prepare.sh @@ -20,8 +20,13 @@ cd sparse make -j4 HAVE_LLVM= HAVE_SQLITE= install cd .. +# Installing wheel separately because it may be needed to build some +# of the packages during dependency backtracking and pip >= 22.0 will +# abort backtracking on build failures: +# https://github.com/pypa/pip/issues/10655 +pip3 install --disable-pip-version-check --user wheel pip3 install --disable-pip-version-check --user \ - flake8 hacking sphinx wheel setuptools pyelftools + flake8 'hacking>=3.0' sphinx setuptools pyelftools pip3 install --user 'meson==0.49.2' if [ "$M32" ]; then -- 2.34.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev