6 Commits

Author SHA1 Message Date
4c74ebc1c7 Improve [Imap] [Client] Error Handling (#16)
- [+] feat(config.go): add error variables for client connection and body reading failures
- [+] refactor(export_messages.go, list_mailboxes.go, list_messages.go): replace error messages with new error variables

Reviewed-on: #16
Co-authored-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
Co-committed-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
2025-01-25 06:40:23 +00:00
e129c63b37 Improve [Client] [List Messages] Grab MessageConfig (#13)
- [+] feat(config.go): add additional fields to MessageConfig for enhanced message retrieval
- [+] feat(list_messages.go): refactor message processing to use extractDetails method for cleaner code

Reviewed-on: #13
Co-authored-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
Co-committed-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
2025-01-24 11:51:16 +00:00
3e1a7445f6 Improve [Client] [List Messages] Reduce Complexity (#7)
- [+] feat(list_messages.go): refactor ListMessages method to improve mailbox selection and message fetching
- [+] refactor(list_messages.go): extract address and body processing into separate methods for better readability

Reviewed-on: #7
Co-authored-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
Co-committed-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
2025-01-24 08:10:45 +00:00
ab122177c2 Improve [Client] Support Exporting Messages with various formats (#4)
- [+] feat(export): add message exporting functionality with JSON support
- [+] feat(readme): update documentation to include message export feature
- [+] refactor(.gitignore): change ignored files from emails.csv to test.csv and add test.json
- [+] refactor(client): update message handling to use map structure instead of MessageDetails struct

Reviewed-on: #4
Co-authored-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
Co-committed-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
2025-01-24 07:08:59 +00:00
9ce7f8dc5c Improve Performance [Client] [ListMessages] [Grab Body] Optimize Memory Usage (#3)
- [+] fix(list_messages.go): optimize buffer handling in ListMessages function by resetting buffer before putting it back in the pool

Reviewed-on: #3
Co-authored-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
Co-committed-by: H0llyW00dzZ <h0llyw00dzz@pm.me>
2025-01-24 05:18:55 +00:00
464fdc1bbd
First Commit
- [+] feat: add initial implementation of IMAP client package with support for single and multiple user management
- [+] chore: add .gitignore file to exclude binaries, IDE files, and environment configurations
- [+] docs: add README file with project description, features, installation, usage examples, and license information
- [+] docs: add BSD 3-Clause License file
- [+] feat(client): implement configuration and connection handling for IMAP clients
- [+] feat(client): implement message listing functionality for single and multiple users
- [+] feat(client): add support for secure TLS connections in IMAP client
- [+] feat(client): create helper functions for initializing single and multi-user IMAP clients
- [+] chore: initialize Go module and add dependencies for IMAP and byte buffer pooling
2025-01-24 11:26:48 +07:00