[Perl/perl5] abac09: bump $DynaLoader::VERSION

2024-02-28 Thread Tony Cook via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: abac0992d7f83a488e5ef71af60b424cd52d47e1
  
https://github.com/Perl/perl5/commit/abac0992d7f83a488e5ef71af60b424cd52d47e1
  Author: Tony Cook 
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
M ext/DynaLoader/DynaLoader_pm.PL

  Log Message:
  ---
  bump $DynaLoader::VERSION



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


[Perl/perl5] d6e802: Create a new logical xor operator, spelled `^^`

2024-02-28 Thread Paul Evans via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d6e802ac91218e636dd18a9be0e1bf9b8bc40abe
  
https://github.com/Perl/perl5/commit/d6e802ac91218e636dd18a9be0e1bf9b8bc40abe
  Author: Martijn Lievaart 
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
M perly.act
M perly.h
M perly.tab
M perly.y
M pod/perlop.pod
M t/op/lop.t
M toke.c

  Log Message:
  ---
  Create a new logical xor operator, spelled `^^`

Previously, the low-precedence `xor` operator did not have a
higher-precedence logical variant, as compared `or` vs `||` and
`and` vs `&&`. This PR adds such an operator syntax, completing the
set.



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


[Perl/perl5] d3f42b: DynaLoader: dl_dyld.xs: don't undef bool

2024-02-28 Thread Tony Cook via perl5-changes
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: d3f42b8d3823ce40f4f62758562ad4c02ffa3e27
  
https://github.com/Perl/perl5/commit/d3f42b8d3823ce40f4f62758562ad4c02ffa3e27
  Author: Tony Cook 
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
M ext/DynaLoader/dl_dyld.xs

  Log Message:
  ---
  DynaLoader: dl_dyld.xs: don't undef bool

I expect this was added when we added our own bool, and before
we used bool so liberally ourselves.  Now dl_dyld.xs fails to
compile, since MY_CXT_CLONE indirectly uses UNLIKELY() which
casts to bool.

Tested locally with:

  ./Configure -des -Dusedevel -Dusethreads -Ddlsrc=dl_dyld.xs

on a modern Darwin, which failed before this change and builds
after.

Based on work done by Sevan Janiyan in #21751.

Fixes #21751



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


[Perl/perl5] babcc2: `README.haiku`: Update dead link

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

  Changed paths:
M README.haiku

  Log Message:
  ---
  `README.haiku`: Update dead link

http://ports.haiku-files.org is NXDOMAIN

Perl is here:
https://github.com/haikuports/haikuports/blob/master/dev-lang/perl/perl-5.32.1.recipe



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


[Perl/perl5] 6da402: Modernise & simplify bytes.pm

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

  Changed paths:
M MANIFEST
M Porting/Maintainers.pl
M lib/bytes.pm
M lib/bytes.t
R lib/bytes_heavy.pl

  Log Message:
  ---
  Modernise & simplify bytes.pm



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


[Perl/perl5] dee9d7: Add CI entry for static Perl

2024-02-28 Thread Leon Timmermans via perl5-changes
  Branch: refs/heads/leont/static-test
  Home:   https://github.com/Perl/perl5
  Commit: dee9d7d105de331448bb9880b16484149e261466
  
https://github.com/Perl/perl5/commit/dee9d7d105de331448bb9880b16484149e261466
  Author: Leon Timmermans 
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
M .github/workflows/testsuite.yml

  Log Message:
  ---
  Add CI entry for static Perl



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]

2024-02-28 Thread iabyn via perl5-changes
  Branch: refs/heads/davem/padsv_store_unvoid
  Home:   https://github.com/Perl/perl5

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


[Perl/perl5] dc524b: Revert "OP_PADSV_STORE: only in void context"

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

  Changed paths:
M ext/B/t/optree_varinit.t
M peep.c
M pp_hot.c
M t/perf/opcount.t

  Log Message:
  ---
  Revert "OP_PADSV_STORE: only in void context"

This is merely an optimisation, which is breaking some CPAN modules
due to expectations about particular optree structures.

Revert for now and worry about it again after 5.40 is released.

See https://github.com/Perl/perl5/issues/21822



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