Presumably cpan-upstream module changes are soaked by cpan testers
successfully before appearing in blead.
That doesn't happen with our blead-upstream patches, and that can lead
to problems.
I believe we need to institute some procedures to ensure that we don't
inadvertently break blead-upstream modules when run on older perls.
Obviously, changing a comment or documentation accompanied by a version
dump isn't likely to break things, and wouldn't need to be subject to
any procedures we may institute.
I'm writing this because Devel::PPPort is now broken on Perl 5.13.0 (and
presumably earlier) by this recent commit:
commit 7169efc77525df70484a824bff4ceebd1fafc760
*Author: Tony Cook <tony@develop-help.com>
Date: Thu Jul 15 13:13:03 2021 +1000
skip using gcc brace groups for STMT_START/END
This warns (and warns a lot) on clang, and since these are documented
to only work to make a single statement, so there's little value to
allowing them to work in an expression.
An alternative would be to disable GCC brace groups on clang, but
these are used extensively in DEBUGGING builds to add extra checks
in sv.h.
I certainly wouldn't have predicted the breakage from reading the commit
code; the way it showed up was I was trying to incorporate it into the
next release of D:P, and this involves testing on early perls.
But this could happen to any dual life module
successfully before appearing in blead.
That doesn't happen with our blead-upstream patches, and that can lead
to problems.
I believe we need to institute some procedures to ensure that we don't
inadvertently break blead-upstream modules when run on older perls.
Obviously, changing a comment or documentation accompanied by a version
dump isn't likely to break things, and wouldn't need to be subject to
any procedures we may institute.
I'm writing this because Devel::PPPort is now broken on Perl 5.13.0 (and
presumably earlier) by this recent commit:
commit 7169efc77525df70484a824bff4ceebd1fafc760
*Author: Tony Cook <tony@develop-help.com>
Date: Thu Jul 15 13:13:03 2021 +1000
skip using gcc brace groups for STMT_START/END
This warns (and warns a lot) on clang, and since these are documented
to only work to make a single statement, so there's little value to
allowing them to work in an expression.
An alternative would be to disable GCC brace groups on clang, but
these are used extensively in DEBUGGING builds to add extra checks
in sv.h.
I certainly wouldn't have predicted the breakage from reading the commit
code; the way it showed up was I was trying to incorporate it into the
next release of D:P, and this involves testing on early perls.
But this could happen to any dual life module