r26864 - in /trunk/libparse-mediawikidump-perl: Changes META.yml Makefile.PL debian/changelog lib/Parse/MediaWikiDump.pm
ansgar-guest at users.alioth.debian.org
ansgar-guest at users.alioth.debian.org
Fri Nov 14 18:31:01 UTC 2008
Author: ansgar-guest
Date: Fri Nov 14 18:30:58 2008
New Revision: 26864
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=26864
Log:
New upstream release.
Modified:
trunk/libparse-mediawikidump-perl/Changes
trunk/libparse-mediawikidump-perl/META.yml
trunk/libparse-mediawikidump-perl/Makefile.PL
trunk/libparse-mediawikidump-perl/debian/changelog
trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm
Modified: trunk/libparse-mediawikidump-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/Changes?rev=26864&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/Changes (original)
+++ trunk/libparse-mediawikidump-perl/Changes Fri Nov 14 18:30:58 2008
@@ -1,6 +1,10 @@
Revision history for Parse-MediaWikiDump
-0.51.1 Sep 21, 2008
+0.53 Oct 29, 2008
+ * Fix for bug #38206 "Parse::MediaWikiDump XML dump file not closed on
+ DESTROY" incorporated.
+
+0.52 Sep 21, 2008
* Bug #31310, Makefile.PL should require perl 5.6, resolved.
* Bug #38206, "Parse::MediaWikiDump XML dump file not closed on
DESTROY," logged as a known bug in the documentation. See
Modified: trunk/libparse-mediawikidump-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/META.yml?rev=26864&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/META.yml (original)
+++ trunk/libparse-mediawikidump-perl/META.yml Fri Nov 14 18:30:58 2008
@@ -1,11 +1,12 @@
# http://module-build.sourceforge.net/META-spec.html
#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
name: Parse-MediaWikiDump
-version: 0.52
+version: 0.53
version_from: lib/Parse/MediaWikiDump.pm
installdirs: site
requires:
List::Util: 0
+ Test::Memory::Cycle: 0
Test::More: 0
XML::Parser: 0
Modified: trunk/libparse-mediawikidump-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/Makefile.PL?rev=26864&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/Makefile.PL (original)
+++ trunk/libparse-mediawikidump-perl/Makefile.PL Fri Nov 14 18:30:58 2008
@@ -14,6 +14,7 @@
'List::Util' => 0,
'Test::More' => 0,
'XML::Parser' => 0,
+ 'Test::Memory::Cycle' => 0,
},
dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
clean => { FILES => 'Parse-MediaWikiDump-*' },
Modified: trunk/libparse-mediawikidump-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/debian/changelog?rev=26864&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/debian/changelog (original)
+++ trunk/libparse-mediawikidump-perl/debian/changelog Fri Nov 14 18:30:58 2008
@@ -1,3 +1,9 @@
+libparse-mediawikidump-perl (0.53-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Ansgar Burchardt <ansgar at 43-1.org> Fri, 14 Nov 2008 19:30:06 +0100
+
libparse-mediawikidump-perl (0.52-1) unstable; urgency=low
* New upstream release.
Modified: trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm?rev=26864&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm (original)
+++ trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm Fri Nov 14 18:30:58 2008
@@ -1,5 +1,5 @@
package Parse::MediaWikiDump;
-our $VERSION = '0.52';
+our $VERSION = '0.53';
#the POD is at the end of this file
@@ -16,6 +16,7 @@
use warnings;
use List::Util;
use XML::Parser;
+use Scalar::Util qw(weaken);
#tokens in the buffer are an array ref with the 0th element specifying
#its type; these are the constants for those types.
@@ -23,18 +24,26 @@
sub new {
my ($class, $source) = @_;
my $self = {};
-
- bless($self, $class);
+ my $parser_state;
+
+ bless ($self, $class);
$$self{PARSER} = XML::Parser->new(ProtocolEncoding => 'UTF-8');
$$self{PARSER}->setHandlers('Start', \&start_handler,
'End', \&end_handler);
- $$self{EXPAT} = $$self{PARSER}->parse_start(state => $self);
+
+ $$self{GOOD_TAGS} = make_good_tags();
$$self{BUFFER} = [];
$$self{CHUNK_SIZE} = 32768;
$$self{BUF_LIMIT} = 10000;
$$self{BYTE} = 0;
- $$self{GOOD_TAGS} = make_good_tags();
+
+ $parser_state = {
+ BUFFER => $$self{BUFFER},
+ GOOD_TAGS => $$self{GOOD_TAGS},
+ };
+
+ $$self{EXPAT} = $$self{PARSER}->parse_start(state => $parser_state);
$self->open($source);
$self->init;
@@ -696,10 +705,10 @@
sub start_handler {
my ($p, $tag, %atts) = @_;
- my $self = $p->{state};
- my $good_tags = $$self{GOOD_TAGS};
-
- push @{ $$self{BUFFER} }, [$tag, \%atts];
+ my $good_tags = $p->{state}{GOOD_TAGS};
+ my $buf = $p->{state}{BUFFER};
+
+ push(@$buf, [$tag, \%atts]);
if (defined($good_tags->{$tag})) {
$p->setHandlers(Char => \&char_handler);
@@ -710,9 +719,9 @@
sub end_handler {
my ($p, $tag) = @_;
- my $self = $p->{state};
-
- push @{ $$self{BUFFER} }, ["/$tag"];
+ my $buffer = $p->{state}{BUFFER};
+
+ push (@$buffer, ["/$tag"]);
$p->setHandlers(Char => undef);
@@ -722,7 +731,7 @@
sub char_handler {
my ($p, $chars) = @_;
my $self = $p->{state};
- my $buffer = $$self{BUFFER};
+ my $buffer = $p->{state}{BUFFER};
my $curent = $$buffer[-1];
if (ref $curent eq 'SCALAR') {
More information about the Pkg-perl-cvs-commits
mailing list