Commit Graph
50 Commits
Author SHA1 Message Date
Adam Cooke 4fcb9e9a2e fix(message-dequeuer): ability to disable batching 2024-03-16 15:31:46 +00:00
Adam Cooke 92406129cf fix(smtp-server): fixes proxy protocol 2024-03-13 18:16:08 +00:00
Adam Cooke 58dddebeb8 fix: fixes postal default-dkim-record 2024-03-13 16:54:53 +00:00
Adam Cooke 96d73653d7 feat: add sha256 signatures to outgoing http requests (#2874) 2024-03-13 08:52:29 +00:00
Adam Cooke 4e13577891 style(rubocop): Style/TrailingCommaInArrayLiteral 2024-03-12 11:45:44 +00:00
Adam Cooke 9399e32234 fix: don't override paths in dockerfile
This allows for these paths to continue to be set in the config file or environment variable while still maintaining the default of having the default paths in the same directory as the postal config file.
2024-03-08 16:40:58 +00:00
Adam Cooke 22dcd4901f test(smtp-sender): add more tests for AUTH LOGIN
This adds tests for AUTH LOGIN when the username is not provided on the initial line
2024-03-08 14:08:53 +00:00
Adam Cooke e2d642c0cb fix(message-dequeuer): ensure SMTP endpoints are sent to SMTP sender appropriately
closes #2853
2024-03-06 14:09:29 +00:00
Adam Cooke a4d039c44d fix: use local resolver for DNS tests (github actions blocks DNS seemingly) 2024-03-04 13:15:40 +00:00
Adam Cooke 87d35d7c41 refactor: change domain used for dns resolver testing 2024-03-04 12:48:05 +00:00
Adam Cooke fadca88f45 fix: raise an error if MX lookup times out during sending
This avoids potentially sending mail to the A record when an MX query times out.

closes #2833
2024-03-01 21:36:07 +00:00
Adam Cooke 77e818a472 test: add test for multiline headers 2024-03-01 18:28:25 +00:00
Adam Cooke 2621a190b1 fix: fixes issue with SMTP sender with address endpoints 2024-03-01 18:27:53 +00:00
Adam Cooke 0140dc4483 feat: only accept RFC-compliant End-of-DATA sequence
Previously Postal was fairly forgiving about line endings. This requires that the end of data sequence is `<CR><LF>.<CR><LF>`.
2024-03-01 17:12:10 +00:00
Adam Cooke 633c509a45 refactor: refactor the SMTP sender 2024-03-01 09:54:22 +00:00
Charlie Smurthwaite be0df7b463 fix: translate unicode domain names to Punycode for compatibility with DNS (#2823) 2024-02-29 15:02:30 +00:00
Adam Cooke 0163ac3d10 feat: new configuration system (and schema) (#2819) 2024-02-26 12:41:57 +00:00
Adam Cooke e3bc9da253 refactor: move lib/postal/received_header to app/lib/received_header 2024-02-23 22:51:36 +00:00
Adam Cooke 321ab95936 refactor: move lib/postal/smtp_server to app/lib/smtp_server 2024-02-23 22:51:36 +00:00
Adam Cooke 73a55a5053 refactor: move senders in to app/senders/ 2024-02-23 22:51:36 +00:00
Adam Cooke eb246bb4e7 refactor: move app/util/* to app/lib/ 2024-02-23 22:51:36 +00:00
Adam Cooke a44e1f9081 refactor: refactors message dequeueing (#2810) 2024-02-23 22:51:36 +00:00
Adam Cooke 870b26c2f2 refactor: move Postal::QueryString to app/util/query_string 2024-02-23 22:51:35 +00:00
Adam Cooke 77faf886b3 refactor: move Postal::DKIMHeader to app/util/dkim_header 2024-02-23 22:51:35 +00:00
Adam Cooke 1a4158699c refactor: refactor DNS resolution
This commit also adds some of tests for the Domain model. It was during the writing of these tests that the DNS resolution refactoring requirement became apparent.
2024-02-23 22:51:34 +00:00
Adam Cooke b4016f6b49 test: add tests for message unqueueing
This adds a comprehensive set of tests for the message unqueueing service.

Additionally, it improves how message databases are used for testing environments.
2024-02-23 22:51:34 +00:00
Adam Cooke 465f4d8247 test: fix test that was failing due to time differences 2024-02-23 22:51:34 +00:00
Adam Cooke dc8e895bfe feat: new background work process
This removes all previous dependencies on RabbitMQ and the need to run separate cron and requeueing processes.
2024-02-23 22:51:33 +00:00
Adam Cooke f9f7fb30fe fix: retry mysql connections on message DB pool 2024-02-13 15:56:40 +00:00
Adam Cooke dece1d487a test: add initial tests for Postal::SMTPServer::Client 2024-02-12 18:07:44 +00:00
Adam Cooke 9563f30c96 style(rubocop): Naming/MemoizedInstanceVariableName 2024-02-12 09:40:34 +00:00
Adam Cooke 389ea77050 style(rubocop): Security/YAMLLoad 2024-02-10 17:21:08 +00:00
Adam Cooke ee94e4e1a0 style(rubocop): Lint/UnusedBlockArgument 2024-02-10 17:20:13 +00:00
Adam Cooke 7590a46234 style(rubocop): Lint/UselessAssignment 2024-02-10 17:18:24 +00:00
Adam Cooke cfd8d63321 style(rubocop): Layout/EmptyLinesAroundBlockBody 2024-02-10 17:18:24 +00:00
Adam Cooke b4cc81264c style(rubocop): Style/StringLiterals 2024-02-10 17:18:23 +00:00
Adam Cooke 0e4ed5ca03 style(rubocop): Layout/EmptyLineAfterMagicComment 2024-02-10 17:18:23 +00:00
Adam Cooke 6ab36c09c9 style(rubocop): Style/FrozenStringLiteralComment 2024-02-10 17:18:22 +00:00
Adam Cooke 15f9671b66 feat: privacy mode
Adds support for hiding IP addresses & hostnames associated with clients sending
authenticated mail in to Postal over SMTP and HTTP
2024-02-07 09:45:09 +00:00
Adam Cooke b9edcf5b7d test: rename database spec file 2024-02-06 12:43:28 +00:00
Adam Cooke 54306a9748 fix: adds new connection pool which will discard failed clients
closes #2780
2024-02-06 12:43:28 +00:00
Charlie Smurthwaite fd289c46fd style(rubocop): fix all safe auto correctable offenses 2023-03-16 15:50:53 +00:00
Charlie Smurthwaite 7ea00dfa3b Correctly match link in multipart/alternative messages 2023-03-13 15:23:20 +00:00
Adam Cooke 476129cc1b fix(dkim): ensure DKIM-Signature headers are appropriately wrapped
closes #339
2021-08-01 21:00:37 +00:00
Adam Cooke 17dd7cc757 refactor: remove the fast server 2021-07-29 11:20:47 +00:00
Adam Cooke 189dfa509b fix(dkim): fixes bug with signing dkim bodies 2021-07-28 17:01:42 +00:00
Adam Cooke e2409a663c test: add test for dkim header generation 2021-07-22 19:17:13 +01:00
Adam Cooke 36db40cfe7 fixes issue with query string parsing when a z exists
closes #127
2017-05-16 15:25:35 +01:00
Adam Cooke eee01c9e15 a little more testing 2017-05-08 16:39:32 +01:00
Adam Cooke 2bde75720c initial test suite 2017-05-08 14:48:15 +01:00