Repository navigation
fix(ci): stop the macOS GUI job from hanging - #14
Merged
Merged
Conversation
…uck test The macOS GUI job has been stopping around test 145 with no output and holding a runner until GitHub's six-hour default cancels it. The GUI job now has a 30-minute limit, and on macOS the suite runs with one line per test (-vv) and pytest's faulthandler_timeout=300, so a test that hangs dumps the traceback of every thread and the log names it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> (cherry picked from commit f569d82)
…suite The macOS GUI job stopped after test_a_closed_failure_report_does_not_break_ the_run_teardown: faulthandler showed pytest-qt's post-call processEvents of test_an_unread_failure_report_is_kept_alive never returning. That test shows a QMessageBox parented to a main window that was never shown; on macOS such a box is a window-modal sheet, and on an invisible window its modal session never ends. The test now closes the box once it has checked it. The application is unaffected: its main window is always visible. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> (cherry picked from commit f2487b6)
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
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Brings @marcel1983's macOS GUI hang fix from his fork to
main:gui (macos-latest, 3.12)has been hanging for hours on everymainrun since #3, until the runner is lost.Linked issue
No issue. The two commits are cherry-picked from the fork with
-x; authorship is preserved.Type of change
Changes
tests/gui/test_error_reporting.py(f2487b6):test_an_unread_failure_report_is_kept_alivecloses the message box after checking it. On macOS a parentedQMessageBoxis a window-modal sheet, and on a main window that was never shown its modal session never ends, so pytest-qt's next event pass waits forever. The application is unaffected; its main window is always visible..github/workflows/ci.yml(f569d82): theguijob getstimeout-minutes: 30, and on macOS the suite runs with-vv -o faulthandler_timeout=300, so any other hang fails in half an hour and names its test. Job names are unchanged, so the required checks onmainare unaffected.Architectural checklist
from PySide6incore/orservices/import openseespyincore/orviews/Testing
tests/gui/test_error_reporting.py7 passed underxvfb-run; ruff clean; workflow YAML parses with the new timeout and the split Windows/macOS steps.gui (macos-latest, 3.12)run.Generated by Claude Code