Perl 5 Porters Mailing List Summary: June 16th-21st
Hey everyone,
Following is the p5p (Perl 5 Porters) mailing list summary for the past week. Enjoy!
June 16th-21st
News and updates
If you like Coro, and you are wondering about the support for perl, you can view the following patches by Dave Mitchell (mentioned below as well) that allow Coro to work correctly on perl. Whether they will be applied in Coro is a different question.
Karl Williamson updates that Unicode 9.0 Emoji is now available for adoption.
Grant reports
Issues
New issues
- Perl #128422: CPAN mirror list is out of date.
- Perl #128420: Changes in regex recursion in 5.24.
- Perl #128427:
Perl does not build on Darwin platforms with
clock_gmtime
. - Perl #128433: Specific array shifting causes panic.
- Perl #128438:
Fails to build perl 5.25.2 due to
ListUtil.xs
. - Perl #128445: Time::HiRes test failure on threaded Darwin build.
Resolved issues
- Perl #124050:
t/harness
can mistakenly run tests outside of the perl source tree. - Perl #126239:
File::Glob
GLOB_NOCHECK
documentation unclear. - Perl #128189:
Assert fail in
sv.c
with no further symptoms. - Perl #128200: Documentation shouldn't recommend Usenet.
- Perl #128213:
No deprecation warning on literal left curly bracket in
/.{/
, etc. - Perl #128215: Regexp weirdness?
- Perl #128238:
Assert fail in
gv.c
without other symptoms. - Perl #128316:
CORE::socket()
mangles EMFILE and turns it into EBADF. - Perl #128352: Bleadperl breaks Dancer2.
- Perl #128359:
Cygwin: Warning: assignment discards
const
qualifier. - Perl #128422: CPAN mirror list is out of date.
- Perl #128427:
Perl does not build on Darwin platforms with
clock_gmtime
.
Ivan Pozdeev's patch on removing superfluous -Ilib
was
merged.
Salvador Fandino's patch to fix a test of PerlIO::encoding was merged.
While Dave Mitchell fixed one warning produced by GCC 6.1, there is a disagreement on another (with an explanation) and comments on others.
Proposed patches
Jim Cromie
provides
revised patches for
Perl #127885
(enhance bench.pl
to test same perl under different options/args).
Dan Collins provided patches to test the problem presented in Perl #128420 (changes in regex recursion in 5.25).
Dave Mitchell provided revised patches for Coro which can be merged to restore the compatibility with perl.
Discussion
Dave Mitchell
comments
how
Perl #127774
(Segfault in caller()
) was properly fixed as part of the context
stack system rework, which - if you're interested in the context
stack - you might find interesting as well.
Dave Mitchell
updates
that, based on the responses in the thread discussing listing build
options in perl -V
, he made a change to list each option per
line.
On the topic of inconsistencies in memory size types in the code,
Dave Mitchell
notes
his preference on standardizing Size_t
and SSize_t
. Father
Chrysostomos adds that he prefers STRLEN
and MEM_SIZE
because
he views them as clearer. To continue this, Dagfinn Ilmari Mannsåker
had
posted
a branch that standardizes some of this. All STRLEN
and
MEM_SIZE
had been converted to Size_t
and converts ssize_t
to SSize_t
.
Aristotle Pagaltzis
provides
a good break-down on the comments made in
Perl #127684
(operators |||
and &&&
) and suggests the ticket be closed.
Dave Mitchell provides comments on
Perl #128083
(silent encoding of filenames with UTF8 flag set)
and how system
works.
Tony Cook provides additional
comments
on
Perl #127663
(safety for -i
option).
Andreas Koenig reports some verbose test results due to the new unescaped literal left-brace warning. Karl Williamson delved into the presented cases and provided a pull request to the respected author.
Dave Mitchell reverted the commit that updates Time::HiRes to 1.9735 because it causes tests to hang, until the issue is resolved.
In relation to Perl #128226 (remove the requirement for null termination on PVs), Dave Mitchell had done a survey of SvPV* in the perl source and of SvPV_* and SvPVX*.
>Dave Mitchell provided revised patches for Coro which can be merged to restore the compatibility with perl.
I have two questions.
Where are the patches?
Will Coro work well in Perl 5.26 widhout any patches?
Edit: Correct version numbers.
Hi, :)
The attachments are not visible in nntp, sorry about that. I have found the following public archive that keeps the attachments:
http://www.gossamer-threads.com/lists/perl/porters/328907#328907
Coro has been using internal interfaces which were subject to change and indeed changed. Even though some people advertised that those internal interfaces in perl core must change back in order for Coro to work, it is not true.
The patches provided are only for Coro and show that using the appropriate public interfaces, Coro can still work on 5.26. It is now up to the author of Coro to decide whether he will incorporate the patches or not.
If the author refuses to incorporate any patches or introduce any changes to how Coro works, and intends to keep using internal interfaces, Coro will not work on Perl 5.22 and above.
I hope this answers your questions.
Have a great day,
S.
> Coro has been using internal interfaces which were subject to change and indeed changed. Even though some people advertised that those internal interfaces in perl core must change back in order for Coro to work, it is not true.
Yuki, the above part of Sawyer's comment is so (deliberately?) misleading, that in practice constitutes a lie. The fallout of the change in question is neither limited to Coro[1], nor is the original motivation[2] considered worth the trouble by a large contingent of perl-folk[3].
Sawyer, I believe that your current position as Pumpking compels you to clarify/revise your earlier statement.
Thank you in advance.
[1] As stated in AP's event recap the fallout includes (but is by no means limited to) older versions of mod_perl, and an unknown number of darkpan code relying on the SWIG bindings.
[2] See last paragraph of the commit message, which was further defended by its author as recently as 2 months ago.
[3] The author and 3 reviewers of the original recap (Aristotle Pagaltzis, Andreas König, Graham Knop, Peter Rabbitson), and additionally Aaron Crane, Dave Mitchell, Paul Evans,
1. The comment, if wrong, is not deliberate. I'm sorry to have to *actually* Google the exact meaning of "lie" (because people like throwing this word around). Here it is:
"A false statement made with *deliberate intent* to deceive; an *intentional* untruth;" [Emphasis mine.]
This means that, if it was wrong *and* deliberate (it might be wrong, it is *not* deliberate), it is a lie. You can stop using that word now. (Not that I assume you would...)
2. The phrasing in the blog post you link to is inaccurate and misleading. (Not on purpose, I'm sure. No, I'm not sarcastic.) The phrasing "The workaround requires" marks it as "This is *the way* to handle this". That's not accurate. This is the way it *was* handled by a specific person. Patches to Coro posted by Dave M. prove another way is possible. Additionally, working with p5p was also an option, which the author did not pick.
3. The fact of the matter is, that the author chose to do something in a way that was not officially supported, without interacting with p5p, for his own reasons. We had (publicly) discussed reverting this and instead Nicholas Clark (with additional people) worked on proving Coro could have done it differently.
So, to summarize: Author wrote code which was *NOT* publicly supported by the core. Code broke (unintentionally). Perhaps the code should have been reverted (not the topic at hand), but changes to the Coro source proves it doesn't *have* to be reverted, unlike what was said by some people.
I don't see where I'm wrong. If you show me where, I will apologize. If you want to educate me, feel free to reach out to me directly instead of trying to make a public display of this. I assure you, I will publicly apologize if I see my mistake.
Sawyer X
thanks for your reply.
I understand whether if Coro will work well in Perl 5.26.
Peter Rabbitson
I had questions about only Coro. Sawyer X reply about it politely. Please don't blame him.