Skip to main content

A small library to return temporary decompressed files when one needs them.

Project description

dcompressee: a small Python library to generate temporarirly decompressed files

Background

A common use case in Bioinformatics is having to temporarily decompress a file in order to run it through some tool. For instance, blastn can only read uncompressed FASTA files. This library provides a simple way to do this. The library will automatically detect the compression format of the file and decompress it to a temporary file. The temporary file will be automatically deleted when the program exits. The library currently supports the following compression formats: gzip, bzip2, xz, lz4, and lzma.

Usage

from dcompressee import unpack

# A list of file paths as pathlib.Path objects with various compression formats, 
# and some are not compressed
files = ["/path/to/file1.fasta.gz", "/path/to/file2.fasta.bz2", "/path/to/file3.fasta.xz", "/path/to/file4.fasta"]

# Generate a list of paths as pathlib.Path objects to temporarily decompressed 
# files (these will be created in $TMPDIR) if necessary. For files that are not 
# compressed, the function will return the original path. 
# The created temporary files will be automaicallly deleted when the program exits.
paths = [unpack(f) for f in files]

Installation

pip install dcompressee

Examples

Two examples are provided in the examples directory. The first example shows how to use dcompressee in a simple Python script. The second example shows how to use dcompressee in a asynchronous manner.

Author

Anders Goncalves da Silva (@andersgs)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dcompressee-1.0.0.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

dcompressee-1.0.0-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file dcompressee-1.0.0.tar.gz.

File metadata

  • Download URL: dcompressee-1.0.0.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for dcompressee-1.0.0.tar.gz
Algorithm Hash digest
SHA256 fd43bd530a8eda563b6cd47fd0201a2d3ef7367b7f5581d7b923e86d5f668562
MD5 78badc1f9e769848a76eb4cfce40beb8
BLAKE2b-256 b5185aef1126aa7cabfe942dce9efe2661dda8b293e8160b8d3594e4ffa4bed7

See more details on using hashes here.

File details

Details for the file dcompressee-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dcompressee-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for dcompressee-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1cd9c00ccff8338b755674f49b7b390483083568c52611fdfaac71befe5deb0d
MD5 ae57dc78963105d11c87543a82925ec4
BLAKE2b-256 f5a7720eca1f18e637d1946e2ac1d9f9922831d8c83273f8ec3e9931bf3043f6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page