Hello community,
here is the log from the commit of package perl-namespace-clean for openSUSE:Factory checked in at 2013-05-17 08:33:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-namespace-clean (Old)
and /work/SRC/openSUSE:Factory/.perl-namespace-clean.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-namespace-clean"
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-namespace-clean/perl-namespace-clean.changes 2012-03-26 14:03:09.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-namespace-clean.new/perl-namespace-clean.changes 2013-05-17 08:33:50.000000000 +0200
@@ -1,0 +2,10 @@
+Wed May 15 15:20:27 UTC 2013 - coolo@suse.com
+
+- updated to 0.24
+ - Properly skip debugger test when optional deps not available
+ - Make sure pure-perl tests pass correctly on space-containing
+ paths (RT#77528)
+ - Remove all the pure-perl fallback code and depend on PP-capable
+ B::H::EOS 0.12
+
+-------------------------------------------------------------------
Old:
----
namespace-clean-0.23.tar.gz
New:
----
namespace-clean-0.24.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-namespace-clean.spec ++++++
--- /var/tmp/diff_new_pack.AdE5A6/_old 2013-05-17 08:33:50.000000000 +0200
+++ /var/tmp/diff_new_pack.AdE5A6/_new 2013-05-17 08:33:50.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-namespace-clean
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: perl-namespace-clean
-Version: 0.23
+Version: 0.24
Release: 0
%define cpan_name namespace-clean
Summary: Keep imports and functions out of your namespace
@@ -29,43 +29,29 @@
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
-BuildRequires: perl(B::Hooks::EndOfScope) >= 0.07
+BuildRequires: perl(B::Hooks::EndOfScope) >= 0.12
+BuildRequires: perl(ExtUtils::CBuilder) >= 0.27
BuildRequires: perl(Package::Stash) >= 0.23
BuildRequires: perl(Test::More) >= 0.88
#BuildRequires: perl(CleaneeBridge)
#BuildRequires: perl(CleaneeBridgeDirect)
#BuildRequires: perl(CleaneeBridgeExplicit)
-#BuildRequires: perl(Devel::Hide)
#BuildRequires: perl(ExporterTest)
-#BuildRequires: perl(Hash::Util::FieldHash)
#BuildRequires: perl(InheritanceParent)
#BuildRequires: perl(namespace::clean)
-#BuildRequires: perl(namespace::clean::_PP_OSE)
-#BuildRequires: perl(namespace::clean::_PP_OSE_5_8)
#BuildRequires: perl(Sub::Identify)
#BuildRequires: perl(Sub::Name)
-#BuildRequires: perl(Tie::StdHash)
-Requires: perl(B::Hooks::EndOfScope) >= 0.07
+#BuildRequires: perl(Variable::Magic)
+Requires: perl(B::Hooks::EndOfScope) >= 0.12
Requires: perl(Package::Stash) >= 0.23
-Requires: perl(Test::More) >= 0.88
%{perl_requires}
%description
-When you define a function, or import one, into a Perl package, it will
-naturally also be available as a method. This does not per se cause problems,
-but it can complicate subclassing and, for example, plugin classes that are
-included via multiple inheritance by loading them as base classes.
-
-The namespace::clean pragma will remove all previously declared or imported
-symbols at the end of the current package's compile cycle. Functions called in
-the package itself will still be bound by their name, but they won't show up as
-methods on your class or instances.
-
-By unimporting via no you can tell namespace::clean to start collecting
-functions for the next use namespace::clean; specification.
+Keep imports and functions out of your namespace
%prep
%setup -q -n %{cpan_name}-%{version}
+# MANUAL BEGIN
%if 0%{?suse_version} <= 1110
for i in `find t -type f` ; do
sed -i -e "s@^\s*use\s\s*Test::More@use lib '%{perl_vendorlib}';\nuse Test::More@" $i
++++++ namespace-clean-0.23.tar.gz -> namespace-clean-0.24.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/Changes new/namespace-clean-0.24/Changes
--- old/namespace-clean-0.23/Changes 2012-03-11 16:02:29.000000000 +0100
+++ new/namespace-clean-0.24/Changes 2012-12-04 23:55:40.000000000 +0100
@@ -1,3 +1,10 @@
+ [0.24]
+ - Properly skip debugger test when optional deps not available
+ - Make sure pure-perl tests pass correctly on space-containing
+ paths (RT#77528)
+ - Remove all the pure-perl fallback code and depend on PP-capable
+ B::H::EOS 0.12
+
[0.23]
- Rely on B::Hooks::EndOfScope version 0.10 to fix issues with
new Module::Runtime versions (>= 0.012) on perl 5.10 due
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/MANIFEST new/namespace-clean-0.24/MANIFEST
--- old/namespace-clean-0.23/MANIFEST 2012-03-11 16:03:56.000000000 +0100
+++ new/namespace-clean-0.24/MANIFEST 2012-12-04 23:58:23.000000000 +0100
@@ -1,7 +1,5 @@
Changes
lib/namespace/clean.pm
-lib/namespace/clean/_PP_OSE.pm
-lib/namespace/clean/_PP_OSE_5_8.pm
Makefile.PL
MANIFEST This list of files
t/00-basic.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/META.json new/namespace-clean-0.24/META.json
--- old/namespace-clean-0.23/META.json 2012-03-11 16:03:56.000000000 +0100
+++ new/namespace-clean-0.24/META.json 2012-12-04 23:58:23.000000000 +0100
@@ -4,7 +4,7 @@
"Robert 'phaylon' Sedlacek , Florian Ragwitz , Jesse Luehrs "
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.113640",
+ "generated_by" : "ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120921",
"license" : [
"perl_5"
],
@@ -27,11 +27,12 @@
},
"configure" : {
"requires" : {
- "ExtUtils::MakeMaker" : 0
+ "ExtUtils::CBuilder" : "0.27"
}
},
"runtime" : {
"requires" : {
+ "B::Hooks::EndOfScope" : "0.12",
"Package::Stash" : "0.23"
}
}
@@ -46,5 +47,5 @@
"url" : "git://git.shadowcat.co.uk/p5sagit/namespace-clean.git"
}
},
- "version" : "0.23"
+ "version" : "0.24"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/META.yml new/namespace-clean-0.24/META.yml
--- old/namespace-clean-0.23/META.yml 2012-03-11 16:03:55.000000000 +0100
+++ new/namespace-clean-0.24/META.yml 2012-12-04 23:58:23.000000000 +0100
@@ -5,9 +5,9 @@
build_requires:
Test::More: 0.88
configure_requires:
- ExtUtils::MakeMaker: 0
+ ExtUtils::CBuilder: 0.27
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.113640'
+generated_by: 'ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120921'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -18,9 +18,10 @@
- t
- inc
requires:
+ B::Hooks::EndOfScope: 0.12
Package::Stash: 0.23
resources:
bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=namespace-clean
homepage: http://search.cpan.org/dist/namespace-clean
repository: git://git.shadowcat.co.uk/p5sagit/namespace-clean.git
-version: 0.23
+version: 0.24
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/Makefile.PL new/namespace-clean-0.24/Makefile.PL
--- old/namespace-clean-0.23/Makefile.PL 2012-03-11 16:00:37.000000000 +0100
+++ new/namespace-clean-0.24/Makefile.PL 2012-11-26 19:47:12.000000000 +0100
@@ -13,20 +13,14 @@
my %RUN_DEPS = (
'Package::Stash' => '0.23',
+ 'B::Hooks::EndOfScope' => '0.12',
);
-my %OPT_RUN_DEPS = (can_cc() ? (
- 'B::Hooks::EndOfScope' => '0.10', # when changing, also change $b_h_eos_req in namespace/clean.pm
-
- # these pieces are needed if using the debugger on the perl range
- ($] > 5.008_008_9 && $] < 5.013_005_1)
- ? ( 'Sub::Name' => '0.04', 'Sub::Identify' => '0.04' ) # when changing, also change $sn_ver and $si_ver in namespace/clean.pm
- : ()
- ,
-
- # make sure we smoke the pure-perl version
- is_smoker() ? ( 'Devel::Hide' => 0 ) : (),
-) : () );
+# these pieces are needed if using the debugger on the perl range
+my %OPT_RUN_DEPS = ( $] > 5.008_008_9 and $] < 5.013_005_1 and can_xs() )
+ # when changing versions, also change $sn_ver and $si_ver in namespace/clean.pm
+ ? ( 'Sub::Name' => '0.04', 'Sub::Identify' => '0.04' ) : ()
+;
my %META_BITS = (
resources => {
@@ -53,8 +47,8 @@
'VERSION_FROM' => 'lib/namespace/clean.pm',
'ABSTRACT' => 'Keep imports and functions out of your namespace',
'AUTHOR' => 'Robert \'phaylon\' Sedlacek , Florian Ragwitz , Jesse Luehrs ',
-
- 'PREREQ_PM' => {
+ 'CONFIGURE_REQUIRES' => { 'ExtUtils::CBuilder' => 0.27 },
+ 'PREREQ_PM' => {
%RUN_DEPS, %OPT_RUN_DEPS,
$mymeta_works ? () : (%BUILD_DEPS),
},
@@ -100,6 +94,20 @@
WriteMakefile(%WriteMakefileArgs);
+# Secondary compile testing via ExtUtils::CBuilder
+sub can_xs {
+ # Do we have the configure_requires checker?
+ local $@;
+ eval "require ExtUtils::CBuilder;";
+ if (! $@ ) {
+ # They don't obey configure_requires, so it is
+ # someone old and delicate. Try to avoid hurting
+ # them by falling back to an older simpler test.
+ return can_cc();
+ }
+
+ return ExtUtils::CBuilder->new( quiet => 1 )->have_compiler;
+}
# can we locate a (the) C compiler
sub can_cc {
@@ -130,7 +138,3 @@
return;
}
-
-sub is_smoker {
- return ( $ENV{AUTOMATED_TESTING} && ! $ENV{PERL5_CPANM_IS_RUNNING} && ! $ENV{RELEASE_TESTING} )
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/lib/namespace/clean/_PP_OSE.pm new/namespace-clean-0.24/lib/namespace/clean/_PP_OSE.pm
--- old/namespace-clean-0.23/lib/namespace/clean/_PP_OSE.pm 2011-12-23 00:16:01.000000000 +0100
+++ new/namespace-clean-0.24/lib/namespace/clean/_PP_OSE.pm 1970-01-01 01:00:00.000000000 +0100
@@ -1,40 +0,0 @@
-package # hide from the pauses
- namespace::clean::_PP_OSE;
-
-use warnings;
-use strict;
-
-use Tie::Hash;
-use Hash::Util::FieldHash 'fieldhash';
-
-# Here we rely on a combination of several behaviors:
-#
-# * %^H is deallocated on scope exit, so any references to it disappear
-# * A lost weakref in a fieldhash causes the corresponding key to be deleted
-# * Deletion of a key on a tied hash triggers DELETE
-#
-# Therefore the DELETE of a tied fieldhash containing a %^H reference will
-# be the hook to fire all our callbacks.
-
-fieldhash my %hh;
-{
- package # hide from pause too
- namespace::clean::_TieHintHashFieldHash;
- use base 'Tie::StdHash';
- sub DELETE {
- my $ret = shift->SUPER::DELETE(@_);
- $_->() for @$ret;
- $ret;
- }
-}
-
-sub on_scope_end (&) {
- $^H |= 0x020000;
-
- tie(%hh, 'namespace::clean::_TieHintHashFieldHash')
- unless tied %hh;
-
- push @{ $hh{\%^H} ||= [] }, shift;
-}
-
-1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/lib/namespace/clean/_PP_OSE_5_8.pm new/namespace-clean-0.24/lib/namespace/clean/_PP_OSE_5_8.pm
--- old/namespace-clean-0.23/lib/namespace/clean/_PP_OSE_5_8.pm 2011-12-23 17:16:43.000000000 +0100
+++ new/namespace-clean-0.24/lib/namespace/clean/_PP_OSE_5_8.pm 1970-01-01 01:00:00.000000000 +0100
@@ -1,26 +0,0 @@
-package # hide from the pauses
- namespace::clean::_PP_OSE_5_8;
-
-use warnings;
-use strict;
-
-# This is the original implementation, which sadly is broken
-# on perl 5.10+ withing string evals
-sub on_scope_end (&) {
- $^H |= 0x020000;
-
- push @{
- $^H{'__namespace::clean__guardstack__'}
- ||= bless ([], 'namespace::clean::_PP_SG_STACK')
- }, shift;
-}
-
-package # hide from the pauses
- namespace::clean::_PP_SG_STACK;
-
-use warnings;
-use strict;
-
-sub DESTROY { $_->() for @{$_[0]} }
-
-1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/lib/namespace/clean.pm new/namespace-clean-0.24/lib/namespace/clean.pm
--- old/namespace-clean-0.23/lib/namespace/clean.pm 2012-03-11 16:02:13.000000000 +0100
+++ new/namespace-clean-0.24/lib/namespace/clean.pm 2012-12-04 23:54:43.000000000 +0100
@@ -3,34 +3,12 @@
use warnings;
use strict;
-use vars qw( $STORAGE_VAR );
use Package::Stash;
-our $VERSION = '0.23';
+our $VERSION = '0.24';
+our $STORAGE_VAR = '__NAMESPACE_CLEAN_STORAGE';
-$STORAGE_VAR = '__NAMESPACE_CLEAN_STORAGE';
-
-# FIXME - all of this buggery will migrate to B::H::EOS soon
-BEGIN {
- # when changing also change in Makefile.PL
- my $b_h_eos_req = '0.10';
-
- if (! $ENV{NAMESPACE_CLEAN_USE_PP} and eval {
- require B::Hooks::EndOfScope;
- B::Hooks::EndOfScope->VERSION($b_h_eos_req);
- 1
- } ) {
- B::Hooks::EndOfScope->import('on_scope_end');
- }
- elsif ($] < 5.009_003_1) {
- require namespace::clean::_PP_OSE_5_8;
- *on_scope_end = \&namespace::clean::_PP_OSE_5_8::on_scope_end;
- }
- else {
- require namespace::clean::_PP_OSE;
- *on_scope_end = \&namespace::clean::_PP_OSE::on_scope_end;
- }
-}
+use B::Hooks::EndOfScope 'on_scope_end';
=head1 NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/t/07-debugger.t new/namespace-clean-0.24/t/07-debugger.t
--- old/namespace-clean-0.23/t/07-debugger.t 2011-12-21 10:50:20.000000000 +0100
+++ new/namespace-clean-0.24/t/07-debugger.t 2012-11-26 19:47:12.000000000 +0100
@@ -1,6 +1,15 @@
use Test::More;
BEGIN {
+ eval { require Sub::Name }
+ or plan skip_all => "Test requires Sub::Name";
+
+ eval { require Sub::Identify }
+ or plan skip_all => "Test requires Sub::Identify";
+}
+
+
+BEGIN {
# shut up the debugger
$ENV{PERLDB_OPTS} = 'NonStop';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/namespace-clean-0.23/t/10-pure-perl.t new/namespace-clean-0.24/t/10-pure-perl.t
--- old/namespace-clean-0.23/t/10-pure-perl.t 2011-12-22 12:20:21.000000000 +0100
+++ new/namespace-clean-0.24/t/10-pure-perl.t 2012-11-26 19:47:12.000000000 +0100
@@ -5,33 +5,30 @@
plan skip_all => "PP tests already executed"
if $ENV{NAMESPACE_CLEAN_USE_PP};
-eval { require B::Hooks::EndOfScope }
+eval { require Variable::Magic }
or plan skip_all => "PP tests already executed";
-# the PP tests will run either wih D::H (mainly on smokers)
-# or by setting the envvar (for users)
-my $has_d_h = eval { require Devel::Hide };
+$ENV{B_HOOKS_ENDOFSCOPE_IMPLEMENTATION} = 'PP';
+require B::Hooks::EndOfScope;
+ok( ($INC{'B/Hooks/EndOfScope/PP.pm'} && ! $INC{'B/Hooks/EndOfScope/XS.pm'}),
+ 'PP BHEOS loaded properly');
use Config;
use FindBin qw($Bin);
use IPC::Open2 qw(open2);
+use File::Glob 'bsd_glob';
# for the $^X-es
$ENV{PERL5LIB} = join ($Config{path_sep}, @INC);
+
# rerun the tests under the assumption of pure-perl
my $this_file = quotemeta(__FILE__);
-for my $fn (glob("$Bin/*.t")) {
+for my $fn (bsd_glob("$Bin/*.t")) {
next if $fn =~ /${this_file}$/;
- local $ENV{DEVEL_HIDE_VERBOSE} = 0;
- local $ENV{NAMESPACE_CLEAN_USE_PP} = 1 unless $has_d_h;
- my @cmd = (
- $^X,
- $has_d_h ? '-MDevel::Hide=B::Hooks::EndOfScope' : (),
- $fn
- );
+ my @cmd = ($^X, $fn);
# this is cheating, and may even hang here and there (testing on windows passed fine)
# if it does - will have to fix it somehow (really *REALLY* don't want to pull
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org