Veröffentlichung von Nuitka 1.1, einem Compiler für die Programmiersprache Python

Die neue Version des Projekts Nuitka 1.1 ist verfügbar. Diese Version verbessert den Compiler zur Übersetzung von Python-Skripten in C-Code, der dann in eine ausführbare Datei kompiliert werden kann, die libpython verwendet, um maximale Kompatibilität mit CPython zu gewährleisten (unter Verwendung der Standardwerkzeuge von CPython zur Objektverwaltung). Die vollständige Kompatibilität mit den aktuellen Versionen von Python 2.6, 2.7, 3.3 - 3.10 wurde sichergestellt. Im Vergleich zu CPython zeigen die kompilierten Skripte in den Pystone-Tests eine Leistungssteigerung von 335 %. Der Code des Projekts wird unter der Apache-Lizenz veröffentlicht.

Zu den Änderungen in der neuen Version gehören:

  • Die Konfigurationsmöglichkeiten im Yaml-Format wurden erweitert.
  • Optimierungen wurden vorgenommen, um nicht verwendete Komponenten der Standardbibliothek (wie zoneinfo, concurrent, asyncio usw.) auszuschließen, was zu einer Reduzierung der Größe der resultierenden ausführbaren Dateien führte.
  • Unterstützung für alternative Syntax ('|') in Pattern-Matching mit dem Hinzufügen des 'match'-Operators, der in Python 3.10 eingeführt wurde.
  • Kompatibilität mit jinja2.PackageLoader wurde gewährleistet.
  • Es wurde die Möglichkeit zur Größenänderung des Attributs __defaults__ implementiert.
  • Unterstützung für die Funktionen importlib.metadata.distribution, importlib_metadata.distribution, importlib.metadata.metadata und importlib_metadata.metadata wurde hinzugefügt.
  • Im Modus zur Erstellung einer Datei (Onefile) wurde die Unterstützung für das Einbinden zusätzlicher Binärdateien in die Hauptausführungsdatei hinzugefügt.
  • In den kompilierten Modulen kann nun die Funktion importlib.resources.files verwendet werden.
  • In der Option „—include-package-data“ ist es jetzt erlaubt, Dateimuster anzugeben, z. B. „—include-package-data=package_name=*.txt“.
  • Für macOS wurde die Unterstützung für das Signieren von ausführbaren Dateien mit einer digitalen Signatur implementiert.
  • Für Plugins wurde eine Methode bereitgestellt, um Funktionen für die ausführbare Datei zu überschreiben.
  • Die Funktionen des Plugins anti-bloat wurden erweitert, sodass es nun zur Reduzierung der Anzahl von Paketen bei der Verwendung der Bibliotheken rich, pyrect und pytorch eingesetzt werden kann. Die Möglichkeit, reguläre Ausdrücke in den Ersetzungsregeln zu verwenden, wurde implementiert.
  • Regressionsänderungen, die durch signifikante Optimierungen im vorherigen Release entstanden sind, wurden behoben.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster