diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d625433e19..99519712b2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,8 +24,11 @@ docs/releases/Hotfix-Documentation-Best-Practices.md INTERNAL NOTE --> +## Flutter 3.29 Changes -## Flutter 3.29.1 Changes +### [3.29.2](https://github.com/flutter/flutter/releases/tag/3.29.2) + +- [flutter/162198](https://github.com/flutter/flutter/issues/162198) Fixes double-download of canvaskit.wasm ### [3.29.1](https://github.com/flutter/flutter/releases/tag/3.29.1) @@ -49,8 +52,6 @@ glyphs. - [flutter/163261](https://github.com/flutter/flutter/pull/163261) - Fixes for Impeller DrawVertices issues involving snapshots with empty sizes - [flutter/163672](https://github.com/flutter/flutter/pull/163672) - Check for tracked engine.version before overriding -## Flutter 3.29 Changes - ### [3.29.0](https://github.com/flutter/flutter/releases/tag/3.29.0) Initial stable release. diff --git a/engine/src/build/config/compiler/BUILD.gn b/engine/src/build/config/compiler/BUILD.gn index 61e54bb04b7..d711afb082e 100644 --- a/engine/src/build/config/compiler/BUILD.gn +++ b/engine/src/build/config/compiler/BUILD.gn @@ -930,6 +930,14 @@ config("no_optimize") { cflags += [ "-fomit-frame-pointer" ] } ldflags = common_optimize_on_ldflags + } else if (is_wasm) { + # On WASM we don't want to fully deoptimize the debug build because the + # compiled binary will have some functions with too many local variables + # and Chrome will reject it. + cflags = [ + "-O1", + ] + ldflags = common_optimize_on_ldflags } else { cflags = [ "-O0" ] } diff --git a/engine/src/flutter/skia/modules/canvaskit/BUILD.gn b/engine/src/flutter/skia/modules/canvaskit/BUILD.gn index 1a24c8ff2bc..6d411511c33 100644 --- a/engine/src/flutter/skia/modules/canvaskit/BUILD.gn +++ b/engine/src/flutter/skia/modules/canvaskit/BUILD.gn @@ -62,8 +62,7 @@ canvaskit_wasm_lib("canvaskit") { ldflags = [] if (is_debug) { ldflags += [ - "-O0", - "-sDEMANGLE_SUPPORT=1", + "-O1", "-sASSERTIONS=1", "-sGL_ASSERTIONS=1", "-g3", @@ -111,14 +110,14 @@ canvaskit_wasm_lib("canvaskit") { "--bind", "--no-entry", "--pre-js", + rebase_path("$_skia_root/modules/canvaskit/util.js"), + "--pre-js", rebase_path("$_skia_root/modules/canvaskit/preamble.js"), "--pre-js", rebase_path("$_skia_root/modules/canvaskit/color.js"), "--pre-js", rebase_path("$_skia_root/modules/canvaskit/memory.js"), "--pre-js", - rebase_path("$_skia_root/modules/canvaskit/util.js"), - "--pre-js", rebase_path("$_skia_root/modules/canvaskit/interface.js"), ] @@ -165,7 +164,7 @@ canvaskit_wasm_lib("canvaskit") { "-sEXPORT_NAME=CanvasKitInit", "-sEXPORTED_FUNCTIONS=[_malloc,_free]", "-sEXPORTED_RUNTIME_METHODS=HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPF32,HEAPU32,HEAPF64", - "-sINCOMING_MODULE_JS_API=onRuntimeInitialized", + "-sINCOMING_MODULE_JS_API=[instantiateWasm,onRuntimeInitialized,noExitRuntime]", "-sFORCE_FILESYSTEM=0", "-sFILESYSTEM=0", "-sMODULARIZE",