[Perl/perl5] ee4e4f: perlapi: Combine sv_catpvf-type functions into one...

2024-06-12 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: ee4e4f68dd9b1c3924f0750b92245e6855f12778
  
https://github.com/Perl/perl5/commit/ee4e4f68dd9b1c3924f0750b92245e6855f12778
  Author: Karl Williamson 
  Date:   2024-06-12 (Wed, 12 Jun 2024)

  Changed paths:
M sv.c

  Log Message:
  ---
  perlapi: Combine sv_catpvf-type functions into one group

And the description of that is expanded and hopefully clarified.

Having one group containing the descriptions of all closely related
functions makes the pod more compact and makes maintenance easier; fixes
only need to be applied in one place.  And it encourages the
documentation authors to compare and contrast the variants, paying
closer attention to the subtle differences between them.

And it is easier for the reader to choose the variant that is best for
their current purpose, rather than hopping around the file, unsure if
the current text is identical to that found elsewhere, or if there is a
subtle nuance (or three).



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 60dc85: perlapi: Rewrite pod for grok_number, combine with...

2024-06-12 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 60dc854a42dacca514eb97d1b6849543c7700812
  
https://github.com/Perl/perl5/commit/60dc854a42dacca514eb97d1b6849543c7700812
  Author: Karl Williamson 
  Date:   2024-06-12 (Wed, 12 Jun 2024)

  Changed paths:
M numeric.c

  Log Message:
  ---
  perlapi: Rewrite pod for grok_number, combine with _flags

I found the old version overly confusing.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 06cd43: bytes_(to|from_utf8) functions no longer experime...

2024-06-12 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 06cd43176585d5d116c8eaea20e1df5ca7105b05
  
https://github.com/Perl/perl5/commit/06cd43176585d5d116c8eaea20e1df5ca7105b05
  Author: Karl Williamson 
  Date:   2024-06-12 (Wed, 12 Jun 2024)

  Changed paths:
M embed.fnc

  Log Message:
  ---
  bytes_(to|from_utf8) functions  no longer experimental

I don't know why these have been marked such for so long, but I think
it's time to remove that.

They have been updated when necessary, and I see no reason or others to
use them.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] fb31b6: Add t/run/todo.t

2024-06-10 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: fb31b68a60422081308755424366404020f21e83
  
https://github.com/Perl/perl5/commit/fb31b68a60422081308755424366404020f21e83
  Author: Karl Williamson 
  Date:   2024-06-10 (Mon, 10 Jun 2024)

  Changed paths:
M MANIFEST
A t/run/todo.t

  Log Message:
  ---
  Add t/run/todo.t

This is a place for tests for unfixed bugs.

Such bugs may resurface later in the same or somewhat different form,
and we could easily overlook the fact that they are duplicates.  By
adding TODO tests here, we would automatically get notified that an
earlier ticket is fixed when such a later one gets fixed.

It is my guess that some open tickets are already fixed and we just
don't know it.

And it would save time for the proect to not have to go to the issues
list and refigure out how to reproduce them, as we periodically do.

It would be a good getting-started task for people new to the project to
go through our bug list and copy the example failing code snippets into
this file.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] c7d67d: perlapi: Move two functions to locale section

2024-05-30 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: c7d67d5fd3394dfc2d21585260326d58fe735153
  
https://github.com/Perl/perl5/commit/c7d67d5fd3394dfc2d21585260326d58fe735153
  Author: Karl Williamson 
  Date:   2024-05-30 (Thu, 30 May 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  perlapi: Move two functions to locale section



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 670935: Add extensive guidance to perlclib

2024-05-30 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 670935c948929d2d69ccc2f705347bc792e01e90
  
https://github.com/Perl/perl5/commit/670935c948929d2d69ccc2f705347bc792e01e90
  Author: Karl Williamson 
  Date:   2024-05-30 (Thu, 30 May 2024)

  Changed paths:
M MANIFEST
M dist/ExtUtils-ParseXS/lib/perlxs.pod
M dist/ExtUtils-ParseXS/lib/perlxstut.pod
M pod/perl.pod
M pod/perlclib.pod
M pod/perldelta.pod
M pod/perlembed.pod
M pod/perlguts.pod
M pod/perllocale.pod
M pod/perlthrtut.pod
M t/porting/known_pod_issues.dat

  Log Message:
  ---
  Add extensive guidance to perlclib

This consolidates much of the pod about interfacing with the standard C
library into this pod, while adding extensive documentation.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] db5a1e: Add commented out #define

2024-05-25 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: db5a1edd543a10ce6cee7b4f9d33fc2bba95256a
  
https://github.com/Perl/perl5/commit/db5a1edd543a10ce6cee7b4f9d33fc2bba95256a
  Author: Karl Williamson 
  Date:   2024-05-25 (Sat, 25 May 2024)

  Changed paths:
M win32/win32thread.h

  Log Message:
  ---
  Add commented out #define



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 5856f5: lib/locale.t:

2024-05-25 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 5856f5b7c769d5f558791d0d2f100ff79d1662dd
  
https://github.com/Perl/perl5/commit/5856f5b7c769d5f558791d0d2f100ff79d1662dd
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 1eb13b11f60bc5e98a00e979d35be5ff8fe01ae7
  
https://github.com/Perl/perl5/commit/1eb13b11f60bc5e98a00e979d35be5ff8fe01ae7
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: 0cfa98aa314210408b1f8bd47b6dd2a821df2f60
  
https://github.com/Perl/perl5/commit/0cfa98aa314210408b1f8bd47b6dd2a821df2f60
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: df9b6304f8c8a4efcc4555a0f4a8c2589c521a03
  
https://github.com/Perl/perl5/commit/df9b6304f8c8a4efcc4555a0f4a8c2589c521a03
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: 58b3b675673e1bf89dc0a868fbf39b4000391c15
  
https://github.com/Perl/perl5/commit/58b3b675673e1bf89dc0a868fbf39b4000391c15
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: b7e9b6d20bc27b8a9f302a2a5ee4c03c96a2e513
  
https://github.com/Perl/perl5/commit/b7e9b6d20bc27b8a9f302a2a5ee4c03c96a2e513
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 1de2018f0e8bb44366564644f93af00f7e3f623e
  
https://github.com/Perl/perl5/commit/1de2018f0e8bb44366564644f93af00f7e3f623e
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: f3e9d947f19ffe6a0e952de71dab414aebfbce9c
  
https://github.com/Perl/perl5/commit/f3e9d947f19ffe6a0e952de71dab414aebfbce9c
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: df96f10ffbd2e5f289bad04f8fe32a8e51e2febb
  
https://github.com/Perl/perl5/commit/df96f10ffbd2e5f289bad04f8fe32a8e51e2febb
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 44637dce4f058831e2ea6e54916ee627e4b4d929
  
https://github.com/Perl/perl5/commit/44637dce4f058831e2ea6e54916ee627e4b4d929
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: c6c982663a7e8cc46e373e04d1b8139627eaac52
  
https://github.com/Perl/perl5/commit/c6c982663a7e8cc46e373e04d1b8139627eaac52
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t because of sym links


  Commit: 056c2476682de1f6ee6a1854bbc93b38e48fc672
  
https://github.com/Perl/perl5/commit/056c2476682de1f6ee6a1854bbc93b38e48fc672
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M cpan/Sys-Syslog/t/syslog-inet-udp.t
M cpan/Sys-Syslog/t/syslog.t

  Log Mes

[Perl/perl5] b19f01: S_find_locale_from_environment: Handle disparate L...

2024-05-24 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-batch9
  Home:   https://github.com/Perl/perl5
  Commit: b19f01bf014b01b4fb3bf709e6d66c4af60cfcf2
  
https://github.com/Perl/perl5/commit/b19f01bf014b01b4fb3bf709e6d66c4af60cfcf2
  Author: Karl Williamson 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M locale.c
M t/run/locale.t

  Log Message:
  ---
  S_find_locale_from_environment: Handle disparate LC_ALL

When calling setlocale(foo, ""), there is a standardized result.  If
there is an environment variable LC_ALL set, it is used regardless of
what 'foo' is.

In general, LC_ALL may be set to a heterogenous set of categories and
locales, so this could be equivalently

 setlocale(LC_TIME, "de_DE/C/en_US/zh_TW.UTF-8/he_IL");

Prior to this commit, the code did not handle this possibility.  But
it's easy to handle this eventuality by calling an already-existing
function and examining its return.

However, the accompanying test fails at least on Linux, showing that
libc also doesn't handle this possibility.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 37b788: Add perldelta for fixes to extra_paired_delimiters...

2024-05-23 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 37b7886c1a78b5ae81bbf3276682908f42e02c57
  
https://github.com/Perl/perl5/commit/37b7886c1a78b5ae81bbf3276682908f42e02c57
  Author: Karl Williamson 
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
M pod/perldelta.pod

  Log Message:
  ---
  Add perldelta for fixes to extra_paired_delimiters feature



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 98d76f: Bump UNIVERSAL.pm version number

2024-05-23 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 98d76f5b4ef64b8a13731f42446f9f64803497dc
  
https://github.com/Perl/perl5/commit/98d76f5b4ef64b8a13731f42446f9f64803497dc
  Author: Karl Williamson 
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
M lib/UNIVERSAL.pm

  Log Message:
  ---
  Bump UNIVERSAL.pm version number

This is needed as a result of 869c089e65e7abdd5791c0f4592caf4487d8abce



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 9e8734: feature extra_paired_delimiters not considered stable

2024-05-23 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 9e8734b69441e9919aa7db746b7229279aaffdfe
  
https://github.com/Perl/perl5/commit/9e8734b69441e9919aa7db746b7229279aaffdfe
  Author: Karl Williamson 
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
M cpan/experimental/lib/stable.pm

  Log Message:
  ---
  feature extra_paired_delimiters not considered stable

This is due to GH #8


  Commit: 850214088aef01c42e9e450c7d635da65c47cd1f
  
https://github.com/Perl/perl5/commit/850214088aef01c42e9e450c7d635da65c47cd1f
  Author: Karl Williamson 
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
M feature.h
M lib/feature.pm
M regen/feature.pl

  Log Message:
  ---
  Revert extra_paired_delimiter feature to experimental

This is due to GH #8


  Commit: f3e2f6b80b270f600ea86b8a0cfc0eb044a83cfc
  
https://github.com/Perl/perl5/commit/f3e2f6b80b270f600ea86b8a0cfc0eb044a83cfc
  Author: Karl Williamson 
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
M pod/perlop.pod
M regen/unicode_constants.pl
M t/lib/croak/toke
M unicode_constants.h

  Log Message:
  ---
  Exclude RtoL characters from paired string delimiters

Fixes #8

Some scripts in the world are written right-to-left, such as Arabic and
Hebrew.  This can result in confusion for quote-like string delimitters
that we have chosen based on left-to_right.  Therefore exclude all such.
Currently, the only pair that falls into this category that we don't
exclude for other reasons are SYRIAC COLON SKEWED LEFT/RIGHT.


Compare: https://github.com/Perl/perl5/compare/eae32d16ea24...f3e2f6b80b27

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 816d7c: perlguts: Mention av_count()

2024-05-22 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 816d7cda541da6b2763dc570110f26aeabbce602
  
https://github.com/Perl/perl5/commit/816d7cda541da6b2763dc570110f26aeabbce602
  Author: Karl Williamson 
  Date:   2024-05-22 (Wed, 22 May 2024)

  Changed paths:
M pod/perlguts.pod

  Log Message:
  ---
  perlguts: Mention av_count()

av_count() generally is a better option than av_top_index(), so mention
it as well as the existing mention of av_top_index()



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 1a2d00: perlapi: Fix typo

2024-05-21 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 1a2d008b862c694e8f3988c8292c4aa3f442c12c
  
https://github.com/Perl/perl5/commit/1a2d008b862c694e8f3988c8292c4aa3f442c12c
  Author: Karl Williamson 
  Date:   2024-05-21 (Tue, 21 May 2024)

  Changed paths:
M handy.h

  Log Message:
  ---
  perlapi: Fix typo



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 0b2292: regen porting/known_pod_issues.dat

2024-05-21 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 0b2292a4bfd36e7abcb4c90578fbf4bfdcb7fc78
  
https://github.com/Perl/perl5/commit/0b2292a4bfd36e7abcb4c90578fbf4bfdcb7fc78
  Author: Karl Williamson 
  Date:   2024-05-21 (Tue, 21 May 2024)

  Changed paths:
M t/porting/known_pod_issues.dat

  Log Message:
  ---
  regen porting/known_pod_issues.dat

This is a result of fixes to perlbook



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 1a2e8e: t/harness: Fix grammar in comment

2024-05-18 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 1a2e8e708a78fa3f519129c2489a4998cfb3266a
  
https://github.com/Perl/perl5/commit/1a2e8e708a78fa3f519129c2489a4998cfb3266a
  Author: Karl Williamson 
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  t/harness: Fix grammar in comment



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] bcedd5: perllocale: Update for 5.40 state of affairs

2024-05-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: bcedd586deb75674791e772a06f4a70724d30848
  
https://github.com/Perl/perl5/commit/bcedd586deb75674791e772a06f4a70724d30848
  Author: Karl Williamson 
  Date:   2024-05-15 (Wed, 15 May 2024)

  Changed paths:
M pod/perllocale.pod
M t/porting/known_pod_issues.dat

  Log Message:
  ---
  perllocale: Update for 5.40 state of affairs

This makes corrections, and additions



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 669153: Update pod for Perl_form() and kin

2024-04-30 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 669153390055798c65bf79b39c2203858cc7e9ed
  
