mirror of
https://github.com/terhechte/postsack
synced 2024-11-10 07:10:38 +00:00
.vscode | ||
src | ||
tests/resources | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
Postsack
Provides a high level visual overview of swaths of email
Performance
It currently parses 632383 emails in ~160 seconds, so roughly 4.000
emails per second. This excludes (for now) attachments.
Update: It currently parses 632115 emails in ~56 seconds, so roughly 11.000
emails per second. This excludes (for now) attachments.
Open Issues
- rename repository to postsack
- add support for message filters (read etc), the UI is already there, the filters are not applied yet
- add a limited amount of tests..
- generate deletion rules based on stack?
- mbox is multiple files, e.g. inbox.mbox, sent.mbox. support this
- support mbox
- support apple mail
- try
iced
ordruid
as well - try re-opening a database...
- save config into sqlite
- store last opened sqlite file
- check if we get any values for the to_sender to_domain fields etc
Linux Issues
- broken background color
- can't switch import format
- mbox support for selecting a folder of mbox files (inbox etc)
Future Options
- Add additional UI based on Druid, Iced or Native Cocoa
- maybe add blocking versions of the calls, too (in model)
- abstract over
Fields
and backend to have a generic way to display groupable information - apply the window changes (no status etc) on startup, not just when loading main
- split up into multiple crates
- action when clicking an email?
- allow diving into splits/segments until there're no gropu bys anymore, but the last split can be opened full (to see the mails)
- remove unneeded dependencies and features
Development
Generate a macOS bundle via Cargo Bundle:
cargo bundle --bin gui
Linux Dependencies
In order to build (and or run) on Linux, the following dependencies are needed:
Fedora
# Development
sudo dnf install @development-tools glib cairo-devel pango-devel gdk-pixbux2-devel atk-devel gtk3 gtk3-devel libsqlite3x-devel
Ubuntu (currently untested)
# Development
sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libsqlite3-dev