r59080 - in /trunk/libindirect-perl: Changes MANIFEST META.yml Makefile.PL README debian/changelog debian/control debian/copyright debian/source/ debian/source/format indirect.xs lib/indirect.pm reap.h t/30-scope.t t/lib/indirect/TestRequired6.pm
angelabad-guest at users.alioth.debian.org
angelabad-guest at users.alioth.debian.org
Tue Jun 8 19:42:06 UTC 2010
Author: angelabad-guest
Date: Tue Jun 8 19:41:56 2010
New Revision: 59080
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=59080
Log:
New upstream release 0.21
Added:
trunk/libindirect-perl/debian/source/
trunk/libindirect-perl/debian/source/format
trunk/libindirect-perl/reap.h
- copied unchanged from r59069, branches/upstream/libindirect-perl/current/reap.h
trunk/libindirect-perl/t/lib/indirect/TestRequired6.pm
- copied unchanged from r59069, branches/upstream/libindirect-perl/current/t/lib/indirect/TestRequired6.pm
Modified:
trunk/libindirect-perl/Changes
trunk/libindirect-perl/MANIFEST
trunk/libindirect-perl/META.yml
trunk/libindirect-perl/Makefile.PL
trunk/libindirect-perl/README
trunk/libindirect-perl/debian/changelog
trunk/libindirect-perl/debian/control
trunk/libindirect-perl/debian/copyright
trunk/libindirect-perl/indirect.xs
trunk/libindirect-perl/lib/indirect.pm
trunk/libindirect-perl/t/30-scope.t
Modified: trunk/libindirect-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/Changes?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/Changes (original)
+++ trunk/libindirect-perl/Changes Tue Jun 8 19:41:56 2010
@@ -1,4 +1,12 @@
Revision history for indirect
+
+0.21 2010-05-31 23:10 UTC
+ + Chg : perl 5.8.1 is now required (instead of 5.8.0).
+ + Fix : [RT #57699] : indirect fail with 64-bit int on 5.13.1.
+ It was actually a problem with thread destructors segfaulting
+ because they weren't called at the right time anymore.
+ Thanks Andrew Main for reporting.
+ + Tst : A few more regression tests about the scope leak bug.
0.20 2010-04-18 21:25 UTC
+ Fix : [RT #50570] : "indirect" leaking into LWP.
Modified: trunk/libindirect-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/MANIFEST?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/MANIFEST (original)
+++ trunk/libindirect-perl/MANIFEST Tue Jun 8 19:41:56 2010
@@ -6,6 +6,7 @@
indirect.xs
lib/indirect.pm
ptable.h
+reap.h
samples/indirect.pl
t/00-load.t
t/10-args.t
@@ -40,3 +41,4 @@
t/lib/indirect/TestRequired5/b0.pm
t/lib/indirect/TestRequired5/c0.pm
t/lib/indirect/TestRequired5/d0.pm
+t/lib/indirect/TestRequired6.pm
Modified: trunk/libindirect-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/META.yml?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/META.yml (original)
+++ trunk/libindirect-perl/META.yml Tue Jun 8 19:41:56 2010
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: indirect
-version: 0.20
+version: 0.21
abstract: Lexically warn about using the indirect object syntax.
author:
- Vincent Pit <perl at profvince.com>
@@ -13,7 +13,7 @@
Test::More: 0
XSLoader: 0
requires:
- perl: 5.008
+ perl: 5.008001
XSLoader: 0
resources:
bugtracker: http://rt.cpan.org/NoAuth/ReportBug.html?Queue=indirect
Modified: trunk/libindirect-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/Makefile.PL?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/Makefile.PL (original)
+++ trunk/libindirect-perl/Makefile.PL Tue Jun 8 19:41:56 2010
@@ -1,4 +1,4 @@
-use 5.008;
+use 5.008001;
use strict;
use warnings;
@@ -56,7 +56,7 @@
PL_FILES => {},
@DEFINES,
PREREQ_PM => \%PREREQ_PM,
- MIN_PERL_VERSION => 5.008,
+ MIN_PERL_VERSION => 5.008001,
META_MERGE => \%META,
dist => {
PREOP => "pod2text $file > \$(DISTVNAME)/README",
Modified: trunk/libindirect-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/README?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/README (original)
+++ trunk/libindirect-perl/README Tue Jun 8 19:41:56 2010
@@ -2,7 +2,7 @@
indirect - Lexically warn about using the indirect object syntax.
VERSION
- Version 0.20
+ Version 0.21
SYNOPSIS
# In a script
@@ -120,7 +120,7 @@
Hence "my $x = new Class if 0" will be caught.
DEPENDENCIES
- perl 5.8.
+ perl 5.8.1.
XSLoader (standard since perl 5.006).
Modified: trunk/libindirect-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/debian/changelog?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/debian/changelog (original)
+++ trunk/libindirect-perl/debian/changelog Tue Jun 8 19:41:56 2010
@@ -1,3 +1,15 @@
+libindirect-perl (0.21-1) unstable; urgency=low
+
+ * New upstream release
+ * debian/copyright: Update upstream years
+ * debian/control:
+ - Add libtest-pod-coverage-perl, libtest-portability-files-perl,
+ libtest-kwalitee-perl and libtest-pod-perl in Build-Depends
+ - Fix description synopsis
+ * Convert to source format 3.0 (quilt)
+
+ -- Angel Abad <angelabad at gmail.com> Tue, 08 Jun 2010 21:41:31 +0200
+
libindirect-perl (0.20-1) unstable; urgency=low
* Take over for the Debian Perl Group
Modified: trunk/libindirect-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/debian/control?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/debian/control (original)
+++ trunk/libindirect-perl/debian/control Tue Jun 8 19:41:56 2010
@@ -1,9 +1,11 @@
Source: libindirect-perl
Section: perl
Priority: optional
-Build-Depends: debhelper (>= 7), perl (>= 5.8)
+Build-Depends: debhelper (>= 7), perl, libtest-pod-coverage-perl,
+ libtest-portability-files-perl, libtest-kwalitee-perl, libtest-pod-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
-Uploaders: Ivan Kohler <ivan-debian at 420.am>
+Uploaders: Ivan Kohler <ivan-debian at 420.am>,
+ Angel Abad <angelabad at gmail.com>
Standards-Version: 3.8.4
Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libindirect-perl/
Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libindirect-perl/
@@ -11,8 +13,8 @@
Package: libindirect-perl
Architecture: any
-Depends: ${perl:Depends}, ${shlibs:Depends}, ${misc:Depends}, perl (>= 5.8)
-Description: Lexically warn about using the indirect object syntax.
+Depends: ${misc:Depends}, ${perl:Depends}, ${shlibs:Depends}
+Description: lexically warn about using the indirect object syntax
When enabled (or disabled as some may prefer to say, since you actually turn
it on by calling no indirect), this pragma warns about indirect object syntax
constructs that may have slipped into your code. This syntax is now
Modified: trunk/libindirect-perl/debian/copyright
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/debian/copyright?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/debian/copyright (original)
+++ trunk/libindirect-perl/debian/copyright Tue Jun 8 19:41:56 2010
@@ -4,11 +4,12 @@
Name: indirect
Files: *
-Copyright: Vincent Pit <perl at profvince.com>
+Copyright: 2008-2010, Vincent Pit <perl at profvince.com>
License: Artistic or GPL-1+
Files: debian/*
-Copyright: 2010, Ivan Kohler <ivan-debian at 420.am>
+Copyright: 2010, Angel Abad <angelabad at gmail.com>
+ 2010, Ivan Kohler <ivan-debian at 420.am>
License: Artistic or GPL-1+
License: Artistic
Added: trunk/libindirect-perl/debian/source/format
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/debian/source/format?rev=59080&op=file
==============================================================================
--- trunk/libindirect-perl/debian/source/format (added)
+++ trunk/libindirect-perl/debian/source/format Tue Jun 8 19:41:56 2010
@@ -1,0 +1,1 @@
+3.0 (quilt)
Modified: trunk/libindirect-perl/indirect.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/indirect.xs?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/indirect.xs (original)
+++ trunk/libindirect-perl/indirect.xs Tue Jun 8 19:41:56 2010
@@ -60,20 +60,6 @@
#endif
#define I_HAS_PERL(R, V, S) (PERL_REVISION > (R) || (PERL_REVISION == (R) && (PERL_VERSION > (V) || (PERL_VERSION == (V) && (PERL_SUBVERSION >= (S))))))
-
-#undef ENTERn
-#if defined(ENTER_with_name) && !I_HAS_PERL(5, 11, 4)
-# define ENTERn(N) ENTER_with_name(N)
-#else
-# define ENTERn(N) ENTER
-#endif
-
-#undef LEAVEn
-#if defined(LEAVE_with_name) && !I_HAS_PERL(5, 11, 4)
-# define LEAVEn(N) LEAVE_with_name(N)
-#else
-# define LEAVEn(N) LEAVE
-#endif
#if I_HAS_PERL(5, 10, 0) || defined(PL_parser)
# ifndef PL_lex_inwhat
@@ -288,22 +274,13 @@
ptable_hints_store(ud->tbl, ent->key, h2);
}
-STATIC void indirect_thread_cleanup(pTHX_ void *);
+#include "reap.h"
STATIC void indirect_thread_cleanup(pTHX_ void *ud) {
- int *level = ud;
-
- if (*level) {
- *level = 0;
- LEAVE;
- SAVEDESTRUCTOR_X(indirect_thread_cleanup, level);
- ENTER;
- } else {
- dMY_CXT;
- PerlMemShared_free(level);
- ptable_free(MY_CXT.map);
- ptable_hints_free(MY_CXT.tbl);
- }
+ dMY_CXT;
+
+ ptable_free(MY_CXT.map);
+ ptable_hints_free(MY_CXT.tbl);
}
#endif /* I_THREADSAFE */
@@ -840,13 +817,15 @@
if (indirect_initialized)
return;
- MY_CXT_INIT;
+ {
+ MY_CXT_INIT;
#if I_THREADSAFE
- MY_CXT.tbl = ptable_new();
- MY_CXT.owner = aTHX;
-#endif
- MY_CXT.map = ptable_new();
- MY_CXT.linestr = NULL;
+ MY_CXT.tbl = ptable_new();
+ MY_CXT.owner = aTHX;
+#endif
+ MY_CXT.map = ptable_new();
+ MY_CXT.linestr = NULL;
+ }
indirect_old_ck_const = PL_check[OP_CONST];
PL_check[OP_CONST] = MEMBER_TO_FPTR(indirect_ck_const);
@@ -903,8 +882,7 @@
PROTOTYPE: DISABLE
PREINIT:
ptable *t;
- int *level;
-CODE:
+PPCODE:
{
my_cxt_t ud;
dMY_CXT;
@@ -919,13 +897,8 @@
MY_CXT.tbl = t;
MY_CXT.owner = aTHX;
}
- {
- level = PerlMemShared_malloc(sizeof *level);
- *level = 1;
- LEAVEn("sub");
- SAVEDESTRUCTOR_X(indirect_thread_cleanup, level);
- ENTERn("sub");
- }
+ reap(3, indirect_thread_cleanup, NULL);
+ XSRETURN(0);
#endif
Modified: trunk/libindirect-perl/lib/indirect.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/lib/indirect.pm?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/lib/indirect.pm (original)
+++ trunk/libindirect-perl/lib/indirect.pm Tue Jun 8 19:41:56 2010
@@ -1,6 +1,6 @@
package indirect;
-use 5.008;
+use 5.008001;
use strict;
use warnings;
@@ -11,13 +11,13 @@
=head1 VERSION
-Version 0.20
+Version 0.21
=cut
our $VERSION;
BEGIN {
- $VERSION = '0.20';
+ $VERSION = '0.21';
}
=head1 SYNOPSIS
@@ -191,7 +191,7 @@
=head1 DEPENDENCIES
-L<perl> 5.8.
+L<perl> 5.8.1.
L<XSLoader> (standard since perl 5.006).
Modified: trunk/libindirect-perl/t/30-scope.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libindirect-perl/t/30-scope.t?rev=59080&op=diff
==============================================================================
--- trunk/libindirect-perl/t/30-scope.t (original)
+++ trunk/libindirect-perl/t/30-scope.t Tue Jun 8 19:41:56 2010
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
use strict;
use warnings;
@@ -6,7 +6,7 @@
my $tests;
BEGIN { $tests = 18 }
-use Test::More tests => (1 + $tests + 1) + 3 + 3 + 3 + 5 + 4 + 3;
+use Test::More tests => (1 + $tests + 1) + 3 + 3 + 3 + 5 + 4 + 5;
BEGIN { delete $ENV{PERL_INDIRECT_PM_DISABLE} }
@@ -153,6 +153,7 @@
is $@, '', 'RT #47902';
}
+# This test may not fail for the old version when ran in taint mode
{
my $err = eval <<' SNIP';
use indirect::TestRequired4::a0;
@@ -167,6 +168,17 @@
like $err, qr/^Can't locate object method "new" via package "X"/,
'identifying requires by their eval context pointer is not enough';
+{
+ my @w;
+ no indirect hook => sub { push @w, indirect::msg(@_) };
+ use indirect::TestRequired6;
+ indirect::TestRequired6::bar();
+ is_deeply \@w, [ ], 'indirect syntax in sub';
+ @w = ();
+ indirect::TestRequired6::baz();
+ is_deeply \@w, [ ], 'indirect syntax in eval in sub';
+}
+
__DATA__
my $a = new P1;
More information about the Pkg-perl-cvs-commits
mailing list