Commit Graph
63 Commits
Author SHA1 Message Date
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
Adam Cooke fda0cfafc6 rename admin to advanced settings & add help text
closes #163
2017-06-02 12:11:19 +01:00
Adam Cooke 4e7cec443c ensure IP addresses are unique
fixes #165
2017-06-01 14:41:38 +01:00
Adam Cooke cb0e3a4f4e support for a null send limit for unlimited
part of #144
2017-05-16 15:52:43 +01:00
Adam Cooke 9a76538f11 remove IP pool rules when deleting an IP pool 2017-05-15 10:43:44 +01:00
Adam Cooke e9b03987fe only allow users with an invite to create accounts 2017-05-12 14:45:42 +01:00
Adam Cooke 5cd0e4dc04 add option to not provision databases for servers 2017-05-08 16:41:37 +01:00
Adam Cooke f023ff0bc1 don't check the dns on create if there already is a status 2017-05-08 16:38:29 +01:00
Adam Cooke 3e281b576e global domains aren't supported any longer 2017-05-04 13:04:48 +01:00
Adam Cooke 3ba0a72779 log errors from cert verification 2017-05-04 12:37:16 +01:00