IMAP adapter for the shared cross-protocol client. ! ! Thin glue over [`ImapClient`], which already wraps io_imap's ! high-level session (`select`, `fetch`, `store`, `copy`, `move`, ! `append`, `list`, `status`). Each method takes and returns the ! CLI's shared [`crate::email`]
// Source: https://github.com/pimalaya/himalaya | License: Apache-2.0 | Copyright 2022-2026 soywod <pimalaya.org@posteo.net>
// Provided via justclaw.it.com; keep this notice with the code.
//! # IMAP backend
//!
//! The IMAP adapter of the shared cross-protocol client, glue over the
//! io-imap session [`ImapClient`] already wraps.
//!
//! Each method takes and returns the CLI's own [`crate::email`] types, so
//! the work here is converting between those and io-imap's wire types.
use io_imap::client::ImapClient as _;
use std::{
collections::{BTreeMap, BTreeSet},
num::NonZeroU32,
str::from_utf8,
};
use anyhow::{Result, anyhow, bail};
use chrono::{DateTime, FixedOffset};
use io_imap::{
rfc3501::{
append::ImapMessageAppendOptions,
copy::{ImapCopyUid, ImapMes
... (truncated -- full source via MCP)
See the full source, get the GitHub permalink, and search for more like it.
Get a free API key