Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-local-lib for openSUSE:Factory 
checked in at 2023-08-08 15:55:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-local-lib (Old)
 and      /work/SRC/openSUSE:Factory/.perl-local-lib.new.22712 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-local-lib"

Tue Aug  8 15:55:11 2023 rev:18 rq:1102805 version:2.000029

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-local-lib/perl-local-lib.changes    
2021-09-17 23:26:03.477241873 +0200
+++ /work/SRC/openSUSE:Factory/.perl-local-lib.new.22712/perl-local-lib.changes 
2023-08-08 15:55:26.873186077 +0200
@@ -1,0 +2,25 @@
+Mon Aug  7 22:35:54 UTC 2023 - Dominique Leuenberger <[email protected]>
+
+- Update to version 2.000029:
+  - fix taint protection code to delete environment variables rather than
+    leaving them as an empty string.
+  - fix author test for CPAN.pm's bootstrapping process to work with new
+    versions
+- Changes from.version 2.000028
+  - fix skips in shell test when shell has unpredictable startup actions
+- Changes from version 2.000027:
+ - releasing as stable
+- Changes from version 2.000026:
+  - fix output redirection used in fish shell to work with newer versions
+  - fix optional function used on Win32 for finding the current directory
+- Changes from version 2.000025
+  - add documentation for --quiet option
+  - added --always option to always add requested directory to env vars, even
+    if they are already included
+  - improve shell test to be more resiliant against custom init scripts
+  - improved test diagnostics
+  - reorganized documentation for bootstrapping into a non-standard directory
+  - remove mentions of File::HomeDir from documentation, as it is no longer
+    used
+
+-------------------------------------------------------------------

Old:
----
  local-lib-2.000024.tar.gz

New:
----
  local-lib-2.000029.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-local-lib.spec ++++++
--- /var/tmp/diff_new_pack.0my36H/_old  2023-08-08 15:55:27.417189482 +0200
+++ /var/tmp/diff_new_pack.0my36H/_new  2023-08-08 15:55:27.421189506 +0200
@@ -18,7 +18,7 @@
 
 %define cpan_name local-lib
 Name:           perl-local-lib
-Version:        2.000024
+Version:        2.000029
 Release:        0
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Create and use a local lib/ for perl modules with PERL5LIB

++++++ local-lib-2.000024.tar.gz -> local-lib-2.000029.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/Changes 
new/local-lib-2.000029/Changes
--- old/local-lib-2.000024/Changes      2017-10-08 17:21:44.000000000 +0200
+++ new/local-lib-2.000029/Changes      2022-04-20 15:41:25.000000000 +0200
@@ -1,5 +1,31 @@
 Revision history for local::lib
 
+2.000029 - 2022-04-20
+ - fix taint protection code to delete environment variables rather than
+   leaving them as an empty string.
+ - fix author test for CPAN.pm's bootstrapping process to work with new
+   versions
+
+2.000028 - 2021-10-17
+ - fix skips in shell test when shell has unpredictable startup actions
+
+2.000027 - 2021-10-14
+ - releasing as stable
+
+2.000_026 - 2021-10-11
+ - fix output redirection used in fish shell to work with newer versions
+ - fix optional function used on Win32 for finding the current directory
+
+2.000_025 - 2020-07-30
+ - add documentation for --quiet option
+ - added --always option to always add requested directory to env vars, even
+   if they are already included
+ - improve shell test to be more resiliant against custom init scripts
+ - improved test diagnostics
+ - reorganized documentation for bootstrapping into a non-standard directory
+ - remove mentions of File::HomeDir from documentation, as it is no longer
+   used
+
 2.000024 - 2017-10-08
  - be compatible with CPAN.pm 1.82 to 1.86_51 during bootstrap process
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/META.json 
new/local-lib-2.000029/META.json
--- old/local-lib-2.000024/META.json    2017-10-08 17:22:15.000000000 +0200
+++ new/local-lib-2.000029/META.json    2022-04-20 15:41:52.000000000 +0200
@@ -4,7 +4,7 @@
       "mst - Matt S. Trout (cpan:MSTROUT) <[email protected]>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter 
version 2.150005",
+   "generated_by" : "ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter 
version 2.150010",
    "license" : [
       "perl_5"
    ],
