Commit Graph
7 Commits
Author SHA1 Message Date
herel 487e7395b5 build(deps): Upgrade all dependencies and eliminate unsound chain
Bump clap to 4.6.6, imap to 3.0.0-alpha.15 and native-tls to 0.2.18.
The imap upgrade removes the unsound lexical-core 0.7.6 dependency
inherited via nom 5 (RUSTSEC-2023-0086), leaving cargo audit clean.
Drop the unused imap-proto dependency and migrate to the imap 3.x
ClientBuilder and AppendCmd APIs.
2026-08-28 15:05:21 +02:00
herel 113a72f1d6 refactor: replace rust-pop3-client with custom POP3 implementation
Replace third-party POP3 client with a custom implementation using
native-tls for direct TLS socket communication. This change ensures
email messages are retrieved as raw bytes without encoding conversions
that could corrupt email data.

Key improvements:
- Direct byte-level message retrieval preserves original email structure
- Proper handling of POP3 byte-stuffing (doubled leading dots)
- Eliminates dependency on rust-pop3-client which performed unwanted
  string conversions and line ending modifications
- Uses only native-tls for TLS connections (already a project dependency)
2025-12-12 10:37:49 +01:00
herel e0b0c5e964 fix: add X-WS-* header detection and attachment test
- Detect X-WS-* headers (e.g., X-WS-Attachment-UUID) as MIME headers
  to ensure attachment headers like Content-Type and Content-Disposition
  get normalized properly
- Add test case for attachment header normalization
- Bump version to 0.5.0

The normalization fixes malformed continuation lines in attachment
headers generated by Infomaniak webmail, where lines like
"name=file.pdf" are missing the required leading whitespace.
2025-12-10 15:22:55 +01:00
herel d1dd56341f chore: fix Dockerfile now that we have lib.rs 2025-12-04 12:15:42 +01:00
herel 610d10fd1e feat: normalize emails 2025-12-04 11:59:30 +01:00
herel 4482c4041e feat(docker): optimize build caching and fix binary path
- Copy Cargo files first to leverage Docker layer caching
- Build dependencies separately before copying source code
- Use cache mounts for cargo registry to speed up builds
- Fix binary path in final stage from cargo bin to target release
2025-11-21 07:33:42 +01:00
herel 4ee1ef0a81 initial import 2025-11-20 14:59:04 +01:00