Create a Patch
Once you have published a release of your app, you can push updates using one of
the shorebird patch commands.
This will do several things:
- Builds the artifacts for the update.
- Downloads the corresponding release artifacts.
- Generates a patch using the diff between the release and the current changes.
- Uploads the patch artifacts to the Shorebird backend
- Promotes the patch to the stable channel.
Example output:
By default, this uses the release version from the compiled artifact. If you
want to target the latest release version, you can use
--release-version latest. For example:
If you want to patch a different release version, you can use the
--release-version option. For example:
If your application supports flavors or multiple release targets, you can
specify the flavor and target using the --flavor and --target options:
Patch Performance
Section titled “Patch Performance”Android
Section titled “Android”Patching an application on Android has no effect on performance.
iOS and macOS
Section titled “iOS and macOS”Patching an application on iOS and macOS typically does not affect application performance. However the patching mechanism on iOS and macOS is different from Android. Unchanged code runs as normal (on the CPU), changed (or added) code will run in a Dart interpreter (slower than the CPU). Typically this change is undetectable, but if you are changing particularly performance-sensitive Dart code (e.g. code for processing images, or large data) you may see a performance difference after patching.
You can always test your patches before sending them to users using by staging patches.
If you ever see unexpected performance changes when patching, please contact us we would love to help!