“Don’t Repeat Yourself”, qu’ils disaient. ● C’est un constat d'échec ● Ca rend le code dur à maintenir ● C’est pas bien ● C’est tout pas bien ● C’est vraiment pas bien ● Sauf que...
Tu me poses une colle ● Code trop complexe ● “Mal” découpé, pas adapté ● Qui fait pas vraiment ce qu’on veut ● C’est un besoin vraiment spécifique ● On peut pas facilement contribuer ● Il faut avancer ● Sauf que...
Hein ? Mais… Comment !? ● Téléchargement sur PyPI (sans installation) ● Lecture de la tarball ou du wheel (en mémoire) ● Récupération du fichier voulu ● Parsing de l’AST, exploration pour localiser la méthode voulue ● Diff entre les 2 versions