web_compiler_test fails on LUCI in Dart SDK
Mantenedores costumam responder em até 2 dias
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 73/100
Direção de pesquisa
Leia web_compiler_test.dart por volta das linhas 37–45 e compare as opções do Chrome com web_driver_service.dart por volta das linhas 361–369. Execute o teste webdriver que está falhando no LUCI ou em uma configuração headless comparável; o trabalho estará concluído quando o teste selecionar o renderizador skwasm esperado, em vez de recorrer ao canvaskit.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Recently devtools webdriver tests failed on LUCI in Dart SDK: https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket/8668669452558670145/+/u/test_devtools/stdout?format=raw
Gemini had this to say:
Root Cause of the web_compiler_test.dart Failure on Windows
In web_compiler_test.dart:66-86, the test opens DevTools with ?compiler=wasm and checks that <body flt-renderer="..."> equals 'skwasm', but got 'canvaskit':
-
When
?compiler=wasmis passed,flutter_bootstrap.js:116-125calls_flutter.loader.loadwithout forcing a renderer (rendererConfig = {}), letting Flutter's FlutterLoader pick the first compatible build from_flutter.buildConfig.builds(skwasm first, then canvaskit). -
FlutterLoader requires
browserEnvironment.webGLVersion > 0for skwasm (checked viacanvas.getContext('webgl2') / canvas.getContext('webgl')inbrowser_environment.js:69-81), whereas canvaskit does not check webGLVersion > 0. -
web_compiler_test.dart:37-45starts Chrome with only'args': ['--headless']:driver = await createDriver( uri: Uri.parse('http://127.0.0.1:${ChromeDriver.port}'), desired: { ...Capabilities.chrome, Capabilities.chromeOptions: { 'args': ['--headless'], }, }, ); -
Starting in Chrome 139+ (LUCI uses Chrome 155), Chrome disabled automatic fallback to its bundled SwiftShader for WebGL on headless VMs without a hardware GPU unless
--enable-unsafe-swiftshaderis passed (which is whyflutter_toolsadded SwiftShader flags when rolling Chrome 145+). On the GPU-less Windows LUCI VM,getContext('webgl2')returnsnull(webGLVersion == -1), causing FlutterLoader to reject the skwasm build and fall back to canvaskit.
Upstream Change Needed in flutter/devtools
In web_compiler_test.dart:37-45, pass the SwiftShader flags (and optionally CHROME_EXECUTABLE as 'binary') in Capabilities.chromeOptions, matching web_driver_service.dart:361-369:
driver = await createDriver(
uri: Uri.parse('http://127.0.0.1:${ChromeDriver.port}'),
desired: {
...Capabilities.chrome,
Capabilities.chromeOptions: {
if (Platform.environment['CHROME_EXECUTABLE'] case final chromeExe?)
'binary': chromeExe,
'args': [
'--headless',
if (Platform.isLinux || Platform.isWindows) ...[
'--use-gl=angle',
'--use-angle=swiftshader',
'--enable-unsafe-swiftshader',
'--disable-gpu-sandbox',
],
],
},
},
);
Do these words make sense to you, @kenzieschmoll ?
- Linguagem predominante
- Dart
- Estrelas
- 1.7k
- Forks
- 407
- Merge médio
- 3d 14h
- PRs com merge (30d)
- 15
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de flutter/devtools
-
P1 type-code-health
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
flutter/devtools#9973 · 3 comentários ·
Mantenedores costumam responder em até 2 dias
-
cost: low P2 type-code-health
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
flutter/devtools#9942 · 3 comentários ·
Mantenedores costumam responder em até 2 dias
-
[Inspector V2] Widget properties tab highlight extends past its rounded edgeTalvez livre de novo @theprantadutta assumiu há 157 dias e não há nenhum pull request aberto. Abertacontributions welcome cross-screen inspector-2.0-polish P2
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
flutter/devtools#8936 · 3 comentários ·
Mantenedores costumam responder em até 2 dias
-
cross-screen P3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 2 dias
-
documentation good first issue P2
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
flutter/devtools#8293 · 2 comentários ·
Mantenedores costumam responder em até 2 dias
Todas as issues de flutter/devtools
Issues semelhantes
-
c: proposal p: go_router package team-ecosystem
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 60/100
flutter/flutter#194542 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
famedly/matrix-dart-sdk#2524 ·
Mantenedores costumam responder em até 1 dia
-
Document supported hardwareAbertaDocumentation
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
Kazakh (kk_KZ) and Georgian (ka_GE) system locales get English instead of the shipped translationsAbertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Mantenedores costumam responder em até 1 dia
-
area: docs eco: dart good first issue help wanted lane: free-agent roadmap size: XS type: docs
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
arminazimi/evergreen#430 ·
Mantenedores costumam responder em até 1 dia