Bug#822336: perl: Stable update taking patches from 5.20.3

Dominic Hargreaves dom at earth.li
Sun Apr 24 17:25:03 UTC 2016


On Sun, Apr 24, 2016 at 03:42:19PM +0300, Niko Tyni wrote:
> On Sun, Apr 24, 2016 at 02:43:26PM +0300, Niko Tyni wrote:
> 
> > I wonder if it would be useful to prefix the patch (file)names with
> > something else than the current 'debian/' or 'fixes/', perhaps '5.20.3/',
> > to highlight their origins? This might at least make 'perl -V' output
> > a bit clearer.
> 
> Dominic proposed fixes/5.20.3/ which is fine by me assuming git-dpm
> copes (I expect it does).

It does seem to.

> > Another thing: we need to make sure the fixes are in unstable + testing
> > before pushing them to stable.  In this case, given 5.20.3 was released
> > before 5.22.1 (see perlhist.pod), I expect it's all fine but it shouldn't
> > hurt to check.  I guess I'm sort of volunteering :)
> 
> OK, I've had a quick look at these. They are all in 5.22.1 so fixed in
> sid/stretch, no worries about that.

Thanks!

> Here are a few things that caught my eye while at it. +1 from me to all
> the others on the list.
> 
> d40f1ca59e9f4eb4e0e717b5304072636b24a62a lib/perl5db.pl: Restore noop lock prototype
>   this is already in jessie as fixes/perldb-threads.diff

Good point. There were a couple of others already in jessie:

