pub struct Profile {Show 34 fields
pub user: Option<String>,
pub password: Option<String>,
pub oauth_token: Option<String>,
pub smtp_enabled: bool,
pub smtp_host: String,
pub smtp_port: u16,
pub smtp_security: Security,
pub auth_mech: AuthMech,
pub imap_enabled: bool,
pub imap_host: String,
pub imap_port: u16,
pub imap_security: Security,
pub imap_folder: String,
pub pop_enabled: bool,
pub pop_host: String,
pub pop_port: u16,
pub pop_security: Security,
pub send_test: bool,
pub mail_from: Option<String>,
pub from_addr: Option<String>,
pub to: Vec<String>,
pub cc: Vec<String>,
pub bcc: Vec<String>,
pub reply_to: Option<String>,
pub subject: String,
pub body: String,
pub ehlo_name: Option<String>,
pub timeout_secs: u64,
pub insecure_tls: bool,
pub ca_file: Option<PathBuf>,
pub log_level: String,
pub wire_trace: bool,
pub theme: String,
pub locale: Option<String>,
}Expand description
All testable settings. This is what gets serialised to TOML and what the GUI/CLI render and edit.
Fields§
§user: Option<String>§password: Option<String>Held in memory for the current session only. NEVER persisted
to disk - the #[serde(skip)] attribute makes this structurally
impossible. Passwords belong in the user’s keyboard or an OS
keychain (planned), not in a config file. This rule is documented
in AGENTS.md and enforced by tests/config_roundtrip.rs.
oauth_token: Option<String>Same rule as password: an OAuth bearer token grants full
mailbox access until it expires and is therefore a credential.
Session-only, never written.
smtp_enabled: bool§smtp_host: String§smtp_port: u16§smtp_security: Security§auth_mech: AuthMech§imap_enabled: bool§imap_host: String§imap_port: u16§imap_security: Security§imap_folder: String§pop_enabled: bool§pop_host: String§pop_port: u16§pop_security: Security§send_test: bool§mail_from: Option<String>§from_addr: Option<String>§to: Vec<String>§cc: Vec<String>§bcc: Vec<String>§reply_to: Option<String>§subject: String§body: String§ehlo_name: Option<String>§timeout_secs: u64§insecure_tls: bool§ca_file: Option<PathBuf>§log_level: String§wire_trace: bool§theme: String§locale: Option<String>User-selected interface language as a BCP-47 short code
("en", "nl", …). None means “follow the OS appearance
each launch”. An explicit value survives upgrades that broaden
or narrow the shipped-translation set; an unsupported code
silently falls back to the base locale via i18n::set_locale.