[Perl/perl5] 880fb5: Perl_sync_locale(): Best to change to global locale
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 880fb5d0fef86206e1a80b084b3f9bd385f496b4 https://github.com/Perl/perl5/commit/880fb5d0fef86206e1a80b084b3f9bd385f496b4 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- Perl_sync_locale(): Best to change to global locale This didn't actually cause a bug AFAIK, but prior to this commit, the comment was wrong. The comment makes sense, so bring the code into compliance. The reason it was not a bug is that even though the thread remained in the per-thread locale, it uses the global locale API to set things. Commit: 943e7d68735c5309a7813b75805d819fa3e4332a https://github.com/Perl/perl5/commit/943e7d68735c5309a7813b75805d819fa3e4332a Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c(): Use LC_ALL if available Now that we have code that works on platforms with differing ways of representing LC_ALL, we can use it instead of looping through all the subcomponents. Commit: 22a00d7e56c86c42c8adc23415f09d82ef1e78f2 https://github.com/Perl/perl5/commit/22a00d7e56c86c42c8adc23415f09d82ef1e78f2 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M embed.fnc M embed.h M locale.c M proto.h Log Message: --- locale.c: Extract code into a function This is in preparation for a future commit where it will be called from more than one place. Commit: f00067d75aebd7b04668c2f5c81d4e6a6e13ea33 https://github.com/Perl/perl5/commit/f00067d75aebd7b04668c2f5c81d4e6a6e13ea33 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Complement initialization of boolean This was my attempt to make the difference listing in the next commit smaller, but it didn't help much. Commit: f0578dea2221b23824ec44cb18f024cffc2f9069 https://github.com/Perl/perl5/commit/f0578dea2221b23824ec44cb18f024cffc2f9069 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Rework locale initialization loop The previous code was always hard to understand, with a self-modifying loop. I finally figured out a clearer way to do it, by using an enum with all the possibilities, and a switch statement that sets up the loop for each, or decides this possibility isn't valid on this platform. The first possibility that works exits the loop. Commit: 9d4fc752d13aaa56b702ba02a24c98f7cd7b9ebb https://github.com/Perl/perl5/commit/9d4fc752d13aaa56b702ba02a24c98f7cd7b9ebb Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Rmv redundant sanity check This was done only on Windows, to verify that the perl was operating on a system that has a working _configthreadlocale(), when our Configure expects it to. But the previous commit now executes this function anyway at the end of initialization, so that is soon enough to fail if something is wrong, making this redundant. Commit: cfecf45fbc339cd5bed863522d9c9bec79ee891c https://github.com/Perl/perl5/commit/cfecf45fbc339cd5bed863522d9c9bec79ee891c Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Extract code into a macro This is in preparation for a simplification in future commits. Commit: 2be22a462159b353cdc73adf6e835d1c907ff497 https://github.com/Perl/perl5/commit/2be22a462159b353cdc73adf6e835d1c907ff497 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Extend macro from previous commit Actually this creates a macro of the same name that accomplishes the same thing, but specifically for Windows. Commit: ae9b121147c8cdb1c8f13f8fe8082e5fd3f8be6a https://github.com/Perl/perl5/commit/ae9b121147c8cdb1c8f13f8fe8082e5fd3f8be6a Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Don't over allocate array This previously added an extraneous unused element. Commit: 8f93193ec08d59523a1f29dcd9ae2629077388af https://github.com/Perl/perl5/commit/8f93193ec08d59523a1f29dcd9ae2629077388af Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Bring declaration inside #if's This would now cause a compilation error if the code gets screwed up. Commit: 43957f3fc3d72b85b084f270433f608619443081 https://github.com/Perl/perl5/commit/43957f3fc3d72b85b084f270433f608619443081 Author: Karl Williamson Date:
[Perl/perl5] 96c520: locale.c: Don't compile unreachable code
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 96c520ef45c30a6b3a4d3bbeeb51e4ce70361f99 https://github.com/Perl/perl5/commit/96c520ef45c30a6b3a4d3bbeeb51e4ce70361f99 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- locale.c: Don't compile unreachable code This code is attempting to compute the nl_langinfo() codeset of the current locale. If there is no LC_CTYPE available on the system, the codeset must be 'C', and the only callers to this static function know that, and return that answer without calling this function. That means this part of the function will never be executed. So don't compile it.
[Perl/perl5] 122f4d: strftime: Always restore LC_CTYPE locale
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 122f4d2a7dc34f6663f58a8a7ff985cbb41421bc https://github.com/Perl/perl5/commit/122f4d2a7dc34f6663f58a8a7ff985cbb41421bc Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M ext/POSIX/t/time.t M locale.c Log Message: --- strftime: Always restore LC_CTYPE locale my_strftime toggles LC_CTYPE to match LC_TIME to avoid mojibake. In reading the code, I realized that there was a code path that doesn't properly restore it, namely when failure is returned. This commit fixes that. A test is added, but is TODO until future commits fix other things.
[Perl/perl5] aff4cc: S_get_locale_string_utf8ness_i: Fix return
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: aff4cc346539541b9d8ceda1dfea796bc9c74887 https://github.com/Perl/perl5/commit/aff4cc346539541b9d8ceda1dfea796bc9c74887 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M locale.c Log Message: --- S_get_locale_string_utf8ness_i: Fix return If the input is NULL, the utf8ness of the string isn't NO, but actually, IMMATERIAL, as there is nothing there that matters
[Perl/perl5] b29c60: Perl_force_locale_unlock: Add pTHX parameter
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: b29c60556393dde0ea752ff9f037760fcd530289 https://github.com/Perl/perl5/commit/b29c60556393dde0ea752ff9f037760fcd530289 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M embed.fnc M embed.h M locale.c M proto.h Log Message: --- Perl_force_locale_unlock: Add pTHX parameter This replaces a dTHX inside the function, which is usable only by the perl core on platforms that allow hiding functions from external code. Thus this change should not break any applications.
[Perl/perl5] 81d9b3: locale.c: S_save_to_buffer: Add pTHX parameter
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 81d9b3207b262c36910e83706fd1013947a578c4 https://github.com/Perl/perl5/commit/81d9b3207b262c36910e83706fd1013947a578c4 Author: Karl Williamson Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M embed.fnc M embed.h M locale.c M proto.h Log Message: --- locale.c: S_save_to_buffer: Add pTHX parameter This saves doing dTHX inside the function
[Perl/perl5] f101fe: perldelta for bcd084d7d8281
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: f101feb3f0ff69bab1135dfaee41a1cbb1550e10 https://github.com/Perl/perl5/commit/f101feb3f0ff69bab1135dfaee41a1cbb1550e10 Author: Tony Cook Date: 2023-08-14 (Mon, 14 Aug 2023) Changed paths: M pod/perldelta.pod Log Message: --- perldelta for bcd084d7d8281
[Perl/perl5] bcd084: class :isa(): check for not only a stash, but a class
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: bcd084d7d82813d8058dd52097a42fb8890939b0 https://github.com/Perl/perl5/commit/bcd084d7d82813d8058dd52097a42fb8890939b0 Author: Tony Cook Date: 2023-08-14 (Mon, 14 Aug 2023) Changed paths: M MANIFEST M class.c M t/class/inherit.t A t/lib/class/A.pm A t/lib/class/A/B.pm Log Message: --- class :isa(): check for not only a stash, but a class If class Foo::Bar exists then the Foo stash exists, so checking for that when Foo is the requested base class is meaningless. Instead try to load the base class if it is not known as a class, not just if it's not a stash, just as we do immediately following. Fixes #21332
[Perl/perl5] 81a3a7: Remove CUSTOMIZED status for cpan/Test-Harness/t/h...
Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 81a3a738c7dcfbed88aa3490214043cee1c1d7f1 https://github.com/Perl/perl5/commit/81a3a738c7dcfbed88aa3490214043cee1c1d7f1 Author: James E Keenan Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M Porting/Maintainers.pl Log Message: --- Remove CUSTOMIZED status for cpan/Test-Harness/t/harness.t As discussed in https://github.com/Perl/perl5/issues/21368, needed so that we can sync Test-Harness-2.46 into blead. Commit: 6e0b8bd69336ecc95a6ca480c4b2ab58c0080bc2 https://github.com/Perl/perl5/commit/6e0b8bd69336ecc95a6ca480c4b2ab58c0080bc2 Author: Leon Timmermans Date: 2023-08-13 (Sun, 13 Aug 2023) Changed paths: M MANIFEST M Porting/Maintainers.pl M cpan/Test-Harness/bin/prove M cpan/Test-Harness/lib/App/Prove.pm M cpan/Test-Harness/lib/App/Prove/State.pm M cpan/Test-Harness/lib/App/Prove/State/Result.pm M cpan/Test-Harness/lib/App/Prove/State/Result/Test.pm M cpan/Test-Harness/lib/TAP/Base.pm M cpan/Test-Harness/lib/TAP/Formatter/Base.pm M cpan/Test-Harness/lib/TAP/Formatter/Color.pm M cpan/Test-Harness/lib/TAP/Formatter/Console.pm M cpan/Test-Harness/lib/TAP/Formatter/Console/ParallelSession.pm M cpan/Test-Harness/lib/TAP/Formatter/Console/Session.pm M cpan/Test-Harness/lib/TAP/Formatter/File.pm M cpan/Test-Harness/lib/TAP/Formatter/File/Session.pm M cpan/Test-Harness/lib/TAP/Formatter/Session.pm M cpan/Test-Harness/lib/TAP/Harness.pm M cpan/Test-Harness/lib/TAP/Harness/Env.pm M cpan/Test-Harness/lib/TAP/Object.pm M cpan/Test-Harness/lib/TAP/Parser.pm M cpan/Test-Harness/lib/TAP/Parser/Aggregator.pm M cpan/Test-Harness/lib/TAP/Parser/Grammar.pm M cpan/Test-Harness/lib/TAP/Parser/Iterator.pm M cpan/Test-Harness/lib/TAP/Parser/Iterator/Array.pm M cpan/Test-Harness/lib/TAP/Parser/Iterator/Process.pm M cpan/Test-Harness/lib/TAP/Parser/Iterator/Stream.pm M cpan/Test-Harness/lib/TAP/Parser/IteratorFactory.pm M cpan/Test-Harness/lib/TAP/Parser/Multiplexer.pm M cpan/Test-Harness/lib/TAP/Parser/Result.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Bailout.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Comment.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Plan.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Pragma.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Test.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Unknown.pm M cpan/Test-Harness/lib/TAP/Parser/Result/Version.pm M cpan/Test-Harness/lib/TAP/Parser/Result/YAML.pm M cpan/Test-Harness/lib/TAP/Parser/ResultFactory.pm M cpan/Test-Harness/lib/TAP/Parser/Scheduler.pm M cpan/Test-Harness/lib/TAP/Parser/Scheduler/Job.pm M cpan/Test-Harness/lib/TAP/Parser/Scheduler/Spinner.pm M cpan/Test-Harness/lib/TAP/Parser/Source.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Executable.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler/File.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Handle.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Perl.pm M cpan/Test-Harness/lib/TAP/Parser/SourceHandler/RawTAP.pm M cpan/Test-Harness/lib/TAP/Parser/YAMLish/Reader.pm M cpan/Test-Harness/lib/TAP/Parser/YAMLish/Writer.pm M cpan/Test-Harness/lib/Test/Harness.pm M cpan/Test-Harness/t/file.t M cpan/Test-Harness/t/harness-bailout.t M cpan/Test-Harness/t/harness.t M cpan/Test-Harness/t/lib/App/Prove/Plugin/Dummy.pm M cpan/Test-Harness/t/lib/App/Prove/Plugin/Dummy2.pm M cpan/Test-Harness/t/prove.t M cpan/Test-Harness/t/source.t M cpan/Test-Harness/t/source_handler.t Log Message: --- cpan/Test-Harness - Update to version 3.46 3.46 2023-07-30 - Color the "ok"s as well. - Skip symlink tests on msys2 - Use use absolute path for executable tests - Space-quote executable if has spaces - Avoid using Errno::EINTR directly for platforms without it - stop calling import on App::Prove plugins Compare: https://github.com/Perl/perl5/compare/e621bd319842...6e0b8bd69336