https://github.com/Perl/perl5/commit/669153390055798c65bf79b39c2203858cc7e9ed
  Author: Karl Williamson 
  Date:   2024-04-30 (Tue, 30 Apr 2024)

  Changed paths:
M pod/perldelta.pod
M util.c

  Log Message:
  ---
  Update pod for Perl_form() and kin

This fixes GH #22170, and includes several corrections.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 0fe487: Don't output msg for harmless use of unsupported l...

2024-04-26 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 0fe48720193fff589686a091880b8bcf7c58a54b
  
https://github.com/Perl/perl5/commit/0fe48720193fff589686a091880b8bcf7c58a54b
  Author: Karl Williamson 
  Date:   2024-04-26 (Fri, 26 Apr 2024)

  Changed paths:
M ext/POSIX/POSIX.xs
M ext/POSIX/lib/POSIX.pm
M locale.c
M perl.h

  Log Message:
  ---
  Don't output msg for harmless use of unsupported locale

This fixes GH #21562

Perl doesn't support all possible locales.  Locales that remap elements
of the ASCII character set or change their case pairs won't work fully,
for example.  Hence, some Turkish locales arent supported because
Turkish has different behavior in regard to 'I' and 'i' than other
locales that use the Latin alphabet.

The only multi-byte locales that perl supports are UTF-8 ones (and there
actually is special handling here to support Turkish).  Other multi-byte
locales can be dangerous to use, possibly crashing or hanging the Perl
interpreter.  Locales with shift states are particularly prone to this.

Since perl is written in C, there is always an underlying locale.  But
most C functions don't look at locales at all, and the Perl interpreter
takes care to call the ones that do only within the scope of 'use
locale' or for certain function calls in the POSIX:: module that always
use the program's current underlying locale.

Prior to this commit, if a dangerous locale underlied the program at
startup, a warning to that effect was emitted, even if that locale never
gets accessed.

This commit changes things so that no warning is output until and if the
dangerous underlying locale is actually attempted to be used.

Pre-existing code also deferred warnings about locales (like the Turkish
ones mentioned above) that aren't fully compatible with perl.  So it was
a simple matter to just modify this code a bit, and add some extra
checks for sane locales being in effect



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 279d5a: lib/locale.pm: Remove obsolete pod

2024-04-21 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 279d5aee014454fc4f69110f33f6a637e6574c01
  
https://github.com/Perl/perl5/commit/279d5aee014454fc4f69110f33f6a637e6574c01
  Author: Karl Williamson 
  Date:   2024-04-21 (Sun, 21 Apr 2024)

  Changed paths:
M lib/locale.pm

  Log Message:
  ---
  lib/locale.pm: Remove obsolete pod


  Commit: bc24c73ef3cf70df19a3587bd84598b539fb7708
  
https://github.com/Perl/perl5/commit/bc24c73ef3cf70df19a3587bd84598b539fb7708
  Author: Karl Williamson 
  Date:   2024-04-21 (Sun, 21 Apr 2024)

  Changed paths:
M lib/locale.pm

  Log Message:
  ---
  lib/locale.pm: Expand pod synopsis

This fixes GH #21097


Compare: https://github.com/Perl/perl5/compare/c29a53108021...bc24c73ef3cf

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] f936cd: loc_tools.pl: Fix up Windows locale gathering

2024-04-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: f936cd91ee430786a1bb6068a4a7c8362610dd5f
  
https://github.com/Perl/perl5/commit/f936cd91ee430786a1bb6068a4a7c8362610dd5f
  Author: Karl Williamson 
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
M t/loc_tools.pl

  Log Message:
  ---
  loc_tools.pl: Fix up Windows locale gathering

The code previously didn't properly check for .ACP, .OCP, and .1252
locales, and as a result the attempts to check these were not the proper
syntax and so they didn't get tested.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 0bad64: Add TODO test for GH #22062

2024-04-10 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 0bad64386aa24daf5fa28a2a8e302d7e4dcbf32a
  
https://github.com/Perl/perl5/commit/0bad64386aa24daf5fa28a2a8e302d7e4dcbf32a
  Author: Karl Williamson 
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
M ext/POSIX/t/time.t

  Log Message:
  ---
  Add TODO test for GH #22062

This will be fixed in the next commit, and the TODO removed.


  Commit: e78caca8144e26d9096bd78e6abdcb6b59a22379
  
https://github.com/Perl/perl5/commit/e78caca8144e26d9096bd78e6abdcb6b59a22379
  Author: Karl Williamson 
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
M embed.fnc
M embed.h
M ext/POSIX/lib/POSIX.pod
M ext/POSIX/t/time.t
M locale.c

  Log Message:
  ---
  Revert not using mini_mktime()

This fixes GH #22062, which has extensive discussion not repeated in
this commit message


Compare: https://github.com/Perl/perl5/compare/4a55343c55f9...e78caca8144e

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 6fc2ba: Add TODO test for GH #22062

2024-04-05 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/jkeenan/khw/revertmktime
  Home:   https://github.com/Perl/perl5
  Commit: 6fc2ba591414c8a65d2d0be36e36fc16ffb1e682
  
https://github.com/Perl/perl5/commit/6fc2ba591414c8a65d2d0be36e36fc16ffb1e682
  Author: Karl Williamson 
  Date:   2024-04-03 (Wed, 03 Apr 2024)

  Changed paths:
M ext/POSIX/t/time.t

  Log Message:
  ---
  Add TODO test for GH #22062

This will be fixed in the next commit, and the TODO removed.


  Commit: 3d28dc3019f58a8ef94aee45c071c39af7d88c10
  
https://github.com/Perl/perl5/commit/3d28dc3019f58a8ef94aee45c071c39af7d88c10
  Author: Karl Williamson 
  Date:   2024-04-04 (Thu, 04 Apr 2024)

  Changed paths:
M embed.fnc
M embed.h
M ext/POSIX/lib/POSIX.pod
M ext/POSIX/t/time.t
M locale.c

  Log Message:
  ---
  Revert not using mini_mktime()

This fixes GH #22062, which has extensive discussion not repeated in
this commit message


Compare: https://github.com/Perl/perl5/compare/6fc2ba591414%5E...3d28dc3019f5

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 8e2d66: perl.h Move ENV lock defns

2024-04-01 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 8e2d6658ad95cc17a9c0333c9f0ee9e3a03e1560
  
https://github.com/Perl/perl5/commit/8e2d6658ad95cc17a9c0333c9f0ee9e3a03e1560
  Author: Karl Williamson 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h Move ENV lock defns


  Commit: 54ea92987ca84430d44cad2d1f5e753279635f21
  
https://github.com/Perl/perl5/commit/54ea92987ca84430d44cad2d1f5e753279635f21
  Author: Karl Williamson 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Use auxiliary #define for simplicity

Prior to this commit we avoided #defining a symbol until later, so that
that fact could be used for further decisions.  But this is a bit
awkward, and so this commit introduces an additional #define that can be
used for the decisions, while defining the symbol at the place where it
makes the most sense to.


  Commit: b393f59889f07f932bfa726bac8ca3de211d3614
  
https://github.com/Perl/perl5/commit/b393f59889f07f932bfa726bac8ca3de211d3614
  Author: Karl Williamson 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Move things so gwLOCK definitions are adjacent


  Commit: eadcf592626fb22bfbbb3d7fc8213f1eea4bdc5f
  
https://github.com/Perl/perl5/commit/eadcf592626fb22bfbbb3d7fc8213f1eea4bdc5f
  Author: Karl Williamson 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Move locale macro definitions

This moves the non-lock macro definitions to after the lock ones.


  Commit: e2c324f7a9d351414e33a0a91d6df8716a61739d
  
https://github.com/Perl/perl5/commit/e2c324f7a9d351414e33a0a91d6df8716a61739d
  Author: Karl Williamson 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h Move locale mutex init/destruct

I can't find a place in this file for this to go that isn't somewhat
awkward.  Because the environment and locale mutexes are intertwined,
they naturally fit together.  One would think the basic initialization
and termination of the locale mutexes should go ahead of their use.  But
because of all the complications, that interrupts the flow of the logic
between the environment and locale mutexes, so this commit moves them to
later in the file.


Compare: https://github.com/Perl/perl5/compare/a2ad59817f19...e2c324f7a9d3

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 3d63a3: lock

2024-03-30 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 3d63a3d7a349d5155a4cb60591ba6436363fe9d6
  
https://github.com/Perl/perl5/commit/3d63a3d7a349d5155a4cb60591ba6436363fe9d6
  Author: Karl Williamson 
  Date:   2024-03-30 (Sat, 30 Mar 2024)

  Changed paths:
M lock_definitions.h
M perl.h
M reentr.c
M regen/lock_definitions.pl
M regen/reentr.pl
M util.c

  Log Message:
  ---
  lock



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] c11afd: lib/locale.t:

2024-03-30 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: c11afdbc91d680645229bf66cc2118a93aa8a8fd
  
https://github.com/Perl/perl5/commit/c11afdbc91d680645229bf66cc2118a93aa8a8fd
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 07ffafe2b49e09fdefb43ed6f55af5a5a5e8c4be
  
https://github.com/Perl/perl5/commit/07ffafe2b49e09fdefb43ed6f55af5a5a5e8c4be
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: f3f418098df0ce6d8083b57c8be668aa4e94a56c
  
https://github.com/Perl/perl5/commit/f3f418098df0ce6d8083b57c8be668aa4e94a56c
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: cddc981158d776aa4590fc18c627c2978bdc7d41
  
https://github.com/Perl/perl5/commit/cddc981158d776aa4590fc18c627c2978bdc7d41
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: 5b074092f24434eebc856ad54246b5c74c34931a
  
https://github.com/Perl/perl5/commit/5b074092f24434eebc856ad54246b5c74c34931a
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: fa5bf606ec206af209d7693206b8e8abec6d10d8
  
https://github.com/Perl/perl5/commit/fa5bf606ec206af209d7693206b8e8abec6d10d8
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 8a6e9f7268acf519f9a35010dc247e632db0c9ed
  
https://github.com/Perl/perl5/commit/8a6e9f7268acf519f9a35010dc247e632db0c9ed
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 1df2a73705835c2f5f14e1cf47eb62c07d2782cf
  
https://github.com/Perl/perl5/commit/1df2a73705835c2f5f14e1cf47eb62c07d2782cf
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: d625df97125a6b0cb4c43ef6f09f539b64b7f49d
  
https://github.com/Perl/perl5/commit/d625df97125a6b0cb4c43ef6f09f539b64b7f49d
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 5cad8684352dcb48bcc2c75e8da5dc84c9c3cdfb
  
https://github.com/Perl/perl5/commit/5cad8684352dcb48bcc2c75e8da5dc84c9c3cdfb
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: c6a0354b8c85b6141740c9c45b20820b420be02a
  
https://github.com/Perl/perl5/commit/c6a0354b8c85b6141740c9c45b20820b420be02a
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t because of sym links


  Commit: d91592269db67645281fbadf42ef345d91efcff8
  
https://github.com/Perl/perl5/commit/d91592269db67645281fbadf42ef345d91efcff8
  Author: Karl Williamson 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M cpan/Sys-Syslog/t/syslog-inet-udp.t
M cpan/Sys-Syslog/t/syslog.t

  Log Mes

[Perl/perl5] 041600: lib/locale.t:

2024-03-25 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 041600289e553e176266d14e6ec42a19931ac9ae
  
https://github.com/Perl/perl5/commit/041600289e553e176266d14e6ec42a19931ac9ae
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 6cb2d20c66c4a1c85457669b5ab237e5e2e5c7b3
  
https://github.com/Perl/perl5/commit/6cb2d20c66c4a1c85457669b5ab237e5e2e5c7b3
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: bc3d94c948dda2eb97d52e891a4311e1373586bd
  
https://github.com/Perl/perl5/commit/bc3d94c948dda2eb97d52e891a4311e1373586bd
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 354d9763d53a6707bf95cd054f2a3bf5c3c22ebf
  
https://github.com/Perl/perl5/commit/354d9763d53a6707bf95cd054f2a3bf5c3c22ebf
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: 149ed5c5a6204fce50243579b7e766326a2bf671
  
https://github.com/Perl/perl5/commit/149ed5c5a6204fce50243579b7e766326a2bf671
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: ae8a636d53976348e100810c5210e4febcd875a2
  
https://github.com/Perl/perl5/commit/ae8a636d53976348e100810c5210e4febcd875a2
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 793fcd7642c845d5ad0d4c8ccf9b2668a5ad0727
  
https://github.com/Perl/perl5/commit/793fcd7642c845d5ad0d4c8ccf9b2668a5ad0727
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: cc07f45f81f4c9102c53c68a23d8762c127408de
  
https://github.com/Perl/perl5/commit/cc07f45f81f4c9102c53c68a23d8762c127408de
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: 9772026cae3beb80f9dc0c88ce122c47510a9571
  
https://github.com/Perl/perl5/commit/9772026cae3beb80f9dc0c88ce122c47510a9571
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 6c7671ecf0c9578bfe20672bfa48b0eccf014ab4
  
https://github.com/Perl/perl5/commit/6c7671ecf0c9578bfe20672bfa48b0eccf014ab4
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: e69baaa1e3d41b5c43c7ce403488704bd85fed8b
  
https://github.com/Perl/perl5/commit/e69baaa1e3d41b5c43c7ce403488704bd85fed8b
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t because of sym links


  Commit: 416dd74255eebe271d2242c51db140d4f34c00f2
  
https://github.com/Perl/perl5/commit/416dd74255eebe271d2242c51db140d4f34c00f2
  Author: Karl Williamson 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M cpan/Sys-Syslog/t/syslog-inet-udp.t
M cpan/Sys-Syslog/t/syslog.t

  Log Mes

[Perl/perl5] 2c1e4f: lib/locale.t:

