[web] use a different method for launching desktop safari #27567
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.
Replace
open -F -W -n -b com.apple.Safari
with a direct invocation of the/Applications/Safari.app/Contents/MacOS/Safari
executable.Problems with
open
:open
process itself is short-lived and exits immediately after launching Safari. This is contrary to the assumptions made by the rest of the code that the lifetime of the process returned by theBrowser
class corresponds to the browser process.open
command and/orcom.apple.Safari
also open the "default browser". For example, if your default browser is set to Chrome, then the test will also open in Chrome.The method used here is borrowed from Karma: karma-runner/karma-safari-launcher#29
This also removes the "clear console" functionality when felt is run in normal mode (as opposed to watch mode), which could be messing with LUCI logs.
This also removes the printouts of macOS info, because commands we use to extract this info are flaky.
Fixes flutter/flutter#86676