This doc describes how to bump the dependencies of flutter-embedder.git.
To update flutter-embedder.git's dependencies, you need the Flutter Engine source code to build updated Flutter Engine artifacts for flutter-embedder.git to use.
You will need to fork flutter/engine
into a GitHub account.
Fetch the Flutter Engine code into $FUCHSIA_EMBEDDER_DIR/third_party/engine/src
:
$FUCHSIA_EMBEDDER_DIR/scripts/setup_engine.sh --github-username <your_username>
Running an example in flutter-embedder.git has two sensitive dependencies:
The Fuchsia SDK, which is used by flutter-embedder.git, Flutter Engine and the Dart SDK.
The Dart SDK, which is used by Flutter Engine and the Flutter Framework.
As a result, we update the flutter-embedder.git's dependencies on the Fuchsia SDK, Flutter Framework and Flutter Engine at the same time to keep:
flutter-embedder.git and Flutter Engine using roughly the same version of the Fuchsia SDK, and
Flutter Engine and Flutter Framework using the exact same version of the Dart SDK.
This can be done by running the following command:
$FUCHSIA_EMBEDDER_DIR/scripts/update_dependencies.sh
After updating the SDK, you should update your product bundle (ffx product-bundle get workstation_eng.qemu-x64
) and restart any running emulators and package servers as old images may be incompatible with the updated SDK. To do this automatically, run:
$FUCHSIA_EMBEDDER_DIR/scripts/update_dependencies.sh --cleanup
update_dependencies.sh
should ensure that flutter-embedder.git and Flutter Engine use the exact same version of the Fuchsia SDK instead of roughly the same version.