Skip to main content
Docs
Blog Status Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

2026-01-05

emulator.wtf web app

  • Fixed: results page now correctly shows the count of flaky tests.

2025-12-16

gradle-plugin 1.0.3

  • Fixed: crash (java.lang.NullPointerException: Null gpuMode) when parsing test results for a failed test run.
  • Maintenance: ew-cli version bumped to 1.0.4.

2025-12-10

ew-cli 1.0.4

  • Fixed: explicit command-line proxy configuration (--proxy-host, etc) now has priority over http_proxy environment variables.
  • Fixed: when using proxy configuration from the environment the lower case variants (http_proxy) take priority over the upper case environment variables (HTTP_PROXY).

2025-12-09

ew-cli 1.0.3

  • Fixed: respect the values of no_proxy and http_proxy environment variables when doing connectivity checks.

gradle-plugin 1.0.2

  • New: added ListProperty<String> getNonProxyHosts() to the emulatorwtf {} dsl. Use it to explicitly bypass configured proxy settings for specific hosts.
  • Maintenance: ew-cli version bumped to 1.0.3.

2025-12-08

ew-cli 1.0.2

  • “New: emulator sessions now support the egress tunnel feature.”
  • “Fixed: the default device has been changed to model=Pixel7,version=30. This should’ve been the case already starting from 1.0.0.”

gradle-plugin 1.0.0

  • New: added support for Gradle-managed devices.
  • New: added support for generating baseline profiles via the baselineprofile plugin when using Gradle-managed devices.
  • Breaking: GitHub Tokenless authentication via passing GITHUB_TOKEN as the token is no longer supported. Please switch to OIDC authentication instead, read more here.
  • Breaking: video recording is now enabled by default.
  • Breaking: the default device is now Pixel7 30.
  • Breaking: GPU acceleration is now turned on by default.
  • Breaking: fixed pulled directories containing the root folder name twice.
  • Breaking: minimum supported Android Gradle Plugin version is now 8.1.
  • Breaking: minimum supported Gradle version is now 8.0.
  • Breaking: emulator.wtf Gradle plugin only works on JDK 17 and later.
  • Breaking: specifying devices has changed. Instead of devices you can now specify devices to run tests on with repeated device {} blocks.
  • Breaking: flakyTestRepeatMode argument now takes a FlakyRepeatMode enum value instead of a string.
  • Breaking: targeting tests uses now a targets {} block. Example usage to target a specific class:
    emulatorwtf {
      targets {
        testClass("com.example.MyTestClass")
      }
    }
    
  • Breaking: when applied to Android projects the emulator.wtf Gradle plugin now automatically adds the wtf.emulator:test-runtime-android dependency to the androidTestImplementation configuration to enable per-test video captures. You can disable this by adding wtf.emulator.addruntimedependency=false to your gradle.properties file.
  • Maintenance: ew-cli version bumped to 1.0.0-rc01.

We’ve made a bunch of breaking changes in 1.0.0. Read more about the 1.0.0 release and breaking changes.

gradle-plugin 1.0.1

  • New: added a new optional emulatorWtfConnectivityCheck task. Add wtf.emulator.connectivitycheck=true to your gradle.properties to register the task on any module that has the wtf.emulator.gradle plugin applied.
  • Maintenance: ew-cli version bumped to 1.0.2.

2025-11-24

Test execution

  • Fixed: fixed reporting shard timeouts where no tests were executed (e.g. test runner getting stuck before executing any tests).

2025-11-19

Emulators

Two outgoing IP addresses have been removed:

  • 65.109.17.177
  • 65.109.17.164

Two outgoing IP addresses have been added:

  • 157.180.105.69
  • 65.109.152.115

If you rely on outgoing IP addresses, we recommend automating them - we publish all the outgoing IP addresses both as JSON and as DNS records. Read more here.

2025-11-18

ew-cli 1.0.1

  • New: start-session command now supports –json flag for printing machine-readable info into stdout

2025-11-14

Breaking changes in v1.0.0

We’ve made a bunch of breaking changes in v1.0.0. Read more about the 1.0.0 release and breaking changes.