@@ -68,6 +68,6 @@
       },
       "x_IRC" : "irc://irc.perl.org/#local-lib"
    },
-   "version" : "2.000024",
-   "x_serialization_backend" : "JSON::PP version 2.94"
+   "version" : "2.000029",
+   "x_serialization_backend" : "JSON::PP version 4.07"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/META.yml 
new/local-lib-2.000029/META.yml
--- old/local-lib-2.000024/META.yml     2017-10-08 17:22:15.000000000 +0200
+++ new/local-lib-2.000029/META.yml     2022-04-20 15:41:51.000000000 +0200
@@ -6,7 +6,7 @@
   Test::More: '0'
 configure_requires: {}
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 
2.150005'
+generated_by: 'ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 
2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -27,5 +27,5 @@
   bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=local-lib
   license: http://dev.perl.org/licenses/
   repository: git://github.com/Perl-Toolchain-Gang/local-lib
-version: '2.000024'
+version: '2.000029'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/README 
new/local-lib-2.000029/README
--- old/local-lib-2.000024/README       2017-10-08 17:22:15.000000000 +0200
+++ new/local-lib-2.000029/README       2022-04-20 15:41:52.000000000 +0200
@@ -58,12 +58,6 @@
         If the system asks you whether it should automatically configure as
         much as possible, you would typically answer yes.
 
-        In order to install local::lib into a directory other than the
-        default, you need to specify the name of the directory when you call
-        bootstrap, as follows:
-
-          perl Makefile.PL --bootstrap=~/foo
-
     3.  Run this: (local::lib assumes you have make installed on your
         system)
 
@@ -78,22 +72,28 @@
 
         If you are using C shell, you can do this as follows:
 
+          % echo $SHELL
           /bin/csh
-          echo $SHELL
-          /bin/csh
-          echo 'eval `perl -I$HOME/perl5/lib/perl5 -Mlocal::lib`' >> ~/.cshrc
-
-        If you passed to bootstrap a directory other than default, you also
-        need to give that as import parameter to the call of the local::lib
-        module like this way:
-
-          echo 'eval "$(perl -I$HOME/foo/lib/perl5 -Mlocal::lib=$HOME/foo)"' 
>>~/.bashrc
+          $ echo 'eval `perl -I$HOME/perl5/lib/perl5 -Mlocal::lib`' >> ~/.cshrc
 
         After writing your shell configuration file, be sure to re-read it
         to get the changed settings into your current shell's environment.
         Bourne shells use ". ~/.bashrc" for this, whereas C shells use
         "source ~/.cshrc".
 
+   Bootstrapping into an alternate directory
+    In order to install local::lib into a directory other than the default,
+    you need to specify the name of the directory when you call bootstrap.
+    Then, when setting up the environment variables, both perl and
+    local::lib must be told the location of the bootstrap directory. The
+    setup process would look as follows:
+
+      perl Makefile.PL --bootstrap=~/foo
+      make test && make install
+      echo 'eval "$(perl -I$HOME/foo/lib/perl5 -Mlocal::lib=$HOME/foo)"' 
>>~/.bashrc
+      . ~/.bashrc
+
+   Other bootstrapping options
     If you're on a slower machine, or are operating under draconian disk
     space limitations, you can disable the automatic generation of manpages
     from POD when installing modules by using the "--no-manpages" argument
@@ -259,6 +259,13 @@
     Remove all directories that were added to search paths by "local::lib"
     from the search paths.
 
+  --quiet
+    Don't output any messages about directories being created.
+
+  --always
+    Always add directories to environment variables, ignoring if they are
+    already included.
+
   --shelltype
     Specify the shell type to use for output. By default, the shell will be
     detected based on the environment. Should be one of: "bourne", "csh",
@@ -348,9 +355,8 @@
     Arguments: $path
     Return value: $home_path
 
-    Attempts to find the user's home directory. If installed, uses
-    "File::HomeDir" for this purpose. If no definite answer is available,
-    throws an exception.
+    Attempts to find the user's home directory. If no definite answer is
+    available, throws an exception.
 
   resolve_relative_path
     Arguments: $path
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/lib/POD2/DE/local/lib.pod 
new/local-lib-2.000029/lib/POD2/DE/local/lib.pod
--- old/local-lib-2.000024/lib/POD2/DE/local/lib.pod    2014-01-21 
00:42:00.000000000 +0100
+++ new/local-lib-2.000029/lib/POD2/DE/local/lib.pod    2019-11-14 
15:30:55.000000000 +0100
@@ -343,8 +343,8 @@
 
 =back
 
