#imap #codec #mailbox #decoder #utf-7 #rfc3501

utf7-imap

Mailbox names encoder and decoder (UTF-7 IMAP RFC 3501)

5 unstable releases

0.3.2 Sep 26, 2022
0.3.1 Sep 17, 2022
0.3.0 Aug 25, 2022
0.2.0 Jan 16, 2022
0.1.0 Nov 26, 2021

#1218 in Encoding

Download history 166/week @ 2024-09-09 117/week @ 2024-09-16 190/week @ 2024-09-23 99/week @ 2024-09-30 136/week @ 2024-10-07 98/week @ 2024-10-14 37/week @ 2024-10-21 68/week @ 2024-10-28 175/week @ 2024-11-04 92/week @ 2024-11-11 170/week @ 2024-11-18 86/week @ 2024-11-25 105/week @ 2024-12-02 459/week @ 2024-12-09 161/week @ 2024-12-16 78/week @ 2024-12-23

808 downloads per month
Used in 6 crates (3 directly)

MIT license

9KB
141 lines

utf7-imap

Test Status Crate API

A Rust library for encoding and decoding UTF-7 string as defined by the IMAP standard in RFC 3501 (#5.1.3).

Idea is based on Python mutf7 library.

Usage

Add this to your Cargo.toml:

[dependencies]
utf7-imap = "0.3.2"

Encode

Encode UTF-7 IMAP mailbox name

https://datatracker.ietf.org/doc/html/rfc3501#section-5.1.3

use utf7_imap::encode_utf7_imap;

let test_string = String::from("Отправленные");
assert_eq!(utf7_imap::encode_utf7_imap(test_string), "&BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1-");

Decode

Decode UTF-7 IMAP mailbox name https://datatracker.ietf.org/doc/html/rfc3501#section-5.1.3

use utf7_imap::decode_utf7_imap;
let test_string = String::from("&BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1-");
assert_eq!(decode_utf7_imap(test_string), "Отправленные");

License

utf7-imap is MIT licensed.

Dependencies

~6.5MB
~178K SLoC