mail2couch/rust/Cargo.toml
Ole-Morten Duesund fbc8ebbbdf fix: resolve document ID conflicts with URL encoding
- Fixed document ID conflicts caused by unencoded slashes in mailbox names
- Added URL encoding for all document IDs used in CouchDB REST API calls
- Mailbox names with slashes (e.g., 'Work/Projects') now create proper document IDs
- Resolves issue where 'Work/Projects_1' was incorrectly stored as document 'Work' with attachment 'Projects_1'
- Added urlencoding dependency for proper URL-safe document ID handling

All messages now store successfully without conflicts across all mailboxes.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-03 14:05:03 +02:00

69 lines
No EOL
1.4 KiB
TOML

[package]
name = "mail2couch"
version = "0.1.0"
edition = "2021"
description = "A powerful email backup utility that synchronizes mail from IMAP accounts to CouchDB"
license = "MIT"
repository = "https://github.com/yourusername/mail2couch"
keywords = ["email", "backup", "imap", "couchdb", "sync"]
categories = ["email", "database"]
[dependencies]
# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Date/time handling
chrono = { version = "0.4", features = ["serde"] }
# HTTP client for CouchDB
reqwest = { version = "0.11", features = ["json"] }
# Async runtime
tokio = { version = "1.0", features = ["full"] }
# Error handling
thiserror = "1.0"
anyhow = "1.0"
# Configuration
config = "0.13"
# IMAP client for email retrieval (using async-std compatible version)
async-imap = "0.9"
async-std = { version = "1.12", features = ["attributes"] }
# TLS support for secure IMAP connections
async-native-tls = "0.5"
# Email parsing with MIME support
mail-parser = "0.6"
# Logging
log = "0.4"
env_logger = "0.10"
# CLI argument parsing
clap = { version = "4.0", features = ["derive"] }
# File system utilities
dirs = "5.0"
# Pattern matching for folder filters
glob = "0.3"
# URL encoding for document IDs
urlencoding = "2.1"
[dev-dependencies]
# Testing utilities
tokio-test = "0.4"
tempfile = "3.0"
[lib]
name = "mail2couch"
path = "src/lib.rs"
[[bin]]
name = "mail2couch"
path = "src/main.rs"