PERL5421DELTA(1perl) Perl-Referenzanleitung für Programmierer PERL5421DELTA(1perl)

perl5421delta - Was in Perl v5.42.1 neu ist

Dieses Dokument beschreibt die Unterschiede zwischen den Veröffentlichungen 5.42.0 und 5.42.1.

Falls Sie von einer älteren Version wie 5.40.0 aktualisieren, dann lesen Sie zuerst perl5420delta(1perl), das die Unterschiede zwischen 5.40.0 und 5.42.0 beschreibt.

Es gibt keine Änderungen, die absichtlich zu Perl 5.42.0 inkompatibel sind. Falls solche existieren, dann sind dies Fehler und wir bitten um das Einreichen eines Berichtes. Lesen Sie dazu »Fehler melden« weiter unten.

  • Module::CoreList(3perl) wurde von Version 5.20250702 auf 5.20260308 aktualisiert.
  • POSIX wurde von Version 2.23 auf 2.23_01 aktualisiert.

Änderungen an bestehender Dokumentation

Wir haben versucht, die Dokumentation entsprechend der hier aufgeführten Änderungen zu aktualisieren. Falls Sie Fehlendes finden, öffnen Sie einen Problembericht unter https://github.com/Perl/perl5/issues.

Es ist jetzt möglich, Configure Werte zu übergeben, die POSIX-Locale-Kategorien betreffen, um deren automatische Berechnung außer Kraft zu setzen. Damit funktioniert Cross-Kompiierung. Am einfachsten erfolgt dies, indem das C-Programm, das die Berechnung durchführt, aus Configure herausgelöst und dann alleine auf der Zielmaschine ausgeführt wird und anschließend die Ausgabe an Configure auf der anderen Maschine übergeben wird. In Porting/Glossary sind Beispiele. [GH #22992 https://github.com/Perl/perl5/issues/22992]

Es wurden Tests hinzugefügt und geändert, um die anderen Ergänzungen und Änderungen in dieser Veröffentlichung zu berücksichtigen.

Thread-sichere Handhabung von Locales wurde in allen Veröffentlichungen aufgrund von offensichtlichen Fehlern in der Unterstützung in dem zugrundeliegenden Betriebssystem deaktiviert [GH #23825 https://github.com/Perl/perl5/issues/23825]
Korrektur von Bauten mit "USE_IMP_SYS" definiert, aber "USE_ITHREADS" nicht definiert.

  • "use 5.42" schaltet jetzt "use source::encoding "ascii"" für den Rest der Zeile ein (neben nachfolgenden Zeilen). [GH #23881 https://github.com/Perl/perl5/issues/23881]
  • Perl 5.42.0 handhabt den Übergang von/zur Winterzeit nicht korrekt. Die Zeit und/oder Zeitzone kann in Zeitbereichen rund um den Übergang um eine Stunde versetzt sein. Dies ist eine Regression gegenüber früheren Veröffentlichungen und ist jetzt behoben. Dieser Fehler wurde im den Perlbereich in der POSIX-Funktion »strftime« sichtbar und in XS-Code, mit sowohl der »my_strftime«, »sv_strftime_ints« oder »sv_strftime_tm« in Perlapi. [GH #23878 https://github.com/Perl/perl5/issues/23878]
  • Bestimmte Konstrukte, die eine "for"-Schleife mit zwei Variablen involvierten, brachten den Perl-Compiler in Perl 5.42.0 zum Absturz:
    # Zwei-Variable for-Schleife über eine Liste, die von einem
    # Methodenaufruf zurückgegeben wurde:
    for my ($x, $y) (Some::Class->foo()) { … }
    for my ($x, $y) ($object->foo()) { … }
    

    und

    # Zwei-Variable for-Schleife über eine Liste, die von einem Aufruf
    # einer lexikal(lisch importierten) Subroutine zurückkam, alle
    # innerhalb einer Subroutine mit lexikalischem Geltungsbereich
    # oder einem anonymen:
    my sub foo { … }
    my $fn = sub {
        for my ($x, $y) (foo()) { … }
    };
    use builtin qw(indexed);  # lexikalischer Import!
    my sub bar {
        for my ($x, $y) (indexed(…)) { … }
    }
    

    Diese wurden behoben. [GH #23405 https://github.com/Perl/perl5/issues/23405]

  • Seit Perl 5.32.0 erhielt der zweite Zweig des ternären Bedingungsoperators nicht den korrekten Selbstbelebungs-Kontext angewandt. In beispielsweise in etwas wie
    @{ $cond ? $h{foo} : $h{bar} } = …;
    

    würde der erste Zweig korrekt $h{foo} auf eine Feldreferenz selbstbelebt, aber der zweite Zweig könnte inkorrekt $h{bar} auf eine Hash-Referenz selbstbelebt werden. [GH #18669 https://github.com/Perl/perl5/issues/18669].

Perl 5.42.1 stellt ungefähr 8 Monate an Entwicklung seit Perl 5.42.0 dar und enthält ungefähr 7.200 geänderte Zeilen über 55 Dateien von 12 Autoren.

Werden automatisch erstellte Dateien, Dokumentation und Veröffentlichungswerkzeuge ausgeschlossen, dann gab es ungefähr 1700 geänderte Zeilen an 16 .pm-, .t-, .c- und .h-Dateien.

Perl gedeiht Dank seiner lebhaften Gemeinschaft an Benutzern und Entwicklern weiter in sein viertes Jahrzehnt. Von den folgenden Personen ist bekannt, dass sie Verbesserungen beigetragen haben, die zu Perl 5.42.1 wurden:

David Mitchell, Eric Herman, Karen Etheridge, Karl Williamson, Lukas Mai, Max Maischein, Philippe Bruhat (BooK), Richard Leach, Steve Hay, Thibault Duponchelle, Tony Cook, Yitzchak Scott-Thoennes.

Die vorstehende Liste ist wahrscheinlich unvollständig, da sie automatisch aus dem Verlauf einer Revisionssteuerung erstellt wurde. Insbesondere enthält sie die (besonders wertgeschätzten) Beitragenden nicht, die Probleme in die Fehlerdatenbank von Perl berichteten.

Viele der in dieser Version aufgenommenen Änderungen stammten aus den CPAN-Modulen, die Teil des Kerns von Perl sind. Wir sind der gesamten CPAN-Gemeinschaft sehr dankbar, dass sie dem Gedeihen von Perl helfen.

Eine vollständigere Liste aller historisch bei Perl Beitragenden finden Sie in der Datei AUTHORS in der Quelldistribution von Perl.

Wenn Sie glauben, einen Fehler gefunden zu haben, sollten Sie die Fehlerdatenbank von Perl unter https://github.com/Perl/perl5/issues prüfen Es kann auch Informationen auf der Perl-Startseite https://www.perl.org/ geben.

Falls Sie glauben, dass Sie einen nicht berichteten Fehler kennen, öffnen Sie bitte einen Problembericht unter https://github.com/Perl/perl5/issues. Bitte reduzieren Sie Ihr Problem auf einen minimalen, aber ausreichenden Testfall.

Falls Ihr Fehlerbericht Sicherheits-Implikationen enthält, weswegen er nicht zum Senden an eine öffentliche Fehlerdatenbank geeignet ist, dann lesen Sie den Abschnitt »SECURITY VULNERABILITY CONTACT INFORMATION« in perlsec(1), um Details zum Berichten des Problems zu erfahren.

Falls Sie sich bei Perl-5-Portieren für ihre Arbeit an Perl 5 bedanken möchten, können Sie dies durch die Ausführung des Programms perlthanks(1) machen:

perlthanks

Damit wird eine E-Mail an die Perl-5-Portierungsliste gesandt, die Ihren Dank enthält.

Die Datei Changes für eine Erläuterung, wie die vollständigen Details der Änderungen betrachtet werden können.

Die Datei INSTALL, wie Perl gebaut wird.

Die Datei README für allgemeines Zeug.

Die Dateien Artistic und Copying für Fragen zum Urheberrecht.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

2. April 2026 perl v5.42.2