- mimedecode.py
+ mimedecode
WHAT IS IT
Mail users, especially in non-English countries, often find that mail
messages arrived in different formats, with different content types, in
-different encodings and charsets. Usually this is good because it allows us to
-use appropriate format/encoding/whatever. Sometimes, though, some unification
-is desirable. For example, one may want to put mail messages into an archive,
-make HTML indices, run search indexer, etc. In such situations converting
-messages to text in one character set and skipping some binary attachments is
-much desirable.
+different encodings and charsets. Usually this is good because it allows
+us to use appropriate format/encoding/whatever. Sometimes, though, some
+unification is desirable. For example, one may want to put mail messages
+into an archive, make HTML indices, run search indexer, etc. In such
+situations converting messages to text in one character set and skipping
+some binary attachments is much desirable.
- Here is the solution - mimedecode.py.
+ Here is the solution - mimedecode.
- This is a program to decode MIME messages. The program expects one input
-file (either on command line or on stdin) which is treated as an RFC822
-message, and decodes to stdout or an output file. If the file is not an RFC822
-message it is just copied to the output one-to-one. If the file is a simple
-RFC822 message it is decoded as one part. If it is a MIME message with multiple
-parts ("attachments") all parts are decoded. Decoding can be controlled by
-command-line options.
+ This is a program to decode MIME messages. The program expects one
+input file (either on command line or on stdin) which is treated as an
+RFC822 message, and decodes to stdout or an output file. If the file is
+not an RFC822 message it is just copied to the output one-to-one. If the
+file is a simple RFC822 message it is decoded as one part. If it is a
+MIME message with multiple parts ("attachments") all parts are decoded.
+Decoding can be controlled by command-line options.
-WHAT'S NEW in version 2.3.7 (2014-02-23)
+ Think about said mail archive; for example, its maintainer wants to
+put there only texts, convert PDF/Postscript to text, pass HTML and
+images decoding base64 to html but leaving images encoded, and ignore
+everything else. This is how it could be done:
- Add option -r to remove headers and option -R to remove header's parameters.
+ mimedecode -t application/pdf -t application/postscript -t text/plain -b text/html -B 'image/*' -i '*/*'
-WHAT'S NEW in version 2.3.6 (2014-02-19)
- Decode "To", "Cc", "Reply-To" and "Mail-Followup-To" headers by default.
+Version 3.1.0 (2021-05-23)
- Report test progress and success.
+ Convert mimedecode.docbook to reST. Generate html/man/text
+ using Sphinx.
- Add tests for headers and parameters decoding.
+ Replaced outdated and insecure `mktemp` with `NamedTemporaryFile`.
- Add tests for passing (-b) and skipping (-i) message bodies.
-
-WHAT'S NEW in version 2.3.4 (2014-02-11)
-
- Optimize recursive decoding.
-
- Fix a bug - decode message/rfc822 subparts.
-
-WHAT'S NEW in version 2.3.3 (2014-02-02)
- Forbid filtering from console. When the program runs with stdin
- connected to the console it shows usage help.
-
- Fix a bug - option -o and no parameters.
-
-WHAT'S NEW in version 2.3.2 (2014-02-01)
- Fix a bug - do not generate 'From ' headers in subparts.
-
- Add option --host.
-
- Add tests.
-
-WHAT'S NEW in version 2.3.1 (2014-01-31)
- Update documentation.
-
-WHAT'S NEW in version 2.3.0 (2014-01-30)
- Add option -o and output_file argument.
-
-WHAT'S NEW in version 2.2.0 (2013-12-21)
- Rename __version__.py to mimedecode_version.py.
-
- Use setuptools.
+ Python 3.8, 3.9.
WHERE TO GET
- Home page: http://phdru.name/Software/Python/#mimedecode
- git clone http://git.phdru.name/mimedecode.git
+ Home page: https://phdru.name/Software/Python/#mimedecode
+ git clone https://github.com/phdru/mimedecode.git
+ git clone https://git.phdru.name/mimedecode.git
git clone git://git.phdru.name/mimedecode.git
- Requires: Python 2.2.2+, m_lib 2.0+.
+ Requires: Python 2.7 or Python 3.4+, m_lib.defenc 1.0+.
+ Tests require: tox, m_lib 3.1+.
Recommends: configured mailcap database.
- Documentation (also included in the package):
- http://phdru.name/Software/Python/mimedecode.txt
+ Documentation: https://phdru.name/Software/Python/mimedecode.html
+ (also included in the package in html, man and txt formats).
AUTHOR
Oleg Broytman <phd@phdru.name>
COPYRIGHT
- Copyright (C) 2001-2014 PhiloSoft Design.
+ Copyright (C) 2001-2021 PhiloSoft Design.
LICENSE
GPL