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
ce30c070bd
refactor: switch to use SecureRandom for random strings
2024-03-04 17:33:25 +00:00
Adam Cooke
0163ac3d10
feat: new configuration system (and schema) ( #2819 )
2024-02-26 12:41:57 +00:00
Adam Cooke
ecd09a2445
chore: upgrade rails to 7.0 and other dependencies
2024-02-23 22:51:37 +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
05d2ec4d04
refactor: move Postal::BounceMessage to app/models/bounce_message
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
2023200d91
test: add tests for Server model
2024-02-23 22:51:34 +00:00
Adam Cooke
27b7ced3bc
chore: remove non-breaking spaces from comments
2024-02-23 22:51:34 +00:00
Adam Cooke
e0403ba641
refactor: refactor webhook deliveries
2024-02-23 22:51:33 +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
044058d0f1
feat: more consistent logging
2024-02-23 22:51:32 +00:00
Adam Cooke
6214892710
chore: annotate models
2024-02-13 11:46:35 +00:00
Adam Cooke
ec636661d5
style(rubocop): remaining offences
2024-02-12 09:55:20 +00:00
Adam Cooke
bab6346239
style(rubocop): Lint/DuplicateMethods
2024-02-12 09:55:18 +00:00
Adam Cooke
a1dc0f77ac
style(rubocop): Lint/DuplicateBranch
2024-02-12 09:55:18 +00:00
Adam Cooke
9ce28a427f
style(rubocop): Style/SelectByRegexp
2024-02-12 09:55:18 +00:00
Adam Cooke
4674e63b5f
style(rubocop): Lint/MissingSuper
2024-02-12 09:55:15 +00:00
Adam Cooke
9563f30c96
style(rubocop): Naming/MemoizedInstanceVariableName
2024-02-12 09:40:34 +00:00
Adam Cooke
6ad56ee9c9
style(rubocop): Lint/IneffectiveAccessModifier
2024-02-10 23:03:28 +00:00
Adam Cooke
c558f1c69c
style(rubocop): Style/NumericPredicate
2024-02-10 22:59:30 +00:00
Adam Cooke
bd85920565
style(rubocop): Style/WordArray
2024-02-10 22:39:43 +00:00
Adam Cooke
129dffab9e
style(rubocop): Style/MutableConstant
2024-02-10 17:34:29 +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
e142d0da5f
style(rubocop): Layout/LineLength
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
957b784658
chore: Upgrade to Ruby 3.2.1 & Rails 6.0
...
* chore: upgrade to rails 6.0
* chore: upgrade ruby to 3.2.1
* chore: upgrade bundler
* chore: upgrade execjs
* chore: upgrade to rails 6.1
* chore: switch to sentry-ruby from raven
* chore: add extra platforms to gemfile
2023-04-06 11:40:45 +01:00
Charlie Smurthwaite
c8d27b2963
Change retry and batching timing calculations ( #2371 )
...
This patch changes the requeue behaviour to requeue messages that are 30 seconds past their retry time.
Batching now includes messages that are any amount past their retry time.
This change avoids batching messages before theur graylisting time, but maintains efficient batching.
2023-03-22 14:02:28 +00:00
Charlie Smurthwaite
1e3622c49a
Consistently treat tinyint(1) fields in message database as booleans ( #2380 )
...
* Update mysql2 query call to cast booleans
* Treat messages:held field as boolean
* Treat messages:inspected field as boolean
* Treat messages:spam field as boolean
* Treat messages:threat field as boolean
* Treat messages:bounce field as boolean
* Treat messages:received_with_ssl field as boolean
* Treat deliveries:sent_with_ssl field as boolean
2023-03-22 13:49:48 +00:00
Charlie Smurthwaite
fd289c46fd
style(rubocop): fix all safe auto correctable offenses
2023-03-16 15:50:53 +00:00
Will Power
d0db1345a2
Message body parts should be a sub body ( #376 )
2023-03-13 13:27:39 +00:00
Adam Cooke
c60c69db18
feat: allow @ and % in webhook urls
2022-02-14 16:12:47 +00:00
Adam Cooke
724325a1b9
feat: support for configuring the default spam threshold values for new servers
2021-08-02 16:17:18 +00:00
Adam Cooke
232c323121
docs: use a smaller logo on the readme
2021-07-29 19:59:39 +00:00
Adam Cooke
17dd7cc757
refactor: remove the fast server
2021-07-29 11:20:47 +00:00
Adam Cooke
21a8d89045
feat: add priorities to IP address assignment
2021-07-28 14:18:40 +00:00
Adam Cooke
daf469ce7f
refactor: user management
2021-07-28 14:17:59 +00:00
Charlie Smurthwaite
8d44c90188
do not find the original message when returning batchable messages ( #1225 )
2020-09-30 15:34:38 +01:00
Charlie Smurthwaite
9a3d568b27
Add IP-based SMTP authentication ( #1149 )
2020-07-17 11:43:51 +01:00
Charlie Smurthwaite
bb27d8c8a1
Fix access to variable in check_dkim_record
2019-06-22 09:26:20 +01:00
Morne Lotze
7ca7b43fda
add semicolon to DKIM record data ( #825 )
...
* add semicolon to dkim record data
Addresses https://github.com/atech/postal/issues/812
As the semicolon at the end of a DKIM record is optional, some DNS software removes it.
The above change sanitizes the DKIM record before it gets checked
* fixed method typo
fixed a typo caused by my US spelling checker
* typo fix v2
a proper fix for the typo
2019-06-11 10:41:39 +01:00
Charlie Smurthwaite
1ef7dbd67e
complete upgrade of letsencrypt to ACME v2. resolves #674
2019-03-14 11:58:41 +00:00
Charlie Smurthwaite
cfc60d0e41
upgrade rails and supporting gems, refresh schema
2018-08-22 11:30:54 +01:00
Will Power
b3456036c0
missing equals sign in webhook url validation ( #483 )
2018-04-20 12:27:16 +01:00
Adam Cooke
ce68d9eacd
update Received headers to use UTC timestamps
2018-01-13 19:28:31 +00:00
anhofmann
98daf6d30c
Add possibility to use other ports than 80/443 in webhooks ( #234 )
...
* Added possibility to use other ports than 80/443
* simplify regex to allow colon anywhere
2017-08-21 22:23:31 +01:00
Will Power
457afb90c1
don't create empty parts in a multi part email ( #267 )
2017-07-25 15:47:18 +01:00