ew-cli 1.0.0

Changes since 1.0.0-rc01

  • New: emulator sessions are now automatically closed with 3 minute timeout when ew-cli is force killed or network connectivity is lost.

Changes since 0.12.6

  • New: summary.json output from ew-cli now includes test counts and first failing test information.
  • New: comma-separated ew-cli arguments can now use an alternative separator by prefixing the value with ^SEP^, i.e. --environment-variables '^;^foo=ab,cd;bar=baz' splits into foo=ab,cd and bar=baz. This can be used with all comma-separated arguments like --test-targets, --directories-to-pull, etc.
  • Breaking: ew-cli no longer supports GitHub Tokenless authentication via passing GITHUB_TOKEN as the token. Please switch to OIDC authentication instead, read more here.
  • Breaking: video recording is now enabled by default.
  • Breaking: the default device is now Pixel7 30.
  • Breaking: GPU acceleration is now turned on by default.
  • Breaking: fixed pulled directories containing the root folder name twice.
  • Breaking: switched to a more consistent test target parsing algorithm in both --test-targets and --test-targets-for-shard.

2025-11-11

emulator.wtf web app

  • New: added an option to force stop ongoing emulator sessions from the webapp

2025-11-07

Emulators

Four new outgoing IP addresses have been added:

  • 65.109.17.177
  • 65.109.17.164
  • 116.202.238.239
  • 168.119.95.36

If you rely on outgoing IP addresses we recommend automating them - we publish all the outgoing IP addresses both as JSON and as DNS records. Read more here.

2025-10-21

Breaking changes in v1.0.0-rc01

We’ve made a bunch of breaking changes in v1.0.0. Read more about the 1.0.0 release and breaking changes.

ew-cli 1.0.0-rc01

  • New: summary.json output from ew-cli now includes test counts and first failing test information.
  • New: comma-separated ew-cli arguments can now use an alternative separator by prefixing the value with ^SEP^, i.e. --environment-variables '^;^foo=ab,cd;bar=baz' splits into foo=ab,cd and bar=baz. This can be used with all comma-separated arguments like --test-targets, --directories-to-pull, etc.
  • Breaking: ew-cli no longer supports GitHub Tokenless authentication via passing GITHUB_TOKEN as the token. Please switch to OIDC authentication instead, read more here.
  • Breaking: video recording is now enabled by default.
  • Breaking: the default device is now Pixel7 30.
  • Breaking: GPU acceleration is now turned on by default.
  • Breaking: fixed pulled directories containing the root folder name twice.
  • Breaking: switched to a more consistent test target parsing algorithm in both --test-targets and --test-targets-for-shard.

gradle-plugin 1.0.0-rc01

  • New: Added support for Gradle-managed devices.
  • New: Added support for generating baseline profiles via the baselineprofile plugin when using Gradle-managed devices.
  • Breaking: GitHub Tokenless authentication via passing GITHUB_TOKEN as the token is no longer supported. Please switch to OIDC authentication instead, read more here.
  • Breaking: video recording is now enabled by default.
  • Breaking: the default device is now Pixel7 30.
  • Breaking: GPU acceleration is now turned on by default.
  • Breaking: fixed pulled directories containing the root folder name twice.
  • Breaking: minimum supported Android Gradle Plugin version is now 8.1.
  • Breaking: minimum supported Gradle version is now 8.0.
  • Breaking: emulator.wtf Gradle plugin only works on JDK 17 and later.
  • Breaking: specifying devices has changed. Instead of devices you can now specify devices to run tests on with repeated device {} blocks.
  • Breaking: flakyTestRepeatMode argument now takes a FlakyRepeatMode enum value instead of a string.
  • Breaking: targeting tests uses now a targets {} block. Example usage to target a specific class:
    emulatorwtf {
      targets {
        testClass("com.example.MyTestClass")
      }
    }
    
  • Breaking: when applied to Android projects the emulator.wtf Gradle plugin now automatically adds the wtf.emulator:test-runtime-android dependency to the androidTestImplementation configuration to enable per-test video captures. You can disable this by adding wtf.emulator.addruntimedependency=false to your gradle.properties file.
  • Maintenance: ew-cli version bumped to 1.0.0-rc01.

