Skip to content

gh-146376: Reduce timeout in Emscripten workflow#146378

Merged
vstinner merged 2 commits intopython:mainfrom
hoodmane:emscripten-reduce-ci-timeout
Mar 30, 2026
Merged

gh-146376: Reduce timeout in Emscripten workflow#146378
vstinner merged 2 commits intopython:mainfrom
hoodmane:emscripten-reduce-ci-timeout

Conversation

@hoodmane
Copy link
Copy Markdown
Contributor

@hoodmane hoodmane commented Mar 24, 2026

Copy link
Copy Markdown
Member

@webknjaz webknjaz left a comment

Choose a reason for hiding this comment

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

Thanks!

@vstinner
Copy link
Copy Markdown
Member

vstinner commented Mar 25, 2026

Does Emscripten supports faulthandler.dump_traceback_later(timeout, exit=True)? If yes, I would prefer to pass a --timeout=seconds option to the python -m test (...) command (which uses dump_traceback_later()), rather than reducing the CI overall timeout.

@webknjaz
Copy link
Copy Markdown
Member

@vstinner if that's possible, I'd recommend both timeouts (with different values). Also, this sounds like something to do in other jobs too.

Comment on lines +13 to +26
# It seems to take about 20 minutes without the cache, broken down as follows:
# (All times recorded from one run chosen arbitrarily.)
#
# 0.5 install Emscripten (skipped by cache)
# 1.0 configure & build native python
# 0.5 build dependencies (skipped by cache)
# 3.0 configure Emscripten Python
# 1.5 build Emscripten Python
# 0.7 build Emscripten ports (skipped by cache)
# 14.0 Test
#
# So if we add time for a rerun of the entire test suite, we get to 34
# minutes. Adding an extra 5% gets us to 36.
timeout-minutes: 36
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.

I don't think we need all the calculations here. It can be in the PR description.

And let's round the number. If the time starts being too short, we'll just bump it up a bit.

Suggested change
# It seems to take about 20 minutes without the cache, broken down as follows:
# (All times recorded from one run chosen arbitrarily.)
#
# 0.5 install Emscripten (skipped by cache)
# 1.0 configure & build native python
# 0.5 build dependencies (skipped by cache)
# 3.0 configure Emscripten Python
# 1.5 build Emscripten Python
# 0.7 build Emscripten ports (skipped by cache)
# 14.0 Test
#
# So if we add time for a rerun of the entire test suite, we get to 34
# minutes. Adding an extra 5% gets us to 36.
timeout-minutes: 36
timeout-minutes: 40

@vstinner
Copy link
Copy Markdown
Member

@hoodmane: Can you change the timeout to 40 minutes and remove the long comment, as suggested by @hugovk?

Copy link
Copy Markdown
Member

@vstinner vstinner left a comment

Choose a reason for hiding this comment

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

LGTM

@vstinner vstinner enabled auto-merge (squash) March 30, 2026 20:20
@vstinner vstinner merged commit 70d1b08 into python:main Mar 30, 2026
31 checks passed
@hugovk hugovk added the needs backport to 3.14 bugs and security fixes label Mar 30, 2026
@miss-islington-app
Copy link
Copy Markdown

Thanks @hoodmane for the PR, and @vstinner for merging it 🌮🎉.. I'm working now to backport this PR to: 3.14.
🐍🍒⛏🤖

@bedevere-app
Copy link
Copy Markdown

bedevere-app bot commented Mar 30, 2026

GH-146645 is a backport of this pull request to the 3.14 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.14 bugs and security fixes label Mar 30, 2026
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Mar 30, 2026
hugovk pushed a commit that referenced this pull request Mar 30, 2026
… (#146645)

gh-146376: Reduce timeout in Emscripten GHA workflow (GH-146378)
(cherry picked from commit 70d1b08)

Co-authored-by: Hood Chatham <[email protected]>
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.

4 participants