Hello community,
here is the log from the commit of package perl-Spreadsheet-ReadSXC for openSUSE:Factory checked in at 2019-10-09 15:19:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Spreadsheet-ReadSXC (Old)
and /work/SRC/openSUSE:Factory/.perl-Spreadsheet-ReadSXC.new.2352 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Spreadsheet-ReadSXC"
Wed Oct 9 15:19:08 2019 rev:9 rq:735814 version:0.23
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Spreadsheet-ReadSXC/perl-Spreadsheet-ReadSXC.changes 2011-09-23 12:38:46.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Spreadsheet-ReadSXC.new.2352/perl-Spreadsheet-ReadSXC.changes 2019-10-09 15:19:09.684544099 +0200
@@ -1,0 +2,6 @@
+Fri Oct 4 09:36:11 UTC 2019 -
+
+- updated to 0.23
+ see /usr/share/doc/packages/perl-Spreadsheet-ReadSXC/Changes
+
+-------------------------------------------------------------------
Old:
----
Spreadsheet-ReadSXC-0.20.tar.gz
New:
----
Spreadsheet-ReadSXC-0.23.tar.gz
cpanspec.yml
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Spreadsheet-ReadSXC.spec ++++++
--- /var/tmp/diff_new_pack.q4ouoE/_old 2019-10-09 15:19:10.184542810 +0200
+++ /var/tmp/diff_new_pack.q4ouoE/_new 2019-10-09 15:19:10.184542810 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Spreadsheet-ReadSXC
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,33 +12,29 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
-
Name: perl-Spreadsheet-ReadSXC
-Version: 0.20
-Release: 1
-License: GPL-1.0+ or Artistic-1.0
+Version: 0.23
+Release: 0
%define cpan_name Spreadsheet-ReadSXC
Summary: Extract OpenOffice 1.x spreadsheet data
-Url: http://search.cpan.org/dist/Spreadsheet-ReadSXC/
+License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
-#Source: http://www.cpan.org/authors/id/T/TE/TERHECHTE/Spreadsheet-ReadSXC-%{version}.tar.gz
-Source: %{cpan_name}-%{version}.tar.gz
+Url: https://metacpan.org/release/%{cpan_name}
+Source0: https://cpan.metacpan.org/authors/id/C/CO/CORION/%{cpan_name}-%{version}.tar.gz
+Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
-BuildRequires: perl(ExtUtils::MakeMaker)
-BuildRequires: perl(Test::More)
-#
-BuildRequires: perl(Archive::Zip)
-BuildRequires: perl(Compress::Zlib)
+BuildRequires: perl(Archive::Zip) >= 1.34
+BuildRequires: perl(PerlIO::gzip)
BuildRequires: perl(XML::Parser)
-Requires: perl(Archive::Zip)
-Requires: perl(Compress::Zlib)
+Requires: perl(Archive::Zip) >= 1.34
+Requires: perl(PerlIO::gzip)
Requires: perl(XML::Parser)
%{perl_requires}
@@ -59,26 +55,83 @@
function read_xml_string(). Both functions also take a reference to a hash
of options as an optional second argument.
+Spreadsheet::ReadSXC requires XML::Parser to parse the XML contained in
+.sxc files. Only the contents of text:p elements are returned, not the
+actual values of table:value attributes. For example, a cell might have a
+table:value-type attribute of "currency", a table:value attribute of
+"-1500.99" and a table:currency attribute of "USD". The text:p element
+would contain "-$1,500.99". This is the string which is returned by the
+read_sxc() function, not the value of -1500.99.
+
+Spreadsheet::ReadSXC was written with data import into an SQL database in
+mind. Therefore empty spreadsheet cells correspond to undef values in array
+rows. The example code above shows how to replace undef values with empty
+strings.
+
+If the .sxc file contains an empty spreadsheet its hash element will point
+to an empty array (unless you use the 'NoTruncate' option in which case it
+will point to an array of an array containing one undefined element).
+
+OpenOffice uses UTF-8 encoding. It depends on your environment how the data
+returned by the XML Parser is best handled:
+
+ use Unicode::String qw(latin1 utf8);
+ $unicode_string = utf8($$workbook_ref{"Sheet1"}[0][0])->as_string;
+
+ # this will not work for characters outside ISO-8859-1:
+
+ $latin1_string = utf8($$workbook_ref{"Sheet1"}[0][0])->latin1;
+
+Of course there are other modules than Unicode::String on CPAN that handle
+conversion between encodings. It's your choice.
+
+Table rows in .sxc files may have a "table:number-rows-repeated" attribute,
+which is often used for consecutive empty rows. When you format whole rows
+and/or columns in OpenOffice, it sets the numbers of rows in a worksheet to
+32,000 and the number of columns to 256, even if only a few lower-numbered
+rows and cells actually contain data. Spreadsheet::ReadSXC truncates such
+sheets so that there are no empty rows after the last row containing data
+and no empty columns after the last column containing data (unless you use
+the 'NoTruncate' option).
+
+Still it is perfectly legal for an .sxc file to apply the
+"table:number-rows-repeated" attribute to rows that actually contain data
+(although I have only been able to produce such files manually, not through
+OpenOffice itself). To save on memory usage in these cases,
+Spreadsheet::ReadSXC does not copy rows by value, but by reference
+(remember that multi-dimensional arrays in Perl are really arrays of
+references to arrays). Therefore, if you change a value in one row, it is
+possible that you find the corresponding value in the next row changed,
+too:
+
+ $$workbook_ref{"Sheet1"}[0][0] = 'new string';
+ print $$workbook_ref{"Sheet1"}[1][0];
+
+As of version 0.20 the references returned by read_sxc() et al. remain
+valid after subsequent calls to the same function. In earlier versions,
+calling read_sxc() with a different file as the argument would change the
+data referenced by the original return value, so you had to derefence it
+before making another call. Thanks to H. Merijn Brand for fixing this.
+
%prep
%setup -q -n %{cpan_name}-%{version}
+find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
-%clean
-%{__rm} -rf %{buildroot}
-
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes README t.sxc
+%doc Changes README
+%license LICENSE
%changelog
++++++ Spreadsheet-ReadSXC-0.20.tar.gz -> Spreadsheet-ReadSXC-0.23.tar.gz ++++++
++++ 2833 lines of diff (skipped)
++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
# override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module