# 2.9.0

Published articles for 2.9.0.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Maestro CLI 2.10.0: launch a specific Android system image

DevFeed: [Maestro CLI 2.10.0: launch a specific Android system image](<https://devfeed.tech/articles/maestro-cli-2-10-0-launch-a-specific-android-system-image-22900.md>)

Original publisher: [Read original article](<https://maestro.dev/blog/maestro-cli-2-10-0>)

Author: Manu Armani

Published: 2026-09-09T17:00:00Z

Content type: release

Language: en

Sources: [mobile.dev - Medium](<https://devfeed.tech/sources/mobile-dev-medium.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [2-9-0](<https://devfeed.tech/tags/2-9-0.md>), [android](<https://devfeed.tech/tags/android.md>), [cli](<https://devfeed.tech/tags/cli.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [google-play](<https://devfeed.tech/tags/google-play.md>)

### AI overview

Maestro CLI 2.10.0 adds support for specifying a full Android system image path with --device-os, allowing runs to boot an exact image locally or on Maestro Cloud. The release also documents supported cloud images, local image installation, ABI requirements, and compatibility with version-shaped values from 2.9.0.

### Source excerpt

Maestro CLI 2.10.0 lets --device-os take a full Android system image path, so a run boots the exact image you name, locally or on Maestro Cloud.

## Maestro CLI 2.9.0: test light and dark mode in one flow

DevFeed: [Maestro CLI 2.9.0: test light and dark mode in one flow](<https://devfeed.tech/articles/maestro-cli-2-9-0-test-light-and-dark-mode-in-one-flow-22904.md>)

Original publisher: [Read original article](<https://maestro.dev/blog/maestro-cli-2-9-0>)

Author: Manu Armani

Published: 2026-08-31T15:00:00Z

Content type: release

Language: en

Sources: [mobile.dev - Medium](<https://devfeed.tech/sources/mobile-dev-medium.md>)

Topics: [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [WebView](<https://devfeed.tech/topics/webview.md>), [Web](<https://devfeed.tech/topics/web.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>), [YAML](<https://devfeed.tech/topics/yaml.md>)

Tags: [2-9-0](<https://devfeed.tech/tags/2-9-0.md>), [android](<https://devfeed.tech/tags/android.md>), [angular](<https://devfeed.tech/tags/angular.md>), [chrome](<https://devfeed.tech/tags/chrome.md>), [cli](<https://devfeed.tech/tags/cli.md>), [dark-mode](<https://devfeed.tech/tags/dark-mode.md>), [ios](<https://devfeed.tech/tags/ios.md>), [react](<https://devfeed.tech/tags/react.md>), [release](<https://devfeed.tech/tags/release.md>), [vue](<https://devfeed.tech/tags/vue.md>), [web](<https://devfeed.tech/tags/web.md>), [webview](<https://devfeed.tech/tags/webview.md>), [yaml](<https://devfeed.tech/tags/yaml.md>)

### AI overview

Maestro CLI 2.9.0 adds commands for testing light and dark themes within a single flow across iOS, Android, and Web. It also introduces negation globs for YAML files and improves Android WebView inspection, Chrome Web flows, Android reliability, and upload-status polling.

### Source excerpt

Maestro CLI 2.9.0 adds dark-mode commands for iOS, Android, and Web, negation globs in config.yaml, and reliability work for Android WebViews and modern Chrome.

## Apache Airflow 2.9.0: Dataset and UI Improvements

DevFeed: [Apache Airflow 2.9.0: Dataset and UI Improvements](<https://devfeed.tech/articles/apache-airflow-2-9-0-dataset-and-ui-improvements-32539.md>)

Original publisher: [Read original article](<https://airflow.apache.org/blog/airflow-2.9.0/>)

Author: Apache Airflow

Published: 2024-04-08T00:00:00Z

Content type: release

Language: en

Sources: [Apache Airflow Blog](<https://devfeed.tech/sources/apache-airflow-blog.md>)

Topics: [airflow](<https://devfeed.tech/topics/airflow.md>), [dataset](<https://devfeed.tech/topics/dataset.md>), [datasets](<https://devfeed.tech/topics/datasets.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Release notes](<https://devfeed.tech/topics/release-notes.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [2-9-0](<https://devfeed.tech/tags/2-9-0.md>), [airflow](<https://devfeed.tech/tags/airflow.md>), [apache-airflow](<https://devfeed.tech/tags/apache-airflow.md>), [dataset](<https://devfeed.tech/tags/dataset.md>), [datasets](<https://devfeed.tech/tags/datasets.md>), [python](<https://devfeed.tech/tags/python.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [scheduling](<https://devfeed.tech/tags/scheduling.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

Apache Airflow 2.9.0 introduces expanded data-aware scheduling with logical OR and arbitrary AND/OR combinations, plus a timetable combining dataset events with time-based schedules. It also adds dataset event REST API endpoints, dataset UI enhancements, Python 3.12 support with Pendulum 3, and custom names for dynamically mapped tasks.

### Source excerpt

I'm happy to announce that Apache Airflow 2.9.0 has been released! This time around we have new features for data-aware scheduling and a bunch of UI-related improvements. Apache Airflow 2.9.0 contains over 550 commits, which include 38 new features, 70 improvements, 31 bug fixes, and 18 documentation changes. Details: 📦 PyPI: https://pypi.org/project/apache-airflow/2.9.0/ 📚 Docs: https://airflow.apache.org/docs/apache-airflow/2.9.0/ 🛠 Release Notes: https://airflow.apache.org/docs/apache-airflow/2.9.0/release_notes.html 🐳 Docker Image: "docker pull apache/airflow:2.9.0" 🚏 Constraints: https://github.com/apache/airflow/tree/constraints-2.9.0 Airflow 2.9.0 is also the first release that supports Python 3.12. However, Pendulum 2 does not support Python 3.12, so you'll need to use Pendulum 3 if you upgrade to Python 3.12. New data-aware scheduling options Logical operators and conditional expressions for DAG scheduling When Datasets were added in Airflow 2.4, DAGs only had scheduling support for logical AND combinations of Datasets. Simply, you could schedule against more than one Dataset, but a DAG run would only be created once all the Datasets were updated after the last run. Now in Airflow 2.9, we support logical OR and even arbitrary combinations of AND and OR. As an example, you can schedule a DAG whenever dataset_1 or dataset_2 are updated : with DAG(schedule=(dataset_1 | dataset_2), ...): ... You can have arbitrary combinations: with DAG(schedule=((dataset_1 | dataset_2) & dataset_3), ...): ... You can read more about this new functionality in the data-aware scheduling docs. Combining Dataset and Time-Based Schedules Airflow 2.9 comes with a new timetable, DatasetOrTimeSchedule, that allows you to schedule DAGs based on both dataset events and a timetable. Now you have the best of both worlds. For example, to run whenever dataset_1 updates and at midnight UTC: with DAG( schedule=DatasetOrTimeSchedule( timetable=CronTriggerTimetable("0 0 * * *", timezone="UTC"),

## How to use Wokwi Simulator with Espressif-IDE

DevFeed: [How to use Wokwi Simulator with Espressif-IDE](<https://devfeed.tech/articles/how-to-use-wokwi-simulator-with-espressif-ide-13885.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/how-to-use-wokwi-simulator-with-espressif-ide/>)

Author: John Lee

Published: 2023-04-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [Espressif IDE](<https://devfeed.tech/topics/espressif-ide.md>), [Wokwi](<https://devfeed.tech/topics/wokwi.md>), [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>), [Espressif](<https://devfeed.tech/topics/espressif.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>), [browser](<https://devfeed.tech/topics/browser.md>), [monitor](<https://devfeed.tech/topics/monitor.md>), [WebSocket](<https://devfeed.tech/topics/websocket.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [2-9-0](<https://devfeed.tech/tags/2-9-0.md>), [blog](<https://devfeed.tech/tags/blog.md>), [browser](<https://devfeed.tech/tags/browser.md>), [development](<https://devfeed.tech/tags/development.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [espressif-ide](<https://devfeed.tech/tags/espressif-ide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [iot](<https://devfeed.tech/tags/iot.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [simulator](<https://devfeed.tech/tags/simulator.md>), [websocket](<https://devfeed.tech/tags/websocket.md>), [wokwi](<https://devfeed.tech/tags/wokwi.md>)

### AI overview

This tutorial explains how Espressif-IDE 2.9.0 integrates with the Wokwi online electronics simulator. The integration communicates with the Wokwi Server over WebSocket, flashes the project binary to a simulator selected by chip target and project ID, and displays serial monitor output in the IDE console.

### Source excerpt

The Espressif IDE version 2.9.0 has recently been released, introducing a new feature for the Espressif community who want to use the Wokwi simulator directly from within the IDE. What is Wokwi? Wokwi is an online electronics simulator that allows users to simulate various boards, parts, and sensors, including the ESP32. With a browser-based interface, Wokwi offers a simple and intuitive way to start coding your next IoT project within seconds.