git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] ci: lock "pedantic" job into fedora 35 and other cleanup

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Apr 15, 2022, 13:17 UTC
Message-ID
<220415.86wnfqbhsf.gmgdl@evledraar.gmail.com>
In-Reply-To
<20220415123922.30926-1-carenas@gmail.com>
On Fri, Apr 15 2022, Carlo Marcelo Arenas Belón wrote:
Show 8 quoted lines
> Fedora 36 is scheduled to be released in Apr 19th, but it includes
> a prerelease of gcc 12 that has known issues[1] with our codebase
> and therefore requires extra changes to not break a DEVELOPER=1
> build.
>
> Lock the CI job to the current release image, and while at it rename
> the job to better reflect what it is currently doing, instead of its
> original objective.

The CI job was added in your cebead1ebfb (ci: run a pedantic build as part of the GitHub workflow, 2021-08-08), and later in 6a8cbc41bac (developer: enable pedantic by default, 2021-09-03) we made "pedantic" the default.

Is there any point in having this job at all anymore, or is it just a "does it compile on Fedora?" now?

Your cebead1ebfb notes that its gcc is ahead of the curve, if that's what we actually want perhaps s/fedora/linux-newer-gcc/ ?

I think this change would be much clearer if we first delete the now-redundant pedantic flag, and then later do whatever else that's needed...

Show 8 quoted lines
> [...]
> This merges fine to master, maint and next but will need some work to
> get into seen.
>
> Alternatively, the fixes to fix the build could be merged instead, but
> it will still require at least one temporary change to disable a flag
> as the underlying bug[3] is yet to be addressed in gcc (or somewhere
> else in Fedora).
I get the same thing on GCC12 on Debian.

Wouldn't a much more useful thing be to upgrade to gcc12 anyway, and just set -Wno-error=stringop-overread on gcc12 for dir.(o|s|sp)? Then we'd find any future issues, and blacklist this one known issue...

Or just set -O1 under the same condition.
Show 13 quoted lines
> diff --git a/ci/install-docker-dependencies.sh b/ci/install-docker-dependencies.sh
> index 78b7e326da6..660e25d1d26 100755
> --- a/ci/install-docker-dependencies.sh
> +++ b/ci/install-docker-dependencies.sh
> @@ -15,8 +15,8 @@ linux-musl)
>  	apk add --update build-base curl-dev openssl-dev expat-dev gettext \
>  		pcre2-dev python3 musl-libintl perl-utils ncurses >/dev/null
>  	;;
> -pedantic)
> +fedora)
>  	dnf -yq update >/dev/null &&
> -	dnf -yq install make gcc findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null
> +	dnf -yq install make gcc git findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null

Why do we need to install "git" now, I'd think because we're upgrading, but here we're pinning the old version, what changed?

Show 18 quoted lines
>  	;;
>  esac
> diff --git a/ci/run-build-and-tests.sh b/ci/run-build-and-tests.sh
> index 280dda7d285..de0f8d36d7c 100755
> --- a/ci/run-build-and-tests.sh
> +++ b/ci/run-build-and-tests.sh
> @@ -37,10 +37,9 @@ linux-clang)
>  linux-sha256)
>  	export GIT_TEST_DEFAULT_HASH=sha256
>  	;;
> -pedantic)
> +fedora)
>  	# Don't run the tests; we only care about whether Git can be
>  	# built.
> -	export DEVOPTS=pedantic
>  	export MAKE_TARGETS=all
>  	;;
>  esac
Previous: Carlo Marcelo Arenas BelónNext: Phillip Wood
Message 2 of 25 in “ci: lock "pedantic" job into fedora 35 and other cleanup”
  1. ci: lock "pedantic" job into fedora 35 and other cleanupCarlo Marcelo Arenas Belón, Apr 15, 2022
  2. Ævar Arnfjörð BjarmasonApr 15, 2022
  3. Phillip WoodApr 15, 2022
  4. Junio C HamanoApr 15, 2022
  5. Carlo ArenasApr 15, 2022
  6. Junio C HamanoApr 15, 2022
  7. 0/2 ci: avoid failures for pedantic job with fedora 36Carlo Marcelo Arenas Belón, Apr 15, 2022
  8. 1/2 config.mak.dev: workaround gcc 12 bug affecting "pedantic" CI jobCarlo Marcelo Arenas Belón, Apr 15, 2022
  9. Ævar Arnfjörð BjarmasonApr 15, 2022
  10. Carlo ArenasApr 16, 2022
  11. Ævar Arnfjörð BjarmasonApr 16, 2022
  12. Junio C HamanoApr 16, 2022
  13. Ævar Arnfjörð BjarmasonApr 16, 2022
  14. Junio C HamanoApr 16, 2022
  15. Junio C HamanoApr 15, 2022
  16. 2/2 config.mak.dev: alternative workaround to gcc 12 warning in http.cCarlo Marcelo Arenas Belón, Apr 15, 2022
  17. Junio C HamanoApr 15, 2022
  18. Carlo ArenasApr 16, 2022
  19. Junio C HamanoApr 16, 2022
  20. Ævar Arnfjörð BjarmasonApr 16, 2022
  21. Junio C HamanoApr 16, 2022
  22. Carlo ArenasApr 16, 2022
  23. Junio C HamanoApr 16, 2022
  24. Ævar Arnfjörð BjarmasonApr 16, 2022
  25. Ævar Arnfjörð BjarmasonApr 16, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.