FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

gh-112088: Run autoreconf in GHA check_generated_files by vstinner · Pull Request #112090 · python/cpython · GitHub

/ cpython Public

gh-112088: Run autoreconf in GHA check_generated_files - #112090

Merged
vstinner merged 1 commit into
python:mainfrom
vstinner:avoid_quay_io
Nov 15, 2023
Merged

gh-112088: Run autoreconf in GHA check_generated_files#112090
vstinner merged 1 commit into
python:mainfrom
vstinner:avoid_quay_io

Conversation

vstinner commented Nov 14, 2023
edited by bedevere-app Bot
Loading

Copy link
Copy Markdown
Member

The "Check if generated files are up to date" job of GitHub Actions now runs the "autoreconf -ivf -Werror" command instead of the "make regen-configure" command to avoid depending on the unstable quay.io server.

gpshead left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I think this is a good idea. It doesn't appear there is any reason for the quay.io image anymore given ubuntu-22.04 has a sufficiently good autoconf.

Copy link
Copy Markdown
Member Author

cc @erlend-aasland

hugovk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Comment thread Makefile.pre.in Outdated
vstinner added needs backport to 3.11 only security fixes needs backport to 3.12 only security fixes labels Nov 15, 2023

Copy link
Copy Markdown
Member Author

@hugovk: I completed the PR to address your review. Would you mind to review the updated PR?

Let's update https://github.com/python/cpython/blob/d4f83e1e3a19e2f881115f20d58ae6a019ddb48f/Doc/using/configure.rst#generated-files as well.

Done.

And backport?

I added the backport to 3.11 and 3.12 labels.

Copy link
Copy Markdown
Member Author

The main point of this PR is that Tools/build/regen-configure.sh now uses the same container image than the GitHub Action job, so the job doesn't have to run autoreconf in a container, but can run it directly.

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.

Copy link
Copy Markdown
Member Author

Oh, there is a fix in the Changelog entry causing the Docs job to fail: fixed.

Copy link
Copy Markdown
Member Author

@erlend-aasland: It would be nice if you could review this change, since you made many configure changes last months ;-)

Copy link
Copy Markdown
Contributor

Also, the devguide must be updated.

erlend-aasland left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

This looks good to me. (I'm a little bit puzzled by the aclocal.m4 and configure changes, but they are also fine.)

Thanks for doing this.

Copy link
Copy Markdown
Contributor

IIRC, we did the autoconf version bump before the 3.12 freeze, so IMO we should backport this to 3.12.

vstinner removed the needs backport to 3.11 only security fixes label Nov 15, 2023

Copy link
Copy Markdown
Member Author

This looks good to me. (I'm a little bit puzzled by the aclocal.m4 and configure changes, but they are also fine.)

I'm not sure if I picked the wrong pkg-config package. But well, for now, my main worry is more to make the whole Python workflow more reliable by avoiding depending on the external quay.io server which had multiple outages in several days.

With my change, the Python workflow no longer pulls an external container image, but simply reuse what's available on Ubuntu 22.04 in the GitHub Action.

IIRC, we did the autoconf version bump before the 3.12 freeze, so IMO we should backport this to 3.12.

Oh. So we cannot backport this change to 3.11?

vstinner merged commit d9fd33a into python:main Nov 15, 2023
vstinner deleted the avoid_quay_io branch November 15, 2023 20:47

This comment was marked as outdated.

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Nov 15, 2023
…H-112090)

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.
(cherry picked from commit d9fd33a)

Co-authored-by: Victor Stinner <vstinner@python.org>

This comment was marked as outdated.

bedevere-app Bot removed the needs backport to 3.12 only security fixes label Nov 15, 2023

Copy link
Copy Markdown
Member Author

Merged. Thanks for reviews. Let's start with a backport to 3.12.

Copy link
Copy Markdown
Contributor

Oh. So we cannot backport this change to 3.11?

No, 3.11 uses a patched Autoconf 2.69 from Alpine Linux, not a vanilla 2.69 installation.

Copy link
Copy Markdown
Contributor

@vstinner I was doing some work on release-tools adjacent to this, @zware pointed me to this PR. What are your thoughts on backporting the regen-configure makefile target to all supported versions so that release-tools can depend on it being there?

gpshead commented Nov 15, 2023

Copy link
Copy Markdown
Member

For 3.11 and earlier autoconf version configure generation udpates, ask the release managers (@pablogsal and @ambv) for those branches. (it makes sense for 3.12)

vstinner added a commit to vstinner/cpython that referenced this pull request Nov 16, 2023
…112090)

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.

(cherry picked from commit d9fd33a)

This comment was marked as outdated.

1 similar comment

This comment was marked as duplicate.

vstinner added a commit that referenced this pull request Nov 16, 2023
) (#112159)

gh-112088: Run autoreconf in GHA check_generated_files (#112090)

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.

(cherry picked from commit d9fd33a)
aisk pushed a commit to aisk/cpython that referenced this pull request Feb 11, 2024
…112090)

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.
Glyphack pushed a commit to Glyphack/cpython that referenced this pull request Sep 2, 2024
…112090)

The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.

Copy link
Copy Markdown
Member

I can see using of aclocal 1.16.5 in this PR.
But in docs we write "Autoconf 2.71 and aclocal 1.16.4 are required to regenerate the configure script". (https://docs.python.org/3.14/using/configure.html#build-requirements).

Should we provide some changes to docs for update them?
@vstinner

Copy link
Copy Markdown
Member Author

Should we provide some changes to docs for update them?

Yes. Do you want to propose a PR to update the doc?

Copy link
Copy Markdown
Member

Yes. Do you want to propose a PR to update the doc?

Yes, I do.

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants


Back | FazBrowse Home | New Git URL