This project has been archived by its maintainers, and is no longer receiving any updates.
fast_mail_parser
📦 Now published as
fast-mail-parser-ngInstall it under the new name:
pip install fast-mail-parser-ngYour code does not change. The import path is still
fast_mail_parser:from fast_mail_parser import parse_emailMigrating from
fast-mail-parser? Change the name in your requirements file and nothing else — no code edits, same API.- fast-mail-parser + fast-mail-parser-ngLooking for the old
fast-mail-parserpackage? It is a different, unmaintained upload frozen at 0.2.5 (June 2022) that this project cannot publish to. See Why the name changed.
A very fast Python library for parsing .eml files. It is built on the Rust
mailparse crate via
pyo3, and parses roughly 5–10x faster than
pure-Python implementations, depending on the CPU — see
Benchmark for the measured spread and how to reproduce it.
Quickstart
pip install fast-mail-parser-ng
from fast_mail_parser import parse_email
with open("message.eml", "rb") as f:
email = parse_email(f.read())
print(email.subject)
print(email.text_plain[0])
That is the whole surface for the common case. See Usage for the full API, and Python support for wheel coverage.
Coming from the stdlib email module, or upgrading from 0.6.x? See the
migration guide — its snippets are
executed in CI, so they cannot go stale — and
compatibility.md for every known
difference from the stdlib, each one enforced by a test.
Why the name changed
The fast-mail-parser name on PyPI belongs to a PyPI account this project no
longer controls, and it is frozen at an unmaintained 0.2.5 from June 2022.
Only a project owner can publish to a name, so fixes could not reach it — the
PEP 541 transfer request
(pypi/support#11044) has been
open and unattended since June 2026.
Rather than hold releases behind that queue indefinitely, this project publishes
under a name it owns. The import path was deliberately left as
fast_mail_parser so the change costs you one line in a requirements file and
no code. If the transfer is ever granted, fast-mail-parser will resume as an
alias.
Full history in the changelog.
Python support
Wheels target the CPython stable ABI (cp311-abi3): one wheel per platform
covers every supported CPython version, including versions released after the
package — a new Python no longer has to wait for a new release.
| Python | Support |
|---|---|
| CPython 3.11+ (including future versions) | Prebuilt wheel |
| CPython 3.13t/3.14t (free-threaded) | Builds from source; the extension currently re-enables the GIL on import (#101) |
| CPython ≤ 3.10 | Not supported (last compatible release: 0.2.5) |
| PyPy | Not supported |
13 prebuilt wheels ship per release: manylinux and musllinux across x86_64, i686, aarch64, armv7, s390x and ppc64le; Windows x64 and x86; macOS arm64. Every release is published via PyPI Trusted Publishing with PEP 740 attestations.
Benchmark
All three libraries asked for the same result — subject, both body lists, and attachments with their payloads decoded — on the same message:
| Library | Work performed | Min time | Relative |
|---|---|---|---|
| fast_mail_parser | parse + decode bodies + decode attachments | 2.09 ms | 1.00x |
| mail-parser | from_string + .parse() + read attributes |
13.45 ms | 6.44x |
stdlib email |
message_from_bytes + walk + get_content / get_payload |
17.93 ms | 8.59x |
Corpus: tests/data/large_message.eml (multipart/mixed, 6 MIME parts, 2 base64
attachments). CPython 3.12.14 on Linux x86_64 (GitHub Actions ubuntu-latest),
mail-parser 4.6.4, minimum of 31+ rounds.
These ratios move with the hardware, so treat them as a magnitude rather than a
constant. An earlier run of this same comparison on a faster CI runner recorded
8.50x and 10.01x rather than 6.44x and 8.59x, and an Apple Silicon laptop gives
5.25x and 6.42x: the interpreted parsers and the Rust extension do not scale
together across CPUs. Regenerate the table for your own machine with
make bench-table, which prints its own methodology line; CI also renders it
into the job summary of every benchmark run.
Two things this table deliberately does not do:
- It does not quote the CI gate's numbers. That gate compares a revision against its base rather than against another library, precisely because absolute cross-implementation ratios are unstable between machines — they were observed to swing ~26% between CI runners while within-run noise was ~0.3%.
- It does not reuse the gate's mail-parser baseline, which measures
MailParser.from_stringalone. That call never invokes.parse(), so it is a stable number for regression detection but not a fair cross-library figure.
Usage
parse_email accepts the raw message as str or bytes and returns a
PyMail. It raises ParseError if the payload cannot be parsed.
PyMail exposes the following attributes:
| Attribute | Type | Description |
|---|---|---|
subject |
str |
Subject header (empty string if missing). |
date |
str |
Date header (empty string if missing). |
date_parsed |
datetime | None |
date as a tz-aware UTC datetime; computed on access. |
from_ |
PyAddress | None |
The From mailbox. Named from_; from is a keyword. |
to / cc / bcc / reply_to |
list[PyAddress] |
Recipients, groups flattened. |
text_plain |
list[str] |
All text/plain bodies. |
text_html |
list[str] |
All text/html bodies. |
headers |
dict[str, list[str]] |
All values of every header, in order. |
attachments |
list[PyAttachment] |
Non-body parts (see below). |
Each PyAttachment has:
| Attribute | Type | Description |
|---|---|---|
mimetype |
str |
The part's media type. |
filename |
str |
See below; "" when the part declares none. |
content |
bytes |
Decoded bytes, transfer-encoding undone. |
content_id |
str | None |
Content-ID with angle brackets stripped. |
disposition |
str | None |
Raw Content-Disposition token, or None if absent. |
Addresses
Address headers are parsed rather than handed back as strings — RFC 5322 address syntax (display names, quoted strings containing commas, groups, comments) is exactly what hand-rolled regexes get wrong:
mail.from_.display_name # 'Jane Doe' (None for a bare address)
mail.from_.address # 'jane@example.com'
[a.address for a in mail.to] # ['a@example.com', 'b@example.com']
- RFC 5322 groups (
To: team: a@x, b@x;) are flattened to their member mailboxes; the group name is structure and is not exposed. - RFC 2047 encoded display names are decoded, including inside quoted names.
- A header that does not parse yields an empty list (or
Noneforfrom_) rather than raising — a malformedTo:never fails an otherwise good message, and the raw value stays inheaders.
Headers
headers maps each header name to a list of every value it appeared with,
in message order, so repeated fields survive:
mail.headers["Received"] # ['from mx1...', 'from mx2...', 'from mx3...']
mail.headers["From"] # ['sender@example.com'] -- always a list
subject and date are read from the parsed headers directly rather than out
of this map, so they always reflect the first occurrence of their field.
Resolving inline images (cid:)
content_id is exposed without angle brackets, which is the form RFC 2392
cid: URLs use — so resolving the images an HTML body references is a lookup:
import re
mail = parse_email(raw)
by_cid = {a.content_id: a for a in mail.attachments if a.content_id}
for cid in re.findall(r'cid:([^"\'>\s]+)', mail.text_html[0]):
attachment = by_cid.get(cid)
if attachment:
print(cid, attachment.mimetype, len(attachment.content), "bytes")
disposition reports the part's raw Content-Disposition token, and
distinguishes an absent header (None) from an explicit inline — the two are
different statements about intent.
Parsing a batch
parse_many parses a whole batch in one call, in parallel, releasing the GIL for
the batch rather than per message:
from fast_mail_parser import ParseError, parse_many
results = parse_many(payloads) # list[str | bytes] in, results in input order
results = parse_many(payloads, threads=8) # cap the workers; default is the machine's
Each slot is a PyMail or a ParseError instance — returned, not raised —
so one malformed message does not cost you the rest of the batch, and inputs zip
cleanly to outcomes:
for payload, outcome in zip(payloads, parse_many(payloads)):
if isinstance(outcome, ParseError):
quarantine(payload, reason=str(outcome))
else:
index(outcome)
Pass raise_on_error=True to raise the first failure instead.
Chunk large workloads. Every parsed message is materialised before the call returns, so a batch of ten thousand one-megabyte mails holds essentially all of it decoded at once. Feed it in chunks of a few hundred rather than a whole mailbox.
Error handling
parse_email raises a subtype of ParseError, chosen by what actually went
wrong:
| Exception | Meaning |
|---|---|
HeaderParseError |
The header section could not be parsed — usually the input is not an email at all. |
MimeStructureError |
Malformed MIME structure, or a resource cap tripped: over 100 MiB of input, or nesting deeper than 256 levels. |
DecodeError |
A part's Content-Transfer-Encoding did not decode (bad base64, bad quoted-printable). |
All three inherit from ParseError, so existing code keeps working:
from fast_mail_parser import DecodeError, ParseError, parse_email
try:
mail = parse_email(raw)
except DecodeError:
quarantine(raw) # one part's encoding is broken
except ParseError:
reject(raw) # not parseable at all
The distinction is worth acting on: a DecodeError says one part of an otherwise
plausible message is corrupt, while a HeaderParseError usually says the bytes
were never an email.
Bodies vs. attachments
The two are disjoint — a part appears in exactly one place. Classification follows RFC 2183 rather than the media type alone:
- A part is body text (
text_plain/text_html) when it istext/plainortext/htmland is not markedContent-Disposition: attachment. AContent-Type; nameparameter does not change this — an inline text part stays in the body. - Every other part is an attachment. That includes a
text/plainpart markedContent-Disposition: attachment(its lines are not mixed into the body) and inline images referenced byContent-ID. multipart/*container nodes are MIME structure and appear in neither list.
filename comes from the Content-Disposition filename parameter — including
RFC 2231 extended values such as filename*=utf-8''... — falling back to the
Content-Type name parameter. It is "" when the part declares neither,
which is normal for inline images.
import sys
from fast_mail_parser import parse_email, ParseError
# parse_email accepts both str and bytes; reading in binary mode is safest.
with open('message.eml', 'rb') as f:
message_payload = f.read()
try:
email = parse_email(message_payload)
except ParseError as e:
print("Failed to parse email:", e)
sys.exit(1)
print("Subject:", email.subject)
print("Date:", email.date)
# headers is a dict[str, list[str]]: every occurrence of a repeated header is
# kept, in the order it appeared. Single-valued headers are one-element lists.
for name, values in email.headers.items():
for value in values:
print(f"{name}: {value}")
# So a delivery path stays intact -- for Received, the first entry is the most
# recent hop.
for hop in email.headers.get("Received", []):
print("Received:", hop)
# text_plain and text_html are lists of strings (one entry per matching part).
for body in email.text_plain:
print("Plain text body:", body)
for body in email.text_html:
print("HTML body:", body)
# attachments is a list of PyAttachment objects.
for attachment in email.attachments:
print("Attachment:", attachment.filename)
print(" mimetype:", attachment.mimetype)
print(" size:", len(attachment.content), "bytes") # content is bytes
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
See CONTRIBUTING.md for how to build from source, run the tests, and the PR conventions (linting, CI, DCO sign-off).
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fast_mail_parser_ng-0.7.0.tar.gz.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0.tar.gz
- Upload date:
- Size: 639.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
573d335cd2ad12561f6c298501dd31c42a3f0f7885146e5c89e0a52ac9cbd17f
|
|
| MD5 |
32a9dbfd3244dca35ec32c4802aaa6de
|
|
| BLAKE2b-256 |
d6192daf043eaa81eccc4f8a1f441fd1bbdf123b22e3b89c81a2d0f47ae6edec
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0.tar.gz:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0.tar.gz -
Subject digest:
573d335cd2ad12561f6c298501dd31c42a3f0f7885146e5c89e0a52ac9cbd17f - Sigstore transparency entry: 2604313058
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-win_amd64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-win_amd64.whl
- Upload date:
- Size: 387.3 kB
- Tags: CPython 3.11+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d76139f693b0d905fbd83b733ab76337cb5dacd431ead69318d73664be89bf2
|
|
| MD5 |
88fbffd8940dcd7224c373b9e12ef3d8
|
|
| BLAKE2b-256 |
a1cd3a4274e5d68ce5b212ea61edaaa04eb260f617b3aa1c80e09f1e0af0816a
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-win_amd64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-win_amd64.whl -
Subject digest:
8d76139f693b0d905fbd83b733ab76337cb5dacd431ead69318d73664be89bf2 - Sigstore transparency entry: 2604313087
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-win32.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-win32.whl
- Upload date:
- Size: 369.3 kB
- Tags: CPython 3.11+, Windows x86
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
674a46768551cb698b92a0c38a98174fe80744498485a322dbbfb31b9681c226
|
|
| MD5 |
289dfce3d47cd50dfc9a4cb67933cd47
|
|
| BLAKE2b-256 |
54052e8215fa882224c2008b18e75d3fc85548d328300e1bdd8f0edd83cc6e47
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-win32.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-win32.whl -
Subject digest:
674a46768551cb698b92a0c38a98174fe80744498485a322dbbfb31b9681c226 - Sigstore transparency entry: 2604313071
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 727.3 kB
- Tags: CPython 3.11+, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3fd4f093ea44ee4a5a23a19151deed6ae6aefa43688cb6ae9f9e8caac30f8e53
|
|
| MD5 |
2bf1982bdf7f74db78f67ced717d166c
|
|
| BLAKE2b-256 |
4f41d272574259f3803e214ff63442a58fef2ba95dc77f1283d153223b1e39c3
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_x86_64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_x86_64.whl -
Subject digest:
3fd4f093ea44ee4a5a23a19151deed6ae6aefa43688cb6ae9f9e8caac30f8e53 - Sigstore transparency entry: 2604313083
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_i686.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_i686.whl
- Upload date:
- Size: 748.7 kB
- Tags: CPython 3.11+, musllinux: musl 1.2+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46d086a14a335d3a94ee33807d5346a177e948c35385cee16bff31e0a36bfdfc
|
|
| MD5 |
25672c7a7178c599a97194caa1d0138c
|
|
| BLAKE2b-256 |
13c8a81093b8bca34b53d4025581a015e26fd2b17f3e7cff575e6eb1e0a19f54
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_i686.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_i686.whl -
Subject digest:
46d086a14a335d3a94ee33807d5346a177e948c35385cee16bff31e0a36bfdfc - Sigstore transparency entry: 2604313063
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_armv7l.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_armv7l.whl
- Upload date:
- Size: 795.1 kB
- Tags: CPython 3.11+, musllinux: musl 1.2+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aca02995932abe53deec1a7c7049c6898ee57295f18c73230d8fb45935974647
|
|
| MD5 |
51ce972b939b0b72048c4214cce4f7c0
|
|
| BLAKE2b-256 |
541c9b976045e463c42972676bf6e7a7373f7698c73aeaadcca52e14a0eab629
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_armv7l.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_armv7l.whl -
Subject digest:
aca02995932abe53deec1a7c7049c6898ee57295f18c73230d8fb45935974647 - Sigstore transparency entry: 2604313126
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 687.7 kB
- Tags: CPython 3.11+, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
769d5360dbdbd134c75bdbd3261626d56e524dd307a0d5599102d1e0de872c29
|
|
| MD5 |
c6e4520aadc4e93366e90d1aaffc8d56
|
|
| BLAKE2b-256 |
71c8e8d330130778f9d5b2337549905216e023e4f967e8ce3feaf5217e60ecd1
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_aarch64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-musllinux_1_2_aarch64.whl -
Subject digest:
769d5360dbdbd134c75bdbd3261626d56e524dd307a0d5599102d1e0de872c29 - Sigstore transparency entry: 2604313074
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 515.7 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f682c0dae1459bd6b6296679c69a39b1d0709cedd62964da2bcf7fb428e3cb97
|
|
| MD5 |
d39e1c34458341bb543c9f0537cd96b3
|
|
| BLAKE2b-256 |
aaa63f897656cf4d104e81dbd8084f2f9b71aeaa9ae1eb8a2b5f5de8bf261c26
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
f682c0dae1459bd6b6296679c69a39b1d0709cedd62964da2bcf7fb428e3cb97 - Sigstore transparency entry: 2604313138
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 548.2 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e210274ed541dddc3c98ecc80077fa155884bea7383bb7454ee3bc0d88d2c22f
|
|
| MD5 |
000fb59fc1d5b7b34e8b5884dff0b970
|
|
| BLAKE2b-256 |
d4e3418d5d9e553fa41f3d406cab26d98388089d253dae97d7e7f0dc830cf000
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl -
Subject digest:
e210274ed541dddc3c98ecc80077fa155884bea7383bb7454ee3bc0d88d2c22f - Sigstore transparency entry: 2604313125
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 550.6 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f0d8ffbef6ada9e1479666ac11790f896410677ca666382c77c68c21919f3ee
|
|
| MD5 |
47d2c6a25796579b8801164df8a987af
|
|
| BLAKE2b-256 |
b6c4d3c06eb91175814a3e9cbbb68a6e283dd9afd679c856c47ca81d91556f77
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl -
Subject digest:
4f0d8ffbef6ada9e1479666ac11790f896410677ca666382c77c68c21919f3ee - Sigstore transparency entry: 2604313110
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 519.3 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66ccb9d45fd8b7e924c3434629cb918dcff293fefdc29afe057c2c51f8386039
|
|
| MD5 |
ccd350bcbfa38ece5c73c03cb430eae2
|
|
| BLAKE2b-256 |
cd501b58fb4da2e006c8c98d7c22d1ed7b6d334b3d0bfc600213cd8236f6975e
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl -
Subject digest:
66ccb9d45fd8b7e924c3434629cb918dcff293fefdc29afe057c2c51f8386039 - Sigstore transparency entry: 2604313100
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 509.0 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e57296112ea3a626a25417bbb3e742ea6360386edf02d8bc258d627931d52939
|
|
| MD5 |
9aea053baff6a4a9a33a19ec449df97c
|
|
| BLAKE2b-256 |
73cf2c5468389ebe93ba6a36de5d3373ef0715eb4d5eab5af4e9b64701a3b968
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
e57296112ea3a626a25417bbb3e742ea6360386edf02d8bc258d627931d52939 - Sigstore transparency entry: 2604313133
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_12_i686.manylinux2010_i686.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
- Upload date:
- Size: 533.8 kB
- Tags: CPython 3.11+, manylinux: glibc 2.12+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
731f561985490a2d94e59899d290e060f315ccbd3641989f5190aff522f903d9
|
|
| MD5 |
1e0ea31db74be9d055377274b67816e2
|
|
| BLAKE2b-256 |
b2f794bb05584eb3d1a962d97316d07550e3a2c0b2c02d2452b82103d8beadc4
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_12_i686.manylinux2010_i686.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-manylinux_2_12_i686.manylinux2010_i686.whl -
Subject digest:
731f561985490a2d94e59899d290e060f315ccbd3641989f5190aff522f903d9 - Sigstore transparency entry: 2604313119
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_mail_parser_ng-0.7.0-cp311-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: fast_mail_parser_ng-0.7.0-cp311-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 472.0 kB
- Tags: CPython 3.11+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2b2f14cd45230498dc0b14f4d6f7f0221e6f3fee8d88efc68907120df0e4d25
|
|
| MD5 |
7eb33678a8ac97f97a2f328fa8cf0765
|
|
| BLAKE2b-256 |
c7bb157a7f80c7fca4581f7088091bba7cf8b16bbfaf1cfbd540599fb9b74950
|
Provenance
The following attestation bundles were made for fast_mail_parser_ng-0.7.0-cp311-abi3-macosx_11_0_arm64.whl:
Publisher:
publish.yml on namecheap/fast_mail_parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_mail_parser_ng-0.7.0-cp311-abi3-macosx_11_0_arm64.whl -
Subject digest:
a2b2f14cd45230498dc0b14f4d6f7f0221e6f3fee8d88efc68907120df0e4d25 - Sigstore transparency entry: 2604313067
- Sigstore integration time:
-
Permalink:
namecheap/fast_mail_parser@fb361f68a28c3808444c3ce308d6620316c54c12 -
Branch / Tag:
refs/tags/v0.7.0 - Owner: https://github.com/namecheap
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb361f68a28c3808444c3ce308d6620316c54c12 -
Trigger Event:
release
-
Statement type: