NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2250 most downloaded on PyPI
A tool that parses emails by enhancing the Python standard library, extracting all details into a comprehensive object.
Last release 4 days ago
01 Oct 2026
Ships unpredictably
gaps range from 1 weeks to 9 months
Some releases are documented
notes for 31 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
75 releases · first in 2016
fix: restore RFC 6532 internationalized mailbox parsing by @fedelemantuano in #178
Full Changelog: 4.7.0...4.8.0
One column per quarter.
Fix mailbox selection and expose forensic address recovery defects by @fedelemantuano in #176
Full Changelog: 4.6.5...4.7.0
Full Changelog : 4.6.4...4.6.5
Full Changelog: 4.6.4...4.6.5
Add link to GitHub repo to Project-URLs by @kytta in #172
Full Changelog: 4.6.3...4.6.4
Add support for Python 3.15 by @kytta in #169
Full Changelog: 4.6.2...4.6.3
Fixed many bugs by @fedelemantuano in #167
Security hardening: ReDoS, recursion DoS, and Outlook-path robustness by @fedelemantuano in #166
Full Changelog: 4.6.0...4.6.1
feat: enhance attachment handling by sanitizing by @fedelemantuano in #165 Thanks to security research @iam-niranjan , for his help to improve mail-pa
Full Changelog: 4.5.0...4.6.0
fix: feature-detect getaddresses(strict=) so address parsing works on Python < 3.13 by @apoorvdarshan in #161
Full Changelog: 4.4.0...4.5.0
Parsing outlook msg using only Python code by @fedelemantuano in #155
Full Changelog: 4.3.0...4.4.0
fix(get_addresses): accept email.header.Header inputs (no more 'Header' object has no attribute 'strip') by @rakurtz in #153
Full Changelog: 4.2.1...4.3.0
Nothing published for this version
Use uv to manage packages by @fedelemantuano in #141
parse_received by @vmeyet in #131Full Changelog: 4.1.4...4.2.0
Fixed issue Processing breaks if a "headers:" email header exists #139 by @fedelemantuano in https://github.com/SpamScope/mail-parser/pull/140
Full Changelog: https://github.com/SpamScope/mail-parser/compare/4.1.3...4.1.4
Remove ipaddress library install and bump version by @derpadoo in https://github.com/SpamScope/mail-parser/pull/137
Full Changelog: https://github.com/SpamScope/mail-parser/compare/v2.1.0...4.1.3
## What's Changed * Bugfix GitHub pipeline Full Changelog: https://github.com/SpamScope/mail-parser/compare/4.1.1...4.1.2
Full Changelog: https://github.com/SpamScope/mail-parser/compare/4.1.1...4.1.2
Improving code quality by @fedelemantuano in https://github.com/SpamScope/mail-parser/pull/122
Full Changelog: https://github.com/SpamScope/mail-parser/compare/4.0.0...4.1.0
being more explicit with msgconvert tool error message by @alealbonico in https://github.com/SpamScope/mail-parser/pull/95
Full Changelog: https://github.com/SpamScope/mail-parser/compare/v3.15.0...4.0.0
Fixed attachments management. Now can manage rtf files.
receivedrtf files.Issue #80 (UUencoded attachment parsing)
## Highlights - Added FUNDING.yml - Fixed requirements
Now mail-parser can extract attachments in CID(PR #64)
Added field to get not managed email text part (text_not_managed)
text_not_managed)Added content-disposition header to mailparser object
content-disposition header to mailparser objectNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Storing attachments on disk from command line tool.
Nothing published for this version
Nothing published for this version
Nothing published for this version
## Highlights - Added timezone of mail date.
timezone of mail date.Nothing published for this version
Nothing published for this version
Nothing published for this version
Added logging on standard output for command line.
Nothing published for this version
Nothing published for this version
Nothing published for this version
``` MailParserError: Base MailParser Exception
MailParserError: Base MailParser Exception
|
├── MailParserOutlookError: Raised with Outlook integration errors
|
├── MailParserEnvironmentError: Raised when the environment is not correct
|
├── MailParserOSError: Raised when there is an OS error
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
received headers are now parsed as single hops. All hops are date in UTC, and delay between actual and before hop.
received headers are now parsed as single hops. All hops are date in UTC, and delay between actual and before hop. "received": [
{
"from": "host86-187-174-57.range86-187.btcentralplus.com 86.187.174.57 :45321 helo=User",
"delay": 0,
"date_utc": "2016-08-19T14:34:52",
"hop": 1,
"date": "Fri, 19 Aug 2016 20:34:52 +0600",
"with": "esmtpa Exim 4.87 envelope-from <anabelgonzalo@fanox.com> id 1bakrE-000291-LF",
"by": "localhost.localdomain.com"
},
{
"from": "localhost.localdomain.com mail.revesoft.com 208.74.72.248",
"delay": 159287.0,
"date_utc": "2016-08-21T10:49:39",
"hop": 2,
"date": "21 Aug 2016 10:49:39 -0000",
"with": "ESMTP via TCP",
"by": "mx03.futurequest.net 69.5.6.174"
},
{
"date": "21 Aug 2016 10:49:40 -0000",
"delay": 1.0,
"date_utc": "2016-08-21T10:49:40",
"from": "network",
"hop": 3
},
{
"from": "mx03.futurequest.net mx03.futurequest.net 69.5.6.174",
"delay": 0.0,
"date_utc": "2016-08-21T10:49:40",
"hop": 4,
"date": "21 Aug 2016 10:49:40 -0000",
"with": "FQDP via TCP",
"by": "pt02.futurequest.net 69.5.6.173"
},
{
"date": "21 Aug 2016 10:49:40 -0000",
"delay": 0.0,
"date_utc": "2016-08-21T10:49:40",
"from": "network",
"hop": 5
}
],
Nothing published for this version
There are 2 docker images, for master and for develop
from case use from_)mail property will be returned all mail headers, attachments and body, only if they aren't None.mail, as JSON with .mail_json, and as raw with .mail_raw.This new release is not compatible with the previous. This version is all object oriented, the simple header is tokenized in every its parts. Example:
Reply-To: "VICTORIA Souvenirs" <smgesi4@gmail.com>
now becomes:
"reply_to": [
[
"VICTORIA Souvenirs",
"smgesi4@gmail.com"
]
],
parse_from_* are removed.Added parsing from file-like object, like sys.stdin.
sys.stdin.Nothing published for this version
Added _received_ field also in JSON complete output
flag binary if the attachment is a binary. Detection binary in quoted-printable Content-Transfer-Encodingheaders property (all multiple spaces become one space)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →