Package: perl / 5.28.1-6

Metadata

Package Version Patches format
perl 5.28.1-6 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
debian/cpan_definstalldirs.diff | (download)

cpan/CPAN/lib/CPAN/FirstTime.pm | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 provide a sensible installdirs default for modules installed from
 CPAN.

Some modules which are included in core set INSTALLDIRS => 'perl'
explicitly in Makefile.PL or Build.PL.  This makes sense for the normal @INC
ordering, but not ours.

debian/db_file_ver.diff | (download)

cpan/DB_File/version.c | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 remove overly restrictive db_file version check.

Bug-Debian: http://bugs.debian.org/340047

Package dependencies ensure the correct library is linked at run-time.

debian/doc_info.diff | (download)

pod/perl.pod | 12 10 + 2 - 0 !
1 file changed, 10 insertions(+), 2 deletions(-)

 replace generic man(1) instructions with debian-specific information.

Indicate that the user needs to install the perl-doc package.

debian/enc2xs_inc.diff | (download)

cpan/Encode/bin/enc2xs | 8 4 + 4 - 0 !
t/porting/customized.t | 3 3 + 0 - 0 !
2 files changed, 7 insertions(+), 4 deletions(-)

 tweak enc2xs to follow symlinks and ignore missing @inc directories.

Bug-Debian: http://bugs.debian.org/290336