2024-03-24 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 2c1e4ff59eec0830bdc40ba8e10040a9e86ef339
  
https://github.com/Perl/perl5/commit/2c1e4ff59eec0830bdc40ba8e10040a9e86ef339
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 1cdc020324c503b4447fa0c6b10c7b344bf4174c
  
https://github.com/Perl/perl5/commit/1cdc020324c503b4447fa0c6b10c7b344bf4174c
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: b7d962c73b68ad3456da1c63ecad622fee0ec4ed
  
https://github.com/Perl/perl5/commit/b7d962c73b68ad3456da1c63ecad622fee0ec4ed
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 07324230b69aa387a6527377931d643ff47fb958
  
https://github.com/Perl/perl5/commit/07324230b69aa387a6527377931d643ff47fb958
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: 0519f2de7e462d4e1bc49eef90f8522046f8c9de
  
https://github.com/Perl/perl5/commit/0519f2de7e462d4e1bc49eef90f8522046f8c9de
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: 4e2d805c0c82ef71caffdb27e564267bb33c6b82
  
https://github.com/Perl/perl5/commit/4e2d805c0c82ef71caffdb27e564267bb33c6b82
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 789758d3f06b0bfc839b9f8a8a37b25f150c7b1b
  
https://github.com/Perl/perl5/commit/789758d3f06b0bfc839b9f8a8a37b25f150c7b1b
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 0736a5ae59e802de030bc2ab45163bff9508b926
  
https://github.com/Perl/perl5/commit/0736a5ae59e802de030bc2ab45163bff9508b926
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: ad50e157aff320eb213404b49bbfbb574dcf6e43
  
https://github.com/Perl/perl5/commit/ad50e157aff320eb213404b49bbfbb574dcf6e43
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  runconfigure: only usequery with that directory


  Commit: 98258eeff8d0f8af3b280e980e8057fc0e5c86a7
  
https://github.com/Perl/perl5/commit/98258eeff8d0f8af3b280e980e8057fc0e5c86a7
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 693a90bdb97fdb1df67cb2f995f46541dad0e0d1
  
https://github.com/Perl/perl5/commit/693a90bdb97fdb1df67cb2f995f46541dad0e0d1
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: 5b36bfd82bb1bad2986e492bb3a8f35677a9630a
  
https://github.com/Perl/perl5/commit/5b36bfd82bb1bad2986e492bb3a8f35677a9630a
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t b

[Perl/perl5] 167b7b: Keep using undocumented gcc locale feature

2024-03-21 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 167b7bb18036b7eb9a473b5e644e693edb221340
  
https://github.com/Perl/perl5/commit/167b7bb18036b7eb9a473b5e644e693edb221340
  Author: Karl Williamson 
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
M locale.c
M perl.h

  Log Message:
  ---
  Keep using undocumented gcc locale feature

Since 5.39.7, this feature has been enabled experimentally by default.
It is similar to querylocale(), found on *BSD systems.  That function
returns the current locale, and was created because this ability is
often required, and POSIX neglected to define anything for this purpose.
I'm told that the next POSIX Standard update will include a function for
this purpose.

I have been using the gcc feature successfully for years in my local
work spaces; we started this experiment to see if it worked generally.
And there have been zero reports of problems with it.

The experiment was designed to refuse to compile in 5.39.10, so as to
make sure it didn't slip into 5.40 without it being explicitly decided
to do so.  Now, the final steps in publishing 5.39.9 include bumping the
release to 5.39.10, and those can't be done with the code as-is.

This commit declares the experiment a success, and enables this feature
non-experimentally as the default, with the ability to turn it off by
passing
-Accflags=-DNO_USE_NL_LOCALE_NAME
to Configure.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 5b4732: Note that __VA_OPT__ is now standardized

2024-03-13 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 5b473284d0773521c9bd7ebc35adea4a183e8ad0
  
https://github.com/Perl/perl5/commit/5b473284d0773521c9bd7ebc35adea4a183e8ad0
  Author: Karl Williamson 
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
M pod/perlhacktips.pod

  Log Message:
  ---
  Note that __VA_OPT__ is now standardized

whereas before we said it had never been standardized



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] a8ea39: autodoc.pl: Strip any trailing blanks in output

2024-03-11 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: a8ea39937ae8a2fb20e4ab11742cbc6b5cf82e3a
  
https://github.com/Perl/perl5/commit/a8ea39937ae8a2fb20e4ab11742cbc6b5cf82e3a
  Author: Karl Williamson 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M autodoc.pl

  Log Message:
  ---
  autodoc.pl: Strip any trailing blanks in output


  Commit: dc0509e13cd6fb3e8870d63b7350025a8ba593f8
  
https://github.com/Perl/perl5/commit/dc0509e13cd6fb3e8870d63b7350025a8ba593f8
  Author: Karl Williamson 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M autodoc.pl
M regen/regen_lib.pl

  Log Message:
  ---
  Move sub from autodoc.pl to regen_lib.pl

This allows this columnar formatting to be usable by other regen
scripts.


Compare: https://github.com/Perl/perl5/compare/8ba4821755e5...dc0509e13cd6

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 8ba482: locale_threads.t: Reenable DragonFly testing

2024-03-11 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 8ba4821755e558c4c3e9092fc126a958eeef99a4
  
https://github.com/Perl/perl5/commit/8ba4821755e558c4c3e9092fc126a958eeef99a4
  Author: Karl Williamson 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M lib/locale_threads.t

  Log Message:
  ---
  locale_threads.t: Reenable DragonFly testing

This was instituted by 1d74e8214dd53cf0fa9e8c5aab3e6187685eadcd, but
ae3e9dd0b31e37357f00d0a83f0b3f4a2713f420 should have fixed this.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 3813d3: lib/locale.t:

2024-03-09 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 3813d3f10e3aacfa874645b12c166f0940b9a076
  
https://github.com/Perl/perl5/commit/3813d3f10e3aacfa874645b12c166f0940b9a076
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 9e354ea46e8e72e583bd41b532317380a8906d3f
  
https://github.com/Perl/perl5/commit/9e354ea46e8e72e583bd41b532317380a8906d3f
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: fb5e286c73e02ff5da54af50f1c56b29adf03a92
  
https://github.com/Perl/perl5/commit/fb5e286c73e02ff5da54af50f1c56b29adf03a92
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 427db73893503a5778670c3c2d898877657b15ab
  
https://github.com/Perl/perl5/commit/427db73893503a5778670c3c2d898877657b15ab
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: f701905bfd9b3109b1c681b68d1391b4c7fb6de5
  
https://github.com/Perl/perl5/commit/f701905bfd9b3109b1c681b68d1391b4c7fb6de5
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: ab51293d3a3b39ef08e048b10ceba8933e95ad26
  
https://github.com/Perl/perl5/commit/ab51293d3a3b39ef08e048b10ceba8933e95ad26
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: f5760379f96c21acb1a4c94f6f74bef3cb45e6f2
  
https://github.com/Perl/perl5/commit/f5760379f96c21acb1a4c94f6f74bef3cb45e6f2
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 34c28e63f9a2e41ff3fd7704603c55a70fb6fb84
  
https://github.com/Perl/perl5/commit/34c28e63f9a2e41ff3fd7704603c55a70fb6fb84
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: c30a1b60031a9b93d1f292fb73f9627edff6671a
  
https://github.com/Perl/perl5/commit/c30a1b60031a9b93d1f292fb73f9627edff6671a
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  runconfigure: only usequery with that directory


  Commit: 93b16a8a5bee4c966fbabb198eab707aa658cae5
  
https://github.com/Perl/perl5/commit/93b16a8a5bee4c966fbabb198eab707aa658cae5
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 13643c653975b5732aa2e77e3bf2a1c8858b602d
  
https://github.com/Perl/perl5/commit/13643c653975b5732aa2e77e3bf2a1c8858b602d
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: 96a84680f7e5de43245d97e6289837a231657d29
  
https://github.com/Perl/perl5/commit/96a84680f7e5de43245d97e6289837a231657d29
  Author: Karl Williamson 
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t b

[Perl/perl5] f9e60a: mktables: Fix indentation on a line

2024-03-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: f9e60abaf34ea14f01b2d4283245cc80892b2420
  
https://github.com/Perl/perl5/commit/f9e60abaf34ea14f01b2d4283245cc80892b2420
  Author: Karl Williamson 
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables: Fix indentation on a line


  Commit: 79944a7633a57f74dcc5d0b565c268ca9bf54cc1
  
https://github.com/Perl/perl5/commit/79944a7633a57f74dcc5d0b565c268ca9bf54cc1
  Author: Karl Williamson 
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
M regen/reentr.pl

  Log Message:
  ---
  regen/reentr.pl: Remove duplicate line

Only need to set a hash entry once to the same value


Compare: https://github.com/Perl/perl5/compare/9213b22726ee...79944a7633a5

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 2f74b6: perl.h: Remove redundant preprocessor directive

2024-03-03 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 2f74b669c300e3b7241c0f3d668729780f7085f4
  
https://github.com/Perl/perl5/commit/2f74b669c300e3b7241c0f3d668729780f7085f4
  Author: Karl Williamson 
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Remove redundant preprocessor directive

We already know we are in threads here; simplify by not testing again



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 39903e: Lock ENV mutex while changing the environment

2024-02-28 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 39903e82c49485e56b0e071534bf7de164c16a4d
  
https://github.com/Perl/perl5/commit/39903e82c49485e56b0e071534bf7de164c16a4d
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M util.c

  Log Message:
  ---
  Lock ENV mutex while changing the environment

The comments here read:

/* only the parent thread can clobber the process environment, so no need
 * to use a mutex */

But this isn't true.  What is true about it is that only one thread can
change the environment.  But the POSIX Standard explicitly states (in
section 2.9.1):

"Since multi-threaded applications are not allowed to use the
 environ variable to access or modify any environment variable while
 any other thread is concurrently modifying any environment
 variable, any function dependent on any environment variable is not
 thread-safe if another thread is modifying the environment"

In other words, the results are undefined if a thread is trying to read
the environment while another thread is modifying it.

Thus we need a write lock when performing these operations.  Threads
merely reading the environment can use a read lock.  Some code already
uses one; future commits will fix others to do so.

Since I'm unaware of any tickets involving this, I infer that it is rare
for a process to change the environment once initialization is done,
and/or we have heisenbugs which turn out to have been caused by this.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] da6fa4: regen/reentr.pl: Use hash instead of code conditio...

2024-02-28 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: da6fa4ecf03faad13ad2647326e3c2d8d8b9e350
  
https://github.com/Perl/perl5/commit/da6fa4ecf03faad13ad2647326e3c2d8d8b9e350
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M regen/reentr.pl

  Log Message:
  ---
  regen/reentr.pl: Use hash instead of code conditionals

Fill this hash with the buffer sizes instead of using conditionals in
the code to do so.  This is in preparation for more variance in the
sizes, which would otherwise increase the number of conditionals


  Commit: 1ad05b3711084e801b8a9ab53ff4675bd3bdacd3
  
https://github.com/Perl/perl5/commit/1ad05b3711084e801b8a9ab53ff4675bd3bdacd3
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M reentr.c
M regen/reentr.pl

  Log Message:
  ---
  reentr.pl: Increase strerror_r buffer size

We have seen cases where a libc strerror() buffer size of 80 is not
enough.  See https://github.com/Perl/perl5/issues/21992.

One might think our current size for strerror_r() of 256 would handle
any situation, but in looking around for this, I saw that glibc bothers
to document that theirs is 1024.  So this commit bumps it to that.


  Commit: b4d8118cfebee8a0d4f2548a9c563204938fa860
  
https://github.com/Perl/perl5/commit/b4d8118cfebee8a0d4f2548a9c563204938fa860
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M regen/reentr.pl

  Log Message:
  ---
  regen/reentr.pl: Update comments


  Commit: df145d8b760d564b45e6514fe8a6d78af46fb01d
  
https://github.com/Perl/perl5/commit/df145d8b760d564b45e6514fe8a6d78af46fb01d
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M reentr.c
M reentr.h
M regen/reentr.pl

  Log Message:
  ---
  regen/reentr.pl: Update copyright year


  Commit: ce559cb3046e1d75c6e97bfb75caca98a3f8f686
  
https://github.com/Perl/perl5/commit/ce559cb3046e1d75c6e97bfb75caca98a3f8f686
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M reentr.h
M regen/reentr.pl

  Log Message:
  ---
  regen/reentr.pl: White-space, comment


Compare: https://github.com/Perl/perl5/compare/01fa93ac353e...ce559cb3046e

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 01fa93: perl.h: Use ENV mutex even without locales

2024-02-28 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 01fa93ac353e1c48e665d9ec7559ce77f9a33155
  
https://github.com/Perl/perl5/commit/01fa93ac353e1c48e665d9ec7559ce77f9a33155
  Author: Karl Williamson 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Use ENV mutex even without locales

I think this was a typo, which our testing never encountered issues
with, since this is only triggered on a system without locales; which
are extremely rare

Locking the mutex to prevent simultaneous writes to the environment
should be independent of if we are using locales on the system.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 923395: regen/regen_lib.pl: Stop compile time warning

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 9233950dc7fe48f3657cb9c91dc1ef51bb38550b
  
https://github.com/Perl/perl5/commit/9233950dc7fe48f3657cb9c91dc1ef51bb38550b
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M regen/regen_lib.pl

  Log Message:
  ---
  regen/regen_lib.pl: Stop compile time warning

This suppresses the warning about negative repeat counts



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 571998: STRFTIME_LOCK needs an unchanging locale

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 57199857b7f5d213e48ac45fd12090897ff527d1
  
