Hello community, here is the log from the commit of package perl-local-lib for openSUSE:Factory checked in at 2013-10-06 14:31:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-local-lib (Old) and /work/SRC/openSUSE:Factory/.perl-local-lib.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-local-lib" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-local-lib/perl-local-lib.changes 2013-07-30 12:06:13.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-local-lib.new/perl-local-lib.changes 2013-10-06 14:31:31.000000000 +0200 @@ -1,0 +2,16 @@ +Fri Oct 4 19:48:30 UTC 2013 - co...@suse.com + +- update to 1.008018 + - print out actual paths in more test cases, for helping to diagnose + mysterious failures + - avoid "Unrecognized escape \s passed through" errors on win32 + (again) + - avoid "Unrecognized escape \s passed through" errors on win32 + - fix new test to use alternate path representations on windows, to + handle potential space issues (regression since 1.008012) + - fix undef value errors when not installing into a local::lib + - now handling using -Mlocal::lib in a taintperl environment, by + ensuring that all libs in PERL_LOCAL_LIB_ROOT are properly added to + @INC (RT#76661, Karen Etheridge) + +------------------------------------------------------------------- Old: ---- local-lib-1.008011.tar.gz New: ---- local-lib-1.008018.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-local-lib.spec ++++++ --- /var/tmp/diff_new_pack.ooROtu/_old 2013-10-06 14:31:33.000000000 +0200 +++ /var/tmp/diff_new_pack.ooROtu/_new 2013-10-06 14:31:33.000000000 +0200 @@ -18,7 +18,7 @@ Name: perl-local-lib -Version: 1.008011 +Version: 1.008018 Release: 0 Summary: Create and Use a local Library Directory for Perl Modules License: Artistic-1.0 or GPL-1.0+ ++++++ local-lib-1.008011.tar.gz -> local-lib-1.008018.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/Changes new/local-lib-1.008018/Changes --- old/local-lib-1.008011/Changes 2013-07-27 04:47:52.000000000 +0200 +++ new/local-lib-1.008018/Changes 2013-09-15 21:47:41.000000000 +0200 @@ -1,43 +1,69 @@ Revision history for local::lib -1.008011 2013-07-26 +1.008018 2013-09-15 + - print out actual paths in more test cases, for helping to diagnose + mysterious failures + +1.008017 2013-09-14 + - avoid "Unrecognized escape \s passed through" errors on win32 + (again) + +1.008016 2013-09-13 + - avoid "Unrecognized escape \s passed through" errors on win32 + +1.008015 2013-09-12 + - re-release 1.008014 to fix broken MANIFEST + +1.008014 2013-09-12 + - fix new test to use alternate path representations on windows, to + handle potential space issues (regression since 1.008012) + +1.008013 2013-09-11 + - fix undef value errors when not installing into a local::lib + +1.008012 2013-09-11 + - now handling using -Mlocal::lib in a taintperl environment, by + ensuring that all libs in PERL_LOCAL_LIB_ROOT are properly added to + @INC (RT#76661, Karen Etheridge) + +1.008011 2013-07-26 - skip CPAN workaround if running via cpanminus (miyagawa, RT#85731) -1.008010 2013-05-26 +1.008010 2013-05-26 - Fix a split on undefined value warning (David Golden -- see https://github.com/gugod/App-perlbrew/issues/305) -1.008009 2013-02-24 +1.008009 2013-02-24 - Remove Carp::Always dep -1.008008 2013-02-24 +1.008008 2013-02-24 - Fix putting arch path in PERL5LIB - Refactor Win32 path handling out of ensure_dir_structure_for() - Fix activate_paths when PERL_LOCAL_LIB_ROOT starts with : - Fix ~/perl5/bin missing in $PATH -1.008007 2013-02-17 +1.008007 2013-02-17 - Back to 1.008004 with Carp fix since subsequent releases were botched - Avoid issue where PERL5LIB Carp is older than local::lib one -1.008004 2011-02-24 +1.008004 2011-02-24 - Fix stackable tests on win32 by canonicalizing the path ahead of time -1.008003 2011-02-23 +1.008003 2011-02-23 - Fix tests with stacking l::ls. -1.008002 2011-02-23 +1.008002 2011-02-23 - Add local::lib stacking support. - Add activation/deactivation support. -1.008001 2011-01-09 +1.008001 2011-01-09 - Bootstrap Module::Build just like ExtUtils::MakeMaker -1.008000 2011-01-05 +1.008000 2011-01-05 - Remove redundant prereqs now that Module::Build 0.36 is required - Makefile.PL avoids CPAN client configuration when not required @@ -46,66 +72,66 @@ - PERL_LOCAL_LIB_ROOT environment is added to disambiguate when PERL_MM_OPT, etc. was set by local::lib or other means -1.007000 2010-12-09 +1.007000 2010-12-09 - Chase the Module::Build version which supports PERL_MB_OPT. Thanks to miyagawa for pointing this out. -1.006009 2010-12-09 +1.006009 2010-12-09 - Split up method guess_shelltype from parts of print_environment_vars_for - Updated documentation about change of use with .modulebuildrc -1.006008 2010-11-17 +1.006008 2010-11-17 - Finally move to PERL_MB_OPT rather than using .modulebuildrc. -1.006007 2010-08-12 +1.006007 2010-08-12 - Fixing stuff so that search.cpan.org displays right - Documented one method in all languages -1.006006 2010-08-12 +1.006006 2010-08-12 - Added portuguese translation - Several minor fixes in the documentation - Changed methods look in documentation -1.006005 2010-07-13 +1.006005 2010-07-13 - Added support informations (also for german) - Fixed newline in german translation from DOS2UNIX -1.006004 2010-06-10 +1.006004 2010-06-10 - I am stupid. -1.006003 2010-06-10 +1.006003 2010-06-10 - Added german translation right -1.006002 2010-06-10 +1.006002 2010-06-10 - Hotfix for a search.cpan.org "Bug" -1.006001 2010-06-10 +1.006001 2010-06-10 - Added german translation - Enhanced some parts of english documentation - doc patch for win32 from run4flat - reverse the perl/arch paths in PERL5LIB -1.006000 2010-03-31 +1.006000 2010-03-31 - Create lib::core::only that provides the "set @INC to core dirs only" functionality that was the only part of --self-contained that ever worked usefully. - Delete broken --self-contained flag from core -1.005001 2010-03-10 +1.005001 2010-03-10 - I am an idiot. -1.005000 2010-03-10 +1.005000 2010-03-10 - More robust handling of running new toolchains on older perls. This should sort out issues users have with bootstrapping on e.g. Solaris @@ -118,7 +144,7 @@ - Start of better docs for C<--self-contained> thanks to marks...@cpan.org. -1.004009 2009-11-07 +1.004009 2009-11-07 - Fix warning if your $ENV{PERL5LIB} is undef @@ -127,13 +153,13 @@ - t0m and chrisa on #local-...@irc.perl.org pointed out a PERL5LIB ordering issue with C<--self-contained>. -1.004008 2009-10-13 +1.004008 2009-10-13 - Clarify re-reading the shell config file after writing to it. - Clarify copyright and licensing for packaging by vendors. -1.004007 2009-09-02 +1.004007 2009-09-02 - Ensure that $ENV{PERL5LIB} and @INC are always de-duped, stopping them from growing if local::lib is invoked multiple times for the @@ -144,26 +170,26 @@ - Cleaned up indentation of code lines in the POD. Everything should be nice and flush, now. -1.004006 2009-08-25 +1.004006 2009-08-25 - Fix parsing of --self-contained and local lib directory. It's now possible to specify flags and the directory in any order. Also made adding future flags easier in the future. Thanks to f...@irc.perl.org/#catalyst for pointing out that --self-contained wouldn't work without a directory. -1.004005 2009-08-23 +1.004005 2009-08-23 - Add the --no-manpages option to bootstraping to tell EUMM / MB to not generate manpages from POD. Thanks to RKITOVER for providing the necessary values for CPAN.pm's configuration. -1.004004 2009-08-05 +1.004004 2009-08-05 - Add dependency on Extutils::Install 1.43 and install in --bootstrap otherwise we fail to build with latest MakeMaker on OpenSolaris (t0m) - Fix Win32 / Cygwin detection (emazep). -1.004003 2009-16-16 +1.004003 2009-16-16 - Stop Makefile.PL exploding if your CPAN is too old to have CPAN::HandleConfig. Needed when installing local::lib via CPAN using an old CPAN version (t0m) @@ -173,7 +199,7 @@ mangle @INC from $ENV{PERL5LIB}, and fix install of 'difficult' modules with such as Test::Deep (t0m) -1.004002 2009-06-15 +1.004002 2009-06-15 - Fixed up INC untaint procedure to skip/ignore CODE, ARRAY, blessed entries. (grink) - Include test in xt/ for the above @@ -186,53 +212,53 @@ - eg/scripted_install.pl now no longer requires TARGET, but still respects it. (confound) -1.004001 2009-05-21 +1.004001 2009-05-21 - Clean up CPAN.pm's environment variable the same way we do for CPANPLUS. Add an example program showing local::lib employed programmatically (confound). - Add the beginnings of a troubleshooting section (pattern). -1.004000 2009-05-14 +1.004000 2009-05-14 - Don't allow dangerous settings for CPAN.pm that affect where CPAN installs stuff, as this conflicts with what we're trying to do. - Make sure that our Makefile is written to the correct directory when bootstrapping (confound). -1.003004 2009-05-12 +1.003004 2009-05-12 - Additional documentation and examples concerning having multiple local::lib enviornments (amiri) - Some install tests courtesy of Hans Dieter Pearcey <h...@cpan.org>. Thanks! -1.003003 2009-04-09 +1.003003 2009-04-09 - Expose the internals per RT #36846. - Fix the MANIFEST up a bit. -1.003002 2009-02-25 +1.003002 2009-02-25 - Add a doc patch from Torsten Raudssus <tors...@raudssus.de> that clarifies how to specify a directory other than ~/perl5. -1.003001 2009-01-14 +1.003001 2009-01-14 - Properly bail if given fancy dashes obtained by copy-pasting from a UTF8-happy POD formatter. This will bail in both the Makefile.PL and in local::lib::import(). -1.003000 2009-01-13 +1.003000 2009-01-13 - Add the --self-contained flag from Mark Stosberg, which also contains a doc patch warning about the dangers of UNINST=1. Thanks, Mark! -1.002000 2008-08-06 +1.002000 2008-08-06 - make CPAN config reinit non-prompting but still robust - make bootstrap auto-init CPAN config and set USE_DEFAULT for deps -1.001000 2007-09-19 +1.001000 2007-09-19 - refactored shell command generation - implemented C shell command generation based on this (checks $SHELL} - improved docs - modified Makefile.PL to install an up-to-date CPAN.pm if needed -1.000000 2007-09-13 +1.000000 2007-09-13 - initial release diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/MANIFEST new/local-lib-1.008018/MANIFEST --- old/local-lib-1.008011/MANIFEST 2013-07-27 04:49:32.000000000 +0200 +++ new/local-lib-1.008018/MANIFEST 2013-09-15 21:49:27.000000000 +0200 @@ -1,4 +1,5 @@ Changes +eg/scripted_install.pl inc/Module/AutoInstall.pm inc/Module/Install.pm inc/Module/Install/AutoInstall.pm @@ -14,9 +15,12 @@ lib/local/lib.pm lib/POD2/DE/local/lib.pod lib/POD2/PT_BR/local/lib.pod +maint/gen-tests.pl Makefile.PL MANIFEST This list of files META.yml +README +t/bad_variables.t t/classmethod.t t/coderefs_in_inc.t t/de-dup.t @@ -26,6 +30,15 @@ t/dist/MB/lib/MB.pm t/install.t t/lib-core-only.t +t/lib/TempDir.pm t/pipeline.t t/stackable.t t/subroutine-in-inc.t +t/taint-mode.t +xt/release/cpan-changes.t +xt/release/distmeta.t +xt/release/eol.t +xt/release/kwalitee.t +xt/release/minimum-version.t +xt/release/no-tabs.t +xt/release/pod-syntax.t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/META.yml new/local-lib-1.008018/META.yml --- old/local-lib-1.008011/META.yml 2013-07-27 04:49:29.000000000 +0200 +++ new/local-lib-1.008018/META.yml 2013-09-15 21:49:26.000000000 +0200 @@ -18,6 +18,7 @@ directory: - inc - t + - xt requires: CPAN: 1.82 ExtUtils::Install: 1.43 @@ -29,4 +30,4 @@ homepage: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/local-lib.git license: http://dev.perl.org/licenses/ repository: git://git.shadowcat.co.uk/p5sagit/local-lib.git -version: 1.008011 +version: 1.008018 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/Makefile.PL new/local-lib-1.008018/Makefile.PL --- old/local-lib-1.008011/Makefile.PL 2013-07-27 04:32:12.000000000 +0200 +++ new/local-lib-1.008018/Makefile.PL 2013-09-11 01:37:33.000000000 +0200 @@ -6,7 +6,7 @@ use Config; # Solaris (and possibly other Unices) have a tar in /usr/bin that, among -# other things, does not understand @LongLink. This can cause +# other things, does not understand @LongLink. This can cause # extraction to look like it succeeded, but it actually failed (because # the error message for the @LongLink failure scrolled offscreen). # Therefore, given the fact that GNU tar is the most widespread tar available, @@ -45,7 +45,8 @@ # dashes, it's better to die loudly telling the user exactly what happened # so they don't make the same mistake again rather than being the only # program in the universe that works with them. - if(grep { /−/ } @ARGV) { + # the fancy dash is U+2212 or \xE2\x88\x92 + if(grep { /\xE2\x88\x92/ } @ARGV or grep { /−/ } @ARGV) { die <<'DEATH'; WHOA THERE! It looks like you've got some fancy dashes in your commandline! These are *not* the traditional -- dashes that software recognizes. You @@ -106,7 +107,7 @@ } return $orig->(@_); }; - # not yet -- apeiron, 2010-03-10 + # not yet -- apeiron, 2010-03-10 #$CPAN::Config->{urllist} = ["http://cpan.shadowcatprojects.net"]; # <mst> all bootstrapped fine on one DH account # <mst> on another, it tries to install man stuff into /usr/local @@ -158,10 +159,10 @@ system($^X, '-MCPAN', '-e', $cpan_config_command) unless $did_cpan_config; system($^X, '-MCPAN', - '-e', + '-e', q[CPAN::HandleConfig->load;], - '-e', - q[$CPAN::Config->{makepl_arg} = ] . + '-e', + q[$CPAN::Config->{makepl_arg} = ] . q['INSTALLMAN1DIR=none INSTALLMAN3DIR=none';], '-e', q[$CPAN::Config->{buildpl_arg} = ] . diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/README new/local-lib-1.008018/README --- old/local-lib-1.008011/README 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/README 2013-09-11 01:37:13.000000000 +0200 @@ -0,0 +1,13 @@ + + +This archive contains the local-lib distribution: + + create and use a local lib/ for perl modules with PERL5LIB + +This software is copyright (c) 2007 by Matt S Trout, +<m...@shadowcat.co.uk> http://www.shadowcat.co.uk/ + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/eg/scripted_install.pl new/local-lib-1.008018/eg/scripted_install.pl --- old/local-lib-1.008011/eg/scripted_install.pl 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/eg/scripted_install.pl 2013-02-12 17:00:24.000000000 +0100 @@ -0,0 +1,19 @@ +#!/usr/bin/perl +# contributed by h...@cpan.org + +use strict; +use warnings; +use CPAN; +use Cwd; +use File::Spec; +my $target = $ENV{TARGET} ? Cwd::abs_path($ENV{TARGET}) : undef; + +my $mod = CPAN::Shell->expand(Module => "local::lib"); +$mod->get; +my $dir = CPAN::Shell->expand(Distribution => $mod->cpan_file)->dir; +chdir($dir); +my $make = $CPAN::Config->{make}; +my $bootstrap = $target ? "--bootstrap=$target" : "--bootstrap"; +system($^X, 'Makefile.PL', $bootstrap) && exit 1; +system($make, 'test') && exit 1; +system($make, 'install') && exit 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/lib/POD2/DE/local/lib.pod new/local-lib-1.008018/lib/POD2/DE/local/lib.pod --- old/local-lib-1.008011/lib/POD2/DE/local/lib.pod 2013-02-12 17:00:24.000000000 +0100 +++ new/local-lib-1.008018/lib/POD2/DE/local/lib.pod 2013-09-11 01:37:12.000000000 +0200 @@ -41,7 +41,7 @@ Standardmäßig installiert sich local::lib in ~/perl5. -Windows Benutzern müssen ausserdem dies hier lesen: +Windows Benutzern müssen ausserdem dies hier lesen: L</Unterschiede bei Benutzung dieses Module mit Win32>. 1. Lade das Tar-Archiv von CPAN runter (Suche nach "Download" auf der CPAN Seite von @@ -65,7 +65,7 @@ make test && make install 4. Nun müssen wir die benötigten Umgebungsvariablen, damit Perl unser neu generiertes -lib/ Verzeichnis benutzt. Wenn du bash oder eine andere Bourne Shell benutzt, kannst +lib/ Verzeichnis benutzt. Wenn du bash oder eine andere Bourne Shell benutzt, kannst du es über diesen Weg zu deinem Shell Startup Skript hinzufügen: echo 'eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)' >>~/.bashrc @@ -84,7 +84,7 @@ Nachdem diese Änderungen in deinem Shell Startup Skript gemacht wurden, ist es nun wichtig das diese Umgebungsvariablen auch gesetzt sind in deiner aktuellen Umgebung. In Bourne -Shells macht man dies z.B. mit C<. ~/.bashrc>, und in C Shell würde man es mit: +Shells macht man dies z.B. mit C<. ~/.bashrc>, und in C Shell würde man es mit: C<source ~/.cshrc> mit. Wenn du eine sehr langsames System hast, oder du unter drakonischen Regulierungen des @@ -116,7 +116,7 @@ Für mehrere Umgebungen in dieser Form brauch man eine Modifikation in der Benutzung von C<< use FindBin >> in dem "Im Code" Beispiel oben. Wenn du sowas machst, und du hast damit z.B. Perl Module nach C<< -~/mydir1/lib >> installiert und du hast ein Script in C<< +~/mydir1/lib >> installiert und du hast ein Script in C<< ~/mydir1/scripts/myscript.pl >>, du musst dort angeben das die Module die es braucht im Verzeichnis C<< ~/mydir1/lib >> liegen. @@ -124,7 +124,7 @@ use strict; use warnings; - use local::lib "$FindBin::Bin/.."; ### zeigt auf ~/mydir1 und local::lib + use local::lib "$FindBin::Bin/.."; ### zeigt auf ~/mydir1 und local::lib ### findet dort lib use lib "$FindBin::Bin/../lib"; ### zeigt auf ~/mydir1/lib @@ -141,13 +141,13 @@ set PERL_MM_OPT=INSTALL_BASE=C:\DOCUME~1\ADMINI~1\perl5 set PERL5LIB=C:\DOCUME~1\ADMINI~1\perl5\lib\perl5;C:\DOCUME~1\ADMINI~1\perl5\lib\perl5\MSWin32-x86-multi-thread set PATH=C:\DOCUME~1\ADMINI~1\perl5\bin;%PATH% - + ### Um die Umgebungsvariablen für diese Shell alleine zu setzen C:\>perl -Mlocal::lib > %TEMP%\tmp.bat && %TEMP%\tmp.bat && del %TEMP%\temp.bat ### anstelle von $(perl -Mlocal::lib=./) in bash. Wenn du willst das die Umgebungsvariablen dauerhaft gesetzt sind, musst du diese -in Systemsteuerung / System dauerhaft selber eintragen oder +in Systemsteuerung / System dauerhaft selber eintragen oder L<App::local::lib::Win32Helper> benutzen. Die "~" wird übersetzt zu dem Benutzer Profil Verzeichnis (das Verzeichnis was @@ -169,11 +169,11 @@ local::lib löst dieses Problem, es erlaubt dir dein komplett eigenes Verzeichnis für deine CPAN Module zu haben und bist so nicht genötigt die Module vom -System zu nutzen oder andersrum andere User nicht mit individuellen +System zu nutzen oder andersrum andere User nicht mit individuellen Modulwünschen zu Überarbeitung ihres Codes zu zwingen, weil bestimmte Module zentral für alle auf neuere Version upgedatet werden. Die Installation findet hierbei dann z.B. im Home Verzeichnis statt. Es werden nur Umgebungsvariablen -gesetzt die das installierte Perl dazu bewegen die im Homeverzeichnis +gesetzt die das installierte Perl dazu bewegen die im Homeverzeichnis installierten Module zu benutzen, zusätzlich und vorgezogen zu denen auf dem System. @@ -371,11 +371,11 @@ Hierbei wird der Pfad durch die folgende Methoden gegeben, wobei der Rückgabewert der ersten an die nächste weitergeben wird, um die Umgebung zu konfigurieren -für die lokale Bibliotheks Installation: L</resolve_empty_path>, -L</resolve_home_path>, L</resolve_relative_path>. +für die lokale Bibliotheks Installation: L</resolve_empty_path>, +L</resolve_home_path>, L</resolve_relative_path>. Der daraus resultierende Pfad wird zu L</resolve_empty_path> übergeben, dessen Resultat dann weitergegeben wird an L</resolve_home_path>, wessen Resultat dann -weitergegeben wird an L</resolve_relative_path>. Dieses Resultat wird dann final +weitergegeben wird an L</resolve_relative_path>. Dieses Resultat wird dann final an L</resolve_path> übergeben, welches dann den Rückgabewert stellt. =head1 EINE WARNUNG VOR UNINST=1 @@ -393,7 +393,7 @@ =head1 EINSCHRÄNKUNGEN Die Werkzeuge von perl, die benutzt werden um die Pakete zu installieren -(die sogenannte toolchain), sind leider nicht in der Lage sauber mit +(die sogenannte toolchain), sind leider nicht in der Lage sauber mit Verzeichnissen umzugehen die Leerzeichen enthalten und können daher local::lib nicht direkt in ein solches Verzeichnis installieren. Was du machen kannst ist B<nach> der Installation von local::lib und der Module die du in deiner @@ -426,10 +426,10 @@ Wenn du local::lib konfiguriert hast CPAN Module in deinem Home Verzeichnis zu installieren, und du danach versuchst mit C<cpan -i Foo::Bar> ein Modul -zu installieren, und dabei einen Fehler bekommst, wie: C<Warning: You do not +zu installieren, und dabei einen Fehler bekommst, wie: C<Warning: You do not have permissions to install into /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux at /usr/lib64/perl5/5.8.8/Foo/Bar.pm> und in der installationsausgabe steht -irgendwo ein Fehler der sagt C<'INSTALL_BASE' is not a known MakeMaker parameter +irgendwo ein Fehler der sagt C<'INSTALL_BASE' is not a known MakeMaker parameter name>, dann hast du aus irgendeinem Grund dein neue Version von ExtUtils::MakeMaker verloren. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/lib/POD2/PT_BR/local/lib.pod new/local-lib-1.008018/lib/POD2/PT_BR/local/lib.pod --- old/local-lib-1.008011/lib/POD2/PT_BR/local/lib.pod 2013-02-12 17:00:24.000000000 +0100 +++ new/local-lib-1.008018/lib/POD2/PT_BR/local/lib.pod 2013-09-11 01:37:12.000000000 +0200 @@ -138,7 +138,7 @@ set PERL_MM_OPT=INSTALL_BASE=C:\DOCUME~1\ADMINI~1\perl5 set PERL5LIB=C:\DOCUME~1\ADMINI~1\perl5\lib\perl5;C:\DOCUME~1\ADMINI~1\perl5\lib\perl5\MSWin32-x86-multi-thread set PATH=C:\DOCUME~1\ADMINI~1\perl5\bin;%PATH% - + ### Para configurar o ambiente apenas dessa shell C:\>perl -Mlocal::lib > %TEMP%\tmp.bat && %TEMP%\tmp.bat && del %TEMP%\temp.bat ### em vez de $(perl -Mlocal::lib=./) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/lib/local/lib.pm new/local-lib-1.008018/lib/local/lib.pm --- old/local-lib-1.008011/lib/local/lib.pm 2013-07-27 04:48:06.000000000 +0200 +++ new/local-lib-1.008018/lib/local/lib.pm 2013-09-15 21:47:33.000000000 +0200 @@ -10,7 +10,7 @@ use File::Path (); use Config; -our $VERSION = '1.008011'; # 1.8.11 +our $VERSION = '1.008018'; # 1.8.18 our @KNOWN_FLAGS = qw(--self-contained --deactivate --deactivate-all); @@ -29,7 +29,8 @@ my %arg_store; for my $arg (@args) { # check for lethal dash first to stop processing before causing problems - if ($arg =~ /−/) { + # the fancy dash is U+2212 or \xE2\x88\x92 + if ($arg =~ /\xE2\x88\x92/ or $arg =~ /−/) { die <<'DEATH'; WHOA THERE! It looks like you've got some fancy dashes in your commandline! These are *not* the traditional -- dashes that software recognizes. You @@ -99,7 +100,7 @@ package local::lib; { package Foo; sub foo { -$_[1] } sub bar { $_[1]+2 } sub baz { $_[1]+3 } } -my $foo = bless({}, 'Foo'); +my $foo = bless({}, 'Foo'); Test::More::ok($foo->${pipeline qw(foo bar baz)}(10) == -15); =end testing @@ -442,7 +443,14 @@ my ($class) = @_; return () unless defined $ENV{PERL_LOCAL_LIB_ROOT}; - return grep { $_ ne '' } split /\Q$Config{path_sep}/, $ENV{PERL_LOCAL_LIB_ROOT}; + + return grep { + # screen out entries that aren't actually reflected in @INC + my $active_ll = $class->install_base_perl_path($_); + grep { $_ eq $active_ll } @INC + } + grep { $_ ne '' } + split /\Q$Config{path_sep}\E/, $ENV{PERL_LOCAL_LIB_ROOT}; } sub build_deactivate_environment_vars_for { @@ -583,9 +591,9 @@ A typical way to install local::lib is using what is known as the "bootstrapping" technique. You would do this if your system administrator hasn't already installed local::lib. In this case, you'll need to install -local::lib in your home directory. +local::lib in your home directory. -If you do have administrative privileges, you will still want to set up your +Even if you do have administrative privileges, you will still want to set up your environment variables, as discussed in step 4. Without this, you would still install the modules into the system CPAN installation and also your Perl scripts will not use the lib/ path you bootstrapped with local::lib. @@ -615,7 +623,7 @@ make test && make install -4. Now we need to setup the appropriate environment variables, so that Perl +4. Now we need to setup the appropriate environment variables, so that Perl starts using our newly generated lib/ directory. If you are using bash or any other Bourne shells, you can add this to your shell startup script this way: @@ -629,13 +637,13 @@ /bin/csh 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 +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 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 +changed settings into your current shell's environment. Bourne shells use C<. ~/.bashrc> for this, whereas C shells use C<source ~/.cshrc>. If you're on a slower machine, or are operating under draconian disk space @@ -644,9 +652,9 @@ perl Makefile.PL --bootstrap --no-manpages -To avoid doing several bootstrap for several Perl module environments on the -same account, for example if you use it for several different deployed -applications independently, you can use one bootstrapped local::lib +To avoid doing several bootstrap for several Perl module environments on the +same account, for example if you use it for several different deployed +applications independently, you can use one bootstrapped local::lib installation to install modules in different directories directly this way: cd ~/mydir1 @@ -699,7 +707,7 @@ set PERL_MM_OPT=INSTALL_BASE=C:\DOCUME~1\ADMINI~1\perl5 set PERL5LIB=C:\DOCUME~1\ADMINI~1\perl5\lib\perl5;C:\DOCUME~1\ADMINI~1\perl5\lib\perl5\MSWin32-x86-multi-thread set PATH=C:\DOCUME~1\ADMINI~1\perl5\bin;%PATH% - + ### To set the environment for this shell alone C:\>perl -Mlocal::lib > %TEMP%\tmp.bat && %TEMP%\tmp.bat && del %TEMP%\tmp.bat ### instead of $(perl -Mlocal::lib=./) @@ -733,7 +741,7 @@ If you are using a package management system (such as Debian), you don't need to worry about Debian and CPAN stepping on each other's toes. Your local version of the packages will be written to an entirely separate directory from those -installed by Debian. +installed by Debian. =head1 DESCRIPTION @@ -856,7 +864,8 @@ =back Returns a list of active C<local::lib> paths, according to the -C<PERL_LOCAL_LIB_ROOT> environment variable. +C<PERL_LOCAL_LIB_ROOT> environment variable and verified against +what is really in C<@INC>. =head2 install_base_perl_path @@ -970,29 +979,37 @@ =head1 LIMITATIONS -The perl toolchain is unable to handle directory names with spaces in it, -so you cant put your local::lib bootstrap into a directory with spaces. What +=over 4 + +=item * The perl toolchain is unable to handle directory names with spaces in it, +so you can't put your local::lib bootstrap into a directory with spaces. What you can do is moving your local::lib to a directory with spaces B<after> you installed all modules inside your local::lib bootstrap. But be aware that you -cant update or install CPAN modules after the move. +can't update or install CPAN modules after the move. -Rather basic shell detection. Right now anything with csh in its name is +=item * Rather basic shell detection. Right now anything with csh in its name is assumed to be a C shell or something compatible, and everything else is assumed to be Bourne, except on Win32 systems. If the C<SHELL> environment variable is not set, a Bourne-compatible shell is assumed. -Bootstrap is a hack and will use CPAN.pm for ExtUtils::MakeMaker even if you +=item * Bootstrap is a hack and will use CPAN.pm for ExtUtils::MakeMaker even if you have CPANPLUS installed. -Kills any existing PERL5LIB, PERL_MM_OPT or PERL_MB_OPT. +=item * Kills any existing PERL5LIB, PERL_MM_OPT or PERL_MB_OPT. -Should probably auto-fixup CPAN config if not already done. +=item * Should probably auto-fixup CPAN config if not already done. + +=back Patches very much welcome for any of the above. -On Win32 systems, does not have a way to write the created environment variables +=over 4 + +=item * On Win32 systems, does not have a way to write the created environment variables to the registry, so that they can persist through a reboot. +=back + =head1 TROUBLESHOOTING If you've configured local::lib to install CPAN modules somewhere in to your diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/maint/gen-tests.pl new/local-lib-1.008018/maint/gen-tests.pl --- old/local-lib-1.008011/maint/gen-tests.pl 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/maint/gen-tests.pl 2013-02-12 17:00:24.000000000 +0100 @@ -0,0 +1,68 @@ +#!/usr/bin/env perl + +use strict; +use warnings; +use IO::All; + +my $mode; + +my %tests; + +my ($test, $segment, $text); + +sub mode::outer { + shift; + my $line = $_[0]; + if ($line =~ /^=for test (\S+)(?:\s+(\S+))?/) { + $mode = 'inner'; + ($test, $segment) = ($1, $2); + $segment ||= ''; + $text = ''; + } elsif ($line =~ /^=begin testing/) { + $mode = 'find_comment'; + ($test, $segment, $text) = ('', '', ''); + } +} + +sub mode::find_comment { + shift; + my $line = $_[0]; + if ($line =~ /^\#\:\: test (\S+)(?:\s+(\S+))?/) { + $mode = 'inner'; + ($test, $segment) = ($1, $2); + $segment ||= ''; + } +} + +sub mode::inner { + shift; + if ($_[0] =~ /^=/) { + $mode = 'outer'; + push(@{$tests{$test}{$segment}||=[]}, $text); + } else { + $text .= $_[0]; + } +} + + +my @lines = io('lib/local/lib.pm')->getlines; + +$mode = 'outer'; + +foreach my $line (@lines) { + #warn "$mode: $line"; + mode->$mode($line); +} + +foreach my $test (keys %tests) { + my $data = $tests{$test}; + my $text = join("\n", q{ +use strict; +use warnings; +use Test::More 'no_plan'; +use local::lib (); +}, @{$data->{setup}||[]}, + map { "{\n$_}\n"; } @{$data->{''}||[]} + ); + $text > io("t/${test}.t"); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/bad_variables.t new/local-lib-1.008018/t/bad_variables.t --- old/local-lib-1.008011/t/bad_variables.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/t/bad_variables.t 2013-09-15 21:45:58.000000000 +0200 @@ -0,0 +1,38 @@ +use strict; +use warnings; +use Test::More tests => 5; +use File::Temp 'tempdir'; +use Config; +use local::lib (); + +use lib 't/lib'; use TempDir; + +# remember the original value of this, in case we are already running inside a +# local::lib +my $orig_llr = $ENV{PERL_LOCAL_LIB_ROOT} || ''; +$orig_llr = '' if $orig_llr eq $Config{path_sep}; + +my $dir1 = mk_temp_dir('test_local_lib-XXXXX'); +my $dir2 = mk_temp_dir('test_local_lib-XXXXX'); +my $dir3 = mk_temp_dir('test_local_lib-XXXXX'); + +ok(!(grep { $dir1 eq $_ } @INC), 'new dir is not already in @INC'); +ok(!(grep { $dir1 eq $_ } split /\Q$Config{path_sep}\E/, ($ENV{PERL5LIB}||'')), 'new dir is not already in PERL5LIB'); + +local::lib->import($dir1); +local::lib->import($dir2); + +# we have junk in here now +$ENV{PERL_LOCAL_LIB_ROOT} .= $Config{path_sep} . $dir3; + +local::lib->import($dir1); + +is( + $ENV{PERL_LOCAL_LIB_ROOT}, + join($Config{path_sep}, (grep { defined $_ and $_ ne '' } $orig_llr, $dir2, $dir1)), + 'dir1 should have been removed and added back in at the top (PERL_LOCAL_LIB_ROOT was ' . $orig_llr . ')', +); + +ok((grep { /\Q$dir1\E/ } @INC), 'new dir has been added to @INC'); +ok((grep { /\Q$dir1\E/ } split /\Q$Config{path_sep}\E/, $ENV{PERL5LIB}), 'new dir has been added to PERL5LIB'); + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/install.t new/local-lib-1.008018/t/install.t --- old/local-lib-1.008011/t/install.t 2013-02-12 17:00:24.000000000 +0100 +++ new/local-lib-1.008018/t/install.t 2013-09-15 21:37:51.000000000 +0200 @@ -20,7 +20,7 @@ SKIP: for my $dist_type (qw(EUMM MB)) { chdir File::Spec->catdir($orig_dir, qw(t dist), $dist_type); if ($dist_type eq 'EUMM') { - my ($stdout, $stderr) = capture { eval { + my ($stdout, $stderr) = capture { eval { system($^X, 'Makefile.PL') && die "Makefile.PL failed"; system($Config{make}, 'install') && die "$Config{make} install failed"; } }; @@ -32,10 +32,9 @@ } }; diag $stdout, $stderr if $@; } + my $file = File::Spec->catfile($dir, qw(lib perl5), "$dist_type.pm"); ok( - -e File::Spec->catfile( - $dir, qw(lib perl5), "$dist_type.pm", - ), - "$dist_type.pm installed into the correct location", + -e $file, + "$dist_type.pm installed as $file", ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/lib/TempDir.pm new/local-lib-1.008018/t/lib/TempDir.pm --- old/local-lib-1.008011/t/lib/TempDir.pm 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/t/lib/TempDir.pm 2013-09-13 18:26:01.000000000 +0200 @@ -0,0 +1,27 @@ +package TempDir; +use strict; +use warnings; + +use Exporter 'import'; +our @EXPORT = qw(mk_temp_dir); + +use local::lib (); +use Cwd; +use File::Temp qw(tempdir); + +sub mk_temp_dir +{ + my $name_template = shift; + + my $path = tempdir($name_template, DIR => Cwd::abs_path('t'), CLEANUP => 1); + local::lib->ensure_dir_structure_for($path); + # On Win32 the path where the distribution is built usually contains + # spaces. This is a problem for some parts of the CPAN toolchain, so + # local::lib uses the GetShortPathName trick do get an alternate + # representation of the path that doesn't constain spaces. + return ($^O eq 'MSWin32') + ? Win32::GetShortPathName($path) + : $path +} + +1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/pipeline.t new/local-lib-1.008018/t/pipeline.t --- old/local-lib-1.008011/t/pipeline.t 2013-02-12 17:00:24.000000000 +0100 +++ new/local-lib-1.008018/t/pipeline.t 2013-09-11 01:37:12.000000000 +0200 @@ -9,7 +9,7 @@ package local::lib; { package Foo; sub foo { -$_[1] } sub bar { $_[1]+2 } sub baz { $_[1]+3 } } -my $foo = bless({}, 'Foo'); +my $foo = bless({}, 'Foo'); Test::More::ok($foo->${pipeline qw(foo bar baz)}(10) == -15); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/stackable.t new/local-lib-1.008018/t/stackable.t --- old/local-lib-1.008011/t/stackable.t 2013-02-25 19:36:28.000000000 +0100 +++ new/local-lib-1.008018/t/stackable.t 2013-09-12 18:22:36.000000000 +0200 @@ -1,29 +1,14 @@ use strict; use warnings; use Test::More; -use File::Temp qw(tempdir); use File::Spec; -use Cwd; use Config; plan tests => 24; use local::lib (); -sub mk_temp_dir -{ - my $name_template = shift; - - my $path = tempdir($name_template, DIR => Cwd::abs_path('t'), CLEANUP => 1); - local::lib->ensure_dir_structure_for($path); - # On Win32 the path where the distribution is built usually contains - # spaces. This is a problem for some parts of the CPAN toolchain, so - # local::lib uses the GetShortPathName trick do get an alternate - # representation of the path that doesn't constain spaces. - return ($^O eq 'MSWin32') - ? Win32::GetShortPathName($path) - : $path -} +use lib 't/lib'; use TempDir; my $dir1 = mk_temp_dir('test_local_lib-XXXXX'); my $dir2 = mk_temp_dir('test_local_lib-XXXXX'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/t/taint-mode.t new/local-lib-1.008018/t/taint-mode.t --- old/local-lib-1.008011/t/taint-mode.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/t/taint-mode.t 2013-09-15 21:36:46.000000000 +0200 @@ -0,0 +1,43 @@ +# +# t/taint-mode.t: checks that local::lib sets up @INC correctly when +# included in a script that has taint mode on, and is executing in an +# environment in which local::lib has already been loaded. +# + +use strict; +use warnings; +use Test::More tests => 1; +use File::Temp 'tempfile'; +use Cwd; + +use lib 't/lib'; use TempDir; + +my $dir1 = mk_temp_dir('test_local_lib-XXXXX'); + +# Set up local::lib environment using our temp dir +require local::lib; +local::lib->import($dir1); + +# Create a script that has taint mode turned on, and tries to use a +# local lib to the same temp dir. +my ($fh, $filename) = tempfile('test_local_lib-XXXXX', DIR => Cwd::abs_path('t'), UNLINK => 1); + +# escape backlslashes for embedding into generated script +$dir1 =~ s/\\/\\\\/g; + +print $fh <<EOM; +#!/usr/bin/perl -T +use strict; use warnings; +use local::lib '$dir1'; +warn 'using lib dir $dir1', "\n"; +my \$dir = '$dir1'; +if (grep { m{^\\Q\$dir\\E/} } \@INC) { + exit 0; +} +exit 1 +EOM +close $fh; + +my $exit_val = system($^X, '-Ilib', '-T', $filename); + +is($exit_val >> 8, 0, 'test script exited with 0, local::lib dir found in @INC'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/cpan-changes.t new/local-lib-1.008018/xt/release/cpan-changes.t --- old/local-lib-1.008011/xt/release/cpan-changes.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/cpan-changes.t 2013-09-11 01:37:12.000000000 +0200 @@ -0,0 +1,9 @@ +use strict; +use warnings; + +use Test::More 0.96 tests => 2; +use_ok('Test::CPAN::Changes'); +subtest 'changes_ok' => sub { + changes_file_ok('Changes'); +}; +done_testing(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/distmeta.t new/local-lib-1.008018/xt/release/distmeta.t --- old/local-lib-1.008011/xt/release/distmeta.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/distmeta.t 2013-09-11 01:37:12.000000000 +0200 @@ -0,0 +1,6 @@ +use strict; +use warnings; +use Test::More; + +use Test::CPAN::Meta; +meta_yaml_ok(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/eol.t new/local-lib-1.008018/xt/release/eol.t --- old/local-lib-1.008011/xt/release/eol.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/eol.t 2013-09-11 01:37:13.000000000 +0200 @@ -0,0 +1,6 @@ +use strict; +use warnings; +use Test::More; + +use Test::EOL; +all_perl_files_ok({ trailing_whitespace => 1 }); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/kwalitee.t new/local-lib-1.008018/xt/release/kwalitee.t --- old/local-lib-1.008011/xt/release/kwalitee.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/kwalitee.t 2013-09-11 01:37:13.000000000 +0200 @@ -0,0 +1,3 @@ +use strict; +use warnings; +use Test::Kwalitee; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/minimum-version.t new/local-lib-1.008018/xt/release/minimum-version.t --- old/local-lib-1.008011/xt/release/minimum-version.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/minimum-version.t 2013-09-11 01:37:12.000000000 +0200 @@ -0,0 +1,6 @@ +use strict; +use warnings; + +use Test::More; +use Test::MinimumVersion; +all_minimum_version_ok( qq{5.008001} ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/no-tabs.t new/local-lib-1.008018/xt/release/no-tabs.t --- old/local-lib-1.008011/xt/release/no-tabs.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/no-tabs.t 2013-09-11 01:37:13.000000000 +0200 @@ -0,0 +1,6 @@ +use strict; +use warnings; +use Test::More; + +use Test::NoTabs; +all_perl_files_ok(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/local-lib-1.008011/xt/release/pod-syntax.t new/local-lib-1.008018/xt/release/pod-syntax.t --- old/local-lib-1.008011/xt/release/pod-syntax.t 1970-01-01 01:00:00.000000000 +0100 +++ new/local-lib-1.008018/xt/release/pod-syntax.t 2013-09-11 01:37:12.000000000 +0200 @@ -0,0 +1,6 @@ +use strict; +use warnings; +use Test::More; + +use Test::Pod 1.41; +all_pod_files_ok(); -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org