Archive::Any::Lite(3pm)

Archive::Any::Lite3pm

Simple cpan package extractor

Usage

    use strict;
    use warnings;
    use Archive::Any::Lite;
    local $Archive::Any::Lite::IGNORE_SYMLINK = 1; # for safety
    my $tarball = 'foo.tar.gz';
    my $archive = Archive::Any::Lite->new($tarball);
    $archive->extract('into/some/directory/');

Overview

This is a fork of Archive::Any by Michael Schwern and Clint Moore. The main difference is this works properly even when you fork(), and may require less memory to extract a tarball. On the other hand, this isn't pluggable (this only supports file formats used in the CPAN toolchains), and this doesn't check mime types (at least as of this writing).

Methods

new

  my $archive = Archive::Any::Lite->new($archive_file);
  my $archive = Archive::Any::Lite->new($archive_file, {tar_filter => qr/foo/});

Creates an object. You can pass an optional hash reference for finer control.

extract

  $archive->extract;
  $archive->extract($directory);
  $archive->extract($directory, {tar_filter => qr/foo/});

Extracts the files in the archive to the given $directory. If no $directory is given, it will go into the current working directory.

You can pass an optional hash reference for finer control. If passed, options passed in "new" will be ignored.

files

  my @file = $archive->files;

A list of files in the archive.

is_impolite

  my $is_impolite = $archive->is_impolite;

Checks to see if this archive is going to unpack into the current directory rather than create its own.

is_naughty

  my $is_naughty = $archive->is_naughty;

Checks to see if this archive is going to unpack outside the current directory.

type

Deprecated. For backward compatibility only.

Global variable

$ignore_symlink

If set to true, symlinks (and hardlinks for tarball) will be ignored.

Releases

6 releases since Debian 8 (Jessie); the text changed 2 times.

  1. 8
  2. 9–11
  3. 12–13

Author

Archive::Any is written by Michael G Schwern and Clint Moore.

Kenichi Ishigaki, <[email protected]>

From libarchive-any-lite-perl 0.11-3 in Debian 13 (Trixie). Parsed by carta from the page's man source.