https://github.com/Perl/perl5/commit/57199857b7f5d213e48ac45fd12090897ff527d1
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  STRFTIME_LOCK needs an unchanging locale

So, the locale must be locked from being written to as well as the
environment.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 4110b0: Automatically regenerate locale_table.h

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 4110b0cc3f9162c7bd750c4d13635699a6677579
  
https://github.com/Perl/perl5/commit/4110b0cc3f9162c7bd750c4d13635699a6677579
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M MANIFEST
M Makefile.SH
M locale_table.h
M regen.pl
A regen/locale.pl
M t/porting/regen.t

  Log Message:
  ---
  Automatically regenerate locale_table.h

I got tired of editing each entry when something new comes along.

Doing this opens up new possibilities of simplification, but this commit
tries to keep the generated header as close to the original as possible.


  Commit: 42e9f419081bafc0e8acbe096abd1dd755cb961c
  
https://github.com/Perl/perl5/commit/42e9f419081bafc0e8acbe096abd1dd755cb961c
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M locale_table.h
M regen/locale.pl

  Log Message:
  ---
  locale_header.h: Add explicit #define

The previous commit made this a generated file.  Prior to this commit
one #define was omitted because it would be interpreted as 0 anyway, and
it was a pain to add to each of the entries.  But now, it is easy to
add, and tends to be clearer to have an explicit #define.


Compare: https://github.com/Perl/perl5/compare/975f9cc38365...42e9f419081b

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] b4915e: perl.h: Use Perl_croak() instead of more specific ...

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: b4915ed1b0cd58c2662234f6215102dc4c07920e
  
https://github.com/Perl/perl5/commit/b4915ed1b0cd58c2662234f6215102dc4c07920e
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Use Perl_croak() instead of more specific panic

Instead of using locale_panic_(), which is applicable for locales, use
the more generic Perl_croak().  This is in preparation for a future
commit that will use this code in other situations


  Commit: 975f9cc3836593a52298732721ba6c5294271d43
  
https://github.com/Perl/perl5/commit/975f9cc3836593a52298732721ba6c5294271d43
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Create generic reentrant locks functions

Prior to this commit, the only mutex that could be a reentrant lock was
the locale mutex.  This commit extracts the code that does that so that
other mutexes can easily be made reentrant as well.


Compare: https://github.com/Perl/perl5/compare/6fe8ec7fe224...975f9cc38365

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 6fe8ec: locale.c: Look for strict UTF-8, not loose

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 6fe8ec7fe2240308463347a0ba20fdaa8b31c560
  
https://github.com/Perl/perl5/commit/6fe8ec7fe2240308463347a0ba20fdaa8b31c560
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Look for strict UTF-8, not loose

This is a small thing, but in reading the code, I realized that we are
dealing with libc functions here; they don't traffic in Perl extensions
nor esoteric code points.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 805762: locale.c: Avoid unnecessary locale recalculation

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 805762a25116e8ef4ebf69e6e77387c750a224e0
  
https://github.com/Perl/perl5/commit/805762a25116e8ef4ebf69e6e77387c750a224e0
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Avoid unnecessary locale recalculation

In these functions, we already know the locale, so pass it to the called
function instead of NULL, so that that function won't have to
recalculate it.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] d802c7: perl.h: Move code to later in file

2024-02-27 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d802c7e194b8f37cd7a35fda1b9009a69f7ef423
  
https://github.com/Perl/perl5/commit/d802c7e194b8f37cd7a35fda1b9009a69f7ef423
  Author: Karl Williamson 
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Move code to later in file

This moves the portion of the code dealing with toggling LC_NUMERIC to
after the portion dealing with the locale and environment mutexes; thus
making those related pieces adjacent.

The diff listing however shows that env mutex code being moved, due to
the 'diff' algorithm.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 0bec5c: cpan/Compress-Raw-Bzip2 - Update to version 2.210

2024-02-26 Thread Karl Williamson via perl5-changes
  
https://github.com/Perl/perl5/commit/b07cb93233bb4392c5366e5dcbd0f7b22e3b0c3b
  Author: Paul Marquess 
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
M Porting/Maintainers.pl
M cpan/Compress-Raw-Zlib/Zlib.xs
M cpan/Compress-Raw-Zlib/lib/Compress/Raw/Zlib.pm
M cpan/Compress-Raw-Zlib/zlib-src/zconf.h

  Log Message:
  ---
  cpan/Compress-Raw-Zlib - Update to version 2.209

  2.209 26 February 2024

  * version 2.209
Mon Feb 26 15:54:39 2024 +
b8c062949b7e89a2f1643825f6b66f79b2ba3b68

  * #31 Fix build failure with "c++-compat" warnings
Mon Feb 26 15:20:07 2024 +
d9af6f896accf755fa1ef486cf128fdf66314213


  Commit: c555c469bc3ee5ef5d5ba53f20faa63a006819ce
  
https://github.com/Perl/perl5/commit/c555c469bc3ee5ef5d5ba53f20faa63a006819ce
  Author: Karl Williamson 
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
M Porting/Maintainers.pl
M cpan/Compress-Raw-Bzip2/Makefile.PL
M cpan/Compress-Raw-Bzip2/lib/Compress/Raw/Bzip2.pm
M cpan/Compress-Raw-Bzip2/private/MakeUtil.pm
M cpan/Compress-Raw-Bzip2/t/000prereq.t
M cpan/Compress-Raw-Bzip2/t/01bzip2.t
M cpan/Compress-Raw-Bzip2/t/19nonpv.t
M cpan/Compress-Raw-Zlib/Zlib.xs
M cpan/Compress-Raw-Zlib/lib/Compress/Raw/Zlib.pm
M cpan/Compress-Raw-Zlib/zlib-src/zconf.h
M cpan/IO-Compress/Makefile.PL
M cpan/IO-Compress/bin/streamzip
M cpan/IO-Compress/bin/zipdetails
M cpan/IO-Compress/lib/Compress/Zlib.pm
M cpan/IO-Compress/lib/File/GlobMapper.pm
M cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm
M cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm
M cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm
M cpan/IO-Compress/lib/IO/Compress/Base.pm
M cpan/IO-Compress/lib/IO/Compress/Base/Common.pm
M cpan/IO-Compress/lib/IO/Compress/Bzip2.pm
M cpan/IO-Compress/lib/IO/Compress/Deflate.pm
M cpan/IO-Compress/lib/IO/Compress/FAQ.pod
M cpan/IO-Compress/lib/IO/Compress/Gzip.pm
M cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm
M cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm
M cpan/IO-Compress/lib/IO/Compress/Zip.pm
M cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm
M cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm
M cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm
M cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm
M cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
M cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm
M cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm
M cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm
M cpan/IO-Compress/lib/IO/Uncompress/Base.pm
M cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm
M cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm
M cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm
M cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
M cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm
M cpan/IO-Compress/t/001bzip2.t
M cpan/IO-Compress/t/002any-transparent.t
M cpan/IO-Compress/t/004gziphdr.t
M cpan/IO-Compress/t/005defhdr.t
M cpan/IO-Compress/t/006zip.t
M cpan/IO-Compress/t/011-streamzip.t
M cpan/IO-Compress/t/01misc.t
M cpan/IO-Compress/t/020isize.t
M cpan/IO-Compress/t/050interop-gzip.t
M cpan/IO-Compress/t/101truncate-bzip2.t
M cpan/IO-Compress/t/101truncate-deflate.t
M cpan/IO-Compress/t/101truncate-gzip.t
M cpan/IO-Compress/t/101truncate-rawdeflate.t
M cpan/IO-Compress/t/101truncate-zip.t
M cpan/IO-Compress/t/105oneshot-gzip-only.t
M cpan/IO-Compress/t/105oneshot-zip-bzip2-only.t
M cpan/IO-Compress/t/105oneshot-zip-only.t
M cpan/IO-Compress/t/105oneshot-zip-store-only.t
M cpan/IO-Compress/t/107multi-zip-only.t
M cpan/IO-Compress/t/108anyunc-transparent.t
M cpan/IO-Compress/t/111const-deflate.t
M cpan/IO-Compress/t/112utf8-zip.t
M cpan/IO-Compress/t/113issues.t
M cpan/IO-Compress/t/compress/any.pl
M cpan/IO-Compress/t/compress/anyunc.pl
M cpan/IO-Compress/t/compress/destroy.pl
M cpan/IO-Compress/t/compress/encode.pl
M cpan/IO-Compress/t/compress/generic.pl
M cpan/IO-Compress/t/compress/merge.pl
M cpan/IO-Compress/t/compress/multi.pl
M cpan/IO-Compress/t/compress/newtied.pl
M cpan/IO-Compress/t/compress/oneshot.pl
M cpan/IO-Compress/t/compress/prime.pl
M cpan/IO-Compress/t/compress/tied.pl
M cpan/IO-Compress/t/compress/zlib-generic.pl
M cpan/IO-Compress/t/cz-01version.t
M cpan/IO-Compress/t/cz-03zlib-v1.t
M cpan/IO-Compress/t/cz-06gzsetp.t
M cpan/IO-Compress/t/cz-08encoding.t
M cpan/IO-Compress/t/cz-14gzopen.t
M cpan/IO-Compress/t/globmapper.t

  Log Message:
  ---
  Merge branch 'blead' into davem/tie-file-tmpdir


Compare: https://github.com/Perl/perl5/compare/ada486377b7b...c555c469bc3e

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] f4c402: perlintern: Fix misspelling

2024-02-25 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: f4c40281d5eb838e23b8179edd9d4e352f8bb14d
  
https://github.com/Perl/perl5/commit/f4c40281d5eb838e23b8179edd9d4e352f8bb14d
  Author: Karl Williamson 
  Date:   2024-02-25 (Sun, 25 Feb 2024)

  Changed paths:
M scope.c

  Log Message:
  ---
  perlintern: Fix misspelling



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 3eb347: lib/locale.t:

2024-02-22 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 3eb3477364345b47c02d88feef7454b554d3706a
  
https://github.com/Perl/perl5/commit/3eb3477364345b47c02d88feef7454b554d3706a
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: ef5894ec8590455b10be5c4e0210232047219c51
  
https://github.com/Perl/perl5/commit/ef5894ec8590455b10be5c4e0210232047219c51
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: 43993c24a0bf54ce6e28230f8a7ade4ad2861c2a
  
https://github.com/Perl/perl5/commit/43993c24a0bf54ce6e28230f8a7ade4ad2861c2a
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 94f0435af2cd21c111f2e74e57c30c604a669f36
  
https://github.com/Perl/perl5/commit/94f0435af2cd21c111f2e74e57c30c604a669f36
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: b73132bd0a2eca32668fc2b7b137a92698d295b6
  
https://github.com/Perl/perl5/commit/b73132bd0a2eca32668fc2b7b137a92698d295b6
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: 59bb8bff87a7ddda366282bc171608a76b8b49e6
  
https://github.com/Perl/perl5/commit/59bb8bff87a7ddda366282bc171608a76b8b49e6
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 69e3c5a52fcdc7051220ab14202c267a35136e35
  
https://github.com/Perl/perl5/commit/69e3c5a52fcdc7051220ab14202c267a35136e35
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 8b8452c74702bca19db4622402e11dbf2c0237b4
  
https://github.com/Perl/perl5/commit/8b8452c74702bca19db4622402e11dbf2c0237b4
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: b50b199261044ec7b5f9430c603ead9e5e6553af
  
https://github.com/Perl/perl5/commit/b50b199261044ec7b5f9430c603ead9e5e6553af
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  runconfigure: only usequery with that directory


  Commit: 7d10512d40091b9510acde916698924a26ff77a7
  
https://github.com/Perl/perl5/commit/7d10512d40091b9510acde916698924a26ff77a7
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 4af12bc3793632551711ab3f8d35662fb9ab1c28
  
https://github.com/Perl/perl5/commit/4af12bc3793632551711ab3f8d35662fb9ab1c28
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: c8e1f815ae29360c682a0b2bdcde57653b5b6c08
  
https://github.com/Perl/perl5/commit/c8e1f815ae29360c682a0b2bdcde57653b5b6c08
  Author: Karl Williamson 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t b

[Perl/perl5] 0a94c4: Revert "S_find_locale_from_environment: Handle dis...

2024-02-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 0a94c442dec7687c98b4073d823e5816ca047c31
  
https://github.com/Perl/perl5/commit/0a94c442dec7687c98b4073d823e5816ca047c31
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M locale.c
M t/run/locale.t

  Log Message:
  ---
  Revert "S_find_locale_from_environment: Handle disparate LC_ALL"

This reverts commit ec083d3e824ac77199917066653c26780cf26bb0.


  Commit: 3f64593f62241e4c04b6a5988627682fd03a8254
  
https://github.com/Perl/perl5/commit/3f64593f62241e4c04b6a5988627682fd03a8254
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  Revert "t/run/locale.t: Add test"

This reverts commit 28b41f6baf95fe40466e5ee3e349550c7c4e85ee.


Compare: https://github.com/Perl/perl5/compare/f3634657d37c...3f64593f6224

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 664573: Silence inconsequential warnings in win32/perlhost.h.

2024-02-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 664573799bb539f232b72c810e4c74c78d9a8327
  
https://github.com/Perl/perl5/commit/664573799bb539f232b72c810e4c74c78d9a8327
  Author: sisyphus 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M win32/perlhost.h

  Log Message:
  ---
  Silence inconsequential warnings in win32/perlhost.h.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 69d296: lib/locale.t:

2024-02-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 69d296d8d045bffd8238c1326449c48886889346
  
https://github.com/Perl/perl5/commit/69d296d8d045bffd8238c1326449c48886889346
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 99df0f4f1df4a26b66db7788ad37136ddfba6517
  
