Closed p5pRT closed 10 years ago
On Wed\, Jul 17\, 2013 at 4:12 PM\, Father Chrysostomos via RT \perlbug\-followup@​perl\.org wrote:
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
The patch is in the new Perl-Toolchain-Gang repo.
I'll try to ship it tonight.
David
-- David Golden \xdg@​xdg\.me Take back your inbox! â http://www.bunchmail.com/ Twitter/IRC: @xdg
Parse-CPAN-Meta-1.4405.tar.gz
has entered CPAN as
file: $CPAN/authors/id/D/DA/ DAGOLDEN/Parse-CPAN-Meta-1.4405.tar.gz size: 20876 bytes md5: f9025240afbd3fd98e34964609732b8b
On Wed\, Jul 17\, 2013 at 4:59 PM\, David Golden \xdg@​xdg\.me wrote:
On Wed\, Jul 17\, 2013 at 4:12 PM\, Father Chrysostomos via RT \perlbug\-followup@​perl\.org wrote:
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
The patch is in the new Perl-Toolchain-Gang repo.
I'll try to ship it tonight.
David
-- David Golden \xdg@​xdg\.me Take back your inbox! â http://www.bunchmail.com/ Twitter/IRC: @xdg
-- David Golden \xdg@​xdg\.me Take back your inbox! â http://www.bunchmail.com/ Twitter/IRC: @xdg
On Wed Jul 17 18:47:35 2013\, xdg@xdg.me wrote:
Parse\-CPAN\-Meta\-1\.4405\.tar\.gz
has entered CPAN as
file: $CPAN/authors/id/D/DA/ DAGOLDEN/Parse-CPAN-Meta-1.4405.tar.gz size: 20876 bytes md5: f9025240afbd3fd98e34964609732b8b
Thank you.
--
Father Chrysostomos
On 2013-07-17 22:12\, Father Chrysostomos via RT wrote:
On Wed Jul 17 12:37:07 2013\, niels@thykier.net wrote:
[...]
Included is a patch to add the op_folded member and my previous patch has been rebased on top of it.
RE: op_folded-patch - I made OPpCONST_FOLDED redundant internally in the code (i.e. perl does the right thing even without it). However\, I left it in (and kept it maintained) for now until B::Concise can be updated. I presume that will involve exposing op_folded via B.pm\, which I have left as "future work" for now. I made no attempt to have it replace OPf_SPECIAL on the regexp/tr operators either.
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
Revised warning patch attached with more tests. Thanks to Reini Urban for smoke testing CPAN and reminding me that exit is a unary operator (so it is not even safe to use "||" with exit).
~Niels
On Thu\, Jul 18\, 2013 at 6:05 PM\, Niels Thykier \niels@​thykier\.net wrote:
On 2013-07-17 22:12\, Father Chrysostomos via RT wrote:
On Wed Jul 17 12:37:07 2013\, niels@thykier.net wrote:
Included is a patch to add the op_folded member and my previous patch has been rebased on top of it.
RE: op_folded-patch - I made OPpCONST_FOLDED redundant internally in the code (i.e. perl does the right thing even without it). However\, I left it in (and kept it maintained) for now until B::Concise can be updated. I presume that will involve exposing op_folded via B.pm\, which I have left as "future work" for now. I made no attempt to have it replace OPf_SPECIAL on the regexp/tr operators either.
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
Revised warning patch attached with more tests. Thanks to Reini Urban for smoke testing CPAN and reminding me that exit is a unary operator (so it is not even safe to use "||" with exit).
LGTM.
These are the bugs we found so far:
Perl-Critic [cpan #87032] wrong return precedence in Perl::Critic::Utils::interpolate YAML-Syck [cpan #87034] precedence error in inc/Test/Builder.pm DBI [cpan #87029] Possible precedence issue with control flow operator at ./t/16destroy.t Git-CPAN-Patch [cpan #86950] wrong return or precedence (fixed) Apache-SWIT [cpan #86949] return expr or precedence error Parse-CPAN-Meta - fixed with 1.4405
JSON-PP (no ticket yet) Test-Simple (no ticket yet)
I needed the following patch to extend B for folded (and the other missing fields)\, and to fix dump.
And the 2nd patch is a hint for the upstream maintainers.
When I fixed all B modules to use the new B\, we can get rid of the OPpCONST_FOLDED and have one more private bit free for CONSTs. B::C and ByteLoader already done. B-Generate has more problems with blead.
-- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/
On 2013-07-19 06:22\, Reini Urban wrote:
On Thu\, Jul 18\, 2013 at 6:05 PM\, Niels Thykier \niels@​thykier\.net wrote:
[...]
Revised warning patch attached with more tests. Thanks to Reini Urban for smoke testing CPAN and reminding me that exit is a unary operator (so it is not even safe to use "||" with exit).
LGTM.
These are the bugs we found so far:
Perl-Critic [cpan #87032] wrong return precedence in Perl::Critic::Utils::interpolate YAML-Syck [cpan #87034] precedence error in inc/Test/Builder.pm DBI [cpan #87029] Possible precedence issue with control flow operator at ./t/16destroy.t Git-CPAN-Patch [cpan #86950] wrong return or precedence (fixed) Apache-SWIT [cpan #86949] return expr or precedence error Parse-CPAN-Meta - fixed with 1.4405
Great. :)
JSON-PP (no ticket yet) Test-Simple (no ticket yet)
I believe these are filed:
* https://rt.cpan.org/Public/Bug/Display.html?id=86948 * https://github.com/schwern/test-more/pull/385
I needed the following patch to extend B for folded (and the other missing fields)\, and to fix dump.
And the 2nd patch is a hint for the upstream maintainers.
When I fixed all B modules to use the new B\, we can get rid of the OPpCONST_FOLDED and have one more private bit free for CONSTs. B::C and ByteLoader already done. B-Generate has more problems with blead.
-- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/
Sounds good to me. :)
~Niels
CPAN updates on this after the night run:
+ DBI [cpan #87029] (fixed) * Git-CPAN-Patch [cpan #86950] (fixed) * Parse-CPAN-Meta (fixed)
* Perl-Critic [cpan #87032] * YAML-Syck [cpan #87034] * Apache-SWIT [cpan #86949] + JSON-PP [cpan #86948] + HTML-Mason [cpan #87050] + IO-Async [cpan #87051] + IO-Socket-SSL [cpan #87052] + Test-Simple [cpan #87053] + https://github.com/schwern/test-more/pull/385
all patches also in my distroprefs: https://github.com/rurban/distroprefs -- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/
On Wed Jul 17 12:37:07 2013\, niels@thykier.net wrote:
On 2013-07-17 18:56\, Father Chrysostomos via RT wrote:
On Wed Jul 17 01:30:56 2013\, niels@thykier.net wrote:
[...]
You wrote "also set op->op_folded" and later imply the change could simplify the code by using the same bit. Just to confirm here\, did you want the "op_folded" member replace OPpCONST_FOLDED and (for regexp/tr operators) OPf_SPECIAL?
That would be nice. But it is not a prerequisite for getting your patch in. :-)
And if so\, should OPf_SPECIAL still be set in these cases since it is a public flag or should it be cleared so we can repurpose it?
I think (off the top of my head) that B::Deparse currently uses it. So B::Deparse may have to change. I donât remember now.
OPf_SPECIAL is a private flag\, at least in terms of its use\, but stored with the public flags.
Included is a patch to add the op_folded member and my previous patch has been rebased on top of it.
RE: op_folded-patch - I made OPpCONST_FOLDED redundant internally in the code (i.e. perl does the right thing even without it). However\, I left it in (and kept it maintained) for now until B::Concise can be updated. I presume that will involve exposing op_folded via B.pm\, which I have left as "future work" for now. I made no attempt to have it replace OPf_SPECIAL on the regexp/tr operators either.
Thank you. I have applied the op_folded patch as 3513c7400.
The warning patch will again have to wait\, as your more thorough version of the patch triggers other warnings\, causing other test failures\, as I am sure you well know.
--
Father Chrysostomos
On Thu Jul 18 21:23:27 2013\, rurban wrote:
On Thu\, Jul 18\, 2013 at 6:05 PM\, Niels Thykier \niels@​thykier\.net wrote:
On 2013-07-17 22:12\, Father Chrysostomos via RT wrote:
On Wed Jul 17 12:37:07 2013\, niels@thykier.net wrote:
Included is a patch to add the op_folded member and my previous patch has been rebased on top of it.
RE: op_folded-patch - I made OPpCONST_FOLDED redundant internally in the code (i.e. perl does the right thing even without it). However\, I left it in (and kept it maintained) for now until B::Concise can be updated. I presume that will involve exposing op_folded via B.pm\, which I have left as "future work" for now. I made no attempt to have it replace OPf_SPECIAL on the regexp/tr operators either.
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
Revised warning patch attached with more tests. Thanks to Reini Urban for smoke testing CPAN and reminding me that exit is a unary operator (so it is not even safe to use "||" with exit).
LGTM.
These are the bugs we found so far:
Perl-Critic [cpan #87032] wrong return precedence in Perl::Critic::Utils::interpolate YAML-Syck [cpan #87034] precedence error in inc/Test/Builder.pm DBI [cpan #87029] Possible precedence issue with control flow operator at ./t/16destroy.t Git-CPAN-Patch [cpan #86950] wrong return or precedence (fixed) Apache-SWIT [cpan #86949] return expr or precedence error Parse-CPAN-Meta - fixed with 1.4405
JSON-PP (no ticket yet) Test-Simple (no ticket yet)
I needed the following patch to extend B for folded (and the other missing fields)\, and to fix dump.
And the 2nd patch is a hint for the upstream maintainers.
When I fixed all B modules to use the new B\, we can get rid of the OPpCONST_FOLDED and have one more private bit free for CONSTs. B::C and ByteLoader already done. B-Generate has more problems with blead.
Thank you. I have applied the first patch as 3164fde474d1\, but I omitted the OpFOLDED macro\, because I donât understand its purpose (or need). Nielsâ patch changes the core not to use OPpCONST_FOLDED at all\, so having a macro to check that doesnât help. If it is for B::Câs sake\, then it wonât be present in older perls anyway\, so you will still have to #define it in B::C.
--
Father Chrysostomos
On Fri\, Jul 19\, 2013 at 12:30 PM\, Father Chrysostomos via RT \perlbug\-followup@​perl\.org wrote:
On Thu Jul 18 21:23:27 2013\, rurban wrote:
On Thu\, Jul 18\, 2013 at 6:05 PM\, Niels Thykier \niels@​thykier\.net wrote:
On 2013-07-17 22:12\, Father Chrysostomos via RT wrote:
On Wed Jul 17 12:37:07 2013\, niels@thykier.net wrote:
Included is a patch to add the op_folded member and my previous patch has been rebased on top of it.
RE: op_folded-patch - I made OPpCONST_FOLDED redundant internally in the code (i.e. perl does the right thing even without it). However\, I left it in (and kept it maintained) for now until B::Concise can be updated. I presume that will involve exposing op_folded via B.pm\, which I have left as "future work" for now. I made no attempt to have it replace OPf_SPECIAL on the regexp/tr operators either.
Those patches look good. Thank you. Now we just have to wait for Parse::CPAN::Meta.
Revised warning patch attached with more tests. Thanks to Reini Urban for smoke testing CPAN and reminding me that exit is a unary operator (so it is not even safe to use "||" with exit).
LGTM.
These are the bugs we found so far:
Perl-Critic [cpan #87032] wrong return precedence in Perl::Critic::Utils::interpolate YAML-Syck [cpan #87034] precedence error in inc/Test/Builder.pm DBI [cpan #87029] Possible precedence issue with control flow operator at ./t/16destroy.t Git-CPAN-Patch [cpan #86950] wrong return or precedence (fixed) Apache-SWIT [cpan #86949] return expr or precedence error Parse-CPAN-Meta - fixed with 1.4405
JSON-PP (no ticket yet) Test-Simple (no ticket yet)
I needed the following patch to extend B for folded (and the other missing fields)\, and to fix dump.
And the 2nd patch is a hint for the upstream maintainers.
When I fixed all B modules to use the new B\, we can get rid of the OPpCONST_FOLDED and have one more private bit free for CONSTs. B::C and ByteLoader already done. B-Generate has more problems with blead.
Thank you. I have applied the first patch as 3164fde474d1\, but I omitted the OpFOLDED macro\, because I donât understand its purpose (or need). Nielsâ patch changes the core not to use OPpCONST_FOLDED at all\, so having a macro to check that doesnât help. If it is for B::Câs sake\, then it wonât be present in older perls anyway\, so you will still have to #define it in B::C.
Thanks and I'm fine with that. It thought it's a cool API for the time when we have both. But I haven't found a usecase for it yet.
So missing are:
commit 715975678ef3c57515eb6282cdaab53da6afbb46 Author: Niels Thykier \niels@​thykier\.net Date: Mon Jul 15 22:25:19 2013 +0200
op.c: Warn on "return $a or $b" [perl #59802]
Add a warning for the (likely) unintended use of "return $a or $b" (and similar expressions)\, which perl parses as "(return $a) || $b" (which is effectively just "return $a;").
Note this warning is triggered by some modules (e.g. Test::Builder). These are not fixed by this commit.
Signed-off-by: Niels Thykier \niels@​thykier\.net
commit c1f7aff8b732c59411569240ce4ffc7a83080e33 Author: Reini Urban \rurban@​x\-ray\.at Date: Thu Jul 11 12:09:15 2013 -0500
Return B::HEK for B::CV::GV of lexical subs
A lexsub has a hek instead of a gv. Provide a ref to a PV for the name in the new B::HEK class. This crashed previously accessing the not existing SvFLAGS of the hek.
-- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/
* Niels Thykier \niels@​thykier\.net [2013-07-16T04:58:01]
Here is a revised patch. [âŠ] The warning is now emitted for any of the following ops: OP_{NEXT\,LAST\,REDO\,RETURN\,DIE\,EXIT\,GOTO}
Thanks\, Niels\, this warning is something I'm very happy to see finally happening!
-- rjbs
On Mon Jul 22 14:59:51 2013\, perl.p5p@rjbs.manxome.org wrote:
* Niels Thykier \niels@​thykier\.net [2013-07-16T04:58:01]
Here is a revised patch. [âŠ] The warning is now emitted for any of the following ops: OP_{NEXT\,LAST\,REDO\,RETURN\,DIE\,EXIT\,GOTO}
Thanks\, Niels\, this warning is something I'm very happy to see finally happening!
This is currently blocked by Test::Builder. If we are to have this warning\, we probably ought to have it present in bleadperl for as long as possible\, in order to shake out CPAN bugs.
Would it be acceptable to break the usual rule and patch Test::Builder directly in blead (assigning it a previously unused dev version)?
--
Father Chrysostomos
* Father Chrysostomos via RT \perlbug\-followup@​perl\.org [2013-08-20T11:51:46]
Would it be acceptable to break the usual rule and patch Test::Builder directly in blead (assigning it a previously unused dev version)?
I've just poked Schwern both via GitHub and another channel. Let's give him a day or two to state his intentions before patching blead... which we should do if needed. (and if you do that\, please add a ticket to #116923 which I will follow up on)
-- rjbs
* Ricardo Signes \perl\.p5p@​rjbs\.manxome\.org [2013-08-22T22:17:24]
I've just poked Schwern both via GitHub and another channel. Let's give him a day or two to state his intentions before patching blead... which we should do if needed. (and if you do that\, please add a ticket to #116923 which I will follow up on)
FWIW\, Schwern is now AFK for a week or so.
-- rjbs
On Sun Aug 25 21:28:46 2013\, perl.p5p@rjbs.manxome.org wrote:
* Ricardo Signes \perl\.p5p@​rjbs\.manxome\.org [2013-08-22T22:17:24]
I've just poked Schwern both via GitHub and another channel. Let's give him a day or two to state his intentions before patching blead... which we should do if needed. (and if you do that\, please add a ticket to #116923 which I will follow up on)
FWIW\, Schwern is now AFK for a week or so.
What does AFK stand for? Asking for kippers?
--
Father Chrysostomos
On Mon\, 26 Aug 2013 00:09:12 -0700\, "Father Chrysostomos via RT" \perlbug\-followup@​perl\.org wrote:
On Sun Aug 25 21:28:46 2013\, perl.p5p@rjbs.manxome.org wrote:
* Ricardo Signes \perl\.p5p@​rjbs\.manxome\.org [2013-08-22T22:17:24]
I've just poked Schwern both via GitHub and another channel. Let's give him a day or two to state his intentions before patching blead... which we should do if needed. (and if you do that\, please add a ticket to #116923 which I will follow up on)
FWIW\, Schwern is now AFK for a week or so.
What does AFK stand for? Asking for kippers?
Away From Keyboard
http://www.acronymfinder.com/Away-From-Keyboard-(AFK).html
-- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using perl5.00307 .. 5.19 porting perl5 on HP-UX\, AIX\, and openSUSE http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/
On Tue\, Aug 20\, 2013 at 10:51 AM\, Father Chrysostomos via RT \perlbug\-followup@​perl\.org wrote:
On Mon Jul 22 14:59:51 2013\, perl.p5p@rjbs.manxome.org wrote:
* Niels Thykier \niels@​thykier\.net [2013-07-16T04:58:01]
Here is a revised patch. [âŠ] The warning is now emitted for any of the following ops: OP_{NEXT\,LAST\,REDO\,RETURN\,DIE\,EXIT\,GOTO}
Thanks\, Niels\, this warning is something I'm very happy to see finally happening!
This is currently blocked by Test::Builder. If we are to have this warning\, we probably ought to have it present in bleadperl for as long as possible\, in order to shake out CPAN bugs.
All possible CPAN bugs have already been reported by smoking CPAN with a patched bleadperl with these warning enabled last month. The fastest response was from DBI\, the slowest seems to be Test::Builder. Now only BlackPAN is the problem. Our own company blackpan was okay.
See http://blogs.perl.org/users/rurban/2013/07/smoking-cpan.html All necessary distroprefs patches are in my repo https://github.com/rurban/distroprefs
Would it be acceptable to break the usual rule and patch Test::Builder directly in blead (assigning it a previously unused dev version)?
-- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/
On Thu Aug 22 19:17:59 2013\, perl.p5p@rjbs.manxome.org wrote:
* Father Chrysostomos via RT \perlbug\-followup@​perl\.org [2013-08- 20T11:51:46]
Would it be acceptable to break the usual rule and patch Test::Builder directly in blead (assigning it a previously unused dev version)?
I've just poked Schwern both via GitHub and another channel. Let's give him a day or two to state his intentions before patching blead... which we should do if needed. (and if you do that\, please add a ticket to #116923 which I will follow up on)
I have applied Nielsâ warning patch now as 9da2d0467dc5 (thank you). His precedence patch has been applied as 13c65ef8cd5.
I have opened ticket #119825 to track this.
--
Father Chrysostomos
@cpansprout - Status changed from 'open' to 'resolved'
Migrated from rt.perl.org#59802 (status was 'resolved')
Searchable as RT59802$