GitHub action emulator-wtf/run-tests@v1.0.0-rc01

  • Breaking: GitHub Tokenless authentication via passing GITHUB_TOKEN as the token is no longer supported. Please switch to OIDC authentication instead, read more here.
  • Breaking: video recording is now enabled by default.
  • Breaking: the default device is now Pixel7 30.
  • Breaking: GPU acceleration is now turned on by default.
  • Breaking: fixed pulled directories containing the root folder name twice.
  • Maintenance: default ew-cli version has been bumped to 1.0.0-rc01.

2025-10-17

emulator.wtf

  • Deprecated: Tokenless invoke using the GITHUB_TOKEN is now deprecated, please switch over to OIDC instead.
  • New: emulator.wtf now supports OIDC token authentication when used in GitHub.
    Head over to the OIDC configurations page in the emulator.wtf web app to get started.

OIDC configuration screenshot

gradle-plugin 0.19.4

  • New: the plugin now supports hardcoding DNS resolves via the dnsOverrides property.
  • Maintenance: bumped default ew-cli to 0.12.6.

GitHub action emulator-wtf/configure-credentials@v1.0.0

  • New: use OIDC authentication in GitHub Actions, read more here.

GitHub action emulator-wtf/run-tests@v0.9.11

  • New: api-token input is no longer required, for instance when using the emulator-wtf/configure-credentials@v1 GitHub action.
  • New: added inputs for test-runner-class, secret-environment-variables, dns-server, dns-override, egress-tunnel and egress-localhost-fwd-ip. Read more about these here.
  • Maintenance: bumped default ew-cli to 0.12.6.

2025-10-09

ew-cli 0.12.6

  • New: emulator sessions can now capture video recordings similar to test runs, use --record-video to start recording videos.
  • Fixed: improved stability of the egress tunnel feature by updating the dependencies within the exit node binary.

2025-09-12

Test execution

  • Fixed: using the egress tunnel with ew-cli 0.12.5 or later added a 20-second delay when running tests.

2025-09-02

Test execution

  • Fixed: timing out test cases were not properly reported as timeouts if orchestrator, coverage and test storage service were all enabled.
  • Fixed: specifying more shards than test cases caused empty shards to run all available test cases instead of none.

2025-08-04

emulator.wtf web app

  • Fixed: test failure explanation did not work for test-cases with extremely long logs.
  • Fixed: Other sign in options link was broken in some login forms.
  • Fixed: logging in with GitHub would display an error in addition to logging in.

2025-07-30

Emulators

  • Fixed: the --models output included API versions that were not fully rolled out yet.

emulator.wtf web app

  • Fixed: videos did not display correctly on the results web page.

2025-07-21

Test execution

  • Fixed: if a class was annotated with an @Ignore annotation there was a small chance a shard would fail with the No tests! error.

2025-07-18

Test execution

  • Fixed: in a previous release on 2025-07-17 we made a change affecting test runtime order within shards. While ideally this would have no effect we’ve rolled the change back and kept the old test execution order.

2025-07-17

Test execution

  • Fixed: tests no longer fail with AndroidJUnitRunner ran more tests than expected error when using the test storage service and targeting specific test classes.

2025-07-15

ew-cli 0.12.5

  • Improved: better upload performance when testing large apk files containing native libraries.
  • Fixed: there was a race condition where internet networking was unavailable for a few seconds when using the egress tunnel feature.

gradle-plugin 0.19.3

  • Improved: better upload performance when testing large apk files containing native libraries.
  • Improved: bumped default ew-cli version to 0.12.5.

Test execution

  • Fixed: tests with large apk files sometimes failed with a non-descriptive timeout message.
  • Fixed: some skipped tests were erroneously reported as successful instead of ignored in the test results view.

2025-07-03

emulator.wtf web app

  • Our LLM-powered test failure analysis got a noticeable upgrade, and it should now give more actionable insights.
Older changes »