https://github.com/Perl/perl5/commit/99df0f4f1df4a26b66db7788ad37136ddfba6517
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: 07175b9133124001b72139ae1b491e62b093ba7a
  
https://github.com/Perl/perl5/commit/07175b9133124001b72139ae1b491e62b093ba7a
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 50c59359017dde85d1b133c5ed46560e1cb7a6c6
  
https://github.com/Perl/perl5/commit/50c59359017dde85d1b133c5ed46560e1cb7a6c6
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: a140a1aaa6b761185331d4ca7026bbf0dcdff16b
  
https://github.com/Perl/perl5/commit/a140a1aaa6b761185331d4ca7026bbf0dcdff16b
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: d01160da7355fc2c98b9c0a0c78e4695a048d9c0
  
https://github.com/Perl/perl5/commit/d01160da7355fc2c98b9c0a0c78e4695a048d9c0
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 0a737c41a2f4e8d05d88660e24aa12cbff5b903f
  
https://github.com/Perl/perl5/commit/0a737c41a2f4e8d05d88660e24aa12cbff5b903f
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 840d4eab304f4b7f790b751f48fab5a01671245c
  
https://github.com/Perl/perl5/commit/840d4eab304f4b7f790b751f48fab5a01671245c
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: dcdfbd8fe35a23bfa1933cab1a8caf70bbcaecf5
  
https://github.com/Perl/perl5/commit/dcdfbd8fe35a23bfa1933cab1a8caf70bbcaecf5
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  runconfigure: only usequery with that directory


  Commit: d5f0736ee2076ddb0b07af9fbb797a0dc4f26afb
  
https://github.com/Perl/perl5/commit/d5f0736ee2076ddb0b07af9fbb797a0dc4f26afb
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 09f68e1a769095557e39d310fa85990f683da525
  
https://github.com/Perl/perl5/commit/09f68e1a769095557e39d310fa85990f683da525
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: b7e147e4fcc652718f726e21c974fade5bf1e101
  
https://github.com/Perl/perl5/commit/b7e147e4fcc652718f726e21c974fade5bf1e101
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t b

[Perl/perl5] 4c5d32: locale.c: Don't compile ALT_DIGITS code if not rea...

2024-02-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 4c5d32abd8f355904f47ba4b462a39ae57f560fc
  
https://github.com/Perl/perl5/commit/4c5d32abd8f355904f47ba4b462a39ae57f560fc
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Don't compile ALT_DIGITS code if not reached

We know in some cases that a platform won't ever execute the code to
compute ALT_DIGITS.  Windows and OpenBSD are two examples.  Windows
because it doesn't support the strftime() %O modifier; OpenBSD because
the LC_TIME locale can only ever be C, which has no ALT_DIGITS.

In such cases, we can skip compiling the ALT_DIGIT code.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 819c46: locale.c,perl.c: Clean up MULTIPLICITY vs USE_THREADS

2024-02-19 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 819c46dc1a9aa3dc49364b96096e67170ef1c947
  
https://github.com/Perl/perl5/commit/819c46dc1a9aa3dc49364b96096e67170ef1c947
  Author: Karl Williamson 
  Date:   2024-02-19 (Mon, 19 Feb 2024)

  Changed paths:
M locale.c
M perl.c

  Log Message:
  ---
  locale.c,perl.c: Clean up MULTIPLICITY vs USE_THREADS

I believe I finally understand the difference between these, and this
commit is the result.

Under MULTIPLICITY, for locale.c, it:

1) Updates comments to reflect reality
2) displays the aTHX in DEBUGGING statements.
3) Uses reentrant mbrtowc vs non-reentrant mbtowc

Under multiplicity, for perl.c, it avoids a leak.  PL_cur_locale_obj is
created whenever there is MULTIPLICITY, not just when threaded, so needs
to be destroyed whenever MULTIPLICITY.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] a1af65: locale.c: Add missing semi-colon after statement

2024-02-18 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: a1af65b9a8c729f85832cb52d980644b184808e8
  
https://github.com/Perl/perl5/commit/a1af65b9a8c729f85832cb52d980644b184808e8
  Author: Karl Williamson 
  Date:   2024-02-18 (Sun, 18 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Add missing semi-colon after statement



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] d8a000: Fix warning in run/locale.t

2024-02-18 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d8a0004d9e4c079449dff3e78306b2cd5252c405
  
https://github.com/Perl/perl5/commit/d8a0004d9e4c079449dff3e78306b2cd5252c405
  Author: Karl Williamson 
  Date:   2024-02-18 (Sun, 18 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  Fix warning in run/locale.t

A test in this file checks that garbage in the environment is properly
handled.  But some shells (notably bash) warn when LC_ALL is set to a
non-existent locale.  This commit avoids using a shell to do the setting
up of the environment.

This was spotted by Dave Mitchell who also provided the outlines of the
fix.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 48d447: locale.c: Don't compile thread functions unless th...

2024-02-18 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 48d447bd2de44c2551f85c61439229475688a348
  
https://github.com/Perl/perl5/commit/48d447bd2de44c2551f85c61439229475688a348
  Author: Karl Williamson 
  Date:   2024-02-18 (Sun, 18 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M locale.c
M proto.h

  Log Message:
  ---
  locale.c: Don't compile thread functions unless threaded

These functions are called only from threads.xs under USE_THREADS; omit
them otherwise.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] e0831f: lib/locale.t:

2024-02-18 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: e0831f74d99579a0af38c915caaeee8fd06eb492
  
https://github.com/Perl/perl5/commit/e0831f74d99579a0af38c915caaeee8fd06eb492
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: d61f32415444dd1b4064ba8ad5a92eab19c3936f
  
https://github.com/Perl/perl5/commit/d61f32415444dd1b4064ba8ad5a92eab19c3936f
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: f3a7ba0b2716049ac3fd4cb873e88093e612031f
  
https://github.com/Perl/perl5/commit/f3a7ba0b2716049ac3fd4cb873e88093e612031f
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: 93ceb2f9b5a18138e8a655a176e3612cbfb94a47
  
https://github.com/Perl/perl5/commit/93ceb2f9b5a18138e8a655a176e3612cbfb94a47
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: b4da5df919feae3546e9d6bbed072fb93ca8d1cc
  
https://github.com/Perl/perl5/commit/b4da5df919feae3546e9d6bbed072fb93ca8d1cc
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: 7027b1b846e014ca515f9b16f4c4a58814abcf9b
  
https://github.com/Perl/perl5/commit/7027b1b846e014ca515f9b16f4c4a58814abcf9b
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 5ea543706bf615a8d54ac991c56255f13b46356b
  
https://github.com/Perl/perl5/commit/5ea543706bf615a8d54ac991c56255f13b46356b
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  Revert "skip bincompat.t"

This reverts commit 559abf36660fef3e16d1cd33dc5aa6ca2202b88c.


  Commit: 19596fe48f650094df25b1a7c7dfe1eccfd0e950
  
https://github.com/Perl/perl5/commit/19596fe48f650094df25b1a7c7dfe1eccfd0e950
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: 9a71b6d6beff07a52d43cdf19739e788779deaae
  
https://github.com/Perl/perl5/commit/9a71b6d6beff07a52d43cdf19739e788779deaae
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  runconfigure: only usequery with that directory


  Commit: d5c705a54a37e4ceee8c4d6e06ea2917c0c2573d
  
https://github.com/Perl/perl5/commit/d5c705a54a37e4ceee8c4d6e06ea2917c0c2573d
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 5303b6be523424d4974b90c7cb21aa48f6493798
  
https://github.com/Perl/perl5/commit/5303b6be523424d4974b90c7cb21aa48f6493798
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: 9fd9f8001b9d0a8748059ecdcd9a431fb59afb5e
  
https://github.com/Perl/perl5/commit/9fd9f8001b9d0a8748059ecdcd9a431fb59afb5e
  Author: Karl Williamson 
  Date:   2024-02-17 (Sat, 17 Feb 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t b

[Perl/perl5] 06bf45: t/run/locale.t: Skip tests if no LC_CTYPE available

2024-02-16 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 06bf45d217b8026a2d8945093b4ab978b6da279d
  
https://github.com/Perl/perl5/commit/06bf45d217b8026a2d8945093b4ab978b6da279d
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  t/run/locale.t: Skip tests if no LC_CTYPE available

This is very unlikely, but it's trivial to handle the case


  Commit: dd6b98ab15eb6e332134aeac02167453f25f6ae0
  
https://github.com/Perl/perl5/commit/dd6b98ab15eb6e332134aeac02167453f25f6ae0
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  t/run/locale.t: Tests only care about LC_NUMERIC

Prior to this commit we were looking for the intersection of locales
also with LC_ALL and LC_CTYPE, but the tests are all for LC_NUMERIC, so
look just for that.  Some tests do also include LC_ALL, given that we
plan to stop supporting platforms that don't have that, and there may
not be any actual such ones that exist, I don't see any reason to
specially handle it.


  Commit: 0b479b4e4f0d72a6846630a9ce34543c75b4d515
  
https://github.com/Perl/perl5/commit/0b479b4e4f0d72a6846630a9ce34543c75b4d515
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  run/locale.t: Skip tests on positional LC_ALL syntax boxes

The syntax of LC_ALL when not all categories have the same locale varies
depending on the platform.  These tests are meaningless on platforms
where the syntax isn't name=value pairs (hence must be positional), and
now there is a Configure probe that tells us which syntax it is.


  Commit: 0054aed7fa9b91872336192cc92d8fc2b6e9c511
  
https://github.com/Perl/perl5/commit/0054aed7fa9b91872336192cc92d8fc2b6e9c511
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M t/run/locale.t

  Log Message:
  ---
  t/run/locale.t: Improve comment


Compare: https://github.com/Perl/perl5/compare/cd2a47ced7df...0054aed7fa9b

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] cd2a47: lib/locale.t: Try LC_CTYPE before LC_ALL

2024-02-16 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: cd2a47ced7df706c27328718535e6b4498801cab
  
https://github.com/Perl/perl5/commit/cd2a47ced7df706c27328718535e6b4498801cab
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t: Try LC_CTYPE before LC_ALL

Prior to this commit, locales were found looking for both LC_ALL and
LC_CTYPE.  What we really want is LC_CTYPE, and LC_ALL is a fallback.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] e5ec95: ext/I18N::Langinfo/Langinfo.t: Make more general

2024-02-16 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: e5ec9552e339f70b7893f22536ab6e3e219d74f1
  
https://github.com/Perl/perl5/commit/e5ec9552e339f70b7893f22536ab6e3e219d74f1
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M ext/I18N-Langinfo/t/Langinfo.t

  Log Message:
  ---
  ext/I18N::Langinfo/Langinfo.t: Make more general

Prior to this commit, the candidate locales to test were the ones that
were available in both LC_NUMERIC and LC_MONETARY.  For platforms that
have one of those categories restricted, this resulted in the other
category not being tested fully.

Now the available locales for each category are determined
independently.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] bf417a: locale.c: Remove duplication in macro definitions

2024-02-16 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: bf417a015914f5ff9c4d42e765c9488bbd4637e7
  
https://github.com/Perl/perl5/commit/bf417a015914f5ff9c4d42e765c9488bbd4637e7
  Author: Karl Williamson 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Remove duplication in macro definitions

Because of the vagaries of locale handling on various platforms, there
are three separate implementations in this file of locale interactions
with libc.  These have been designed to present a common API to higher
level code, and it turns out that each implementation can be completely
defined by just two macros.  These macros present almost the same
interface to the caller, but have very different expansions.

The interface to the caller varies only by the parameter type.  If this
were C++, there would be two method names, and the compiler would decide
which version to call depending on the parameter type.

But it is plain C, and so there are three different versions of each of
the two macros, with suffixes in the names indicating the parameter type.

There are also three other derivaties of one of the macros.

Before this commit this underlying simplicity was obscured by each
implementation defining all 9 of its macros.  But it only has to define
the two, and common code later can define the 7 derivative ones.

Some of the implementations call libc functions that take a locale
category number; others call functions that use an index into an array.
For efficiency, each implementation defines the macro that interfaces
most naturally with its called functions.

Thus there are two variations of the common derived macros, defining
them in terms of the macro form the implementation defined.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications


[Perl/perl5] 72037d: t/loc_tools: Don't return duplicates

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 72037da85136f154d449810d4f3dc86919be5b4b
  
https://github.com/Perl/perl5/commit/72037da85136f154d449810d4f3dc86919be5b4b
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M t/loc_tools.pl

  Log Message:
  ---
  t/loc_tools: Don't return duplicates

Make sure the return of find_locales() (and hence any internal subs
that call it) has no repeated locale names.




[Perl/perl5] 7cced8: locale mutexes: Win32 are general without simulating

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 7cced8b4b0731e40618d02bddf3a2ca1601f71e7
  
https://github.com/Perl/perl5/commit/7cced8b4b0731e40618d02bddf3a2ca1601f71e7
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  locale mutexes: Win32 are general without simulating

We can get rid of the simulation needed for other platforms.




[Perl/perl5] cdd7c5: locale.c: Swap the order of two functions

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: cdd7c53423dcf955fb42855aa016fda9d31eac6a
  
https://github.com/Perl/perl5/commit/cdd7c53423dcf955fb42855aa016fda9d31eac6a
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Swap the order of two functions

The new ordering will make the diffs less in the next commit, and will
make just as much sense going forward as the previous ordering.


  Commit: 48e13c73f8ef9673271e1fbf897f63d3015082be
  
https://github.com/Perl/perl5/commit/48e13c73f8ef9673271e1fbf897f63d3015082be
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M locale.c
M proto.h

  Log Message:
  ---
  locale.c: Pass locale to strftime functions

