From dd3cd0324dda36c5694edb86679623415edd9023 Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Thu, 13 Aug 2026 12:16:54 -0700 Subject: [PATCH 1/8] update ci chrome version to version:145.0.7632.117 --- .ci.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.ci.yaml b/.ci.yaml index 714e25471f3..52c1f652128 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -73,7 +73,7 @@ platform_properties: device_type: none dependencies: >- [ - {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"} + {"dependency": "chrome_and_driver", "version": "version:145.0.7632.117"} ] windows_arm64: properties: @@ -321,7 +321,7 @@ targets: {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"}, {"dependency": "cmake", "version": "build_id:8787856497187628321"}, {"dependency": "ninja", "version": "version:1.9.0"}, - {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"} + {"dependency": "chrome_and_driver", "version": "version:145.0.7632.117"} ] channel: master @@ -340,7 +340,7 @@ targets: {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"}, {"dependency": "cmake", "version": "build_id:8787856497187628321"}, {"dependency": "ninja", "version": "version:1.9.0"}, - {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"} + {"dependency": "chrome_and_driver", "version": "version:145.0.7632.117"} ] channel: stable @@ -769,7 +769,7 @@ targets: # Install Chrome as a default handler for schemes for url_launcher. dependencies: >- [ - {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"} + {"dependency": "chrome_and_driver", "version": "version:145.0.7632.117"} ] - name: Linux_desktop platform_tests stable @@ -783,7 +783,7 @@ targets: # Install Chrome as a default handler for schemes for url_launcher. dependencies: >- [ - {"dependency": "chrome_and_driver", "version": "version:125.0.6422.141"} + {"dependency": "chrome_and_driver", "version": "version:145.0.7632.117"} ] ### iOS+macOS tasks ### From ad03d1157aa74d1895bf7c698de3833bbe31e1e2 Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Thu, 13 Aug 2026 16:46:40 -0700 Subject: [PATCH 2/8] make test less precise --- .../integration_test/video_player_test.dart | 2 +- .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../video_player/example/ios/Podfile | 43 +++++++++++++++++++ .../macos/Flutter/Flutter-Debug.xcconfig | 1 + .../macos/Flutter/Flutter-Release.xcconfig | 1 + .../video_player/example/macos/Podfile | 42 ++++++++++++++++++ .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../example/ios/Podfile | 43 +++++++++++++++++++ .../macos/Flutter/Flutter-Debug.xcconfig | 1 + .../macos/Flutter/Flutter-Release.xcconfig | 1 + .../example/macos/Podfile | 42 ++++++++++++++++++ 13 files changed, 179 insertions(+), 1 deletion(-) create mode 100644 packages/video_player/video_player/example/ios/Podfile create mode 100644 packages/video_player/video_player/example/macos/Podfile create mode 100644 packages/video_player/video_player_avfoundation/example/ios/Podfile create mode 100644 packages/video_player/video_player_avfoundation/example/macos/Podfile diff --git a/packages/video_player/video_player/example/integration_test/video_player_test.dart b/packages/video_player/video_player/example/integration_test/video_player_test.dart index b3b99c72728..ca20b053441 100644 --- a/packages/video_player/video_player/example/integration_test/video_player_test.dart +++ b/packages/video_player/video_player/example/integration_test/video_player_test.dart @@ -306,7 +306,7 @@ void main() { // Due to the duration calculation accuracy between platforms, // the milliseconds on Web will be a slightly different from natives. // The audio was made with 44100 Hz, 192 Kbps CBR, and 32 bits. - expect(controller.value.duration, const Duration(seconds: 5, milliseconds: kIsWeb ? 42 : 41)); + expect(controller.value.duration.inMilliseconds, closeTo(5000, 50)); }); testWidgets('can be played', (WidgetTester tester) async { diff --git a/packages/video_player/video_player/example/ios/Flutter/Debug.xcconfig b/packages/video_player/video_player/example/ios/Flutter/Debug.xcconfig index 592ceee85b8..ec97fc6f302 100644 --- a/packages/video_player/video_player/example/ios/Flutter/Debug.xcconfig +++ b/packages/video_player/video_player/example/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/packages/video_player/video_player/example/ios/Flutter/Release.xcconfig b/packages/video_player/video_player/example/ios/Flutter/Release.xcconfig index 592ceee85b8..c4855bfe200 100644 --- a/packages/video_player/video_player/example/ios/Flutter/Release.xcconfig +++ b/packages/video_player/video_player/example/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/packages/video_player/video_player/example/ios/Podfile b/packages/video_player/video_player/example/ios/Podfile new file mode 100644 index 00000000000..620e46eba60 --- /dev/null +++ b/packages/video_player/video_player/example/ios/Podfile @@ -0,0 +1,43 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '13.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/packages/video_player/video_player/example/macos/Flutter/Flutter-Debug.xcconfig b/packages/video_player/video_player/example/macos/Flutter/Flutter-Debug.xcconfig index c2efd0b608b..4b81f9b2d20 100644 --- a/packages/video_player/video_player/example/macos/Flutter/Flutter-Debug.xcconfig +++ b/packages/video_player/video_player/example/macos/Flutter/Flutter-Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/packages/video_player/video_player/example/macos/Flutter/Flutter-Release.xcconfig b/packages/video_player/video_player/example/macos/Flutter/Flutter-Release.xcconfig index c2efd0b608b..5caa9d1579e 100644 --- a/packages/video_player/video_player/example/macos/Flutter/Flutter-Release.xcconfig +++ b/packages/video_player/video_player/example/macos/Flutter/Flutter-Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/packages/video_player/video_player/example/macos/Podfile b/packages/video_player/video_player/example/macos/Podfile new file mode 100644 index 00000000000..ff5ddb3b8bd --- /dev/null +++ b/packages/video_player/video_player/example/macos/Podfile @@ -0,0 +1,42 @@ +platform :osx, '10.15' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + end +end diff --git a/packages/video_player/video_player_avfoundation/example/ios/Flutter/Debug.xcconfig b/packages/video_player/video_player_avfoundation/example/ios/Flutter/Debug.xcconfig index 592ceee85b8..ec97fc6f302 100644 --- a/packages/video_player/video_player_avfoundation/example/ios/Flutter/Debug.xcconfig +++ b/packages/video_player/video_player_avfoundation/example/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/packages/video_player/video_player_avfoundation/example/ios/Flutter/Release.xcconfig b/packages/video_player/video_player_avfoundation/example/ios/Flutter/Release.xcconfig index 592ceee85b8..c4855bfe200 100644 --- a/packages/video_player/video_player_avfoundation/example/ios/Flutter/Release.xcconfig +++ b/packages/video_player/video_player_avfoundation/example/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/packages/video_player/video_player_avfoundation/example/ios/Podfile b/packages/video_player/video_player_avfoundation/example/ios/Podfile new file mode 100644 index 00000000000..620e46eba60 --- /dev/null +++ b/packages/video_player/video_player_avfoundation/example/ios/Podfile @@ -0,0 +1,43 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '13.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Debug.xcconfig b/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Debug.xcconfig index c2efd0b608b..4b81f9b2d20 100644 --- a/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Debug.xcconfig +++ b/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Release.xcconfig b/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Release.xcconfig index c2efd0b608b..5caa9d1579e 100644 --- a/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Release.xcconfig +++ b/packages/video_player/video_player_avfoundation/example/macos/Flutter/Flutter-Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/packages/video_player/video_player_avfoundation/example/macos/Podfile b/packages/video_player/video_player_avfoundation/example/macos/Podfile new file mode 100644 index 00000000000..ff5ddb3b8bd --- /dev/null +++ b/packages/video_player/video_player_avfoundation/example/macos/Podfile @@ -0,0 +1,42 @@ +platform :osx, '10.15' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + end +end From 3a87753c9611115c9ae80e43a0ed84cc91c5b2e0 Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Thu, 13 Aug 2026 17:35:38 -0700 Subject: [PATCH 3/8] Removed the non-existent RunnerTests target blocks from example --- packages/video_player/video_player/example/ios/Podfile | 3 --- packages/video_player/video_player/example/macos/Podfile | 3 --- 2 files changed, 6 deletions(-) diff --git a/packages/video_player/video_player/example/ios/Podfile b/packages/video_player/video_player/example/ios/Podfile index 620e46eba60..17adeb14132 100644 --- a/packages/video_player/video_player/example/ios/Podfile +++ b/packages/video_player/video_player/example/ios/Podfile @@ -31,9 +31,6 @@ target 'Runner' do use_frameworks! flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) - target 'RunnerTests' do - inherit! :search_paths - end end post_install do |installer| diff --git a/packages/video_player/video_player/example/macos/Podfile b/packages/video_player/video_player/example/macos/Podfile index ff5ddb3b8bd..66f6172bbb3 100644 --- a/packages/video_player/video_player/example/macos/Podfile +++ b/packages/video_player/video_player/example/macos/Podfile @@ -30,9 +30,6 @@ target 'Runner' do use_frameworks! flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) - target 'RunnerTests' do - inherit! :search_paths - end end post_install do |installer| From fd27dd4695ba4f3247cf9d1fd0d1b438ab702099 Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Fri, 14 Aug 2026 14:25:13 -0700 Subject: [PATCH 4/8] attempt to shard --- .ci.yaml | 25 +++++++++++++++++++ .../web_platform_tests_material_ui.yaml | 16 ++++++++++++ .../web_platform_tests_material_ui_wasm.yaml | 17 +++++++++++++ script/configs/exclude_integration_web.yaml | 3 +++ 4 files changed, 61 insertions(+) create mode 100644 .ci/targets/web_platform_tests_material_ui.yaml create mode 100644 .ci/targets/web_platform_tests_material_ui_wasm.yaml diff --git a/.ci.yaml b/.ci.yaml index 52c1f652128..520b3fd076a 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -685,6 +685,14 @@ targets: channel: master package_sharding: "--shardIndex 2 --shardCount 3" + - name: Linux_web web_platform_tests_material_ui master + recipe: packages/packages + timeout: 90 + properties: + target_file: web_platform_tests_material_ui.yaml + version_file: flutter_master.version + channel: master + # Wasm integration tests in master - name: Linux_web web_platform_tests_wasm_shard_1 master recipe: packages/packages @@ -713,6 +721,14 @@ targets: channel: master package_sharding: "--shardIndex 2 --shardCount 3" + - name: Linux_web web_platform_tests_material_ui_wasm master + recipe: packages/packages + timeout: 90 + properties: + target_file: web_platform_tests_material_ui_wasm.yaml + version_file: flutter_master.version + channel: master + # JS integration tests in stable - name: Linux_web web_platform_tests_shard_1 stable recipe: packages/packages @@ -741,6 +757,15 @@ targets: channel: stable package_sharding: "--shardIndex 2 --shardCount 3" + - name: Linux_web web_platform_tests_material_ui stable + recipe: packages/packages + timeout: 90 + properties: + target_file: web_platform_tests_material_ui.yaml + version_file: flutter_stable.version + channel: stable + + ### Linux desktop tasks - name: Linux_desktop build_all_packages master recipe: packages/packages diff --git a/.ci/targets/web_platform_tests_material_ui.yaml b/.ci/targets/web_platform_tests_material_ui.yaml new file mode 100644 index 00000000000..ca203a755bc --- /dev/null +++ b/.ci/targets/web_platform_tests_material_ui.yaml @@ -0,0 +1,16 @@ +tasks: + - name: prepare tool + script: .ci/scripts/prepare_tool.sh + infra_step: true # Note infra steps failing prevents "always" from running. + - name: download Dart deps + script: .ci/scripts/tool_runner.sh + args: ["fetch-deps", "--web", "--supporting-target-platforms-only"] + infra_step: true + - name: drive examples + script: .ci/scripts/tool_runner.sh + args: [ + "drive-examples", + "--web", + "--run-chromedriver", + "--packages=material_ui", + ] diff --git a/.ci/targets/web_platform_tests_material_ui_wasm.yaml b/.ci/targets/web_platform_tests_material_ui_wasm.yaml new file mode 100644 index 00000000000..2a26e7c8751 --- /dev/null +++ b/.ci/targets/web_platform_tests_material_ui_wasm.yaml @@ -0,0 +1,17 @@ +tasks: + - name: prepare tool + script: .ci/scripts/prepare_tool.sh + infra_step: true # Note infra steps failing prevents "always" from running. + - name: download Dart deps + script: .ci/scripts/tool_runner.sh + args: ["fetch-deps", "--web", "--supporting-target-platforms-only"] + infra_step: true + - name: drive examples + script: .ci/scripts/tool_runner.sh + args: [ + "drive-examples", + "--web", + "--wasm", + "--run-chromedriver", + "--packages=material_ui", + ] diff --git a/script/configs/exclude_integration_web.yaml b/script/configs/exclude_integration_web.yaml index 8dbdd61b8d4..cafa68aa54d 100644 --- a/script/configs/exclude_integration_web.yaml +++ b/script/configs/exclude_integration_web.yaml @@ -2,3 +2,6 @@ - file_selector # Waiting on https://github.com/flutter/flutter/issues/145149 - google_maps_flutter/google_maps_flutter +# Moved to its own dedicated shard due to long test duration +- material_ui + From b13c76163c93bd6c51ac5944f600475fd6ee306f Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Fri, 14 Aug 2026 16:06:16 -0700 Subject: [PATCH 5/8] bring up --- .ci.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.ci.yaml b/.ci.yaml index 520b3fd076a..9a1e2110480 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -687,6 +687,7 @@ targets: - name: Linux_web web_platform_tests_material_ui master recipe: packages/packages + bringup: true timeout: 90 properties: target_file: web_platform_tests_material_ui.yaml @@ -723,6 +724,7 @@ targets: - name: Linux_web web_platform_tests_material_ui_wasm master recipe: packages/packages + bringup: true timeout: 90 properties: target_file: web_platform_tests_material_ui_wasm.yaml @@ -759,6 +761,7 @@ targets: - name: Linux_web web_platform_tests_material_ui stable recipe: packages/packages + bringup: true timeout: 90 properties: target_file: web_platform_tests_material_ui.yaml From ae555c7f3420a7c00571cd1e2102d2553f91d409 Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Fri, 14 Aug 2026 18:28:28 -0700 Subject: [PATCH 6/8] more shard --- .ci.yaml | 28 +++++++++++++++++++ .ci/targets/web_dart_unit_tests.yaml | 3 +- .../web_dart_unit_tests_material_ui.yaml | 11 ++++++++ .../web_dart_unit_tests_material_ui_wasm.yaml | 12 ++++++++ .ci/targets/web_dart_unit_tests_wasm.yaml | 3 +- script/configs/exclude_web_unit_tests.yaml | 2 ++ 6 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 .ci/targets/web_dart_unit_tests_material_ui.yaml create mode 100644 .ci/targets/web_dart_unit_tests_material_ui_wasm.yaml create mode 100644 script/configs/exclude_web_unit_tests.yaml diff --git a/.ci.yaml b/.ci.yaml index 9a1e2110480..b8225c1d0a8 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -209,6 +209,15 @@ targets: version_file: flutter_master.version package_sharding: "--shardIndex 2 --shardCount 3" + - name: Linux_web web_dart_unit_test_material_ui master + recipe: packages/packages + bringup: true + timeout: 90 + properties: + target_file: web_dart_unit_tests_material_ui.yaml + channel: master + version_file: flutter_master.version + - name: Linux_web web_dart_unit_test_shard_1 stable recipe: packages/packages timeout: 60 @@ -236,6 +245,15 @@ targets: version_file: flutter_stable.version package_sharding: "--shardIndex 2 --shardCount 3" + - name: Linux_web web_dart_unit_test_material_ui stable + recipe: packages/packages + bringup: true + timeout: 90 + properties: + target_file: web_dart_unit_tests_material_ui.yaml + channel: stable + version_file: flutter_stable.version + # Wasm unit tests in master # TODO(stuartmorgan): Switch to testing wasm on master and stable and non-wasm # only on master if/when wasm builds become the default on stable; see @@ -259,6 +277,16 @@ targets: version_file: flutter_master.version package_sharding: "--shardIndex 1 --shardCount 2" + - name: Linux_web web_dart_unit_test_material_ui_wasm master + recipe: packages/packages + bringup: true + timeout: 90 + properties: + target_file: web_dart_unit_tests_material_ui_wasm.yaml + channel: master + version_file: flutter_master.version + + - name: Linux analyze master recipe: packages/packages timeout: 30 diff --git a/.ci/targets/web_dart_unit_tests.yaml b/.ci/targets/web_dart_unit_tests.yaml index 16cdf1771bb..60b84133119 100644 --- a/.ci/targets/web_dart_unit_tests.yaml +++ b/.ci/targets/web_dart_unit_tests.yaml @@ -7,5 +7,6 @@ tasks: args: [ "dart-test", "--platform=chrome", - "--exclude=script/configs/dart_unit_tests_exceptions.yaml" + "--exclude=script/configs/dart_unit_tests_exceptions.yaml", + "--exclude=script/configs/exclude_web_unit_tests.yaml" ] diff --git a/.ci/targets/web_dart_unit_tests_material_ui.yaml b/.ci/targets/web_dart_unit_tests_material_ui.yaml new file mode 100644 index 00000000000..b1d505b03a6 --- /dev/null +++ b/.ci/targets/web_dart_unit_tests_material_ui.yaml @@ -0,0 +1,11 @@ +tasks: + - name: prepare tool + script: .ci/scripts/prepare_tool.sh + infra_step: true # Note infra steps failing prevents "always" from running. + - name: Dart unit tests - web (material_ui) + script: .ci/scripts/tool_runner.sh + args: [ + "dart-test", + "--platform=chrome", + "--packages=material_ui" + ] diff --git a/.ci/targets/web_dart_unit_tests_material_ui_wasm.yaml b/.ci/targets/web_dart_unit_tests_material_ui_wasm.yaml new file mode 100644 index 00000000000..7e5b17fca93 --- /dev/null +++ b/.ci/targets/web_dart_unit_tests_material_ui_wasm.yaml @@ -0,0 +1,12 @@ +tasks: + - name: prepare tool + script: .ci/scripts/prepare_tool.sh + infra_step: true # Note infra steps failing prevents "always" from running. + - name: Dart unit tests - web wasm (material_ui) + script: .ci/scripts/tool_runner.sh + args: [ + "dart-test", + "--platform=chrome", + "--wasm", + "--packages=material_ui" + ] diff --git a/.ci/targets/web_dart_unit_tests_wasm.yaml b/.ci/targets/web_dart_unit_tests_wasm.yaml index a5a6eeeddf0..67cb833b91a 100644 --- a/.ci/targets/web_dart_unit_tests_wasm.yaml +++ b/.ci/targets/web_dart_unit_tests_wasm.yaml @@ -9,5 +9,6 @@ tasks: "--platform=chrome", "--wasm", "--exclude=script/configs/dart_unit_tests_exceptions.yaml", - "--exclude=script/configs/dart_unit_tests_wasm_exceptions.yaml" + "--exclude=script/configs/dart_unit_tests_wasm_exceptions.yaml", + "--exclude=script/configs/exclude_web_unit_tests.yaml" ] diff --git a/script/configs/exclude_web_unit_tests.yaml b/script/configs/exclude_web_unit_tests.yaml new file mode 100644 index 00000000000..a1e54f8e051 --- /dev/null +++ b/script/configs/exclude_web_unit_tests.yaml @@ -0,0 +1,2 @@ +# Moved to its own dedicated shard due to long test duration +- material_ui From e20144113c97270f10c8048a92f7e39ea4cc3dea Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Fri, 14 Aug 2026 20:33:12 -0700 Subject: [PATCH 7/8] more logging on chrome --- script/tool/lib/src/dart_test_command.dart | 2 ++ 1 file changed, 2 insertions(+) diff --git a/script/tool/lib/src/dart_test_command.dart b/script/tool/lib/src/dart_test_command.dart index 29a7b15f7f5..846f3bc94b7 100644 --- a/script/tool/lib/src/dart_test_command.dart +++ b/script/tool/lib/src/dart_test_command.dart @@ -134,6 +134,7 @@ class DartTestCommand extends PackageLoopingCommand { final int exitCode = await processRunner.runAndStream(flutterCommand, [ 'test', '--color', + if (platform == 'chrome') ...['-r', 'expanded', '--timeout=5m', '-j', '2'], if (experiment.isNotEmpty) '--enable-experiment=$experiment', // Flutter defaults to VM mode (under a different name) and explicitly // setting it is deprecated, so pass nothing in that case. @@ -162,6 +163,7 @@ class DartTestCommand extends PackageLoopingCommand { 'run', if (experiment.isNotEmpty) '--enable-experiment=$experiment', 'test', + if (platform == 'chrome') ...['-r', 'expanded', '--timeout=5m', '-j', '2'], if (platform != null) '--platform=$platform', if (wasm) '--compiler=dart2wasm', ], workingDir: package.directory); From 0e1a6cdba8a8729f9a2e7fdf204b07d781ebc8cc Mon Sep 17 00:00:00 2001 From: tarrinneal Date: Fri, 14 Aug 2026 21:32:27 -0700 Subject: [PATCH 8/8] revert logs --- script/tool/lib/src/dart_test_command.dart | 2 -- 1 file changed, 2 deletions(-) diff --git a/script/tool/lib/src/dart_test_command.dart b/script/tool/lib/src/dart_test_command.dart index 846f3bc94b7..29a7b15f7f5 100644 --- a/script/tool/lib/src/dart_test_command.dart +++ b/script/tool/lib/src/dart_test_command.dart @@ -134,7 +134,6 @@ class DartTestCommand extends PackageLoopingCommand { final int exitCode = await processRunner.runAndStream(flutterCommand, [ 'test', '--color', - if (platform == 'chrome') ...['-r', 'expanded', '--timeout=5m', '-j', '2'], if (experiment.isNotEmpty) '--enable-experiment=$experiment', // Flutter defaults to VM mode (under a different name) and explicitly // setting it is deprecated, so pass nothing in that case. @@ -163,7 +162,6 @@ class DartTestCommand extends PackageLoopingCommand { 'run', if (experiment.isNotEmpty) '--enable-experiment=$experiment', 'test', - if (platform == 'chrome') ...['-r', 'expanded', '--timeout=5m', '-j', '2'], if (platform != null) '--platform=$platform', if (wasm) '--compiler=dart2wasm', ], workingDir: package.directory);