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