-Versucht das Home Verzeichnis vom aktullen User zu finden. Wenn 
C<File::HomeDir>
-installiert ist, für dieses benutzt dafür. Es wird eine Exception geworfen, 
wenn
+Versucht das Home Verzeichnis vom aktullen User zu finden.
+Es wird eine Exception geworfen, wenn
 kein Home Verzeichnis ermittelt werden konnte.
 
 =head2 resolve_relative_path
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/lib/POD2/PT_BR/local/lib.pod 
new/local-lib-2.000029/lib/POD2/PT_BR/local/lib.pod
--- old/local-lib-2.000024/lib/POD2/PT_BR/local/lib.pod 2014-01-21 
00:42:00.000000000 +0100
+++ new/local-lib-2.000029/lib/POD2/PT_BR/local/lib.pod 2019-11-14 
15:30:55.000000000 +0100
@@ -335,8 +335,8 @@
 
 =back
 
-Procura pelo diretório padrão (home) do usuário. Caso esteja instalado,
-utiliza o C<File::HomeDir> para isso. Gera uma exceção caso não encontre
+Procura pelo diretório padrão (home) do usuário.
+Gera uma exceção caso não encontre
 resultado definitivo.
 
 =head2 resolve_relative_path
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/lib/local/lib.pm 
new/local-lib-2.000029/lib/local/lib.pm
--- old/local-lib-2.000024/lib/local/lib.pm     2017-10-08 17:21:28.000000000 
+0200
+++ new/local-lib-2.000029/lib/local/lib.pm     2022-04-20 15:41:10.000000000 
+0200
@@ -10,8 +10,8 @@
 }
 use Config ();
 
-our $VERSION = '2.000024';
-$VERSION = eval $VERSION;
+our $VERSION = '2.000029';
+$VERSION =~ tr/_//d;
 
 BEGIN {
   *_WIN32 = ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'symbian')
@@ -71,9 +71,10 @@
     goto &$cwd;
   }
   my $drive = shift;
-  return Win32::Cwd()
-    if _WIN32 && defined &Win32::Cwd && !$drive;
+  return Win32::GetCwd()
+    if _WIN32 && defined &Win32::GetCwd && !$drive;
   local @ENV{qw(PATH IFS CDPATH ENV BASH_ENV)};
+  delete @ENV{qw(PATH IFS CDPATH ENV BASH_ENV)};
   my $cmd = $drive ? "eval { Cwd::getdcwd(q($drive)) }"
                    : 'getcwd';
   my $perl = _perl;
@@ -183,6 +184,9 @@
     elsif ( $arg eq '--quiet' ) {
       $attr{quiet} = 1;
     }
+    elsif ( $arg eq '--always' ) {
+      $attr{always} = 1;
+    }
     elsif ( $arg =~ /^--/ ) {
       die "Unknown import argument: $arg";
     }
@@ -591,7 +595,7 @@
   # really care about PATH, but might as well make this routine more general.
   if ($name =~ /^(?:CD|MAN)?PATH$/) {
     $value =~ s/$_path_sep/ /g;
-    my $silent = $name =~ /^(?:CD)?PATH$/ ? " ^"._devnull : '';
+    my $silent = $name =~ /^(?:CD)?PATH$/ ? " 2>"._devnull : '';
     return qq{set -x $name $value$silent;\n};
   }
 
@@ -817,11 +821,6 @@
 If the system asks you whether it should automatically configure as much
 as possible, you would typically answer yes.
 
-In order to install local::lib into a directory other than the default, you 
need
-to specify the name of the directory when you call bootstrap, as follows:
-
-  perl Makefile.PL --bootstrap=~/foo
-
 =item 3.
 
 Run this: (local::lib assumes you have make installed on your system)
@@ -839,16 +838,9 @@
 
 If you are using C shell, you can do this as follows:
 
