Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

flutteractionsbot
Copy link

@flutteractionsbot flutteractionsbot commented Aug 8, 2024

This pull request is created by automatic cherry pick workflow
Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request.

Issue Link:

What is the link to the issue this cherry-pick is addressing?

Changelog Description:

Fixes the loading of CanvasKit in a way that avoids app crashes and timeout issues.

Impact Description:

When CanvasKit is downloaded from the network (not cached), there's a high likelihood that the app crashes and displays a blank screen.

Workaround:

If the browser cache is enabled, users can refresh the page to get CanvasKit from cache and avoid the issue.

Risk:

What is the risk level of this cherry-pick?

  • Low
  • Medium
  • High

Test Coverage:

Are you confident that your fix is well-tested by automated tests?

  • Yes
  • No

Validation Steps:

  • Run a sample flutter app using --web-renderer=canvaskit.
  • In Chrome's Network tab, check the Disable cache checkbox.
  • Reload the app a few times and make sure it's working and there are no errors in the console.

…er#53718)

Second attempt to reland flutter#52023

Fixes since the previous reland attempt:
* We need to pass the skwasm main JS URI when loading the module so that it can pass that along to the worker. Since the worker uses the workaround to allow a cross script worker, it has trouble locating the main JS URI in relation to itself in a way that actually works for dynamic imports, so passing it along fixes that issue.
* Some of the Google3 tests relied on the relative default canvaskit path. Dynamic module imports seems to not handle relative paths the way we expect, so we do our own URL resolution using the URL constructor before passing it into the dynamic import API. Also cleaned up some of the other relative pathing stuff that we do around the base URI. in flutter.js
@flutteractionsbot flutteractionsbot added the cp: review add the cp request to the review queue of release engineers label Aug 8, 2024
@flutteractionsbot
Copy link
Author

@mdebbar please fill out the PR description above, afterwards the release team will review this request.

@github-actions github-actions bot added the platform-web Code specifically for the web engine label Aug 8, 2024
@jezell
Copy link

jezell commented Aug 8, 2024

@kevmoo seems like this might also impact issues from #153077 #152995. Maybe closes them out as well?

@jezell
Copy link

jezell commented Aug 8, 2024

@kevmoo kevmoo requested a review from yjbanov August 9, 2024 22:26
@itsjustkevin itsjustkevin added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 14, 2024
@auto-submit auto-submit bot merged commit 46c417b into flutter:flutter-3.24-candidate.0 Aug 14, 2024
28 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
autosubmit Merge PR when tree becomes green via auto submit App cp: review add the cp request to the review queue of release engineers platform-web Code specifically for the web engine
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy