From da0e7889a34db2567ee90998c5e7f6203d44e27c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20DOUIN?= Date: Fri, 25 Feb 2022 23:59:05 +0100 Subject: [PATCH] implement notmuch del_msg --- src/backends/notmuch/notmuch_backend.rs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/backends/notmuch/notmuch_backend.rs b/src/backends/notmuch/notmuch_backend.rs index 74c10c11..dc8306a7 100644 --- a/src/backends/notmuch/notmuch_backend.rs +++ b/src/backends/notmuch/notmuch_backend.rs @@ -141,8 +141,17 @@ impl<'a> Backend<'a> for NotmuchBackend<'a> { unimplemented!(); } - fn del_msg(&mut self, _mbox: &str, _id: &str) -> Result<()> { - unimplemented!(); + fn del_msg(&mut self, _mbox: &str, id: &str) -> Result<()> { + let msg_filepath = self + .db + .find_message(id) + .context(format!("cannot find notmuch message {:?}", id))? + .ok_or_else(|| anyhow!("cannot find notmuch message {:?}", id))? + .filename() + .to_owned(); + self.db + .remove_message(msg_filepath) + .context(format!("cannot delete notmuch message {:?}", id)) } fn add_flags(&mut self, _mbox: &str, _id: &str, _flags_str: &str) -> Result<()> {