Catch `devtools_server` regressions from flutter/devtools
- Langage dominant
- Dart
- Étoiles
- 1.7k
- Forks
- 404
- Merge moyen
- 6 j 17 h
- PR mergées (30 j)
- 18
Description
- The `devtools_server` and its tests live in the Dart SDK: https://github.com/dart-lang/sdk/blob/main/pkg/dds/lib/devtools_server.dart
- The `devtools_server` tests do not run as part of the test suite when deps are updated in the Dart SDK, which means that when we update the [`devtools_rev`](https://github.com/dart-lang/sdk/blob/2943f4399e0498b6ae0712bbce1619e5062ca56b/DEPS#L105), regressions are only caught **after** submitting (see for example https://github.com/dart-lang/sdk/issues/56111)
As a small improvement, having these tests run as part of the pre-submit instead of post-submit would be helpful.
However, it would be even more helpful if we could catch regressions on commits to `flutter/devtools`, so that these regressions are caught when they happen instead of last-minute as part of the release process, requiring cherrypicks to fix (e.g. https://github.com/dart-lang/sdk/issues/56128).
### Brainstorming about how this could work
- Currently, with every commit to DevTools, LUCI creates a BUILD of DevTools at that commit
- Would it be possible for LUCI to also change the SDK's DEPs to use that latest version of DevTools, and run the devtools_server tests against it?
Another option is for us to update the DevTools version in the SDK more frequently than during our releases, so that these regressions will be caught sooner.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par lire pkg/dds/lib/devtools_server.dart et localiser les tests de devtools_server dans le Dart SDK, puis examinez DEPS au niveau de devtools_rev ainsi que le flux de build LUCI DevTools existant. Le travail sera considéré comme terminé lorsqu’un flux défini, exécuté avant la soumission ou déclenché par un commit, exécutera ces tests avec des révisions de DevTools mises à jour et détectera les régressions avant la publication.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- dart
- Domaine
- ci-cd, devops, testing
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100