expunge mbox after move and delete cmds (#83)

This commit is contained in:
Clément DOUIN 2021-04-09 14:40:52 +02:00
parent e260823581
commit 557c5b79bc
No known key found for this signature in database
GPG key ID: 69C9B9CFFDEE2DEF
3 changed files with 15 additions and 0 deletions

View file

@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
### Fixed
- Expunge mbox after `move` and `delete` cmd [#83]
## [0.2.4] - 2021-04-09 ## [0.2.4] - 2021-04-09
### Added ### Added
@ -144,3 +148,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#74]: https://github.com/soywod/himalaya/issues/74 [#74]: https://github.com/soywod/himalaya/issues/74
[#75]: https://github.com/soywod/himalaya/issues/75 [#75]: https://github.com/soywod/himalaya/issues/75
[#79]: https://github.com/soywod/himalaya/issues/79 [#79]: https://github.com/soywod/himalaya/issues/79
[#83]: https://github.com/soywod/himalaya/issues/83

View file

@ -220,4 +220,12 @@ impl<'ic> ImapConnector<'ic> {
Ok(()) Ok(())
} }
pub fn expunge(&mut self, mbox: &str) -> Result<()> {
self.sess
.expunge()
.chain_err(|| format!("Could not expunge `{}`", mbox))?;
Ok(())
}
} }

View file

@ -514,6 +514,7 @@ pub fn msg_matches(matches: &ArgMatches) -> Result<()> {
&uid, &target &uid, &target
); );
imap_conn.expunge(mbox)?;
imap_conn.logout(); imap_conn.logout();
return Ok(()); return Ok(());
} }
@ -528,6 +529,7 @@ pub fn msg_matches(matches: &ArgMatches) -> Result<()> {
imap_conn.add_flags(mbox, uid, "\\Seen \\Deleted")?; imap_conn.add_flags(mbox, uid, "\\Seen \\Deleted")?;
info!("Message {} successfully deleted", &uid); info!("Message {} successfully deleted", &uid);
imap_conn.expunge(mbox)?;
imap_conn.logout(); imap_conn.logout();
return Ok(()); return Ok(());
} }