#mime #embedded-systems #due

no-std mr-mime

A no_std MIME type library for Rust

2 releases

0.1.1 Mar 27, 2023
0.1.0 Sep 25, 2022

#10 in #due

Download history 15/week @ 2024-12-04 12/week @ 2024-12-11 67/week @ 2025-02-05 45/week @ 2025-02-19 3/week @ 2025-02-26 10/week @ 2025-03-05 52/week @ 2025-03-12

110 downloads per month

MIT/Apache

4MB
113K SLoC

mr-mime

mr-mime is a library for parsing and generating MIME messages. It is created due to my dissatisfaction with the current MIME library used in most Rust projects, mime. While mr-mime is not a drop-in replacement, the API is very similar and overall aims to reduce some notable warts found in mime.

Improvements over mime

  • mr-mime is not only no_std, but can operate without an allocator. This means that it can be used in #![no_std] environments, and in environments where the allocator is not available (e.g. embedded systems).
  • mr-mime is forbid(unsafe_code), meaning that is contains no unsafe code. This reduces the potential surface where a memory vulnerability can occur.
  • mr-mime interns and provides constants for a wider variety of MIME types.

MSRV

The Minimum Supported Rust Version (MSRV) for this crate is 1.41.0. This MSRV will not be changed without a minor version bump.

License

mr-mime is licensed under one of the following licenses, at your option:

Dependencies