This repository was archived by the owner on Feb 25, 2025. It is now read-only.
[flutter release + cherry pick] @alwaysThrows is deprecated. Return Never instead. (#39269)
#39274
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.
TLDR: this fixes the breakages in the web engine build. such as https://ci.chromium.org/ui/p/flutter/builders/prod/Linux%20Web%20Engine/15016/overview
long story:
Web failure
We are trying to land 8 engine cherry picks, but linux web engine was failing on the release branches with a deprecation warning
Casey pointed me to Zach on post submit failures. Zach added me to flutter web channel, and connected me with Yegor.
At first the error was thought to be a flake or a recipe version mismatch. Examining build history and recipe versions were fruitless.
The cherry picked engine pr doesn’t relate to the web failure, so initially the failure was suspected to be caused by dart changes on the release branch. And Zach connected us with Siva. we examined dart commits between dart main -> dev -> beta -> stable, and didn’t find any culprit.
In the mean time, Jackson proposed a fix PR #39269 and pointed to Sam’s change dart-lang/sdk@b1525bc. However, this idea was initially turned down because people believe the newest changes in dart should not make it into the flutter release branch
However, Yegor later pointed out that dart pub get would pick up an unpinned version of the meta package. in https://github.com/flutter/engine/blob/main/lib/web_ui/pubspec.yaml web ui picks up the newest meta package. And it was probably what happened in https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8790504714907691905/+/u/web_engine_analysis/stdout
The understandings brought us back to the solution of Jackson’s pr, and a fix forward on head, and then a cherry pick was deemed to be the solution.
It turned out that this failure was the same failure that caused the engine tree to be closed. And luci-broken blocked the fix. Godofredo helped with adding the label “warning: land on red to fix tree breakage”. And merged it into head.
I cherry picked it to stable branch.
Thanks Jackson, Yegor, Zach, Siva, Casey, Godofredo for the help!