Seit einiger Zeit ist klar, ab 1. Januar 2020 wird die Unterstützung für Python 2 eingestellt. Somit wird es keinen Support, keine Verbesserungen und keine Sicherheitsupdates mehr geben. Der Grund dafür ist einfach. Seit vielen Jahren existieren die Python-Versionen 2 und 3 parallel. Der Aufwand, beide Versionen zu unterstützen, ist zu hoch geworden. Mit dem Ende des Supports von Python 2 wird die Python-Community sämtliche Ressourcen in die Weiterentwicklung von Python 3 stecken. Was bedeutet das generell und welche Auswirkungen hat das auf die Entwicklung in Odoo? Damit beschäftigen wir uns in unserem heutigen Blogbeitrag.
Die Programmiersprache Python wurde Anfang der 1990er Jahre entwickelt, die erste Vollversion wurde im Januar 1994 veröffentlicht. Im weiteren Verlauf wurden im Oktober 2000 Python Version 2 und im Dezember 2008 Python Version 3 veröffentlicht. Python 3 enthält dabei wesentliche Änderungen an der Programmiersprache. Das führt dazu, dass Python 3 teilweise inkompatibel zu den Vorgängerversionen wurde. Die Entwickler entschieden also, die parallele Unterstützung bis Ende 2019 aufrecht zu erhalten.
Python
Python ist eine plattformunabhängige Programmiersprache auf Open Source-Basis, welche vor allem durch seinen hohen Funktionsumfang, eine schmale Syntax sowie der damit einhergehenden Übersichtlichkeit überzeugt.
Mit Python wurde eine Programmiersprache entwickelt, die vor allem einfach und übersichtlich ist. Das gelang speziell durch die Definition einer standardmäßigen Bibliothek, welche auf das Wesentliche reduziert und einfach erweiterbar ist. Die Programmierung mit Python bietet umfangreiche Funktionalitäten und ist somit universell einsetzbar. Besonders beliebt ist der Einsatz von Python dabei in den Bereichen Data Science und Machine Learning. Außerdem ist die Programmiersprache durch ihre einfache Syntax sehr leicht zu erlernen. Die Unterstützung verschiedener Bibliotheken hat zur Folge, dass insgesamt weniger Code geschrieben und gepflegt werden muss und damit eine deutliche Steigerung der Produktivität in Entwicklungsprojekten ermöglicht wird.
Nach der Ankündigung des Supportendes für Python 2 hat die Python-Community im Laufe der Zeit ausführliche Dokumentationen und hilfreiche Tools zur Verfügung gestellt, welche beim Umstieg auf Python 3 unterstützen. Was bedeutet das nun für die Entwicklung in Odoo? Bis Odoo 10 wird keine Entwicklung mittels Python 3 unterstützt, hierfür nutzen die Entwickler Python 2. Odoo 11 ist kompatibel mit beiden Versionen, Python 2 und 3. Ab Odoo Version 12 sind Entwicklungen ausschließlich mit Python 3 möglich.
Kompatibilität von Oddo 11 mit Python 2 und Python 3
Sehen Sie hier, wie Odoo die Kompatibilität von seiner Version 11 mit Python 2 und Python 3 ermöglicht.
Das heißt natürlich nicht, dass ältere Odoo-Versionen nicht mehr genutzt werden können oder nicht mehr funktionsfähig sind. Allerdings besteht die Gefahr, dass Odoo-Module durch odoo-seitige oder eigene Entwicklungen nicht mehr ausführbar sind, da unterschiedliche Befehle und Syntax verwendet werden. Weiterhin ist es möglich, dass durch die fehlende Weiterentwicklung und Unterstützung von Python 2 Sicherheitslücken entstehen. Somit ist eine Migration auf Odoo Version 12 oder höher nicht zwingend notwendig, aber langfristig sehr zu empfehlen.
Zusammenfassend lässt sich also festhalten, dass sich vor allem die Unternehmen mit Python 3 beschäftigen müssen, welche die Einführung und Weiterentwicklung von Odoo Version 12 oder höher planen und welche in älteren Odoo-Versionen arbeiten und Sicherheitsbedenken haben.
Sie planen die Einführung von Odoo oder benötigen Support bei der Migration Ihrer Odoo-Instanz? In zahlreichen Einführungs- und Migrationsprojekten konnten wir unsere Kunden bereits von unserer Expertise überzeugen, wie zum Beispiel die ARTS Holding SE, W4 Marketing AG oder Kollektiv Lumen. Wir bieten auch Ihnen gerne unsere umfangreiche Expertise dafür an. Kontaktieren Sie uns gerne und erleben Sie die Vorteile der neuesten Odoo-Version.
Quellen: www.python.org, www.odoo.com, www.wikipedia.de
Das Ende von Python 2