---
name: "Dpkg::Compression"
section: "3"
platform: "linux"
package: "libdpkg-perl"
version: "1.18.25"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/Dpkg::Compression"
---

# Dpkg::Compression(3)

simple database of available compression methods

## 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 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.
