Archive-Extract reviews

RSS | Module Info

Archive-Extract (0.34) *****

Does what it says on the tin. Those concerned with performance / dependencies are using the wrong language; pay them no mind.

Archive-Extract (0.22) ***

I found this module while looking for something to remove all the shelled out commands in my company's Perl libraries.

I installed and tested several different modules and this one still needs some work.

First off, let me cover the good stuff. The documentation and ease of use are very good. The design is intuitive and quick to set up in the code. For anything that isn't clear the examples provided in the documentation were more than enough to clear things up.

Sadly the amount of prerequisites performance, flexibility and the performance are lacking. I ended up having to install about 15 modules to get this one to install as each of the prerequisite modules had several prerequisites themselves. Also, as implied by the name all this module can do is extract archives. Useful but it means you have to get yet another module to do compression. Finally, after getting it installed I ran an analysis of it against the shell as a control case and the other modules I had found and in performance it was always dead last by a fair margin.

Overall the module has great potential and if you are looking for an easy extraction utility and are not concerned with performance hits it will work just fine. For persons like myself trying to squeeze every ounce of performance out of the system I would recommend Archive::Zip at this time.

For those interested here are the results of my analysis:

Average of 1000 iterations on
SunOS 5.8 Generic_117350-36 sun4u sparc
2 900 MHz processors
Direction Module Type Time (sec) Rank
Compression Archive::Zip FILE => 0.11629628 1
Compression Shell FILE => 0.17349542 2

Decompression Archive::Zip FILE => 0.03031522 1
Decompression Shell FILE => 0.07159088 2
Decompression Archive::Extract FILE => 0.15945464 3

Compression Archive::Zip DIR => 0.05345272 1
Compression Shell DIR => 0.09564458 2

Decompression Shell DIR => 0.0692545 1
Decompression Archive::Zip::Tree DIR => 0.09451872 2
Decompression Archive::Zip DIR => 0.15231116 3
Decompression Archive::Extract DIR => 0.1797614 4