Hello community, here is the log from the commit of package perl-XML-LibXSLT for openSUSE:Factory checked in at 2013-06-06 12:58:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-XML-LibXSLT (Old) and /work/SRC/openSUSE:Factory/.perl-XML-LibXSLT.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-XML-LibXSLT" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-XML-LibXSLT/perl-XML-LibXSLT.changes 2012-02-14 13:09:50.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.perl-XML-LibXSLT.new/perl-XML-LibXSLT.changes 2013-06-06 12:58:21.000000000 +0200 @@ -1,0 +2,18 @@ +Tue Jun 4 17:05:54 UTC 2013 - [email protected] + +- updated to 1.80 + - Bump the minimum version of libxslt2 to 1.1.28. + - due to failures such as http://www.cpantesters.org/cpan/report/6f5029ee-639a-11e2-8465-2a97270fb964 + + - Die when libxslt is 1.1.27. + - Due to this bug - https://bugzilla.gnome.org/show_bug.cgi?id=684564 + + - Add output_method method, update documentation of media_type + (dorian@cpan). + - Thanks, Dorian! + + - Apply a patch from Michael Ludwig clarifying the quoting of string + parameters to the XSLT transformation. + - Thanks, Michael! + +------------------------------------------------------------------- Old: ---- XML-LibXSLT-1.76.tar.gz New: ---- XML-LibXSLT-1.80.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-XML-LibXSLT.spec ++++++ --- /var/tmp/diff_new_pack.q5JNMT/_old 2013-06-06 12:58:22.000000000 +0200 +++ /var/tmp/diff_new_pack.q5JNMT/_new 2013-06-06 12:58:22.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package perl-XML-LibXSLT # -# 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,51 +17,53 @@ Name: perl-XML-LibXSLT -Version: 1.76 +Version: 1.80 Release: 0 -Summary: XML::LibXSLT Perl Module +%define cpan_name XML-LibXSLT +Summary: Interface to the GNOME libxslt library License: GPL-1.0+ or Artistic-1.0 Group: Development/Libraries/Perl -Url: http://www.cpan.org/modules/by-module/XML/ -Source: XML-LibXSLT-%{version}.tar.gz -BuildRequires: libxslt-devel -BuildRequires: perl-XML-LibXML -BuildRequires: perl-macros -Requires: perl-XML-LibXML +Url: http://search.cpan.org/dist/XML-LibXSLT/ +Source: http://www.cpan.org/authors/id/S/SH/SHLOMIF/%{cpan_name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: perl +BuildRequires: perl-macros +BuildRequires: perl(XML::LibXML) >= 1.70 +#BuildRequires: perl(Driver::BaseClass) +#BuildRequires: perl(XML::LibXML::Boolean) +#BuildRequires: perl(XML::LibXML::Literal) +#BuildRequires: perl(XML::LibXML::NodeList) +#BuildRequires: perl(XML::LibXML::Number) +#BuildRequires: perl(XML::LibXSLT) +#BuildRequires: perl(XML::Sablotron) +#BuildRequires: perl(XML::XPath) +Requires: perl(XML::LibXML) >= 1.70 %{perl_requires} +# MANUAL +BuildRequires: libxslt-devel %description -This module is a fast XSLT library, based on the GNOME libxslt engine -that you can find at http://www.xmlsoft.org/XSLT/. - -The performance is currently about twice that of XML::Sablotron (based -on XSLTMark tests converted to Perl). The libxslt processor is also -highly standard compliant, with practically all of XSLT 1.0 being -supported in version 0.9 of libxslt. +This module is an interface to the GNOME project's libxslt. This is an +extremely good XSLT engine, highly compliant and also very fast. I have +tests showing this to be more than twice as fast as Sablotron. %prep -%setup -q -n XML-LibXSLT-%{version} +%setup -q -n %{cpan_name}-%{version} %build -perl Makefile.PL -make %{?_smp_mflags} +%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" +%{__make} %{?_smp_mflags} %check -make test +%{__make} test %install -make DESTDIR=%{buildroot} install_vendor +%perl_make_install %perl_process_packlist +%perl_gen_filelist -%clean -rm -rf %{buildroot} - -%files -%defattr(-,root,root) -%doc Changes README -%doc %{_mandir}/man3/* -%{perl_vendorarch}/XML -%{perl_vendorarch}/auto/XML +%files -f %{name}.files +%defattr(-,root,root,755) +%doc Changes example README %changelog ++++++ XML-LibXSLT-1.76.tar.gz -> XML-LibXSLT-1.80.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/Changes new/XML-LibXSLT-1.80/Changes --- old/XML-LibXSLT-1.76/Changes 2012-01-12 18:15:07.000000000 +0100 +++ new/XML-LibXSLT-1.80/Changes 2013-01-23 06:56:38.000000000 +0100 @@ -1,5 +1,23 @@ Revision history for Perl extension XML::LibXSLT. +1.80 Wed 23 Jan 07:53:57 IST 2013 + - Bump the minimum version of libxslt2 to 1.1.28. + - due to failures such as http://www.cpantesters.org/cpan/report/6f5029ee-639a-11e2-8465-2a97270fb964 + +1.79 Mon 26 Nov 12:15:35 IST 2012 + - Die when libxslt is 1.1.27. + - Due to this bug - https://bugzilla.gnome.org/show_bug.cgi?id=684564 + +1.78 Thu 6 Sep 13:17:28 IDT 2012 + - Add output_method method, update documentation of media_type + (dorian@cpan). + - Thanks, Dorian! + +1.77 Sat Feb 25 16:23:57 IST 2012 + - Apply a patch from Michael Ludwig clarifying the quoting of string + parameters to the XSLT transformation. + - Thanks, Michael! + 1.76 Thu Jan 12 19:15:03 IST 2012 - Made LibXSLT.xs compile with C compilers that don't accept declarations inside blocks: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/LibXSLT.pm new/XML-LibXSLT-1.80/LibXSLT.pm --- old/XML-LibXSLT-1.76/LibXSLT.pm 2012-01-12 18:15:21.000000000 +0100 +++ new/XML-LibXSLT-1.80/LibXSLT.pm 2013-01-23 06:53:11.000000000 +0100 @@ -25,7 +25,7 @@ require Exporter; -$VERSION = "1.76"; +$VERSION = "1.80"; require DynaLoader; @@ -57,11 +57,11 @@ my $owner_doc = shift; my @params = @_; my @perlParams; - + my $i = 0; while (@params) { my $type = shift(@params); - if ($type eq 'XML::LibXML::Literal' or + if ($type eq 'XML::LibXML::Literal' or $type eq 'XML::LibXML::Number' or $type eq 'XML::LibXML::Boolean') { @@ -75,7 +75,7 @@ unshift(@perlParams, $type->new(@nodes)); } } - + $func = "main::$func" unless ref($func) || $func =~ /(.+)::/; no strict 'refs'; my $res = $func->(@perlParams); @@ -511,6 +511,7 @@ sub output_fh { shift->{XML_LIBXSLT_STYLESHEET}->output_fh(@_) } sub output_file { shift->{XML_LIBXSLT_STYLESHEET}->output_file(@_) } sub media_type { shift->{XML_LIBXSLT_STYLESHEET}->media_type(@_) } +sub output_method { shift->{XML_LIBXSLT_STYLESHEET}->output_method(@_) } sub output_encoding { shift->{XML_LIBXSLT_STYLESHEET}->output_encoding(@_) } 1; @@ -622,27 +623,27 @@ =head1 NAME -XML::LibXSLT - Interface to the gnome libxslt library +XML::LibXSLT - Interface to the GNOME libxslt library =head1 SYNOPSIS use XML::LibXSLT; use XML::LibXML; - + my $xslt = XML::LibXSLT->new(); - + my $source = XML::LibXML->load_xml(location => 'foo.xml'); my $style_doc = XML::LibXML->load_xml(location=>'bar.xsl', no_cdata=>1); - + my $stylesheet = $xslt->parse_stylesheet($style_doc); - + my $results = $stylesheet->transform($source); - + print $stylesheet->output_as_bytes($results); =head1 DESCRIPTION -This module is an interface to the gnome project's libxslt. This is an +This module is an interface to the GNOME project's libxslt. This is an extremely good XSLT engine, highly compliant and also very fast. I have tests showing this to be more than twice as fast as Sablotron. @@ -742,9 +743,9 @@ =item parse_stylesheet($stylesheet_doc) C<$stylesheet_doc> here is an XML::LibXML::Document object (see L<XML::LibXML>) -representing an XSLT file. This method will return a +representing an XSLT file. This method will return a XML::LibXSLT::Stylesheet object, or undef on failure. If the XSLT is -invalid, an exception will be thrown, so wrap the call to +invalid, an exception will be thrown, so wrap the call to parse_stylesheet in an eval{} block to trap this. IMPORTANT: C<$stylesheet_doc> should not contain CDATA sections, @@ -785,16 +786,20 @@ =item transform(doc, %params) - my $results = $stylesheet->transform($doc, foo => "value); + my $results = $stylesheet->transform($doc, foo => "'bar'"); print $stylesheet->output_as_bytes($results); Transforms the passed in XML::LibXML::Document object, and returns a new XML::LibXML::Document. Extra hash entries are used as parameters. -See output_string +Be sure to keep in mind the caveat with regard to quotes explained in +the section on L</"Parameters"> below. =item transform_file(filename, %params) - my $results = $stylesheet->transform_file($filename, bar => "value"); + my $results = $stylesheet->transform_file($filename, bar => "'baz'"); + +Note the string parameter caveat, detailed in the section on +L</"Parameters"> below. =item output_as_bytes(result) @@ -834,12 +839,27 @@ Returns the output encoding of the results. Defaults to "UTF-8". +=item output_method() + +Returns the value of the C<method> attribute from C<xsl:output> +(usually C<xml>, C<html> or C<text>). If this attribute is +unspecified, the default value is initially C<xml>. If the +L<transform> method is used to produce an HTML document, as per the +L<XSLT spec|http://www.w3.org/TR/xslt#output>, the default value will +change to C<html>. To override this behavior completely, supply an +C<xsl:output> element in the stylesheet source document. + =item media_type() -Returns the output media_type of the results. Defaults to "text/html". +Returns the value of the C<media-type> attribute from +C<xsl:output>. If this attribute is unspecified, the default media +type is initially C<text/xml>. This default changes to C<text/html> +under the same conditions as L<output_method>. =back +=cut + =head1 Parameters LibXSLT expects parameters in XPath format. That is, if you wish to pass @@ -997,7 +1017,7 @@ C<$XML::LibXSLT::VERSION>). XML::LibXSLT issues a warning if the runtime version of the library is less then the compile-time version. -=over +=over =item XML::LibXSLT::LIBXSLT_VERSION() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/LibXSLT.xs new/XML-LibXSLT-1.80/LibXSLT.xs --- old/XML-LibXSLT-1.76/LibXSLT.xs 2012-01-12 18:12:04.000000000 +0100 +++ new/XML-LibXSLT-1.80/LibXSLT.xs 2012-09-06 12:16:28.000000000 +0200 @@ -1513,6 +1513,23 @@ RETVAL char * +output_method(self) + xsltStylesheetPtr self + PREINIT: + xmlChar *method; + CODE: + XSLT_GET_IMPORT_PTR(method, self, method) + + RETVAL = (char*) method; + if (RETVAL == NULL) { + /* read http://www.w3.org/TR/xslt#output and tell me how + you'd implement this the way it says to. */ + RETVAL = "xml"; + } + OUTPUT: + RETVAL + +char * output_encoding(self) xsltStylesheetPtr self PREINIT: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/META.json new/XML-LibXSLT-1.80/META.json --- old/XML-LibXSLT-1.76/META.json 2012-01-12 18:16:23.000000000 +0100 +++ new/XML-LibXSLT-1.80/META.json 2013-01-23 06:57:27.000000000 +0100 @@ -1,10 +1,10 @@ { - "abstract" : "Interface to Gnome libxslt library", + "abstract" : "Interface to GNOME libxslt library", "author" : [ "Matt Sergeant" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.113640", + "generated_by" : "ExtUtils::MakeMaker version 6.64, CPAN::Meta::Converter version 2.120921", "license" : [ "unknown" ], @@ -22,23 +22,23 @@ "prereqs" : { "build" : { "requires" : { - "ExtUtils::MakeMaker" : 0 + "ExtUtils::MakeMaker" : "0" } }, "configure" : { "requires" : { - "ExtUtils::MakeMaker" : 0 + "ExtUtils::MakeMaker" : "0" } }, "runtime" : { "requires" : { - "Encode" : 0, + "Encode" : "0", "XML::LibXML" : "1.70", - "strict" : 0, - "warnings" : 0 + "strict" : "0", + "warnings" : "0" } } }, "release_status" : "stable", - "version" : "1.76" + "version" : "1.80" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/META.yml new/XML-LibXSLT-1.80/META.yml --- old/XML-LibXSLT-1.76/META.yml 2012-01-12 18:16:23.000000000 +0100 +++ new/XML-LibXSLT-1.80/META.yml 2013-01-23 06:57:27.000000000 +0100 @@ -1,5 +1,5 @@ --- -abstract: 'Interface to Gnome libxslt library' +abstract: 'Interface to GNOME libxslt library' author: - 'Matt Sergeant' build_requires: @@ -7,7 +7,7 @@ configure_requires: ExtUtils::MakeMaker: 0 dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.113640' +generated_by: 'ExtUtils::MakeMaker version 6.64, CPAN::Meta::Converter version 2.120921' license: unknown meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -22,4 +22,4 @@ XML::LibXML: 1.70 strict: 0 warnings: 0 -version: 1.76 +version: 1.80 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/Makefile.PL new/XML-LibXSLT-1.80/Makefile.PL --- old/XML-LibXSLT-1.76/Makefile.PL 2011-10-25 21:36:23.000000000 +0200 +++ new/XML-LibXSLT-1.80/Makefile.PL 2013-01-23 06:51:05.000000000 +0100 @@ -44,7 +44,7 @@ $xsltcfg = $libprefix . '/bin/' . $xsltcfg; } - # if a user defined INC and LIBS on the command line we must not + # if a user defined INC and LIBS on the command line we must not # override them if ( not defined $config{LIBS} and not defined $config{INC} ) { # get libs and inc from gnome-config @@ -52,13 +52,18 @@ print "running xslt-config... "; my $ver = backtick("$xsltcfg --version"); my ($major, $minor, $point) = $ver =~ /(\d+)\.(\d+)\.(\d+)/g; - die "VERSION" unless $major > 1 || $minor > 1 || - ($major>=1 and $minor >=1 and $point >= 18); - if ($major == 1 and $minor == 1 and $point == 25) + if (not + ( + ($major > 1) + or + (($major == 1) && ($minor > 1)) + or + (($major == 1) && ($minor == 1) && ($point >= 28)) + ) + ) { die <<'EOF'; -libxslt-1.1.25 contains a deadlock that breaks the tests, and is not supported. -See: https://rt.cpan.org/Ticket/Display.html?id=50487 . +libxslt versions before 1.1.28 are buggy. Please install libxslt-1.1.28. EOF } $config{LIBS} ||= backtick("$xsltcfg --libs"); @@ -67,7 +72,7 @@ }; if ($@) { print "failed\n"; - if ($@ =~ /^VERSION/) { + if ($@ =~ /^VERSION/) { print STDERR "XML::LibXSLT needs libxslt version 1.1.18 or higher\n"; exit 0; # 0 recommended by http://cpantest.grango.org (Notes for CPAN Authors) } @@ -76,7 +81,7 @@ # backtick fails if gnome-config didn't exist... $config{LIBS} = '-L/usr/local/lib -L/usr/lib -lxslt -lxml2 -lz -lm'; $config{INC} = '-I/usr/local/include -I/usr/include'; - + print <<OPT; options: LIBS='$config{LIBS}' @@ -132,7 +137,7 @@ print STDERR <<DEATH; libxslt not found Try setting LIBS and INC values on the command line -Or get libxslt and libxml2 from +Or get libxslt and libxml2 from http://www.libxml.org/ If you install via RPMs, make sure you also install the -devel RPMs, as this is where the headers (.h files) are. @@ -185,15 +190,15 @@ if ($is_Win32) { if ($] eq '5.010000') { print STDERR <<5100BUG; -******************************** !!!WARNING!!! ******************************** +******************************** !!!WARNING!!! ******************************** According to the version string you are running a win32 perl 5.10.0 that is -known to be suffering from dynaloader bug that prevents using non-default +known to be suffering from dynaloader bug that prevents using non-default module's DLL name. Therefore we have to use LibXSLT.dll that will clash with the standard name of xslt library DLL. Please consider renaming your xslt library to e.g. libxslt_win32.dll and then make the appropriate changes to this module's build process to look for that instead of standard libxslt.dll. If you do not -make the proposed changes you will got during the tests many error popups with -slightly confusing message about "xsltApplyOneTemplate" function. +make the proposed changes you will got during the tests many error popups with +slightly confusing message about "xsltApplyOneTemplate" function. This bug is not present in perl 5.8.* and will be fixed in 5.10.1. ******************************************************************************* 5100BUG @@ -207,11 +212,11 @@ 'NAME' => 'XML::LibXSLT', 'VERSION_FROM' => 'LibXSLT.pm', # finds $VERSION 'AUTHOR' => 'Matt Sergeant', - 'ABSTRACT' => 'Interface to Gnome libxslt library', + 'ABSTRACT' => 'Interface to GNOME libxslt library', 'PREREQ_PM' => - { + { 'Encode' => 0, - 'XML::LibXML' => "1.70", + 'XML::LibXML' => "1.70", 'strict' => 0, 'warnings' => 0, }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/README new/XML-LibXSLT-1.80/README --- old/XML-LibXSLT-1.76/README 2011-10-19 19:34:26.000000000 +0200 +++ new/XML-LibXSLT-1.80/README 2012-02-25 15:20:55.000000000 +0100 @@ -1,4 +1,4 @@ -This module is a fast XSLT library, based on the Gnome libxslt engine +This module is a fast XSLT library, based on the GNOME libxslt engine that you can find at http://www.xmlsoft.org/XSLT/ Performance is currently about twice that of XML::Sablotron (based on diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/t/05quick.t new/XML-LibXSLT-1.80/t/05quick.t --- old/XML-LibXSLT-1.76/t/05quick.t 2011-10-25 17:56:06.000000000 +0200 +++ new/XML-LibXSLT-1.80/t/05quick.t 2012-09-06 12:16:28.000000000 +0200 @@ -2,8 +2,8 @@ use strict; use warnings; -# Should be 11. -use Test::More tests => 11; +# Should be 12. +use Test::More tests => 12; use XML::LibXSLT; use XML::LibXML; @@ -41,6 +41,8 @@ my $results = $stylesheet->transform($source); # TEST ok($stylesheet->media_type, ' TODO : Add test name'); +# TEST +ok($stylesheet->output_method, ' Test existence of output method'); $out2 = $stylesheet->output_string($results); # TEST ok($out2, ' TODO : Add test name'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-LibXSLT-1.76/t/08literal.t new/XML-LibXSLT-1.80/t/08literal.t --- old/XML-LibXSLT-1.76/t/08literal.t 2011-10-25 18:24:24.000000000 +0200 +++ new/XML-LibXSLT-1.80/t/08literal.t 2012-09-06 12:16:28.000000000 +0200 @@ -1,8 +1,8 @@ use strict; use warnings; -# Should be 5. -use Test::More tests => 5; +# Should be 8. +use Test::More tests => 8; use XML::LibXSLT; my $parser = XML::LibXML->new(); @@ -31,9 +31,23 @@ ok ($style, '$style is true.'); my $stylesheet = $xslt->parse_stylesheet($style); +# TEST +is ($stylesheet->output_method, 'xml', + 'output method is xml BEFORE processing'); + +# TEST +is ($stylesheet->media_type, 'text/xml', + 'media_type is text/xml BEFORE processing'); + my $results = $stylesheet->transform($source); + # TEST ok ($results, '$results are true.'); # TEST -is ($stylesheet->media_type, 'text/html', 'media_type is text/html'); +is ($stylesheet->output_method, 'html', + 'output method is html AFTER processing'); + +# TEST +is ($stylesheet->media_type, 'text/html', + 'media_type is text/html AFTER processing'); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
