Skip to content

Mac Web Engine timing out on Safari on Xcode 13.* #99885

Closed

Description

@jmagman

Seen in flutter-team-archive/engine#31915

INFO: Simulator 88E8A88A-27B8-4CB4-92F5-C0A7D29C9EB9 booted.
...
  �[31mFailed to load "test/paragraph_builder_test.dart":�[0m
  Failed to run Safari iOS: Exception: Safari iOS failed with exit code 60.
  Standard output:
  An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=60):
  The operation couldn’t be completed. Operation timed out
  Operation timed out
  .
  dev/browser.dart 143:9  new Browser.<fn>

https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8820126131592201793/+/u/test:_felt_ios-safari_test/stdout

Simulator successfully booted, timed out waiting for Safari to launch.

Activity

  1. added
    platform-iosiOS applications specifically
    platform-webWeb applications specifically
    team-infraOwned by Infrastructure team
    on Mar 10, 2022
  2. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor

    Similar to #98278 but Safari.
    Maybe something in https://github.com/flutter/engine/blob/main/lib/web_ui/dev/browser_lock.yaml needs to be updated?

    @yjbanov @ditman

  3. added
    P1High-priority issues at the top of the work list
    on Mar 10, 2022
  4. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor
  5. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor
  6. yjbanov commented on Mar 10, 2022

    @yjbanov
    Contributor

    This is Safari for iOS, which is launched in an iOS Simulator. Xcode and/or macOS may affect it. The Chromium codepath is sufficiently different that I don't think the two are related. Safari iOS configuration is specified here. Code that manages Safari on iOS is here.

  7. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor

    The Chromium codepath is sufficiently different that I don't think the two are related.

    Oh for sure was just a stray comment that it also may need to be bumped.

  8. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor

    Safari iOS configuration is specified here. Code that manages Safari on iOS is here.

    Right, it's using iOS 13 simulator, which is available, and is being booted. This test was passing on the same Xcode and runtime bundles in January, though the macOS version was 12.1 instead of 12.2 on the failing machines, not sure if that's related.

  9. jmagman commented on Mar 10, 2022

    @jmagman
    MemberAuthor
  10. jmagman commented on Mar 18, 2022

    @jmagman
    MemberAuthor

    @eyebrowsoffire investigated, it reproduced on Xcode 13 trying with different iOS simulator runtimes, but did not reproduce on Xcode 13.2.1. I'm going to prep an Xcode 13.1 package to see if it repros there. If it works then I'll bump the framework package (~ #98297), min Xcode tool version requirement (~ #97746), then circle back to the engine.

  11. jmagman commented on Mar 25, 2022

    @jmagman
    MemberAuthor

    Same thing on 13.1 flutter-team-archive/engine#32254

      Failed to run Safari iOS: Exception: Safari iOS failed with exit code 60.
    

    https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8818757082941132785/+/u/test:_felt_ios-safari_test/stdout

    This used the previously uploaded iOS 15 simulator runtime since they have identical Info.plists and are both for the iOS 15.0 SDK. But all the binaries actually differ from the old and new. Need to figure out how to get the ios-15-0 refs and tags from one to the other without potentially breaking the currently running CI to test if the new version fixes it (and if so, can we use the new runtime on Xcode 13 to avoid needing to bump the tool requirement again?)
    Infra team advice on this would be much appreciated @godofredoc

  12. godofredoc commented on Mar 25, 2022

    @godofredoc
    Contributor

    Just moved the refs from the old to the new. If something fails we can move them back. The tags are the ones that should not be changed and impact the caches but refs are safe to move back and forth.

  13. jmagman commented on Mar 25, 2022

    @jmagman
    MemberAuthor

    Just moved the refs from the old to the new. If something fails we can move them back.

    @godofredoc Can you clear the osx_sdk_13a1030d_13_1_15 and osx_sdk_13a233_13_15 caches off the try builders to see if it works?
    https://github.com/flutter/engine/pull/32254/files#diff-9e73abde9fff445f31e5928e80d2d3f88847e02fd8f76d46f66f147fdc82786dR61
    https://github.com/flutter/engine/pull/31915/files#diff-9e73abde9fff445f31e5928e80d2d3f88847e02fd8f76d46f66f147fdc82786dR60

  14. 28 remaining items

  15. keyonghan commented on Jun 1, 2022

    @keyonghan
    Contributor

    Chromium team is looking into enable the 'Allow Remote Automation' option in Safari's Develop menu to control Safari via WebDriver. (crbug.com/1328969)

  16. eyebrowsoffire commented on Jun 1, 2022

    @eyebrowsoffire
    Contributor

    I have a PR out with the tests based on safaridriver. However, at this point I'm blocked on (crbug.com/1328969) which Keyong mentioned above

  17. godofredoc commented on Jun 2, 2022

    @godofredoc
    Contributor

    Chromium team is working on enabling safari driver. Previously the command was run as root and it was not working for the chromebot user.

    @keyonghan is following up with chromium team.

  18. keyonghan commented on Jun 3, 2022

    @keyonghan
    Contributor

    Configs are enforced. @eyebrowsoffire please give it try.

  19. eyebrowsoffire commented on Jun 7, 2022

    @eyebrowsoffire
    Contributor

    Update: Safaridriver is working after the latest changes to the chromium bots. The changes
    that implement the safaridriver test harness (flutter-team-archive/engine#33757) are out for PR.

    Once that PR is merged, we will need to make changes to the recipe to only run Desktop Safari tests (and possibly skip installing Xcode altogether, since we don't need the simulator anymore). Once the recipes are changed, we will need one more change in the engine repo to remove the dependency on older versions of macOS/Xcode.

  20. eyebrowsoffire commented on Jun 9, 2022

    @eyebrowsoffire
    Contributor

    flutter-team-archive/engine#33757 has now landed in main. I filed #105721 for the recipe updates, which is the next step in the process.

  21. keyonghan commented on Jun 15, 2022

    @keyonghan
    Contributor
  22. jmagman commented on Jun 16, 2022

    @jmagman
    MemberAuthor

    I believe this can be closed then?

  23. eyebrowsoffire commented on Jun 16, 2022

    @eyebrowsoffire
    Contributor

    I believe it can!

  24. zanderso commented on Jun 20, 2022

    @zanderso
    Member
  25. github-actions commented on Jul 4, 2022

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  26. locked as resolved and limited conversation to collaborators on Jul 4, 2022
  27. added
    P0Critical issues such as a build break or regression
    and removed on Jun 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

P0Critical issues such as a build break or regressionc: contributor-productivityTeam-specific productivity, code health, technical debt.platform-iosiOS applications specificallyplatform-webWeb applications specificallyteam-infraOwned by Infrastructure team

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions