pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/p5-Test-Weaken Importing devel/p5-Test-Weaken - ...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/641df4ff01db
branches:  trunk
changeset: 399422:641df4ff01db
user:      sno <sno%pkgsrc.org@localhost>
date:      Sat Sep 19 22:00:10 2009 +0000

description:
Importing devel/p5-Test-Weaken - p5 package for Test::Weaken 3.002000 as
dependency for scheduled update of textproc/p5-XML-RAI to 1.3031.

A memory leak occurs when a Perl data structure is destroyed but some of
the contents of that structure are not freed. Leaked memory is a useless
overhead. Leaks can significantly impact system performance. They can also
cause an application to abend due to lack of memory.

In Perl, circular references are a common cause of memory leaks. Circular
references are allowed in Perl, but data structures containing circular
references will leak memory unless the programmer takes specific measures
to prevent leaks. Preventive measures include weakening the references
and arranging to break the reference cycle just before the structure is
destroyed.

When using circular references, it is easy to misdesign or misimplement a
scheme for preventing memory leaks. Mistakes of this kind have been hard to
detect in a test suite.

Test::Weaken allows easy detection of unfreed Perl data. Test::Weaken allows
you to examine the unfreed data, even data that would usually have been made
inaccessible.

Test::Weaken frees the test structure, then looks to see if any of the
contents of the structure were not actually deallocated. By default,
Test::Weaken determines the contents of a data structure by examining
arrays and hashes, by following references, and by following tied variables
to their underlying object. Test::Weaken does this recursively to unlimited
depth.

Test::Weaken can deal with circular references without going into infinite
loops. Test::Weaken will not visit the same Perl data object twice.

diffstat:

 devel/p5-Test-Weaken/DESCR    |  29 +++++++++++++++++++++++++++++
 devel/p5-Test-Weaken/Makefile |  20 ++++++++++++++++++++
 devel/p5-Test-Weaken/distinfo |   5 +++++
 3 files changed, 54 insertions(+), 0 deletions(-)

diffs (66 lines):

diff -r 86272a8c5760 -r 641df4ff01db devel/p5-Test-Weaken/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/p5-Test-Weaken/DESCR        Sat Sep 19 22:00:10 2009 +0000
@@ -0,0 +1,29 @@
+A memory leak occurs when a Perl data structure is destroyed but some of
+the contents of that structure are not freed. Leaked memory is a useless
+overhead. Leaks can significantly impact system performance. They can also
+cause an application to abend due to lack of memory.
+
+In Perl, circular references are a common cause of memory leaks. Circular
+references are allowed in Perl, but data structures containing circular
+references will leak memory unless the programmer takes specific measures
+to prevent leaks. Preventive measures include weakening the references
+and arranging to break the reference cycle just before the structure is
+destroyed.
+
+When using circular references, it is easy to misdesign or misimplement a
+scheme for preventing memory leaks. Mistakes of this kind have been hard to
+detect in a test suite.
+
+Test::Weaken allows easy detection of unfreed Perl data. Test::Weaken allows
+you to examine the unfreed data, even data that would usually have been made
+inaccessible.
+
+Test::Weaken frees the test structure, then looks to see if any of the
+contents of the structure were not actually deallocated. By default,
+Test::Weaken determines the contents of a data structure by examining
+arrays and hashes, by following references, and by following tied variables
+to their underlying object. Test::Weaken does this recursively to unlimited
+depth.
+
+Test::Weaken can deal with circular references without going into infinite
+loops. Test::Weaken will not visit the same Perl data object twice.
diff -r 86272a8c5760 -r 641df4ff01db devel/p5-Test-Weaken/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/p5-Test-Weaken/Makefile     Sat Sep 19 22:00:10 2009 +0000
@@ -0,0 +1,20 @@
+# $NetBSD: Makefile,v 1.1.1.1 2009/09/19 22:00:10 sno Exp $
+#
+
+DISTNAME=              Test-Weaken-3.002000
+PKGNAME=               p5-${DISTNAME:S/002000/002.000/}
+CATEGORIES=            devel perl5
+MASTER_SITES=          ${MASTER_SITE_PERL_CPAN:=Test/}
+
+MAINTAINER=            pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=              http://search.cpan.org/dist/Test-Weaken/
+COMMENT=               Test that freed memory objects were, indeed, freed
+LICENSE=               ${PERL5_LICENSE}
+
+PKG_DESTDIR_SUPPORT=   user-destdir
+
+USE_LANGUAGES=         # empty
+PERL5_PACKLIST=                auto/Test/Weaken/.packlist
+
+.include "../../lang/perl5/module.mk"
+.include "../../mk/bsd.pkg.mk"
diff -r 86272a8c5760 -r 641df4ff01db devel/p5-Test-Weaken/distinfo
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/p5-Test-Weaken/distinfo     Sat Sep 19 22:00:10 2009 +0000
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2009/09/19 22:00:10 sno Exp $
+
+SHA1 (Test-Weaken-3.002000.tar.gz) = 51fd3b970af1e03dd4d54a82c54eb27b4836dd9a
+RMD160 (Test-Weaken-3.002000.tar.gz) = 68cf9009e458bb6113f0e1b9830d1bb19b61c2fb
+Size (Test-Weaken-3.002000.tar.gz) = 36869 bytes



Home | Main Index | Thread Index | Old Index