Skip to main content

Encode and decode files through the standard input/output

Project description

std_encode

Build Status

Encode and decode files through standard input/output.

Usage

Encode files piping them into std_encode

$ std_encode -t input_test.txt
>>>>>>>>>> START t input_test.txt
Some test
text file
<<<<<<<<<< END

The encoded text can be then decoded and saved with std_decode

$ std_encode -t input_test.txt | std_decode
######### DECODED FILE input_test.txt
$ cat input_test.txt
Some test
text file

Install

The package is available in PyPI

pip install std-encode

Features

  • A log shows that a file has been decoded
  • Text and binary files are supported (binary are default).
  • std_decode is capable of decoding more than one file in the same stream
  • Any line in the stream that's not part of a file will be replicated in the standard output.

Why is this useful for?

In some cases, standard input/output is a convenient and easy way of communication. Transfering a file is not as simple.

For example, the problem that originated it was to retrieve files from a docker container running in Kubernetes. Obtaining the text log is easy calling docker logs or kubectl logs, but retrieving files requires more plumbing.

In the operation, while creating logs, multiple files can be encoded, and then all will be retrieved piping the logs through std_decode, generating a resulting log like this one:

========================= test session starts ==========================
platform darwin -- Python 3.7.0, pytest-3.9.2, py-1.7.0, pluggy-0.8.0
rootdir: /Users/jaimebuelta/Dropbox/code/std_encode, inifile:
plugins: cram-0.2.0
collected 8 items

tests/base.t .                                                   [ 12%]
tests/double_file.t .                                            [ 25%]
tests/encode_decode_image.t .                                    [ 37%]
tests/encode_decode_text.t .                                     [ 50%]
tests/encode_image.t .                                           [ 62%]
tests/encode_text.t .                                            [ 75%]
tests/single_file.t .                                            [ 87%]
tests/test_se.py .                                               [100%]

======================= 8 passed in 2.22 seconds =======================

######### DECODED FILE junit_test.xml
######### DECODED FILE html_report.html

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

std_encode-0.2.3.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

std_encode-0.2.3-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file std_encode-0.2.3.tar.gz.

File metadata

  • Download URL: std_encode-0.2.3.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.11 CPython/3.7.1 Linux/4.15.0-1026-gcp

File hashes

Hashes for std_encode-0.2.3.tar.gz
Algorithm Hash digest
SHA256 2b53945ea5ea20cf13cea4a75a025486f5b3b5b7a4409e6ee9c210e74c049906
MD5 b0916e4822c13b5adbcb930e5d737b24
BLAKE2b-256 19cc929a3aea8ba68a54f3a24ebe5d9d2124b45bf539102e0a5837b401ef754c

See more details on using hashes here.

File details

Details for the file std_encode-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: std_encode-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.11 CPython/3.7.1 Linux/4.15.0-1026-gcp

File hashes

Hashes for std_encode-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 78c0ef959dee56ea6f1413b997cd529e68103b1bbef4c9f07f989cc3910ddab8
MD5 1439620dd9458bf78d4c629d4e050bdd
BLAKE2b-256 7bda6c205b50be0bdb14c19f0d90089b9d41a72d98ab52a8987d864c0409d812

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