Files
craft-libs/crates/mime/Cargo.toml
Dylan M. Taylor c516452b47 craft-codepage: one table per legacy code page, for craft-rtf, craft-dxf and craft-mime (#991)
craft-rtf and craft-dxf each carried tables for DOS 437, 737, 850, 852 and
857 (and craft-rtf one for 866). They are now one set in craft-codepage,
which takes craft-rtf's codepage module (Windows and Mac tables, OEM glyphs,
font charsets) and craft-dxf's DOS tables. craft_rtf::codepage re-exports it
unchanged; craft-dxf keeps its $DWGCODEPAGE names and Decoder and looks the
DOS tables up there.

Every byte of every code page either crate decodes is unchanged: the
public decoders of both crates were dumped over all 256 bytes of each page
(and the East Asian pairs) before and after, and the dumps are identical.

craft-mime now reads the DOS pages by their IANA names (IBM437, cp850,
ibm-852, 857...), which it read as UTF-8 before.
2026-11-11 20:17:35 -05:00

28 lines
983 B
TOML

[package]
name = "craft-mime"
description = "Internet messages and MIME: RFC 5322 headers, RFC 2045-2049 parts, encoded words, RFC 2231 parameters, transfer encodings, mbox and multipart/related lookups, read and written."
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
repository.workspace = true
[lints]
workspace = true
[dependencies]
# The DOS code pages (IBM437, IBM850…), which the WHATWG standard leaves out.
craft-codepage = { workspace = true }
encoding_rs = { workspace = true }
# Private: the weekday of a written date and whether a read date exists. Not in the public API.
chrono = { workspace = true }
# `detect`: the encoding unlabelled bytes look like (Firefox's detector). Apache-2.0 OR MIT.
chardetng = { version = "1", optional = true }
[features]
# `detect`: is this text, and in which encoding, for bytes that name none.
detect = ["dep:chardetng"]
[dev-dependencies]
proptest = { workspace = true }