Python-Compiler Nuitka 1.0 verspricht mehr Tempo
Der in Python geschriebene Python-Compiler Nuitka soll in Version 1.0 Performance-Vorteile durch verbessertes Speichermanagement liefern.
Das Team rund um Nuitka-Entwickler Kay Hayen hat Version 1.0 des Python-Compilers fertiggestellt. In das neueste Release sind zahlreiche Bugfixes eingeflossen. Der Fokus lag laut Ankündigung aber auf Verbesserungen, die zu höherer Skalierbarkeit und Performance beitragen sollen – beispielsweise durch ein optimiertes Speichermanagement.
Verkürzte Kompilierzeiten innerhalb von Nuitka und ein geringerer Speicherverbrauch sollen dem Python-Compiler insbesondere bei größeren Kompilieraufgaben mehr Geschwindigkeit verleihen. Dem Blogbeitrag zufolge habe das Team die Skalierbarkeit unter anderem durch das Vermeiden von Merge Traces initialer Variablen erzielt, die beim Zusammenführen einer Variablen auftraten, die nur in einem Branch verwendet wurde.
Aufräumarbeiten für mehr Komfort und Tempo
Darüber hinaus haben sich die Nuitka-Entwickler intensiv Plug-ins und der YAML-Konfiguration gewidmet. So soll etwa das Bereinigen einiger DLL-Konfigurationen eine leichtere Benutzung ermöglichen. Die Dokumentation rund um die YAML-Konfiguration gilt allerdings nach wie vor als unvollständig. Unter anderem fehle es an Beispielen, die die Community in die Lage versetzen, fehlende Abhängigkeiten, Datendateien, DLLs oder auch Anti-Bloat-Patches zu ergänzen. Daher wurde beispielsweise auch die auf von Nutzerinnen und Nutzern bereitgestellte YAML-Dateien zugeschnittene Option --user-package-configuration-file
neu hinzugefügt. Mit dieser Option soll sich Nuitka eine Package-Konfiguration übergeben lassen, die das Ergänzen von DLLs oder Dateien ermöglicht.
Der in Python geschriebene Python-Compiler Nuitka ist zu den meisten noch aktuellen Python-Versionen (2.6 und 2.7, 3.3 bis 3.10) kompatibel und lässt sich auf nahezu allen Plattformen einsetzen, auf denen auch Python zum Einsatz kommt. Nuitka erstellt ausführbare Dateien, die ohne ein separates Installationsprogramm auskommen. Ergänzende Daten lassen sich wahlweise direkt einbinden oder auch als Dateien beifügen. Als Ersatz oder ergänzend zum Python-Interpreter kompiliert Nuitka sämtliche in der Referenzimplementierung CPython vorhandenen Konstrukte – verspricht dabei aber höheres Tempo.
Kommerzielle Version fĂĽr Schutz von IP
Nuitka steht in einer quelloffenen Variante unter Apache-2.0-Lizenz auf GitHub zur Verfügung. Entwicklerinnen und Entwickler, die im kommerziellen Umfeld besondere Anforderungen etwa im Hinblick auf den Schutz ihres geistigen Eigentums (Intellectual Property – IP) haben, können alternativ auf eine kostenpflichtige Nuitka-Edition zurückgreifen. Zu Gebühren ab 250 Euro pro Jahr bietet diese Version über ergänzende Plug-ins hinaus unter anderem gezielten Schutz für den Sourcecode und etwaige in die Applikation eingebundene Daten.
Wer sich intensiver mit dem Python-Compiler auseinandersetzen möchte, der findet vertiefende Einblicke in einer Livestream-Serie von Nuitka-Entwickler Hayen auf YouTube. In der Aufzeichnung eines Vortrages zur PyConDE 2011 erläutert Hayen zudem seine ursprüngliche Motivation für das Entwickeln des Python-Compilers.
Einen detaillierten Ăśberblick aller Ă„nderungen und neuen Funktionen in Nuitka 1.0 fasst derweil der Blogbeitrag zur AnkĂĽndigung des Release zusammen.
(map)