# Dpkg::Compression - phpMan

## NAME
    [Dpkg::Compression] - simple database of available compression methods

## DESCRIPTION
    This modules provides a few public functions and a public regex to
    interact with the set of supported compression methods.

## FUNCTIONS
    @list = compression_get_list()
        Returns a list of supported compression methods (sorted
        alphabetically).

    compression_is_supported($comp)
        Returns a boolean indicating whether the give compression method is
        known and supported.

    compression_get_property($comp, $property)
        Returns the requested property of the compression method. Returns
        undef if either the property or the compression method doesn't
        exist. Valid properties currently include "file_ext" for the file
        extension, "default_level" for the default compression level,
        "comp_prog" for the name of the compression program and
        "decomp_prog" for the name of the decompression program.

    compression_guess_from_filename($filename)
        Returns the compression method that is likely used on the indicated
        filename based on its file extension.

    $regex = compression_get_file_extension_regex()
        Returns a regex that matches a file extension of a file compressed
        with one of the supported compression methods.

    $comp = compression_get_default()
        Return the default compression method. It is "xz" unless
        "compression_set_default" has been used to change it.

    compression_set_default($comp)
        Change the default compression method. Errors out if the given
        compression method is not supported.

    $level = compression_get_default_level()
        Return the default compression level used when compressing data.
        It's "9" for "gzip" and "bzip2", "6" for "xz" and "lzma", unless
        "compression_set_default_level" has been used to change it.

    compression_set_default_level($level)
        Change the default compression level. Passing undef as the level
        will reset it to the compressor specific default, otherwise errors
        out if the level is not valid (see "compression_is_valid_level").

    compression_is_valid_level($level)
        Returns a boolean indicating whether $level is a valid compression
        level (it must be either a number between 1 and 9 or "fast" or
        "best")

## CHANGES
  Version 2.00 (dpkg 1.20.0)
    Hide variables: $default_compression, $default_compression_level and
    $compression_re_file_ext.

  Version 1.02 (dpkg 1.17.2)
    New function: compression_get_file_extension_regex()

    Deprecated variables: $default_compression, $default_compression_level
    and $compression_re_file_ext

  Version 1.01 (dpkg 1.16.1)
    Default compression level is not global any more, it is per compressor
    type.

  Version 1.00 (dpkg 1.15.6)
    Mark the module as public.

