Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Installing Spreadsheet::ParseXLSX with Perl v5.8.8

by thanos1983 (Parson)
on Mar 20, 2018 at 09:39 UTC ( [id://1211283]=note: print w/replies, xml ) Need Help??


in reply to Installing Spreadsheet::ParseXLSX with Perl v5.8.8

Hello Arik123,

First of all before I proceed with my answer let me clarify something. I am not an expert on Perl but I found your question interesting and a know a few basic things so I though I might tackle it and provide you with some information. Having said that, if any other fellow Monk finds more information or my answer is either wrong or incomplete please correct me.

Moving on, why you need Perl 5.10.0 to install Spreadsheet::ParseXLSX. To be honest I see the source code of the module use 5.010; ref Spreadsheet::ParseXLSX/source, but based on my research you might be able to install the module with Perl Minimum version: 5.006.

How did I jump into this conclusion? Simply see Perl::MinimumVersion::Fast. Sample of code from the mentioned module:

#!/usr/bin/perl use strict; use warnings; use Perl::MinimumVersion::Fast; # Perl::MinimumVersion::Fast - another module which does the same thin +g. # It's a lot faster, but only supports Perl 5.8.1+. my $filename = 'test.pl'; my $p = Perl::MinimumVersion::Fast->new($filename); print "Minimum: " . $p->minimum_version, "\n"; __END__ $ perl version.pl Minimum: 5.006

The script that I am testing test.pl:

#!/usr/bin/perl use strict; use warnings; use Spreadsheet::ParseXLSX;

But this is not the reason that I believe that you can use Perl version: 5.006. If you take a look on the source code of the Spreadsheet::ParseXLSX/source you will find that is using the following modules:

use Archive::Zip; use Graphics::ColorUtils 'rgb2hls', 'hls2rgb'; use Scalar::Util 'openhandle'; use Spreadsheet::ParseExcel 0.61; use XML::Twig;

Then I went to one by one the modules to check their Perl version, here is what I found:

1) Archive::Zip use 5.006;

2) Graphics::ColorUtils use 5.008003;

3) Scalar::Util require List::Util;

3.1) List::Util require XSLoader;

3.1.1) XSLoader require DynaLoader;

3.1.1.1) DynaLoader require AutoLoader;

3.1.1.1.1) AutoLoader require Carp;

3.1.1.1.1.1) Carp require Data::Dumper;

3.1.1.1.1.1.1) Data::Dumper use 5.006_001;

4) Spreadsheet::ParseExcel use 5.008; (I will not go deeper as it also uses some modules but you get the point).

5) XML::Twig require 5.004;

So in conclusion, I think you can install it and it should work with Perl 5.8 also possibly with Perl 5.6 but without all the features as module Graphics::ColorUtils requires Perl 5.8.

If I was you I would create a small test environment replicating the production environment that you want to apply it and test how it behaves. I think it should work correctly with minimum 5.8 but also possible with 5.6 with limited features.

Update: Assuming that the proposed solution of fellow Monk hippo will work it could be possible to be applied with Perl 5.6.

Hope this helps, BR.

Seeking for Perl wisdom...on the process of learning...not there...yet!

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1211283]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (4)
As of 2024-03-29 09:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found