Re: [Python-de] Codeanalyse auf Python2 Compatibility zum Entfernen derselben

Stefan Ram schrieb am 01.03.19 um 16:01:
Reimar Bauer writes:
Für das nächste Release möchte ich den Code optimieren, so dass wir auch alles was wir für die Python2 Compatibilität eingebaut haben, identifizieren und entfernen können.
Es ist nicht klar, warum dies eine "Optimierung" darstellen soll. Es besteht erst einmal das Risiko, daß dabei Fehler eingebaut werden. Habt Ihr das Programm schon in Funktionen untergliedert, diese dokumentiert und mit Tests versehen? Sonst wäre die Zeit dafür besser investiert. Falls Ihr das schon getan habt und habt immer noch zu viel Zeit, bietet sich noch ein allgemeiner Code-Review an, bei dem sowohl Fehler als auch Verbesserungsmöglichkeiten gefunden werden könnten. Etwaige übrigbleibende Python-2-Kompatibilitäten sind dann wirklich kein Mangel, den es zu beseitigen gilt.
Ist so erstmal richtig. Funktionierender Code ist ja zuallererst mal was Gutes. Und suboptimalen Code gibt es aus den verschiedensten Gründen, nicht nur weil Py2-Kompatibilität nötig war. Ich würde auch dazu tendieren, die Kompatibilität nach und nach auszubauen, wenn die jeweiligen Codeecken eh mal wieder angefasst werden. Alles andere erhöht nur das Risiko von neuen Fehlern. Und zerschießt noch dazu die Versionshistorie mit der Schrotflinte.
Ich suche etwas was so ähnlich wie 2to3 funktioniert nur eher 3not2.
Ich erwarte nicht, daß es so etwas gibt.
Na ja, sowas wie "six" automatisiert wieder auszubauen wäre schon nett. Aber ich kenne da auch kein Tool für. Obwohl, Suchen+Ersetzen vielleicht. ;) Einen Fixer für 2to3 zu schreiben, der typische six-Nutzungsmuster erkennt und entfernen kann, wäre ja vielleicht ein ganz nettes Projekt. Sollte nicht allzu schwer sein, denn für genau sowas ist 2to3 ja gemacht. Nenn's "untwo", ist auf PyPI noch nicht vergeben. Stefan
participants (1)
-
Stefan Behnel