PERL5282DELTA(1perl)
π perl5282delta π β what is new for perl v5.28.2
okay bestie, gather round, because this is the tea on perl5282delta β¨ (that's a page in the Perl Programmers Reference Guide, iykyk).
πΈ DESCRIPTION πΈ
So basically this doc spills everything that changed between the 5.28.1 release and the 5.28.2 release. Two point releases, one glow-up. π
And listen β if you're jumping straight from something like 5.28.0, do not just rawdog this page. Go read perl5281delta first, because that one covers the 5.28.0 β 5.28.1 situation. Gotta read them in order, bestie, it's a whole saga. π
π¨ Incompatible Changes π¨
Any set of digits in the Common script are legal in a script run of another script
ok so there are several sets of digits chillin' in the Common script. [0-9] is the one everybody knows and loves, obviously. But there's also [\x{FF10}-\x{FF19}] (that's FULLWIDTH DIGIT ZERO through FULLWIDTH DIGIT NINE, iconic) plus a bunch of sets for math notation, like the MATHEMATICAL DOUBLE-STRUCK DIGITs. π’
The whole vibe is: any of these digit sets should be allowed to show up in script runs of, say, Greek. But the old design literally overlooked everything except the ASCII digits [0-9], which β ngl β made the design flawed. π This got fixed, so it's both a bug fix and an incompatibility. It's giving glow-up with consequences.
One rule that survived: all the digits in a run still have to come from the same set of ten digits. No mix-and-matching, that's the line. π«
[GH #16704] <https://github.com/Perl/perl5/issues/16704>
π¦ Modules and Pragmata π¦
Updated Modules and Pragmata
- Module::CoreList β upgraded from version
5.20181129_28to5.20190419. π - PerlIO::scalar β upgraded from version
0.29to0.30. π¦ - Storable β upgraded from version
3.08to3.08_01. β¨
π₯οΈ Platform Support π₯οΈ
Platform-Specific Notes
Windows
The Windows Server 2003 SP1 Platform SDK build β you know, with its early x64 compiler and tools β got accidentally broken back in Perl 5.27.9. π That's now fixed, we're so back.
Mac OS X
Perl's build and testing process on Mac OS X for -Duseshrplib builds is now compatible with Mac OS X System Integrity Protection (SIP). π
Here's the lore: SIP stops binaries in /bin (and a few other spots) from being passed the DYLD_LIBRARY_PATH environment variable. For our purposes that means DYLD_LIBRARY_PATH can't get passed to the shell, which means it can't get passed to the testing or build process β and that meant running perl literally couldn't find libperl.dylib. π
The workaround, and it's lowkey clever: the initial build of the perl executable expects to find libperl.dylib in the build directory, and then the library path gets adjusted during installation so it points at the installed library. Problem solved, slay.
[GH #15057] <https://github.com/Perl/perl5/issues/15057>
π Selected Bug Fixes π
- If an in-place edit is still in progress during global destruction and the process exit code (as stored in
$?) is zero, perl will now treat that in-place edit as successful, and it replaces the input file with whatever output got produced. β¨
Which means code like this:
perl -i -ne 'print "Foo"; last'
will replace the input file, while code like this:
perl -i -ne 'print "Foo"; die'
will not. Iconic behaviour gap. Partly resolves [perl #133659].
[GH #16748] <https://github.com/Perl/perl5/issues/16748>
- A regression in Perl 5.28 made this next little guy fail:
close(STDIN); open(CHILD, "|wc -l")'
because the child's stdin would be closed on exec. π That's now fixed.
pack "u", "invalid uuencoding"now properly NUL terminates the zero-length SV it produces. Clean. π§Ό
[GH #16343] <https://github.com/Perl/perl5/issues/16343>
- Failing to compile a format now aborts compilation. Like other errors in sub-parses, this could leave the parser in a strange state, and possibly crash perl if compilation kept going. So yeah β aborting is the safe move, no cap. π
[GH #16169] <https://github.com/Perl/perl5/issues/16169>
- Also see "Any set of digits in the Common script are legal in a script run of another script" above, because it's a bug fix too. π«Ά
π Acknowledgements π
Perl 5.28.2 represents approximately 4 months of development since Perl 5.28.1, and it contains approximately 2,500 lines of changes across 75 files from 13 authors. Look at the numbers, we ate. π₯
Excluding auto-generated files, documentation and release tools, there were approximately 1,200 lines of changes to 29 .pm, .t, .c and .h files.
Perl continues to flourish into its fourth decade thanks to a vibrant community of users and developers. π₯Ή The following people are known to have contributed the improvements that became Perl 5.28.2:
Aaron Crane, Abigail, Andy Dougherty, David Mitchell, Karen Etheridge, Karl Williamson, Leon Timmermans, Nicolas R., Sawyer X, Steve Hay, Tina MΓΌller, Tony Cook, Zak B. Elep.
That list above is almost certainly incomplete, since it's automatically generated from version control history. In particular, it doesn't include the names of the (very much appreciated!!) contributors who reported issues to the Perl bug tracker. Y'all are the real ones. π
Many of the changes in this version originated in the CPAN modules included in Perl's core. We're grateful to the entire CPAN community for helping Perl to flourish. π
For a more complete list of all of Perl's historical contributors, please see the AUTHORS file in the Perl source distribution.
π Reporting Bugs π
If you find what you think is a bug, you might check the perl bug database at <https://rt.perl.org/>. There may also be information at <http://www.perl.org/>, the Perl Home Page. π
If you believe you have an unreported bug, please run the perlbug program included with your release. And be sure to trim your bug down to a tiny but sufficient test case β tiny test case, big impact, that's the move. π Your bug report, along with the output of perl -V, will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
If the bug you're reporting has security implications which make it inappropriate to send to a publicly archived mailing list, then see "SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec for details of how to report the issue. π
π«Ά Give Thanks π«Ά
If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, you can do so by running the perlthanks program:
perlthanks
This will send an email to the Perl 5 Porters list with your show of thanks. Go be sweet, they deserve it. π
π SEE ALSO π
- The
Changesfile β for an explanation of how to view exhaustive details on what changed. - The
INSTALLfile β for how to build Perl. - The
READMEfile β for general stuff. - The
ArtisticandCopyingfiles β for copyright information.
and that's the whole page, bestie, you're fully caught up on 5.28.2 π
this was perl v5.44.0, dated 2026-10-17, from PERL5282DELTA(1perl) πβ¨
π¦ where this page comes from
- arch rolling: perl 5.44.0-1 Β· Artistic-1.0-Perl AND GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms