Le défaut
Le dépôt tient une propriété : le build ne produit aucun avertissement de
compilation. Elle est rompue depuis la PR #54.
w: app/src/test/java/app/waveflow/playback/TranscodeSeekingPlayerTest.kt:554:23
'fun set(p0: Any?, p1: Any?, p2: Int, p3: Long, p4: Long): Timeline.Period'
is deprecated. Deprecated in Java.
La fausse timeline de TranscodeSeekingPlayerTest appelle la surcharge de
Timeline.Period.set à cinq arguments, dépréciée dans media3 1.11 au profit de
celle qui prend isPlaceholder.
Comment il a été trouvé
En vérifiant la montée de version Dependabot (#56). L'avertissement n'est pas
dû au bump : il apparaît à l'identique sur main (561a1d3), media3 n'y
bougeant pas. Vérifié en recompilant main dans une worktree séparée avec
--rerun-tasks.
Il n'a pas été vu au moment de la #54 parce qu'un build incrémental ne recompile
pas ce qu'il croit à jour : l'avertissement ne réapparaît qu'avec
--rerun-tasks ou après un clean. C'est le vrai enseignement de ce ticket —
la propriété « zéro avertissement » ne se vérifie pas sur un build tiède.
Le correctif
Passer à la surcharge non dépréciée. C'est une fausse timeline de test : il n'y
a pas de comportement à préserver au-delà de ce que les tests existants
décrivent déjà, et aucun test de régression à écrire — il n'y avait pas de
défaut à faire réapparaître.
Ce qui éviterait la récidive
Rien dans la CI ne fait échouer le build sur un avertissement. Tant que ce n'est
pas le cas, la propriété repose sur la vigilance, et celle-ci a déjà cédé une
fois. À considérer : allWarningsAsErrors sur les tâches de compilation Kotlin.
Le défaut
Le dépôt tient une propriété : le build ne produit aucun avertissement de
compilation. Elle est rompue depuis la PR #54.
La fausse timeline de
TranscodeSeekingPlayerTestappelle la surcharge deTimeline.Period.setà cinq arguments, dépréciée dans media3 1.11 au profit decelle qui prend
isPlaceholder.Comment il a été trouvé
En vérifiant la montée de version Dependabot (#56). L'avertissement n'est pas
dû au bump : il apparaît à l'identique sur
main(561a1d3), media3 n'ybougeant pas. Vérifié en recompilant
maindans une worktree séparée avec--rerun-tasks.Il n'a pas été vu au moment de la #54 parce qu'un build incrémental ne recompile
pas ce qu'il croit à jour : l'avertissement ne réapparaît qu'avec
--rerun-tasksou après unclean. C'est le vrai enseignement de ce ticket —la propriété « zéro avertissement » ne se vérifie pas sur un build tiède.
Le correctif
Passer à la surcharge non dépréciée. C'est une fausse timeline de test : il n'y
a pas de comportement à préserver au-delà de ce que les tests existants
décrivent déjà, et aucun test de régression à écrire — il n'y avait pas de
défaut à faire réapparaître.
Ce qui éviterait la récidive
Rien dans la CI ne fait échouer le build sur un avertissement. Tant que ce n'est
pas le cas, la propriété repose sur la vigilance, et celle-ci a déjà cédé une
fois. À considérer :
allWarningsAsErrorssur les tâches de compilation Kotlin.