+  % echo $SHELL
   /bin/csh
-  echo $SHELL
-  /bin/csh
-  echo 'eval `perl -I$HOME/perl5/lib/perl5 -Mlocal::lib`' >> ~/.cshrc
-
-If you passed to bootstrap a directory other than default, you also need to
-give that as import parameter to the call of the local::lib module like this
-way:
-
-  echo 'eval "$(perl -I$HOME/foo/lib/perl5 -Mlocal::lib=$HOME/foo)"' 
>>~/.bashrc
+  $ echo 'eval `perl -I$HOME/perl5/lib/perl5 -Mlocal::lib`' >> ~/.cshrc
 
 After writing your shell configuration file, be sure to re-read it to get the
 changed settings into your current shell's environment. Bourne shells use
@@ -856,6 +848,20 @@
 
 =back
 
+=head3 Bootstrapping into an alternate directory
+
+In order to install local::lib into a directory other than the default, you 
need
+to specify the name of the directory when you call bootstrap.  Then, when
+setting up the environment variables, both perl and local::lib must be told the
+location of the bootstrap directory.  The setup process would look as follows:
+
+  perl Makefile.PL --bootstrap=~/foo
+  make test && make install
+  echo 'eval "$(perl -I$HOME/foo/lib/perl5 -Mlocal::lib=$HOME/foo)"' 
>>~/.bashrc
+  . ~/.bashrc
+
+=head3 Other bootstrapping options
+
 If you're on a slower machine, or are operating under draconian disk space
 limitations, you can disable the automatic generation of manpages from POD when
 installing modules by using the C<--no-manpages> argument when bootstrapping:
@@ -1026,6 +1032,15 @@
 Remove all directories that were added to search paths by C<local::lib> from 
the
 search paths.
 
+=head2 --quiet
+
+Don't output any messages about directories being created.
+
+=head2 --always
+
+Always add directories to environment variables, ignoring if they are already
+included.
+
 =head2 --shelltype
 
 Specify the shell type to use for output.  By default, the shell will be
@@ -1182,8 +1197,8 @@
 
 =back
 
