Repository navigation
test(terminal): run the tests that touch no process-wide state in parallel - #813
Merged
Merged
Conversation
omartelo
added a commit
that referenced
this pull request
Oct 17, 2026
…d a freed port, serially #813 ran them in parallel. A test that writes a script and execs it fails with ETXTBSY when another test forks while the script is still open for writing (golang/go#22315), and the port-retry test can lose its freed port to a parallel test's 127.0.0.1:0. Measured on the package: 1 failure in 15 runs before, 0 in 25 after.
omartelo
added a commit
that referenced
this pull request
Oct 17, 2026
…ve first launch (#816) * fix(ci): switch the release e2e back to the web window after the native first launch The first launch of a release opens the native window since #809, and the macOS and Windows end-to-end checks expected the web one on it. * fix(ci): wait for the native window to attach before the e2e switches back On the slower Intel runner the switch came before the native window had attached, so lich had no window of it to close and both stayed open. lich now logs the attach, and the macOS and Windows checks wait for it. * test(terminal): run the tests that exec a script they wrote, or rebind a freed port, serially #813 ran them in parallel. A test that writes a script and execs it fails with ETXTBSY when another test forks while the script is still open for writing (golang/go#22315), and the port-retry test can lose its freed port to a parallel test's 127.0.0.1:0. Measured on the package: 1 failure in 15 runs before, 0 in 25 after.
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.
With
relayparallel (#812),internal/terminalis the floor of the Linux and macOS backend suites (24s and 29s in the #812 run) and 42s on Windows.t.Parallel()as their first line. Nothing else changes in them.t.Setenv/os.Setenvdirectly or through one of the 18 helpers that do (writeTranscript,profileMachine,xdgMachine,conversationHome…).pty_windows_test.goandentrypoint_windows_test.gostay serial on purpose: they close a ConPTY session by Ctrl+C through the console, which can't be validated in parallel off a Windows machine.Measured on Linux at
GOMAXPROCS=4, three runs: 24s → 14s.-race -count=20at 4 procs and-count=20 -parallel=64at 2 procs (starved on purpose), ~9,400 executions each: no failure, no race.go vetclean for linux, windows and darwin. Darwin-only test files are only exercised by this PR's macOS job.