This will allow a future commit to reduce the amount of time spent in a
critical section.

It requires the least duplication of code for this commit to create a
new function sv_strftime_common() which takes over the bulk of the code
from sv_strftime_tm(), which becomes just a small wrapper.  The new
function adds a 'locale' parameter, and the other functions that now
need to know the locale get it, and then call this new function.


  Commit: 21c86441f401ad5bf84e6df10e39c5ab251a9e32
  
https://github.com/Perl/perl5/commit/21c86441f401ad5bf84e6df10e39c5ab251a9e32
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Shorten critical section times

Toggling a category's locale has a cost, so if there are a bunch of
operations that are going to be done in a row in a particular toggled
state, it makes sense to toggle once, do them all, then toggle back.
Most of the toggling in this file is short term, but there are a few
places where it is advantageous to toggle once.

But on some Configurations, toggling creates a critical, uninterruptible
section.  For these, keeping the amount of time spent in such a state
without letting other threads execute needs to be as short as feasible,
and this outweighs the cost of toggling and retoggling.

This commit balances these competing needs by creating new macros for
those cases where we want to have an overarching toggle.  Those macros
become no-ops when the toggling creates an uninterruptible section.
Thus, when there is a cost to remaining toggled for longer periods,
those macros don't do anything, and the macros that are at the point of
the actual need are the ones that do the toggling/retoggling.  In the
Configurations where there isn't such a cost, the overarching macros
kick in, and the shorter-term ones find that the state is already
toggled, and they return without doing anything.


Compare: https://github.com/Perl/perl5/compare/b0e1190490d1...21c86441f401


[Perl/perl5] b0e119: locale.c: Reorder a few functions

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: b0e1190490d1d667ff44bf035311136ad3799769
  
https://github.com/Perl/perl5/commit/b0e1190490d1d667ff44bf035311136ad3799769
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Reorder a few functions

This file is mostly organized by closely related functions being grouped
together.  This commit moves a few outliers.




[Perl/perl5] 533560: locale.c: Move unnecessary work out of toggled state

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 5335601b6b6a88f5244d09fd2c1e531a1918ec12
  
https://github.com/Perl/perl5/commit/5335601b6b6a88f5244d09fd2c1e531a1918ec12
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Move unnecessary work out of toggled state

In some Configurations, toggling the locale can interfere with other
executing threads.  As of GH #21908, the current Configurations where
this is true are critical sections.  This commit takes one such place
and moves unnecessary work to outside the critical section/toggled
locale.

The downside of this change is that we may have to retoggle to the
locale later in the called function get_locale_string_utf8ness_i(),
which may call is_locale_utf8().  This would be wasted effort in those
Configurations where toggling doesn't interfere, but often the toggling
is avoided, in part because of caching, and in part because the most
frequent calls to this function result in ASCII data which don't require
toggling.

A scheme could be created to avoid any such possibility, but I don't
think it's worth it.




[Perl/perl5] ea98be: locale.c: Don't compile unused function

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: ea98beac8b0e867a26343f8d5fb1520bf0ecac4d
  
https://github.com/Perl/perl5/commit/ea98beac8b0e867a26343f8d5fb1520bf0ecac4d
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M proto.h

  Log Message:
  ---
  locale.c: Don't compile unused function

Since 0b52bb633d8c55bb15f05cdb19a4b7cb071ea271, this function isn't used
unless localeconv() is available.  Don't compile it unless that is true.




[Perl/perl5] b9382a: lib/locale_threads.t: Change variable names

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: b9382a43dcb2b07b7baeb88401cad46ca283dc61
  
https://github.com/Perl/perl5/commit/b9382a43dcb2b07b7baeb88401cad46ca283dc61
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M lib/locale_threads.t

  Log Message:
  ---
  lib/locale_threads.t: Change variable names

Using 'set' as opposed to 'group' is clearer.




[Perl/perl5] bee790: locale.c: Special case C locale LC_ADDRESS country...

2024-02-15 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: bee790e641d2772336a72c405717440cbde7ac33
  
https://github.com/Perl/perl5/commit/bee790e641d2772336a72c405717440cbde7ac33
  Author: Karl Williamson 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Special case C locale LC_ADDRESS country number

Some glibc implementations are returning random garbage for this in the
C locale.  The country number is known to be 0 for that locale, so just
use that and avoid calling glibc.




[Perl/perl5] ebec9c: makedef.pl: PL_cur_locale_obj is only POSIX 2008 m...

2024-02-14 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: ebec9c595662482d4bd6aafd655125e25b061d44
  
https://github.com/Perl/perl5/commit/ebec9c595662482d4bd6aafd655125e25b061d44
  Author: Karl Williamson 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M makedef.pl

  Log Message:
  ---
  makedef.pl: PL_cur_locale_obj is only POSIX 2008 multiplicity




[Perl/perl5] d35fff: locale.c: Remove unnecessary assertions

2024-02-14 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d35fffc19e9fcc44e479e3e3ce83778620d537ff
  
https://github.com/Perl/perl5/commit/d35fffc19e9fcc44e479e3e3ce83778620d537ff
  Author: Karl Williamson 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Remove unnecessary assertions

These assertions come from a time that the parameter they each check was
an 'unsigned', even though the legal values were actually between 0 and
at most about 12, depending on the platform.   The check just validated
that the value was in the platform's proper range.  Later, an enum was
created to represent this information, and the parameter's type was
changed to be this enum.  So the compiler ensures that the value is in
range, and there's no need for us to explicitly check it as well.




[Perl/perl5] 14ace7: perlfunc: %j format is no long unportable

2024-02-14 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 14ace789037370b25dd0d513dcc251e70290d72f
  
https://github.com/Perl/perl5/commit/14ace789037370b25dd0d513dcc251e70290d72f
  Author: Karl Williamson 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M pod/perlfunc.pod

  Log Message:
  ---
  perlfunc: %j format is no long unportable

Clarify its pod




[Perl/perl5] 36ed4b: locale.c: Use widest int type for parameter

2024-02-14 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 36ed4b5cddb7a210db757ace5bdad96b1776ea08
  
https://github.com/Perl/perl5/commit/36ed4b5cddb7a210db757ace5bdad96b1776ea08
  Author: Karl Williamson 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M embed.fnc
M locale.c
M proto.h

  Log Message:
  ---
  locale.c: Use widest int type for parameter

nl_langinfo() is a libc function, specified by POSIX, that returns
information about some particular element of a locale.  Which element is
desired is passed to nl_langinfo() via a parameter with a typedef of
'nl_item'.  What that typedef actually is is opaque to perl.  On my
Linux glibc, it is an 'int', but it could just as easily be an enum.
POSIX lists all the elements that nl_langinfo() should handle, but some
platforms have extensions beyond those.  Perl aims to handle any
somewhat prominent such extension, which means it needs fallbacks if the
particular item isn't available on a given platform.

emulate_langinfo() is used to handle such fallbacks.  If an element
isn't available on a platform, perl has to create an element number that
doesn't clash with any nl_item one.  perl also has to cope with
platforms that don't have nl_langinfo() at all (Win32 is one).  In this
case it has to create an 'nl_item' typedef.  We use 'int'.

So emulate_langinfo() has to be able to handle an 'int' or whatever the
system specifies an nl_item may be.  This could be a 'long' or a
'long long'.  The only way to do that is to make the parameter as wide
as the the platform permits.  That is what this commit does.

This commit also casts the item to the widest possible value with
corresponding %j format for display in a Debug statement in the
sv_langinfo_i() function.




[Perl/perl5] 28bee1: perl_langinfo.h: Fix typos

2024-02-13 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 28bee18f1c59c1a0842da61ad3e9cdff4cf42b20
  
https://github.com/Perl/perl5/commit/28bee18f1c59c1a0842da61ad3e9cdff4cf42b20
  Author: Karl Williamson 
  Date:   2024-02-13 (Tue, 13 Feb 2024)

  Changed paths:
M perl_langinfo.h

  Log Message:
  ---
  perl_langinfo.h: Fix typos

Commit 7fa3c53d55c304560ddc569ba9ae6760380eb112 added these lines; the
problem is that each should have had a trailing underscore in the names.




[Perl/perl5] cfc8e8: locale_threads.t: Better handle weird locales

2024-02-12 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: cfc8e8a4ca7f7e04fee2c671bd8eec76b07bba1e
  
https://github.com/Perl/perl5/commit/cfc8e8a4ca7f7e04fee2c671bd8eec76b07bba1e
  Author: Karl Williamson 
  Date:   2024-02-12 (Mon, 12 Feb 2024)

  Changed paths:
M lib/locale_threads.t

  Log Message:
  ---
  locale_threads.t: Better handle weird locales

The previous code was generating bunches of uninitialized variable
warnings, due to 1) not checking for definedness early; 2) the loop
termination needs to be reevaluated each time because there is a
potential splice, shortening the array.

This only happens, I believe, on MingW not using UCRT.




[Perl/perl5] 941444: perlapi: Add detail to sv_setpv_bufsize()

2024-02-12 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 94144432cd6b311eddc4502f9ef0a0ab85184039
  
https://github.com/Perl/perl5/commit/94144432cd6b311eddc4502f9ef0a0ab85184039
  Author: Karl Williamson 
  Date:   2024-02-12 (Mon, 12 Feb 2024)

  Changed paths:
M sv.c

  Log Message:
  ---
  perlapi: Add detail to sv_setpv_bufsize()




[Perl/perl5] 2b9ba1: locale.c: Each toggle locale must have matching re...

2024-02-09 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 2b9ba1b947dd0f0741670247b62dadd0f5260deb
  
https://github.com/Perl/perl5/commit/2b9ba1b947dd0f0741670247b62dadd0f5260deb
  Author: Karl Williamson 
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Each toggle locale must have matching restore

The next commit will want this symmetry, which until now hasn't
mattered.


  Commit: 43675576d7be4038995e4ddfb4d2ea132a626ec8
  
https://github.com/Perl/perl5/commit/43675576d7be4038995e4ddfb4d2ea132a626ec8
  Author: Karl Williamson 
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Use a critical section when locale is toggled

Sometimes the locale for a category has to be toggled to some other
locale, when the desired value is for a locale that isn't the current
one.

This doesn't present any problem when locales are thread-safe.  The
locale gets toggled back before any other work is done.

But when locales are not thread-safe and we have threads, another thread
can execute in the now-wrong locale.  Perl, for a few releases now,
tries to mitigate the issues with running locales under threads when
yhread-safe locales are not in use, for mitigations that are easy to do.
These very well may make things work for applications that don't change
locales very much; say only on startup.

But now perl itself changes locales briefly behind an application's
back.  It turns out it is easy to add a lock that will keep threads that
otherwise would work to continue to work.

That's what this commit does, by adding TOGGLE_LOCK and TOGGLE_UNLOCK
macros that are no-ops for all but the unsafe-threaded locale
implementation.

The unused parameter to the macros is for future use.


Compare: https://github.com/Perl/perl5/compare/48c6b5da1dc5...43675576d7be


[Perl/perl5] 72cca9: Add ability to emulate thread-safe locale operations

2024-02-09 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 72cca921141163fecc7a16a78d5950f9a3e80432
  
https://github.com/Perl/perl5/commit/72cca921141163fecc7a16a78d5950f9a3e80432
  Author: Karl Williamson 
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M embedvar.h
M handy.h
M inline.h
M intrpvar.h
M locale.c
M makedef.pl
M mg.c
M perl.c
M perl.h
M pod/perlvar.pod
M proto.h
M sv.c

  Log Message:
  ---
  Add ability to emulate thread-safe locale operations

Locale information was originally global for an entire process.  Later,
it was realized that different threads could want to be running in
different locales.  Windows added this ability, and POSIX 2008 followed
suit (though using a completely different API).  When available, perl
automatically uses these capabilities.

But many platforms have neither, or their implementation, such as on
Darwin, is buggy.  This commit adds the capability for Perl programs to
operate as if the platform were thread-safe.

This implementation is based on the observation that the underlying
locale matters only to relatively few libc calls, and only during their
execution.  It can be anything at all at any other time.  perl keeps
what the proper locale should be for each category in a a per-thread
array.  Each locale-dependent operation must be wrapped in mutex
lock/unlock operations.  The lock additionally compares what libc knows
the locale to be, and what it should be for this thread at this time,
and changes the actual locale to the proper value if necessary.  That's
all that is needed.

