Perl 5 Porters Mailing List Summary: July 13th-22nd

Hey everyone,

Following is the p5p (Perl 5 Porters) mailing list summary for the past week and a half. Enjoy!

July 13th-22nd

News and updates

Perl 5.25.3 is now available!

Perl 5.24.1-RC1 is now available!

Perl 5.22.3-RC1 is now available!

This month Steve Hay is in charge of several releases: 5.22.3, 5.24.1, and 5.25.3. The first two requiring several Release Candidates each. Thanks, Steve!

Over the past week and a half, Dan Collins kept reducing the number of open tickets by checking, verifying, and possibly rejecting or providing patches for some. This is wonderful work which allows us to prune and clean up the ticket queue and be able to focus on the greater issues. While he's at it, Dan also opened a bunch of new tickets. Big thanks to Dan for all the work.

Father Chrysostomos handled various tickets that came up from bits of cleaning up. He submitted some patches to CPAN modules as well.

Father Chrysostomos also merged a branch to allow escaping on right hand side of my. Effectively, this allows my \$x as the equivalent to \my $x, which allows you to write my \$x = \$y in conjunction with refaliasing. For some background on this, this ([Perl #127531] permit \escape on right hand side of my) thread.

Matthew Horsfall suggests documenting Devel::PPPort in core to resolve Perl #54952 (Need place for "how to build old versions of perl on new platform versions"). If you are looking to do something simple in core, here's your chance!

An update from Unicode: Unicode Version 9.0 - Complete Text of the Core Specification Published.

Dave Mitchell fixed "blead fails to compile on Win32 with Bison 3".

Grant reports

Tony Cook provides his grant reports: #13 (TONYC TPF Grant 7 report 13) and #14 (TONYC TPF Grant 7 report 14).

In total, over 36 hours spent and approximately 19 tickets were reviewed or worked on, and 4 patches were applied.

Issues

New issues

  • Perl #128598: Quadmath builds fail porting/libperl.t.
  • Perl #128618: commit "locale.c: Make locale collation predictions adaptive" causes gt op SIGFPE.
  • RT#128621
  • Perl #128622: Bleadperl v5.25.2-120-ga15a3d9 breaks MIROD/XML-DOM-XPath-0.14.tar.gz.
  • Perl #128623: Bleadperl around v5.25.2-124-g370579b breaks GUGOD/Time-Verbal-1.0.0.tar.gz.
  • Perl #128627: Quadmath builds fail on Cygwin in ext/POSIX.
  • Perl #128629: locale.t on Win32 failing "Verify that strings with embedded NUL collate" and "Verify that strings with embedded NUL and extra trailing NUL collate".
  • Perl #128630: commit 15899733e changes SKIP to FAIL on Win32 in op/sprintf\.t.
  • Perl #128631: Win32 MinGW build failure.
  • Perl #128634: Unexpected: Use of freed value in iteration at ....
  • Perl #128637: Configure fails to find four ld functions on Cygwin because it doesn't want libm or libcygwin.
  • Perl #128638: Windows test failure in re/reg_mesg.
  • Perl #128639: Windows MinGW test failure in lib/warnings.
  • Perl #128643: MinGW.org builds - infnan and pack test failures due to LD handling.
  • Perl #128645: Windows MinGW test failure in lib/warnings with USE_64_BIT_INT.
  • Perl #128647: Windows MinGW-w64 pointer-integer size mismatch in extensions.
  • Perl #128649: refaliasing kills value on stack.
  • Perl #128665: Cygwin: trunc(2.75) is broken somewhere on long double builds.
  • Perl #128670: Out-of-date info on DEBUGGING in perlhacktips, perlrun.
  • Perl #128673: modfl() is horribly broken in MinGW-W64 .
  • Perl #128686: invlist_inline.h:40: S__invlist_len: Assertion fail.

Dan Collins notes that Perl #45265 (stacked declarators (my/our/state) shouldn't be legal) is now again working.

Dan opened Perl #128644 to collect portability issues directly relating to MinGW.org compilers.

Dan also opened Perl #128666 to collect problems with line number reporting.

A. Sinan Unur notes that testing Config::General consumes a lot of memory, leading to out of memory error.

Resolved issues

Rejected issues

Proposed patches

Dan Collins provided another patch for Perl #128574 (Some tests call fresh_perl* incorrectly).

Father Chrysostomos provided a patch to XML::DOM::XPath to support the change to disable ${^ENCODING}.

B::Hook::Parser and Devel::Declare both have chunks of toke.c copied, which was changed, and subsequently broke them. A patch was provided by Father Chrysostomos at Perl #128621 (Bleadperl v5.25.2-122-g3a69dad breaks ETHER/B-Hooks-Parser-0.16.tar.gz).

Father Chrysostomos also provided a patch for Time::Verbal which fixes a breakage noted in Perl #128623 (Bleadperl around v5.25.2-124-g370579b breaks GUGOD/Time-Verbal-1.0.0.tar.gz).

Father Chrysostomos provided a patch for Perl #126041 (miniperl PP glob/Perl_start_glob() wipes all of %ENV and perlglob.exe proc can't start on VC 2005/WinXP).

Achim Gratz provided a patch for Perl #128358 (Cygwin: nm detects memmem, but headers don't expose it, leading to tests crashing).

Karl Williamson provided patch for Perl #128629 (locale.t on Win32 failing "Verify that strings with embedded NUL collate" and "Verify that strings with embedded NUL and extra trailing NUL collate").

Dan Collins provided a patch for Perl #67424 (missing / incorrect overflow check when indexing arrays), currently being discussed with Zefram and Tony Cook.

Tony Cook provided a patch for Perl #128685 (Repeated installs broken in blead).

Discussion

There is a conversation going on around Perl #128438 ([Win32] 5.25.2 fails to build in ListUtil.xs) and the possible solutions to it.

Various functions in embed.fnc are marked with an a flag, which is used by GCC to optimize. However, as Dave Mitchell notes ('a' (malloc) flag in embed.fnc misused?), we're probably misusing the flag on some functions because they might return pointers to allocated memory which might then contain pointers in turn - a situation to which the flag does not apply. Dave would like to clean up the flagging.

There is an interesting discussion around Perl #128598: (Quadmath builds fail porting/libperl.t), regarding a conflict between optimized code and a test of an unsafe function. Will the optimizer keep using a safe version of an unsafe function? Should we make sure we allow a level of optimizer to optimize this? Should we just avoid the function to avoid thinking of whether it will be optimized correctly?

Dave Mitchell asks (64-bit array subscript warning test failing) whether we should skip a test on platforms where the sizeof result of SSize_t type is smaller than the size of IV. Father Chrysostomos introduces a commit that skips it.

In a thread I had a hard time following, Father Chrysostomos and Zefram discuss how to handle a stack-not-refcounted behavior. It touches on how difficult compatibility can be.

Father Chrysostomos comments on a branch Dave Mitchell is working on, suggesting a different naming convention for the ops.

Vincent Pit took a stab (Re: Confused by eval behavior) at solving at a breakage a commit (which is temporarily reverted) introduced in Variable::Magic. So far no success.

Dan Collins asks (Broken library functions, especially on windows) about a situation with failures due to broken math functions in MinGW, asking how to solve this.

Autovivification rises (Hash key creation for non-lvalue use) again in discussions as confusing behavior.

Leave a comment

About Sawyer X

user-pic Gots to do the bloggingz