- ignore missing directories,
- follow symlinks (/usr/share/perl/5.8 -> 5.8.4).
- filter "." out when running "enc2xs -C", it's unnecessary and causes
  issues with follow => 1 (see #603686 and [rt.cpan.org #64585])

debian/errno_ver.diff | (download)

ext/Errno/Errno_pm.PL | 16 0 + 16 - 0 !
1 file changed, 16 deletions(-)

 remove errno version check due to upgrade problems with long-running
 processes.

Bug-Debian: http://bugs.debian.org/343351

Remove version check which can cause problems for long running
processes embedding perl when upgrading to a newer version,
debian/libperl_embed_doc.diff | (download)

lib/ExtUtils/Embed.pm | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 note that libperl-dev package is required for embedded linking

Bug-Debian: http://bugs.debian.org/186778

fixes/respect_umask.diff | (download)

cpan/ExtUtils-Install/lib/ExtUtils/Install.pm | 18 9 + 9 - 0 !
cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 18 9 + 9 - 0 !
2 files changed, 18 insertions(+), 18 deletions(-)

 respect umask during installation

This is needed to satisfy Debian policy regarding group-writable
site directories.

debian/writable_site_dirs.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 6 3 + 3 - 0 !
1 file changed, 3 insertions(+), 3 deletions(-)

 set umask approproately for site install directories

Policy requires group writable site directories

debian/extutils_set_libperl_path.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 eu:mm: set location of libperl.a under /usr/lib

The Debian packaging moves libperl.a a couple of levels up from the
CORE directory to match other static libraries.

debian/no_packlist_perllocal.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 35 3 + 32 - 0 !
1 file changed, 3 insertions(+), 32 deletions(-)

 don't install .packlist or perllocal.pod for perl or vendor

debian/fakeroot.diff | (download)

Makefile.SH | 7 2 + 5 - 0 !
1 file changed, 2 insertions(+), 5 deletions(-)

 postpone ld_library_path evaluation to the binary targets.

Modify the setting of LD_LIBRARY_PATH to append pre-existing values at the
time the rule is evaluated rather than when the Makefile is created.

This is required when building packages with dpkg-buildpackage and fakeroot,
since fakeroot (which now sets LD_LIBRARY_PATH) is not used for the "build"
rule where the Makefile is created, but is for the clean/binary* targets.

debian/instmodsh_doc.diff | (download)

cpan/ExtUtils-MakeMaker/bin/instmodsh | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 debian policy doesn't install .packlist files for core or vendor.

debian/ld_run_path.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 remove standard libs from ld_run_path as per debian policy.

debian/libnet_config_path.diff | (download)

cpan/libnet/lib/Net/Config.pm | 7 3 + 4 - 0 !
1 file changed, 3 insertions(+), 4 deletions(-)

 set location of libnet.cfg to /etc/perl/net as /usr may not be
 writable.

debian/perlivp.diff | (download)

utils/perlivp.PL | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 make perlivp skip include directories in /usr/local

Bug-Debian: http://bugs.debian.org/510895

On Sat, Jan 10, 2009 at 12:37:18AM +1100, Brendan O'Dea wrote:
> On Wed, Jan 7, 2009 at 12:21 AM, Niko Tyni <ntyni@debian.org> wrote:

> > We could create the directories in a postinst script, but I'm not sure
> > I see the point. They will be created automatically when installing
> > CPAN modules.
>
> The directories are intentionally not created, as this way they are
> excluded from the search path at start-up, saving a bunch of wasted
> stats at use/require time in the common case that the user has not
> installed any local packages.  As Niko points out, they will be
> created as required.

Signed-off-by: Niko Tyni <ntyni@debian.org>

debian/squelch locale warnings.diff | (download)

locale.c | 3 3 + 0 - 0 !
pod/perllocale.pod | 8 8 + 0 - 0 !
2 files changed, 11 insertions(+)

 squelch locale warnings in debian package maintainer scripts

Bug-Debian: http://bugs.debian.org/508764

The system locales are rather frequently out of sync with the C library
during package upgrades, causing a huge amount of useless Perl locale
warnings. Squelch them when running package maintainer scripts, detected
by the DPKG_RUNNING_VERSION environment variable.

Any real locale problem will show up after the system upgrade too, and
the warning will be triggered normally again at that point.

debian/patchlevel.diff | (download)

patchlevel.h | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 list packaged patches in patchlevel.h

fixes/document_makemaker_ccflags.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 document that ccflags should include $config{ccflags}

Bug: https://rt.cpan.org/Public/Bug/Display.html?id=68613
Bug-Debian: http://bugs.debian.org/628522

Compiling XS extensions without $Config{ccflags} can break the
binary interface on some platforms.

debian/find_html2text.diff | (download)

cpan/CPAN/lib/CPAN/Distribution.pm | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 configure cpan::distribution with correct name of html2text

Bug-Debian: http://bugs.debian.org/640479
debian/perl5db x terminal emulator.patch | (download)

lib/perl5db.pl | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 invoke x-terminal-emulator rather than xterm in perl5db.pl

In Debian systems, xterm might not exist or might not be the preferred
terminal emulator. Use x-terminal-emulator instead

Bug-Debian: http://bugs.debian.org/668490
debian/cpan missing site dirs.diff | (download)

cpan/CPAN/lib/CPAN/FirstTime.pm | 31 27 + 4 - 0 !
1 file changed, 27 insertions(+), 4 deletions(-)

 fix cpan::firsttime defaults with nonexisting site dirs if a parent
 is writable

The site directories do not exist on a typical Debian system.  The build
systems will create them when necessary, so there's no need for a prompt
suggesting local::lib if the first existing parent directory is writable.

Also, writability of the core directories is not interesting as we
explicitly tell CPAN not to touch those with INSTALLDIRS=site.

Bug-Debian: http://bugs.debian.org/688842
fixes/memoize_storable_nstore.diff | (download)

cpan/Memoize/Memoize/Storable.pm | 2 1 + 1 - 0 !
cpan/Memoize/t/tie_storable.t | 24 20 + 4 - 0 !
2 files changed, 21 insertions(+), 5 deletions(-)

 memoize::storable: respect 'nstore' option not respected
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Memoize(3perl) says:

                tie my %cache => 'Memoize::Storable', $filename, 'nstore';
                memoize 'function', SCALAR_CACHE => [HASH => \%cache];

        Include the ‘nstore’ option to have the "Storable" database
        written in ‘network order’.  (See Storable for more details
        about this.)

In fact the "nstore" option does no such thing.  Option parsing looks
like this:

        @options{@_} = ();

$self->{OPTIONS}{'nstore'} is accordingly set to undef.  Later
Memoize::Storable checks if the option is true, and since undef is
not true, the "else" branch is always taken.

        if ($self->{OPTIONS}{'nstore'}) {
                Storable::nstore($self->{H}, $self->{FILENAME});
        } else {
                Storable::store($self->{H}, $self->{FILENAME});
        }

Correcting the condition to (exists $self->{OPTIONS}{'nstore'}) fixes
it.

Noticed because git-svn, which uses the 'nstore' option for its
on-disk caches, was producing

        Byte order is not compatible at ../../lib/Storable.pm

debian/makemaker pasthru.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 pass ld settings through to subdirectories

[rt.cpan.org #28632] fixed most issues with passing LD down to
subdirectory Makefile.PL files. However, there are some distributions
(including Wx, Par::Packer, and Verilog-Perl) that explicitly set
LD. Those still can't be overridden from the command line. Adding LD to
the PASTHRU list fixes this.

Bug-Debian: https://bugs.debian.org/758471
debian/makemaker manext.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 make eu::makemaker honour mannext settings in generated manpage
 headers

This was inherited from early changes by Brendan O'Dea, previously
debian/kfreebsd softupdates.diff | (download)

t/op/stat.t | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 work around debian bug#796798

kFreeBSD 10 (possibly only with softupdates enabled) may defer
calculating the mtime for more than 2 seconds.  Work around this
with a stat() call to calculate the mtime immediately.

(Modified to only stat() on kfreebsd by Niko Tyni)

Bug-Debian: https://bugs.debian.org/796798
fixes/autodie scope.diff | (download)

cpan/autodie/lib/Fatal.pm | 7 6 + 1 - 0 !
cpan/autodie/t/no-all.t | 22 22 + 0 - 0 !
cpan/autodie/t/no-default.t | 23 23 + 0 - 0 !
3 files changed, 51 insertions(+), 1 deletion(-)

 fix a scoping issue with "no autodie" and the "system" sub

Don't queue nonexisting subs for reinstalling later when
exiting the 'no autodie' scope.

FIXME: if the original sub 'can be undef for "CORE::" subs', does this
break for those? Is that the case when $symbol =~ /::/, as guarded for
on L566?

Bug: https://github.com/pjf/autodie/issues/69
Bug-Debian: https://bugs.debian.org/798096
fixes/memoize pod.diff | (download)

cpan/Memoize/Memoize.pm | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 fix pod errors in memoize

Bug: https://rt.cpan.org/Public/Bug/Display.html?id=89441
debian/hurd softupdates.diff | (download)

t/op/stat.t | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 fix t/op/stat.t failures on hurd

We already do this on GNU/kFreeBSD, and GNU/Hurd seems to need same
treatment.

Bug-Debian: https://bugs.debian.org/822735
fixes/math_complex_doc_great_circle.diff | (download)

cpan/Math-Complex/lib/Math/Trig.pm | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 math::trig: clarify definition of great_circle_midpoint

Bug: https://rt.cpan.org/Ticket/Display.html?id=114104
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=697567
fixes/math_complex_doc_see_also.diff | (download)

cpan/Math-Complex/lib/Math/Trig.pm | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 math::trig: add missing see also

Bug: https://rt.cpan.org/Ticket/Display.html?id=114105
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=697568
fixes/math_complex_doc_angle_units.diff | (download)

cpan/Math-Complex/lib/Math/Trig.pm | 5 5 + 0 - 0 !
1 file changed, 5 insertions(+)

 math::trig: document angle units

Bug: https://rt.cpan.org/Ticket/Display.html?id=114106
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=731505
fixes/cpan_web_link.diff | (download)

cpan/CPAN/lib/CPAN.pm | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 cpan: add link to main cpan web site

Bug: https://github.com/andk/cpanpm/pull/96
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=367291
debian/hppa_op_optimize_workaround.diff | (download)

cflags.SH | 6 6 + 0 - 0 !
1 file changed, 6 insertions(+)

 temporarily lower the optimization of op.c on hppa due to gcc-6
 problems

This fixes a crash in ext/XS-APItest/t/customop.t

It's currently unclear if the problem is with the code or the
gcc-6 optimizer.

Bug-Debian: https://bugs.debian.org/838613
debian/installman utf8.diff | (download)

installman | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 generate man pages with utf-8 characters

This fixes totally incorrectly rendered manual pages like
perlunicook and perltw.

TODO: should probably be a Configure option for proper upstreaming.

Bug-Debian: https://bugs.debian.org/840211
fixes/getopt long 4.diff | (download)

cpan/Getopt-Long/lib/Getopt/Long.pm | 6 6 + 0 - 0 !
1 file changed, 6 insertions(+)

 fix issue #122068.

debian/hppa_opmini_optimize_workaround.diff | (download)

cflags.SH | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 lower the optimization level of opmini.c on hppa

debian/sh4_op_optimize_workaround.diff | (download)

cflags.SH | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 also lower the optimization level of op.c and opmini.c on sh4

This amends
debian/perldoc pager.diff | (download)

cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix perldoc terminal escapes when sensible-pager is less

This is a temporary fix while upstream is reworking the
pager handling.

Bug: https://rt.cpan.org/Public/Bug/Display.html?id=120229
Bug-Debian: https://bugs.debian.org/870340
debian/prune_libs.diff | (download)

regen-configure/U/modified/Myinit.U | 3 1 + 2 - 0 !
regen-configure/U/perl/End.U | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 3 deletions(-)

 prune the list of libraries wanted to what we actually need.

Bug-Debian: http://bugs.debian.org/128355

We want to keep the dependencies on perl-base as small as possible,
and some of the original list may be present on buildds (see Bug#128355).

(Backported to metaconfig unit probes by Niko Tyni)

debian/mod_paths.diff | (download)

perl.c | 58 58 + 0 - 0 !
1 file changed, 58 insertions(+)

 tweak @inc ordering for debian

Our order is:

    etc (for config files)
    site (5.8.1)
    vendor (all)
    core (5.8.1)
    site (version-indep)
    site (pre-5.8.1)

The rationale being that an admin (via site), or module packager
(vendor) can chose to shadow core modules when there is a newer
version than is included in core.

(later updates by Niko Tyni)

debian/configure regen.diff | (download)

Configure | 5 2 + 3 - 0 !
1 file changed, 2 insertions(+), 3 deletions(-)

 regenerate configure et al. after probe unit changes

debian/deprecate with apt.diff | (download)

lib/deprecate.pm | 18 17 + 1 - 0 !
1 file changed, 17 insertions(+), 1 deletion(-)

 point users to debian packages of deprecated core modules

Bug-Debian: http://bugs.debian.org/747628
debian/disable stack check.diff | (download)

dump.c | 3 3 + 0 - 0 !
pp_hot.c | 3 3 + 0 - 0 !
2 files changed, 6 insertions(+)

 disable debugperl stack extension checks for binary compatibility
 with perl

When an XS module is built without -DDEBUGGING but the interpreter is,
the debugging stack high-water mark checking on the interpreter side
doesn't work properly. This makes /usr/bin/debugperl less useful than
it could be as it can no longer use many XS module packages.

Patch the check away for now. We hope upstream will provide a Configure
option for this in the future.

Bug: https://rt.perl.org/Ticket/Display.html?id=133327
Bug-Debian: https://bugs.debian.org/902779
debian/gdbm fatal.diff | (download)

ext/GDBM_File/t/fatal.t | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 temporarily skip gdbm_file fatal.t for gdbm >= 1.15 compatibility

Bug-Debian: https://bugs.debian.org/904005
Bug: https://rt.perl.org/Public/Bug/Display.html?id=133295
fixes/storable recursion.diff | (download)

dist/Storable/Storable.xs | 98 63 + 35 - 0 !
dist/Storable/t/recurse.t | 16 14 + 2 - 0 !
2 files changed, 77 insertions(+), 37 deletions(-)

 (perl #133326) fix and clarify handling of recurs_sv.

There were a few problems:

- the purpose of recur_sv wasn't clear, I believe I understand it
  now from looking at where recur_sv was actually being used.
  Frankly the logic of the code itself was hard to follow, apparently
  only counting a level if the recur_sv was equal to the current
  SV.

  Fixed by adding some documentation to recur_sv in the context
  structure.  The logic has been re-worked (see below) to hopefully
  make it more understandable.

- the conditional checks for inc/decrementing recur_depth didn't
  match between the beginnings and ends of the store_array() and
  store_hash() handlers didn't match, since recur_sv was both
  explicitly modified by those functions and implicitly modified
  in their recursive calls to process elements.

  Fixing by storing the starting value of cxt->recur_sv locally
  testing against that instead of against the value that might be
  modified recursively.

- the checks in store_ref(), store_array(), store_l?hash() were
  over complex, obscuring their purpose.

  Fixed by:
   - always count a recursion level in store_ref() and store the
     RV in recur_sv
   - only count a recursion level in the array/hash handlers if
     the SV didn't match.
   - skip the check against cxt->entry, if we're in this code
     we could be recursing, so we want to detect it.

- (after the other changes) the recursion checks in store_hash()/
  store_lhash() only checked the limit if the SV didn't match the
  recur_sv, which horribly broke things.

  Fixed by:
   - Now only make the depth increment conditional, and always
     check against the limit if one is set.

fixes/caretx fallback.diff | (download)

caretx.c | 28 16 + 12 - 0 !
1 file changed, 16 insertions(+), 12 deletions(-)

 rt#133573: $^x fallback when platform-specific technique fails

fixes/eumm usrmerge.diff | (download)

cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 22 20 + 2 - 0 !
cpan/ExtUtils-MakeMaker/t/fixin.t | 33 32 + 1 - 0 !
cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm | 3 3 + 0 - 0 !
3 files changed, 55 insertions(+), 3 deletions(-)

 avoid mangling /bin non-perl shebangs on merged-/usr systems

If the shebang is absolute and exists in PATH, but was not the first
one found, leave it alone if it's actually the same file as first one.

This avoids packages built on merged-/usr systems with /usr/bin before
/bin in the path breaking when installed on systems without merged
/usr.  See e.g. https://bugs.debian.org/913637.

fixes/errno include path.diff | (download)

ext/Errno/Errno_pm.PL | 24 14 + 10 - 0 !
1 file changed, 14 insertions(+), 10 deletions(-)

 make errno_pm.pl compatible with /usr/include/<arch>/errno.h

As seen in <https://bugs.debian.org/798955>, Debian glibc
maintainers intend to move system header files from /usr/include to
/usr/include/<arch> at some point. This would break Errno_pm.PL, which
has logic for asking cpp for the location of errno.h but fails earlier
if errno.h is not on a list of known paths.

Take the cpp fallback instead of dying. The behaviour should stay
identical as long as errno.h is not moved.

This will also enable multiarch (non-sysroot) cross builds.

Original patch by Helmut Grohne.

Bug-Debian: https://bugs.debian.org/875921
Bug: https://rt.perl.org/Public/Bug/Display.html?id=133662
fixes/kfreebsd renameat.diff | (download)

doio.c | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 also work around renameat() kernel bug on gnu/kfreebsd

Bug: https://rt.perl.org/Public/Bug/Display.html?id=133668
Bug-Debian: https://bugs.debian.org/912521
fixes/time local 2020.diff | (download)

cpan/Time-Local/t/Local.t | 11 5 + 6 - 0 !
1 file changed, 5 insertions(+), 6 deletions(-)

 fix time::local tests

in 2020, year 70 changes its meaning to 2070
so we do what man Time::Local recommends and use 4-digit years

fixes/inplace editing bugfix/part1.diff | (download)

doio.c | 62 38 + 24 - 0 !
embed.fnc | 1 1 + 0 - 0 !
embed.h | 1 1 + 0 - 0 !
proto.h | 3 3 + 0 - 0 !
4 files changed, 43 insertions(+), 24 deletions(-)

 (perl #133659) move argvout cleanup to a new function

Bug-Debian: https://bugs.debian.org/914651
fixes/inplace editing bugfix/part2.diff | (download)

t/io/inplace.t | 28 27 + 1 - 0 !
1 file changed, 27 insertions(+), 1 deletion(-)

 (perl #133659) tests for global destruction handling of inplace
 editing

Bug-Debian: https://bugs.debian.org/914651
fixes/inplace editing bugfix/part3.diff | (download)

doio.c | 45 25 + 20 - 0 !
t/io/inplace.t | 2 1 + 1 - 0 !
t/run/switches.t | 4 2 + 2 - 0 !
3 files changed, 28 insertions(+), 23 deletions(-)

 (perl #133659) make an in-place edit successful if the exit status is
 zero

during global destruction.

This means that code like:

  perl -i -ne '...; last'

will replace the input file with the in-place edit output of the file,
but:

  perl -i -ne '...; die'

or

  perl -i -ne '...; exit 1'

won't.

Bug-Debian: https://bugs.debian.org/914651
fixes/fix manifest failures.diff | (download)

t/test.pl | 7 3 + 4 - 0 !
1 file changed, 3 insertions(+), 4 deletions(-)

 fix t/porting/manifest.t failures when run in a foreign git checkout

The change at ba6733216202523a95b0b7ee2e534b8e30b6d7df didn't work
correctly: find_git_or_skip() in t/test.pl looks at PERL_BUILD_PACKAGING
too late, so it doesn't change the logic of skipping, only the explanation
of why tests get skipped if they do. This was originally reported at
<https://bugs.debian.org/914962>.

Committer: update commit message for upstream context
Bug-Debian: https://bugs.debian.org/914962
fixes/pipe open bugfix/part1.diff | (download)

util.c | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 always mark pipe in pipe-open as inherit-on-exec

Since 2cdf406a a lot of file descriptors are opened close-on-exec,
including the pipe that is passed to the child process in a pipe-open.
This is usually fine because a dup2 follows to rename that handle to
stdin/stdout that will set the inherit-on-exec. However, if the pipe
descriptor already has the right value, for example because stdin was
closed, then no dup2 happens and hence it's still marked as
close-on-exec right when we want to perform an exec.

This patch explicitly marks such a handle as inherit-on-exec, to ensure
it will be open for the child process.

Bug-Debian: https://bugs.debian.org/916313
Bug: https://rt.perl.org/Ticket/Display.html?id=133726
fixes/pipe open bugfix/part2.diff | (download)

util.c | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 always mark pipe in list pipe-open as inherit-on-exec

This is the my_popen_list counterpart of
c6fe5b981b942ddabb23ed4b7602067e906e6d88

Bug-Debian: https://bugs.debian.org/916313
Bug: https://rt.perl.org/Ticket/Display.html?id=133726
fixes/storable probing/prereq1.diff | (download)

dist/Storable/Makefile.PL | 7 4 + 3 - 0 !
1 file changed, 4 insertions(+), 3 deletions(-)

 storable: fix for strawberry build failures:

Provided by Graham @haarg Knop.

fixes/storable probing/prereq2.diff | (download)

dist/Storable/Makefile.PL | 9 8 + 1 - 0 !
dist/Storable/stacksize | 10 7 + 3 - 0 !
2 files changed, 15 insertions(+), 4 deletions(-)

 (perl #133411) don't try to load storable with -dusecrosscompile

fixes/storable probing/disable probing.diff | (download)

Makefile.SH | 25 0 + 25 - 0 !
dist/Storable/Makefile.PL | 40 0 + 40 - 0 !
dist/Storable/__Storable__.pm | 12 7 + 5 - 0 !
dist/Storable/stacksize | 77 17 + 60 - 0 !
dist/Storable/t/recurse.t | 4 3 + 1 - 0 !
win32/GNUmakefile | 12 1 + 11 - 0 !
win32/Makefile | 10 1 + 9 - 0 !
win32/makefile.mk | 15 2 + 13 - 0 !
8 files changed, 31 insertions(+), 164 deletions(-)

 (perl #133708) remove build-time probing for stack limits for
 Storable

Backported for Debian 5.28 by Niko Tyni

debian/perlbug editor.diff | (download)

utils/perlbug.PL | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 use "editor" as the default perlbug editor, as per debian policy

Bug-Debian: https://bugs.debian.org/922609