This commit adds macros to perl.h, for example "MBTOWC_LOCK_", that
expand to do the mutex lock, and change the global locale to the
expected value.  On perls built without this emulation capability, they
are no-ops.  All code in the perl core (unless I've missed something),
are changed to use these macros (there weren't actually many places that
needed this).  Thus, any pure perl program will automatically become
locale-thread-safe under this Configuration.

In order for XS code to also become locale-thread-safe, it must use
these macros to wrap calls to locale-dependent functions.  Relatively
few modules call such functions.  For example, the only one I found that
ships with the perl core is Time::Piece, and it has more fundamental
issues with running under threads than this.  I am preparing pull
requests for it.

Thus, this is not completely transparent to code like native-thread-safe
locale handling is.  Therefore ${^SAFE_LOCALES} returns 2 (instead of 1)
for this type of thread-safety.

Another deficiency compared to the native thread safety is when a thread
calls a non-perl library that accesses the locale.  The typical example is
Gtk (though this particular application can be configured to not be
problematic).  With the native safe threads, everything works as long as
only one such thread is used per Perl program.  That thread would then
be the only one operating in the global locale, hence there are no
conflicts.  With this emulation, all threads are operating in the global
locale, and mutexes would have to be used to prevent conflicts.  To
minimize those, the code added in this commit restores the global locale
when through to the state it was in when started.

A major concern is the performance impact.  This is after all trading
speed for accuracy.  lib/locale_threads.t is noticeably slower when this
is being used.  But that is doing multiple threads constantly using
locale-dependent operations.  I don't notice any change with the rest of
the test suite.  In pure perl, this only comes into play while in the
scope of 'use locale' or when using some of the few POSIX:: functions
that are locale-dependent.  And to some extent when formatting, but the
regular overhead there should dwarf what this adds.

This commit leaves this feature off by default.  The next commit changes
that for the next few 5.39 development releases, so we can see if there
is actually an issue.


  Commit: ced23ace06c24f7f1860c407aa29af170fbdeb3d
  
https://github.com/Perl/perl5/commit/ced23ace06c24f7f1860c407aa29af170fbdeb3d
  Author: Karl Williamson 
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
M locale.c
M makedef.pl
M perl.h

  Log Message:
  ---
  Experimentally enable per-thread locale emulation

This is set to end in 5.39.10, but will give us field experience in the
meantime.


  Commit: c20ca85ae09adfdda187920c8fcdd1b43f03dcdf
  
https://github.com/Perl/perl5/commit/c20ca85ae09adfdda187920c8fcdd1b43f03dcdf
  Author: Karl Williamson 
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
M makedef.pl
M perl.h

  Log Message:
  ---
  Don't do thread-safe locales emulation on mingw

MingW when compiled with the Universal C runtime (UCRT) is thread-safe
with respect to locales, just as VS 2015 and la

[Perl/perl5] 97bd10: lib/locale.t:

2024-02-08 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 97bd10fb57ec53f2b530fa9e518855b030360038
  
https://github.com/Perl/perl5/commit/97bd10fb57ec53f2b530fa9e518855b030360038
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 4a6082257fe61224954d5dc9aac8f127620fd1e7
  
https://github.com/Perl/perl5/commit/4a6082257fe61224954d5dc9aac8f127620fd1e7
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: bb7bdc6ac915d1d850e1317c3ad699c1adef2db4
  
https://github.com/Perl/perl5/commit/bb7bdc6ac915d1d850e1317c3ad699c1adef2db4
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: f57e455d9c2b8cfddc50dfd5f6625f7f5268dd5a
  
https://github.com/Perl/perl5/commit/f57e455d9c2b8cfddc50dfd5f6625f7f5268dd5a
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: ee6529a392a68d980b2866ce7d6fad64d1cf04aa
  
https://github.com/Perl/perl5/commit/ee6529a392a68d980b2866ce7d6fad64d1cf04aa
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: afb4ee1aa9c0550f1cf9a67e0050e40afd8a44f3
  
https://github.com/Perl/perl5/commit/afb4ee1aa9c0550f1cf9a67e0050e40afd8a44f3
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 98bc22d4601bb7b6502286231b556e02154ba190
  
https://github.com/Perl/perl5/commit/98bc22d4601bb7b6502286231b556e02154ba190
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: 2ad45e5f746d6d5ed577e3d5abafaa05ba787ffd
  
https://github.com/Perl/perl5/commit/2ad45e5f746d6d5ed577e3d5abafaa05ba787ffd
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 4e174ff491474862136c09b0a8c25e7e3ae517a0
  
https://github.com/Perl/perl5/commit/4e174ff491474862136c09b0a8c25e7e3ae517a0
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: 61565ad41d8c28d1c9380f11b162ad448204bf5a
  
https://github.com/Perl/perl5/commit/61565ad41d8c28d1c9380f11b162ad448204bf5a
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t because of sym links


  Commit: 243a210c254a34bb1c5256391008d3b4d1439061
  
https://github.com/Perl/perl5/commit/243a210c254a34bb1c5256391008d3b4d1439061
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M cpan/Sys-Syslog/t/syslog-inet-udp.t
M cpan/Sys-Syslog/t/syslog.t

  Log Message:
  ---
  XXX skip syslog tests because fail without LC_TIME


  Commit: 2a4191d171ec7bb7b4df51ebcac30396f32d6979
  
https://github.com/Perl/perl5/commit/2a4191d171ec7bb7b4df51ebcac30396f32d6979
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M dist/Tie-File/t/29a_upcopy.t

  Log Message:
  ---
  up timeout

[Perl/perl5] 85a3d7: embed.fnc: Match formal parameter name

2024-02-08 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 85a3d7082f1f125abdbb30bf7284971241384652
  
https://github.com/Perl/perl5/commit/85a3d7082f1f125abdbb30bf7284971241384652
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M embed.fnc
M proto.h

  Log Message:
  ---
  embed.fnc: Match formal parameter name

with that used in the actual function




[Perl/perl5] 05b8d3: Don't mortalize my_localeconv() for internal use

2024-02-08 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 05b8d3da76ae0dad22084a59705bcd769e24d06b
  
https://github.com/Perl/perl5/commit/05b8d3da76ae0dad22084a59705bcd769e24d06b
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  Don't mortalize my_localeconv() for internal use

For external consumption, retain the mortalization; but for internal
explicitly decrement the reference count when done.




[Perl/perl5] 934d12: perl.h: Clarify comment

2024-02-08 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 934d12ea622a543d5befb821fd0268864d7c21fc
  
https://github.com/Perl/perl5/commit/934d12ea622a543d5befb821fd0268864d7c21fc
  Author: Karl Williamson 
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Clarify comment




[Perl/perl5] 5f0866: locale.c: Avoid copies

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 5f086631753d72fa4c8ef0fb5e82ee8a9073f9c3
  
https://github.com/Perl/perl5/commit/5f086631753d72fa4c8ef0fb5e82ee8a9073f9c3
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Avoid copies

Refactoring slightly as suggested by Tony Cook avoids having to make two
copies in some circumstances.




[Perl/perl5] e5c2d3: Avoid unnecessary mutex lock on Windows

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: e5c2d3e727814fcfe067f1ee4a71109b8ff2a92c
  
https://github.com/Perl/perl5/commit/e5c2d3e727814fcfe067f1ee4a71109b8ff2a92c
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M hints/freebsd.sh
M locale.c

  Log Message:
  ---
  Avoid unnecessary mutex lock on Windows

It turns out that Windows since VS 2015 has a completely thread-safe
localeconv() function, with its result stored in a per-thread buffer.
MingW when built with the Universal C Run Time (UCRT) also has this
property.  These are the only implementations of localeconv() I know of
like this.

There is thus no need to have a critical section on these platforms.

This commit abstracts this, so that other platforms can be added if
found to be thread-safe.


  Commit: de957aa6f7fb26fdb92ae48ca7037276b88fd8f6
  
https://github.com/Perl/perl5/commit/de957aa6f7fb26fdb92ae48ca7037276b88fd8f6
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Combine some Win32 #directives

This creates a teardown macro that is empty if unneeded, to reduce the
number of #if directives in this function


  Commit: 8e242e6850168078d76e26707b5beeb56f7b9c13
  
https://github.com/Perl/perl5/commit/8e242e6850168078d76e26707b5beeb56f7b9c13
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: White space only

This mainly outdents some #directives which are no longer within the
control of another #directive removed in a previous commit.


  Commit: 37f948bc236afb3a8e36100dc25c00b191935b97
  
https://github.com/Perl/perl5/commit/37f948bc236afb3a8e36100dc25c00b191935b97
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Do simple adjustment in a critical section

This adjustment was deferred until after the critical section, but it is
only an extra conditional and variable set, whose time should be dwarfed
by the store to the hash, so I think it's all right to add it to the
critical section.


  Commit: 9ea33191b4761c5947f472494b38cbf61a21b8bb
  
https://github.com/Perl/perl5/commit/9ea33191b4761c5947f472494b38cbf61a21b8bb
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  Do localeconv() adjustments immediately unthreaded

localeconv() must be called and its struct processed in a critical
section when other threads or embedded perls could also be using it.
Something like StructCopy can't be used to save its values, as a deep
copy is needed.  Some of the processing can be expensive, so is deferred
to a separate pass after the critical section.

But if no critical section is needed, it's cheaper to do the processing
as we go along doing the copy.  A comment removed in this commit said
that the reason this wasn't done was because of an extra maintenance
cost (having to maintain the code in two places).  But when I actually
looked at what it would like like to do this, I found it is essentially
just an extra function call, not enough "extra" to worry about.


Compare: https://github.com/Perl/perl5/compare/b6ac642e0c63...9ea33191b476


[Perl/perl5] b6ac64: embed.fnc: Don't compile undefined function

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: b6ac642e0c634eb686764eea92af294114f806ef
  
https://github.com/Perl/perl5/commit/b6ac642e0c634eb686764eea92af294114f806ef
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M proto.h

  Log Message:
  ---
  embed.fnc: Don't compile undefined function

This function now is defined only when USE_LOCALE is #defined; move its
specification in embed.fnc accordingly




[Perl/perl5] 6b961c: locale.c: Reword comment for clarity

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 6b961c8ec83bb5142514a7a0c45b8cc88041
  
https://github.com/Perl/perl5/commit/6b961c8ec83bb5142514a7a0c45b8cc88041
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Reword comment for clarity


  Commit: 86e593981b20f11fc201eef9e42f4cc3c87c9cfe
  
https://github.com/Perl/perl5/commit/86e593981b20f11fc201eef9e42f4cc3c87c9cfe
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M lib/locale.t
M locale.c

  Log Message:
  ---
  Accept 0 for first alternate digit when no nl_langinfo()

Commit 85857715f96ef9f591dd5ca0322dc293e1f07867 allows a locale to have
an ASCII digit 0 to be the first alternate digit.  This is to
accommodate locales without a zero (such as Roman numerals) to use the
modern day Western 0, and still have the rest of the digits be
alternates.

This commit extends that to perl's emulation of nl_langinfo() on systems
that lack that libc function.


Compare: https://github.com/Perl/perl5/compare/95e3939ea385...86e593981b20


[Perl/perl5] 95e393: Add comment to sv_setpv_freshbuf

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 95e3939ea385470fd6154876bb366b5eb5f470f1
  
https://github.com/Perl/perl5/commit/95e3939ea385470fd6154876bb366b5eb5f470f1
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M sv_inline.h

  Log Message:
  ---
  Add comment to sv_setpv_freshbuf




[Perl/perl5] fb061b: locale.c: Two loop indices are confined to an enum

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: fb061bb65e1e2610a5726ef07d30d985a10c8cb0
  
https://github.com/Perl/perl5/commit/fb061bb65e1e2610a5726ef07d30d985a10c8cb0
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Two loop indices are confined to an enum

They don't take on all possible unsigned values.  Create a macro to do
the casting necessary for some compilers


  Commit: 22c3dc5f312204252cf5791c33177d6c87e809d0
  
https://github.com/Perl/perl5/commit/22c3dc5f312204252cf5791c33177d6c87e809d0
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Use macro created in previous commit

This is a more general macro than these others, which can be rewritten
more simply in terms of it.


Compare: https://github.com/Perl/perl5/compare/574e1eb30a24...22c3dc5f3122


[Perl/perl5] 574e1e: locale.c: Use SvPV_nomg_const_nolen() over SvPV_n...

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 574e1eb30a24112d3f24f8b9ca24289b56daea11
  
https://github.com/Perl/perl5/commit/574e1eb30a24112d3f24f8b9ca24289b56daea11
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Use  SvPV_nomg_const_nolen() over SvPV_nolen()

The new way is the same call earlier in the function, and should have
been that one from the beginning




[Perl/perl5] bbfe49: Add cautionary comment to mktables

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: bbfe49cc8ec1967921106d819efb384499e6bc27
  
https://github.com/Perl/perl5/commit/bbfe49cc8ec1967921106d819efb384499e6bc27
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  Add cautionary comment to mktables




[Perl/perl5] 8749dd: Add ability to emulate thread-safe locale operations

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 8749dd46d2e966183cc4d36ea2fb0c26bac0a01d
  
https://github.com/Perl/perl5/commit/8749dd46d2e966183cc4d36ea2fb0c26bac0a01d
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M embedvar.h
M handy.h
M inline.h
M intrpvar.h
M locale.c
M makedef.pl
M mg.c
M perl.c
M perl.h
M pod/perlvar.pod
M proto.h
M sv.c

  Log Message:
  ---
  Add ability to emulate thread-safe locale operations

Locale information was originally global for an entire process.  Later,
it was realized that different threads could want to be running in
different locales.  Windows added this ability, and POSIX 2008 followed
suit (though using a completely different API).  When available, perl
automatically uses these capabilities.

But many platforms have neither, or their implementation, such as on
Darwin, is buggy.  This commit adds the capability for Perl programs to
operate as if the platform were thread-safe.

This implementation is based on the observation that the underlying
locale matters only to relatively few libc calls, and only during their
execution.  It can be anything at all at any other time.  perl keeps
what the proper locale should be for each category in a a per-thread
array.  Each locale-dependent operation must be wrapped in mutex
lock/unlock operations.  The lock additionally compares what libc knows
the locale to be, and what it should be for this thread at this time,
and changes the actual locale to the proper value if necessary.  That's
all that is needed.

This commit adds macros to perl.h, for example "MBTOWC_LOCK_", that
expand to do the mutex lock, and change the global locale to the
expected value.  On perls built without this emulation capability, they
are no-ops.  All code in the perl core (unless I've missed something),
are changed to use these macros (there weren't actually many places that
needed this).  Thus, any pure perl program will automatically become
locale-thread-safe under this Configuration.

In order for XS code to also become locale-thread-safe, it must use
these macros to wrap calls to locale-dependent functions.  Relatively
few modules call such functions.  For example, the only one I found that
ships with the perl core is Time::Piece, and it has more fundamental
issues with running under threads than this.  I am preparing pull
requests for it.

Thus, this is not completely transparent to code like native-thread-safe
locale handling is.  Therefore ${^SAFE_LOCALES} returns 2 (instead of 1)
for this type of thread-safety.

Another deficiency compared to the native thread safety is when a thread
calls a non-perl library that accesses the locale.  The typical example is
Gtk (though this particular application can be configured to not be
problematic).  With the native safe threads, everything works as long as
only one such thread is used per Perl program.  That thread would then
be the only one operating in the global locale, hence there are no
conflicts.  With this emulation, all threads are operating in the global
locale, and mutexes would have to be used to prevent conflicts.  To
minimize those, the code added in this commit restores the global locale
when through to the state it was in when started.

A major concern is the performance impact.  This is after all trading
speed for accuracy.  lib/locale_threads.t is noticeably slower when this
is being used.  But that is doing multiple threads constantly using
locale-dependent operations.  I don't notice any change with the rest of
the test suite.  In pure perl, this only comes into play while in the
scope of 'use locale' or when using some of the few POSIX:: functions
that are locale-dependent.  And to some extent when formatting, but the
regular overhead there should dwarf what this adds.

This commit leaves this feature off by default.  The next commit changes
that for the next few 5.39 development releases, so we can see if there
is actually an issue.


  Commit: 533be7e935dadffc0138f89bf9b9b8433103a01f
  
https://github.com/Perl/perl5/commit/533be7e935dadffc0138f89bf9b9b8433103a01f
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  DEBUG Lv to U


  Commit: 0689950acba5f2bb99e831a857a0e91b692dbe51
  
https://github.com/Perl/perl5/commit/0689950acba5f2bb99e831a857a0e91b692dbe51
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  extra debug


  Commit: 3f14c5c7c1961a7e2b969e8f5c0c0085985235e0
  
https://github.com/Perl/perl5/commit/3f14c5c7c1961a7e2b969e8f5c0c0085985235e0
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  f some emul old implement

[Perl/perl5] 3b2659: lib/locale.t:

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/smoke-me/khw-env
  Home:   https://github.com/Perl/perl5
  Commit: 3b265980df2371a10c1d9cec35f72ea9df6fff44
  
https://github.com/Perl/perl5/commit/3b265980df2371a10c1d9cec35f72ea9df6fff44
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M lib/locale.t

  Log Message:
  ---
  lib/locale.t:

Fixes #21697.

On some platforms, a locale name is specified in the code page (or
code set) that applies to it, rather than plain ASCII.  Windows, and
hence MingW, is the prime example.

The locale name for a particular Turkish variety found in MingW is
"Turkish_T?.1254" where the question marks represent different
characters that have meaning in the 1254 code page, but would look like
mojibake if I had reproduced their actual values here.

When doing a setlocale() here, if the current code page is incompatible
with the new one, it will fail; if compatible it will succeed.

On my box running MingW, locales are tried out by this test file in
alphabetical order, and the one before this Turkish happens to be Thai,
with a code page of 874.  Apparently 1254 is not compatible with 874, so
switching directly from Thai to Turkish fails.

The solution is to switch into a neutral code page before switching into
one being trialed.  "C" works in this case, and I suspect in all others.


  Commit: 6e06d90af35c07b848848ee308c958efeecae39c
  
https://github.com/Perl/perl5/commit/6e06d90af35c07b848848ee308c958efeecae39c
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M charclass_invlists.h
M lib/unicore/Makefile
M lib/unicore/mktables
M lib/unicore/uni_keywords.pl
M regcharclass.h
M uni_keywords.h

  Log Message:
  ---
  mktables more verbose


  Commit: d816a7e00e5c50dcb5c4f0315c138c7a14c59ce4
  
https://github.com/Perl/perl5/commit/d816a7e00e5c50dcb5c4f0315c138c7a14c59ce4
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm

  Log Message:
  ---
  BlackBox dont use rare scripts


  Commit: afc6cfdc575d9385d0910014764f61df3e943a2e
  
https://github.com/Perl/perl5/commit/afc6cfdc575d9385d0910014764f61df3e943a2e
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX t/harness temp tweaks


  Commit: 933253d348597db5469341a2757cc2a5b373897a
  
https://github.com/Perl/perl5/commit/933253d348597db5469341a2757cc2a5b373897a
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/harness

  Log Message:
  ---
  XXX skip croak.t under sanitizer


  Commit: 467adb8f433a2de7ab9ed71ca319405ebf93e201
  
https://github.com/Perl/perl5/commit/467adb8f433a2de7ab9ed71ca319405ebf93e201
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/porting/bincompat.t

  Log Message:
  ---
  skip bincompat.t


  Commit: 5ba58ca7feeefdab8147ecfdc43d575911eab609
  
https://github.com/Perl/perl5/commit/5ba58ca7feeefdab8147ecfdc43d575911eab609
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Skip cpan testing message


  Commit: 36e862998783e281e5ed232652ae3f9e97c37246
  
https://github.com/Perl/perl5/commit/36e862998783e281e5ed232652ae3f9e97c37246
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/TEST

  Log Message:
  ---
  Also skip non-thread dist testing


  Commit: 9bf0a2ab2b878483503b203466185686082cfcba
  
https://github.com/Perl/perl5/commit/9bf0a2ab2b878483503b203466185686082cfcba
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M cpan/Archive-Tar/t/02_methods.t

  Log Message:
  ---
  XXX skip Archive-Tar because of symlinks


  Commit: 8054e5e434028f39df2d8d5a21a47c6add06c474
  
https://github.com/Perl/perl5/commit/8054e5e434028f39df2d8d5a21a47c6add06c474
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M t/porting/cmp_version.t

  Log Message:
  ---
  XXX skip cmp_version.t because of sym links


  Commit: c366ab0f0aded5b331ac07f6155654f3d0c102b6
  
https://github.com/Perl/perl5/commit/c366ab0f0aded5b331ac07f6155654f3d0c102b6
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M cpan/Sys-Syslog/t/syslog-inet-udp.t
M cpan/Sys-Syslog/t/syslog.t

  Log Message:
  ---
  XXX skip syslog tests because fail without LC_TIME


  Commit: 4cc7ce8db816cdd5a4be74382662615a4f5f02e8
  
https://github.com/Perl/perl5/commit/4cc7ce8db816cdd5a4be74382662615a4f5f02e8
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M dist/Tie-File/t/29a_upcopy.t

  Log Message:
  ---
  up timeout

[Perl/perl5] 36e41d: Don't use both mini_mktime() and mkttime()

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 36e41d53ff6a5995c16234f8027ef34b5e6a34cc
  
https://github.com/Perl/perl5/commit/36e41d53ff6a5995c16234f8027ef34b5e6a34cc
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  Don't use both mini_mktime() and mkttime()

mini_mktime() has less overhead than libc mkttime(), but it doesn't get
all the desired fields on all platforms.  Prior to this commit, both got
called on such platforms, roughly doubling the amount of time spent.
So just use the slightly more expensive function on those platforms and
avoid that redundant overhead.

The only glitch I've seen is that mktime() likely doesn't handle leap
seconds the same way mini_mktime() does; so this calls both functions
for those very rare instances.




[Perl/perl5] ebb7a9: perlapi, av.h: Need "apidoc_item"

2024-02-07 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: ebb7a94b17bb2e45f958ffc5aabe0eae70625523
  
https://github.com/Perl/perl5/commit/ebb7a94b17bb2e45f958ffc5aabe0eae70625523
  Author: Karl Williamson 
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
M av.h

  Log Message:
  ---
  perlapi, av.h: Need "apidoc_item"

Commit 0d564a3d013287cf0880fdc3264f30c20fe6188d added docs for
newAV_mortal, but it needed to use "apidoc_item", not plain "apidoc".

Not doing so resulted in this build time warning:

Empty pod for newAV (from av.h) at autodoc.pl line 1265.

and the resulting pod/perlapi.pod was incorrect.

Plain "apidoc" is used to begin a new entry.  "apidoc_item" is for
related subsidiary functions to the main entry.

Suggestions welcome as to how to make this relationship more obvious.
Perhaps it should be renamed "apidoc_sub_item"




[Perl/perl5] c2f1b4: locale.c: Make sure UTF-8 flag is off on a scalar

2024-02-06 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: c2f1b40217a871eef84004606e02345a46f0bb08
  
https://github.com/Perl/perl5/commit/c2f1b40217a871eef84004606e02345a46f0bb08
  Author: Karl Williamson 
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Make sure UTF-8 flag is off on a scalar

The contents of this scalar at this moment are the name of a code set,
such as CP1252, UTF-8, 8859-1, etc.  I believe all such names contain
just ASCII characters.

I finally got around to checking if the sv_setpvf() functions clear the
UTF-8 flag.  They don't.  GH #21921 adds documentation to that effect.

One of those functions was used to populate this SV.  Since the result
is ASCII, the UTF-8 flag is immaterial except for performance.  Prior to
this commit, it retained its previous value, but its better practice
(and can speed things up a bit) to turn it off for ASCII content.




[Perl/perl5] d630fe: locale.c: Combine some preprocessor directives

2024-02-06 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d630fe44d3be7e1d5d3d43bc845d554a6563ed32
  
https://github.com/Perl/perl5/commit/d630fe44d3be7e1d5d3d43bc845d554a6563ed32
  Author: Karl Williamson 
  Date:   2024-02-06 (Tue, 06 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Combine some preprocessor directives

This function is full of #if conditionals, due to the high variance in
what the capabilities of platforms are.

I tried various methods to lessen the cognitive load, like turning it
into separate functions that each suit a particular Configuration, but
it was just as complicated as before.

The code is doing set up, then the actual operation, then teardown.  The
actual operation is invariant.  What this commit does is for some of the
setup conditionals to define its own teardown macro.  The result is the
teardown looks much cleaner, and there is no possibility that it will
get out-of-sync with the setup.

This commit also causes there to be a matching restore for each toggle.
That symmetry will become important for future commits.




[Perl/perl5] 4bc38a: locale.c: Avoid unused param warnings

2024-02-05 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 4bc38a58492a2e5e6969736c458479a9a49c0277
  
https://github.com/Perl/perl5/commit/4bc38a58492a2e5e6969736c458479a9a49c0277
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Avoid unused param warnings

Under some configurations the three declarations here warned; the #ifdef
was missing a term




[Perl/perl5] 1c4adc: locale.c: Don't compile unused function

2024-02-05 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 1c4adc26f5bdb3ba84ab28c4643ace7a2c3b5c3e
  
https://github.com/Perl/perl5/commit/1c4adc26f5bdb3ba84ab28c4643ace7a2c3b5c3e
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M locale.c
M proto.h

  Log Message:
  ---
  locale.c: Don't compile unused function

Since 60e050beb2e45ebd7ead7f1bf93f845b23c474b5, this function is no
longer called if -DNO_LOCALE has been specified.  Don't compile it when
not called.




[Perl/perl5] 1957c6: locale.c: Change API for static strftime-related f...

2024-02-05 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 1957c60d0591397316cff390fd9a8419e8bd09fb
  
https://github.com/Perl/perl5/commit/1957c60d0591397316cff390fd9a8419e8bd09fb
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M embed.fnc
M embed.h
M locale.c
M proto.h

  Log Message:
  ---
  locale.c: Change API for static strftime-related functions

This changes these functions to be called with an additional SV
parameter; their return becomes a bool success/fail.

This presents a couple of advantages:

libc strftime() now writes directly to the SV's PV, eliminating copying
or using sv_usepvn().

For internal calls where the result is immediately consumed entirely in
this file, we can use the already-existing scratch SV as the
destination.  This SV gets reused over and over, and likely will soon
reach a large enough size so that it doesn't have to grow.  Prior to
this commit, a size was guessed each time and the space freed
immediately after each use.


  Commit: ddfeae48f6c77103c15415fb29321dffc6da2d2f
  
https://github.com/Perl/perl5/commit/ddfeae48f6c77103c15415fb29321dffc6da2d2f
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M locale.c

  Log Message:
  ---
  locale.c: Change formal parameter name

The previous commit makes the current name somewhat ambiguous; so change
it and add comments clarifying its use.


Compare: https://github.com/Perl/perl5/compare/7fa3c53d55c3...ddfeae48f6c7


[Perl/perl5] f20e69: C preprocessor doesn't understand 'false' means

2024-02-05 Thread Karl Williamson via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: f20e69808c0b02f338f8818e3a575d0b98cbf58d
  
https://github.com/Perl/perl5/commit/f20e69808c0b02f338f8818e3a575d0b98cbf58d
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M locale_table.h

  Log Message:
  ---
  C preprocessor doesn't understand 'false' means 0

So use 0 instead; 1 instead of 'true'


  Commit: 309cbdacfa05dd3d4bfd6d1d37d56b5d20bdc897
  
https://github.com/Perl/perl5/commit/309cbdacfa05dd3d4bfd6d1d37d56b5d20bdc897
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M perl.h

  Log Message:
  ---
  perl.h: Move #include to earlier

The next commit will want this header's information to be available for
perl_langinfo.h.


  Commit: 7fa3c53d55c304560ddc569ba9ae6760380eb112
  
https://github.com/Perl/perl5/commit/7fa3c53d55c304560ddc569ba9ae6760380eb112
  Author: Karl Williamson 
  Date:   2024-02-05 (Mon, 05 Feb 2024)

  Changed paths:
M locale.c
M perl_langinfo.h

  Log Message:
  ---
  locale.c: Compile/call S_emulate_langinfo in more Configurations

This will not compile if -DNO_LOCALE is specified, as well as
some other Configurations where various locale categories are missing or
confined to be the C locale.


Compare: https://github.com/Perl/perl5/compare/186963089729...7fa3c53d55c3


  1   2   3   4   5   6   7   8   9   10   >