-Attempts to find the user's home directory. If installed, uses C<File::HomeDir>
-for this purpose. If no definite answer is available, throws an exception.
+Attempts to find the user's home directory.
+If no definite answer is available, throws an exception.
 
 =head2 resolve_relative_path
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/maint/Makefile.PL.include 
new/local-lib-2.000029/maint/Makefile.PL.include
--- old/local-lib-2.000024/maint/Makefile.PL.include    2017-09-02 
19:56:37.000000000 +0200
+++ new/local-lib-2.000029/maint/Makefile.PL.include    2021-01-20 
19:58:02.000000000 +0100
@@ -1,4 +1,4 @@
-BEGIN { -e 'Distar' or system("git clone 
git://git.shadowcat.co.uk/p5sagit/Distar.git") }
+BEGIN { -e 'Distar' or system qw(git clone 
https://github.com/p5sagit/Distar.git) }
 use lib 'Distar/lib';
 use Distar 0.001;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/t/carp-mismatch.t 
new/local-lib-2.000029/t/carp-mismatch.t
--- old/local-lib-2.000024/t/carp-mismatch.t    2017-09-02 19:56:37.000000000 
+0200
+++ new/local-lib-2.000029/t/carp-mismatch.t    2019-11-14 15:30:55.000000000 
+0100
@@ -6,13 +6,16 @@
 # at a newer version
 
 use Carp;
-use Test::More tests => 4 + ( $Carp::VERSION < '1.22' ? 0 : 1 );
+use Test::More tests => 6;
 use File::Spec;
 use File::Path qw(mkpath rmtree);   # use legacy versions for backcompat
+use Cwd qw(realpath);
 use local::lib ();
 
 is $Carp::Heavy::VERSION, undef, 'Carp::Heavy is not yet loaded';
 
+my $carp_file = File::Spec->rel2abs($INC{'Carp.pm'});
+
 # we do not use File::Temp because it loads Carp::Heavy.
 my $libdir = File::Spec->catdir(File::Spec->tmpdir, 'tmp-carp-newer-' . $$);
 my $carpdir = File::Spec->catdir($libdir, 'lib', 'perl5', 'Carp');
@@ -40,10 +43,28 @@
 is $Carp::Foo::VERSION, '200.0',
   'some other module was loaded from our local::lib';
 
+my $expected_heavy = do {
+  my ($v, $d) = File::Spec->splitpath($carp_file);
+  $d = File::Spec->catdir(File::Spec->splitdir($d), 'Carp');
+  realpath(File::Spec->catpath($v, $d, 'Heavy.pm'));
+};
+
 ok $INC{'Carp/Heavy.pm'}, 'Carp::Heavy has now been loaded';
-is $Carp::Heavy::VERSION, $Carp::VERSION,
-  'Carp::Heavy matching Carp was loaded'
-    unless $Carp::VERSION < '1.22'; # Carp::Heavy namespace did not exist
+is realpath($INC{'Carp/Heavy.pm'}), $expected_heavy,
+  'Carp::Heavy loaded from correct location';
+
+SKIP: {
+    skip "Carp::Heavy does not have a version in Carp < 1.22", 1
+        if $Carp::VERSION < '1.22'; # Carp::Heavy namespace did not exist
+
+    is $Carp::Heavy::VERSION, $Carp::VERSION,
+        'Carp::Heavy matching Carp was loaded'
+        or do {
+          diag "Carp was loaded from        $INC{'Carp.pm'}";
+          diag "Carp::Heavy was loaded from $INC{'Carp/Heavy.pm'}";
+        };
+}
+
 isnt $Carp::Heavy::VERSION, '500.0',
   'Carp::Heavy was not loaded from our local::lib';
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/t/lib/ENVDumper.pm 
new/local-lib-2.000029/t/lib/ENVDumper.pm
--- old/local-lib-2.000024/t/lib/ENVDumper.pm   2017-09-02 19:56:37.000000000 
+0200
+++ new/local-lib-2.000029/t/lib/ENVDumper.pm   2020-07-30 13:50:57.000000000 
+0200
@@ -1,7 +1,6 @@
 package ENVDumper;
 use strict;
 use warnings;
-use Exporter;
 
 our @EXPORT_OK = qw(dumpenv undump);
 
@@ -25,7 +24,10 @@
     print dumpenv();
     exit 0;
   }
-  goto &Exporter::import;
+  elsif (@args) {
+    require Exporter;
+    goto &Exporter::import;
+  }
 }
 
 sub dumpenv {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/t/shell.t 
new/local-lib-2.000029/t/shell.t
--- old/local-lib-2.000024/t/shell.t    2017-09-02 19:56:37.000000000 +0200
+++ new/local-lib-2.000029/t/shell.t    2021-10-17 12:41:57.000000000 +0200
@@ -153,7 +153,13 @@
 if (!@shells) {
   plan skip_all => 'no supported shells found';
 }
-my @vars = qw(PATH PERL5LIB PERL_LOCAL_LIB_ROOT PERL_MM_OPT PERL_MB_OPT);
+my @vars = qw(
+  PATH
+  PERL5LIB
+  PERL_LOCAL_LIB_ROOT
+  PERL_MM_OPT
+  PERL_MB_OPT
+);
 my @strings = (
   'string',
   'with space',
@@ -170,43 +176,54 @@
 
 my $root = File::Spec->rootdir;
 my $home = mk_temp_dir;
+
 $ENV{HOME} = $home;
+$ENV{XDG_CONFIG_HOME} = $home;
+$ENV{XDG_DATA_HOME} = $home;
 
 for my $shell (@shells) {
-  my $ll = local::lib->normalize_path(mk_temp_dir);
-  local $ENV{$_}
-    for @vars;
-  delete $ENV{$_}
-    for @vars;
-  $ENV{PATH} = $root;
-  my $orig = call_shell($shell, '');
-  my $bin_path = local::lib->install_base_bin_path($ll);
-  mkdir $bin_path;
-  my $env = call_ll($shell, $ll);
-  my %install_opts = local::lib->installer_options_for($ll);
-
-  delete $orig->{$_} for qw(PERL_MM_OPT PERL_MB_OPT);
-  my $want = {
-    PERL_LOCAL_LIB_ROOT => $ll,
-    PATH                => $bin_path,
-    PERL5LIB            => local::lib->install_base_perl_path($ll),
-    (map {; $_ => $install_opts{$_}} qw(PERL_MM_OPT PERL_MB_OPT)),
-  };
-  for my $var (keys %$want) {
-    $want->{$var} = join($sep, $want->{$var}, $orig->{$var} || ()),
-  }
-
-  for my $var (@vars) {
-    is $env->{$var}, $want->{$var},
-      "$shell->{name}: activate $var";
-  }
-
-  $ENV{$_} = $env->{$_} for @vars;
-  $env = call_ll($shell, '--deactivate', "$ll");
 
-  for my $var (@vars) {
-    is $env->{$var}, $orig->{$var},
-      "$shell->{name}: deactivate $var";
+  SKIP : {
+    local @ENV{@vars} = ('') x @vars;
+    delete @ENV{grep $_ ne 'PATH', @vars};
+    $ENV{PATH} = $root;
+
+    my $ll = local::lib->normalize_path(mk_temp_dir);
+
+    my $orig = call_shell($shell, '');
+    if (grep +($orig->{$_}||'') ne ($ENV{$_}||''), @vars) {
+      # shell modified vars, we can't trust how are modifications will interact
+      skip "shell init modifies env vars, can't test", +(2 * @vars);
+    }
+
+    my $bin_path = local::lib->install_base_bin_path($ll);
+    mkdir $bin_path;
+    my $env = call_ll($shell, $ll);
+    my %install_opts = local::lib->installer_options_for($ll);
+
+    delete $orig->{$_} for qw(PERL_MM_OPT PERL_MB_OPT);
+    my $want = {
+      PERL_LOCAL_LIB_ROOT => $ll,
+      PATH                => $bin_path,
+      PERL5LIB            => local::lib->install_base_perl_path($ll),
+      (map {; $_ => $install_opts{$_}} qw(PERL_MM_OPT PERL_MB_OPT)),
+    };
+    for my $var (keys %$want) {
+      $want->{$var} = join($sep, $want->{$var}, $orig->{$var} || ()),
+    }
+
+    for my $var (@vars) {
+      is $env->{$var}, $want->{$var},
+        "$shell->{name}: activate $var";
+    }
+
+    $ENV{$_} = $env->{$_} for @vars;
+    $env = call_ll($shell, '--deactivate', "$ll");
+
+    for my $var (@vars) {
+      is $env->{$var}, $orig->{$var},
+        "$shell->{name}: deactivate $var";
+    }
   }
 
   my $shelltype = do {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/t/taint-mode.t 
new/local-lib-2.000029/t/taint-mode.t
--- old/local-lib-2.000024/t/taint-mode.t       2017-09-02 19:56:37.000000000 
+0200
+++ new/local-lib-2.000029/t/taint-mode.t       2022-04-20 08:39:57.000000000 
+0200
@@ -84,7 +84,9 @@
   my $pid = open3($in, $out, $err, $perl, map("-I$_", @INC_CLEAN), '-T', 
$filename);
   binmode $out;
   my $cwd = do { local $/; <$out> };
+  my $errout = do { local $/; <$err> };
   $cwd =~ s/[\r\n]*\z//;
   $cwd = File::Spec->canonpath($cwd);
-  is $cwd, File::Spec->canonpath(Cwd::getcwd()), 'reimplemented cwd matches 
standard cwd';
+  is $cwd, File::Spec->canonpath(Cwd::getcwd()), 'reimplemented cwd matches 
standard cwd'
+    or diag $errout;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/local-lib-2.000024/xt/cpan-bootstrap.pl 
new/local-lib-2.000029/xt/cpan-bootstrap.pl
--- old/local-lib-2.000024/xt/cpan-bootstrap.pl 2017-09-02 19:56:37.000000000 
+0200
+++ new/local-lib-2.000029/xt/cpan-bootstrap.pl 2022-04-20 15:35:00.000000000 
+0200
@@ -31,6 +31,7 @@
   urllist      => ["$url"],
   install_help => 'manual',
   check_sigs   => 0,
+  pushy_https  => 0,
   shell        => (
     $^O eq 'MSWin32' ? ($ENV{COMSPEC} || 'cmd.exe')
                      : ($ENV{SHELL}   || '/bin/sh')

Reply via email to