Perl 5.30.0 veröffentlicht


Perl 5.30.0 veröffentlicht

Ein Jahr nach der Veröffentlichung von Perl 5.28.0 erfolgte die Veröffentlichung Perl 5.30.0.

Wichtige Änderungen:

  • Unterstützung für Unicode-Versionen 11, 12 und Draft 12.1 hinzugefügt;
  • Die im regulären Ausdrucksquantifizierer der Form „{m, n}“ angegebene Obergrenze „n“ wurde auf 65534 verdoppelt;
  • Metazeichen in Unicode-Eigenschaftswertspezifikationen werden jetzt teilweise unterstützt;
  • Unterstützung für qr'N{name}' hinzugefügt;
  • Perl kann jetzt so kompiliert werden, dass immer threadsichere Locale-Operationen verwendet werden;
  • Begrenzte Muster mit variabler Länge im Vergleich zu regulären Ausdrücken werden jetzt experimentell unterstützt;
  • Für die Konvertierung in UTF-8 wird jetzt eine schnellere Methode verwendet;
  • Türkische UTF-8-Gebietsschemata werden jetzt problemlos unterstützt;
  • Die Verwendung des opASSIGN-Makros wurde aus dem Kernel entfernt.

Entfernte Funktionalität und inkompatible Änderungen:

  • Entfernte Module: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
  • Mustertrennzeichen sollten jetzt Grapheme sein;
  • Trennzeichen sollten jetzt Grapheme sein;
  • Einige zuvor veraltete Verwendungen der nicht maskierten linken Klammer „{“ in regulären Ausdrucksmustern sind jetzt verboten;
  • Das Zuweisen eines Werts ungleich Null zu $[ (dem Index des ersten Array-Elements) ist jetzt fatal;
  • Das zuvor veraltete sysread()/syswrite() bei der Verarbeitung von :utf8 ist jetzt schwerwiegend.
  • my() ist unter falschen Bedingungen jetzt deaktiviert;
  • Veraltete $* (Variable, die zum Aktivieren des mehrzeiligen Abgleichs verwendet wird und in Perl v5.10.0 entfernt wurde) und $# (Variable, die zum Formatieren von Ausgabezahlen verwendet wird und in Perl v5.10 entfernt wurde.);
  • Die unqualifizierte Verwendung von dump() ist veraltet;
  • Entfernt File::Glob::glob();
  • pack() kann kein ungültiges UTF-8 mehr zurückgeben;
  • Jede Zahlenmenge in einem allgemeinen Skript ist in einem Skript gültig, das von einem anderen Skript ausgeführt wird.
  • JSON::PP enthält standardmäßigallow_nonref;

Veraltete Funktionalität:

  • Sie können verschiedene Makros, die UTF-8 verarbeiten, nicht mehr im XS-Code verwenden;

Source: linux.org.ru

Kommentar hinzufügen