Maestro CLI 2.11.0: test on Android 17

Manu Armani

Maestro CLI 2.11.0

Android 17 (API 37) is now supported, locally and on Maestro Cloud.

  • Locally. maestro start-device --platform android --device-os android-37.1 just works. Google changed how system images are published for this release (minor-versioned, 16 KB page-size only), and Maestro finds the right image for you, or names the exact --device-os to use.
  • On Maestro Cloud. android-37.1 is live on pixel_2, pixel_6, pixel_6_stock, pixel_9, pixel_9_pro_xl and pixel_tablet. Run your flows on it with maestro cloud --device-os android-37.1. Update to 2.11.0 first.

Also in this release

  • Video scrubbing on Maestro Cloud highlights the correct step. Screen recordings record their real start time in the artifact manifest, so the video and commands.json line up and scrubbing highlights the step without any time offset. Web recordings also play back at real speed.
  • maestro cloud <flow.yaml> uploads from Windows when the flow uses runFlow with complex paths.
  • Connected physical iPhones aren’t listed as devices. Targeting one exits immediately with “Physical iOS devices are not yet supported”. Maestro supports iOS simulators today.
  • Two YAML behaviours changed, and both can affect existing flows. optional: true works on setDarkMode and setAirplaneMode, so a step that can’t run is skipped and the flow continues; both commands accept only enabled or disabled, so a typo fails at parse time. And start and end in an element selector are rejected: they belong to swipe and were silently ignored for other actions, so remove them from any tapOn.

A Maestro Studio release with these changes will follow.


Update to 2.11.0

curl -fsSL "https://get.maestro.mobile.dev" | bash

The update guide has steps for macOS, Windows, and Homebrew.

Share