Hey everyone,

I apologize for the delay. This summary should have been sent yesterday but I was busy at the Dancer Conference in Vienna.

Following is the p5p (Perl 5 Porters) mailing list summary for the past week (including yesterday and this morning). Enjoy!

October 12th-19th

Updates

Dave Mitchell merged the regular expression substring match optimization branch!

James Keenan cleaned more tickets, namely Perl #117963, Perl #120330, and Perl #65052.

James also updates on Perl #123831 that he is able to successfully compile perl on an older Darwin system. The ticket refers to problems in some definitions the ICC compiler has which caused problems compiling perl.

Yves Orton is working on resolving what seems to be an infinite recursion error in the regex engine, raised by Perl #126182.

Steve Hay was looking at why bignum, Math::BigInt, and Math::BigInt::FastCalc are outdated in core. With input from their current maintainer, Peter John Acklam, Steve is going to update them to the latest versions available on CPAN.

Reini Urban has been banned from the p5p mailing list following uncivilized behavior displayed on the list. Ricardo Signes asked that Reini focus on technical discussions and apologize for the comments made, or resign from the list. Following a refusal to comply, Reini was banned.

Max Maischein provided his work on resolving Perl #125439 for comments.

Bulk88 submitted a patch in Perl #126377 to remove an extra stat call.

Similar to this, Bulk88 also provided a patch in Perl #126373 to reimplement the $^WIN32_SLOPPY_STAT as a magic variable. The ticket contains details of the differences before and after in a syscall log.

Lastly, Bulk88 also provided a patch in Perl #126402 to allow two perl processes to share more memory using const vtables.

Dagfinn Ilmari Mannsåker submitted a patch in Perl #126374 to fix IO::Poll's handling of empty poll arrays.

Tony Cook provides his 24th Perl 5 Grant Report.

Jarkko reported in Perl #126396 and then fixed a long double problem in IRIX.

Brian Carpenter reminds the list of null pointer dereferencing bugs, Perl #125351, Perl #125540, Perl #126191, and Perl #126192.

Filipe asks in Perl #126403 if a buffered read() call can be smarted about the chunk size it uses. He provides examples of having more system calls than needed in situations like:

read( $fh, $buffer, 30000 )

since read() always uses 8,192 byte chunks nowadays.

Bugs

Reported bugs

Perl #126368 refers to a breakage in Filesys::DfPortable.

Perl #126366, in which we're asked whether Perl works on Windows 10. Response: Yes.

Perl #126376 which displays a problem of goto interfering with a $SIG{__DIE__} handler which should be disabled with a __DIE__ handler.

Perl #126328 refers to a possible inconsistent behavior in the regexp engine behavior with different backtracking control verbs.

Perl #126343 describes a similar scenario in the regex engine.

Perl #126327 exposes a problem when, in a specific situation, an optimization in the regular expression engine does not trigger the *SKIP control verb. Yves Orton provides additional information on the original considerations and possible ways to resolve this (such as keeping the optimization but allowing a user to add a flag to disable it if they need to).

Perl #126405, reported by Dan Collins, contains a fuzzed bug, triggered by:

/(?:.||)(?|)000000000@/

Dan Collins opened Perl #126404, yet another bug found using fuzzing, triggered by:

00./(?[!()])/

and was immediately fixed by Karl Williamson.

Similar to this, Dan also opened Perl #126406, triggered by:

/.0\N{6,0}0\N{6,0}000000000000000000000000000000000/

immediately fixed by Karl Williamson.

Resolved bugs

Discussion

A very nice thank you email from Emmanuel Arias:

I couldn't be more thankful, thank you very much, guys, every problem can be resolved with Perl, it's amazing. Our customers are happy, and we are even more! You are great, guys!

Bulk88 adds more comments on the discussion with Dave Mitchell regarding debugging the Save Stack, mentioned last week.

Steve Hay raised problems compiling Socket on VC6 and pushed a fix by Bulk88 to blead.

Jarkko Hietaniemi shares some insight on problems with MacPorts lagging behind new XCode updates.

More from Jarkko's learning, a warning provided on OpenBSD regarding strcat . Detailed comment by Zefram with more context around strcat and then OpenBSD thoughts behind the warning and some information from Craig A. Berry relating to Perl specifically.

Sawyer X (yes, me) asked on the behavior of XS subroutines (XSUBs) signature checks. For a native C type signature ( int , for example), perl warns about uninitialized variables when sent undef . Vincent Pit explained this as intended behavior and why.

However, undef sent when expecting a Perl type which isn't SV * (such as CV * ) croaks (as it should) but still produces an uninitialized warning. Sawyer will attempt to provide a patch to fix this.

Steve is also reporting several failing tests on GCC Builds. Bulk88 is helping diagnose the causes.

On Mac OS X Perl has relied on setting MACOSX_DEPLOYMENT_TARGET to 10.3. On El Capitan this now fails. The problem generated a long discussion including a StackOverflow question and a conversation on a related ticket in MacPorts, not to mention tickets Perl #123985 and Perl #126360.

The end result was to use -mmacosx-version-min option, which resolves correctly on MAC OS X 10.6 and above. I think Craig A. Berry summarized it well.

Ricardo Signes is asking for an implementation of the long-discussed idea of turning use warnings to mean use warnings 'default' in order to accommodate additional sets of warnings which will not be turned on by use warnings by default. Two note-worthy emails are the summary of the actions required in the patch, by Ævar Arnfjörð Bjarmason, and commentary by Aristotle Pagaltzis.

A conversation regarding Perl #116639, regarding inlined comments in regular expressions, had resurfaced. There are two options and the discussion is taking place. A summary of the problem is provided by Karl Williamson.

Bulk88 asks about the Onion Sketch. These are two meetings that take place between the release manager and the pumpking prior to a perl release. They are made public for all to be able to know more about the process and what's going on. The last one took place on March 25th.

And, of course, the new Smart Match proposal by Dave Mitchell is still being discussed.