4db4d6727189105b033a1a4be009711535cd7407 [perl #124127] fix cloning arrays with unused elements
e05b470016a652da7cc2d059fb464dea98571f3b simpify and speed up /.*.../ handling

> 0f19268d11e0e7ce38b5a449f9f53461a0dc3226 [perl #123748] - Add test case for possible getenv/putenv/setenv stomping in perl.c (also squash 63209b393029691eb62065536b4aaab4ade1ad7b into it)
>   This is not a functional change, just a new test. Do we want that?
>   Also, I'm not sure if squashing is the right thing to do but I don't
>   feel strongly about that.

I think tests should be taken on a case by case basis. I look at this
in more detail and I don't think it has much use in a Debian stable update,
so not applying.

Same goes for

6eeae11f5e975d33c2d782454962ef5d061523cf locale.c: savepv() of getenv() (https://rt.perl.org/Public/Bug/Display.html?id=123748)
ca9cf5171a638ccfefa8b2f842df019aec532fd2 perl.c: Don't read possibly zapped memory (https://rt.perl.org/Ticket/Display.html?id=123748)
0f19268d11e0e7ce38b5a449f9f53461a0dc3226 [perl #123748] - Add test case for possible getenv/putenv/setenv stomping in perl.c
0cb29f21ba1db04416bb1a2dbc32cd5f7c75bc84 lib/h2ph.t to test generated t/_h2ph_pre.ph instead of the system one

I also didn't apply this:

23a85f4c1fe2393067c066cbd442e4c1256e97cd hv_func.h - fix seed initialization in sdbm and djb2 hashing algorithms.

because it is fixing problems in has functions which are not configured
by Debian.

> 8d89c0509dd5eb1de58dc6617f6e08599eb24792 [PATCH] [perl #123786] don't leak the temp utf8 copy of namep
>   This is the only one that's not a cherry-pick from another branch so it's
>   worth a mention, though it definitely needs to be included.
>   The ticket says:
>     "This isn't an issue in blead, since the leaking code is no longer present - all pad names are in utf-8 so there's no need to convert."
>   Blead at the time (Feb 2015) was pre-5.22 so it should be OK on sid. I've
>   verified that the test case leaks on jessie but not sid.
> 
> ccafce1bfd59cdbdd7af0ad68f7557a7471d6c64 Perl_save_re_context(): re-indent after last commit
>   Whitespace only but would be nice to group with 17d9707d444517764c7bcb479c236a8c58a1d605
>   Again, to squash or not to squash?

Decided not to squash.

> 0cb29f21ba1db04416bb1a2dbc32cd5f7c75bc84 lib/h2ph.t to test generated t/_h2ph_pre.ph instead of the system one
>   Another test-only commit. 

Yep.

> 41575f0a39566008526e7e38eab84cba82cf372b Add pthread to libswanted
>   This is not a doc fix though it was grouped there.
>   We override libswanted in debian/prune_libs.diff so maybe not that useful?

Yep, that was a mistake - dropped.

I've applied these in branch dom/jessie-imports-from-5.20.3 on top of
the jessie branch (which now has the fix for #821848 applied). I used
two separate merge commits (one for the functional stuff and one for the
docs).

We still need to decide the best way of documenting these changes.
I suppose a local perldelta.pod style file in /usr/share/doc/perl,
referenced from the changelog? Normally we don't try and reproduce the
perldelta changes when we cherry-pick individual commits from maint
releases, but normally users can get all the context they need from
the referenced Debian changelog if they are interested.

I've included the full list of included commits as an attachment.
A review of that branch would be good, as it's a somewhat necessarily
manual and error-prone process.

Dominic.
-------------- next part --------------
functional applied

fddbd7860397641a9f336211b07bd51902a70e55 [perl #123652] eval {label:} crash
da902b590037b6f0b7e95937c761b16043c47aa6 [perl #123218] "preserve" $/ if set to a bad value
cde1108b596cf23b590a273e678a0a597817ad5b Remove get-magic from $/
56ebbae5753a92e86450b6fb16c0ab7838cbfbcb [perl #123202] speed up scalar //g against tainted strings
0b45ede02cc1dea0a409d6f0db7047f8a06b3aeb Stop $^H |= 0x1c020000 from enabling all features
d427d11537d9540fa9903b39c59e5087ca300a6a [perl #124113] Make check for multi-dimensional arrays be UTF8-aware
d199fb6107ca19bfaef0d7453cc008fbc66f694b Allow unquoted UTF-8 HERE-document terminators
95ea1ad55268965975d1d4fe77493cdb40721923 Fix "...without parentheses is ambuguous" warning for UTF-8 function names
d29597bcd1c03171d1dba1efd922c0e6fb52cf23 Fix test count in t/base/rs.t
8d89c0509dd5eb1de58dc6617f6e08599eb24792 [PATCH] [perl #123786] don't leak the temp utf8 copy of namep
160ab6277bff26ab3f7c18d710271ef2775d542e h2ph: correct handling of hex constants for the preamble
b9d0b7b01399df7c7155d1ac249e0ec52a2f0cc0 [perl #123711] Fix crash with 0-5x-l{0}
ab4bc882871ec70a332518a556f2ad8bdccfce25 don't fatalize warnings during unwinding (#123398)
775d07fe1f24ba72a76298bbcaa0c737c37c0246 Don?t treat setpgrp($nonzero) as setpgrp(1)
36ee76c8e66553bd0b422691ad9ca13a229035b5 RT #124156: death during unwinding causes crash
913281cacd3442109f345cc20d38e78a36470f94 [perl #125541] Fix crash with %::=(); J->${\"::"}
aeb325e6e832467c38c4baff1ee68c7726ad9f7c PATCH: [perl 125825] {n}+ possessive quantifier broken
89d3bf64c47772a0c299cec5555c07c208dd1fbf [perl #123712] Fix /$a[/ parsing
feac78b0722d4899f9a306d5fb427fe33e82b9ab [perl #123712] Don???t check sub_inwhat
45f3f24684363c03c905ddeea6353a16213e34e8 [perl #123893] Fix hang with "@{"

docs

3f48d410f19f301f9e0a9143b6c4763d583e67a9 Fix apidocs for OP_TYPE_IS(_OR_WAS) - arguments separated by |, not ,.
7ee5afc746607e1b7fce7934f2b9a27ce300ba4f perlpodspec: Corrections/adds to detecting =encoding
a82de63beda206f04be7b7c8573c2cef05ea397d SvPV_set's docs, it really shouldn't be public API
367311751a60f47b35f98115eeb127aa686941c7 Fix warning message regarding "use autodie" and "use open".
df9f260937c1154d6b1c9d383c0407f73f4a1454 perlunicook: Note that autodie >= 2.26 should be okay with "use open".
c31a12f296d6bdd20ef930863aeda2925b33ae39 Fix setenv() replacement documentation in perlclib
0b0320eef35c38a33abf41e9d1dcfdf7f7f9af55 perlhacktips: Add caution about clib ptr returns to static memory
4179008484da541dbe67e0a17845ecd8deb7e943 Fix minor code typos in perlunicook
bb1d1705ec909f3549d7889cecf080a284c16aaa [perl #122322] Update OOK example in perlguts
5c20190d12750fee5a8b0a70590bfbae59ee68d3 perlfunc: mention that study() is currently a noop

[applied separately as relate to a specific debian bug]

17d9707d444517764c7bcb479c236a8c58a1d605 save_re_context(): do "local $n" with no PL_curpm (#820328)
ccafce1bfd59cdbdd7af0ad68f7557a7471d6c64 Perl_save_re_context(): re-indent after last commit



More information about the Perl-maintainers mailing list