link2xt
e47740f45f
refactor: do not evaluate smtp_write! argument twice
2026-07-10 08:03:45 +00:00
dependabot[bot]
678bf2a684
chore(deps): Bump taiki-e/install-action from 2.82.2 to 2.82.5 ( #198 )
2026-07-04 15:04:58 +09:00
dependabot[bot]
9613b2f14f
chore(deps): Bump webpki-roots from 1.0.7 to 1.0.8 ( #196 )
2026-07-04 15:04:06 +09:00
dependabot[bot]
2bba729b6b
chore(deps): Bump memchr from 2.8.1 to 2.8.2 ( #195 )
2026-07-04 15:02:50 +09:00
dependabot[bot]
df6c9d777d
chore(deps): Bump log from 0.4.30 to 0.4.33 ( #194 )
2026-07-04 15:02:06 +09:00
dependabot[bot]
88e2124d59
chore(deps): Bump hyper from 1.9.0 to 1.10.1 ( #197 )
...
Bumps [hyper](https://github.com/hyperium/hyper ) from 1.9.0 to 1.10.1.
- [Release notes](https://github.com/hyperium/hyper/releases )
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/hyper/compare/v1.9.0...v1.10.1 )
---
updated-dependencies:
- dependency-name: hyper
dependency-version: 1.10.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-02 08:29:20 +02:00
Jagoda Estera Ślązak
5717940ac1
chore(release): prepare for 0.7.4 ( #193 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-07-01 15:15:41 +02:00
l
ed5dfbe0ff
test: place #[tokio::test] after rstest case macros ( #192 )
...
Otherwise only the first case is built.
2026-07-01 14:51:37 +02:00
dependabot[bot]
5cdae22d31
chore(deps): Bump dtolnay/rust-toolchain ( #188 )
...
Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain ) from 3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9 to fa04a1451ff1842e2626ccb99004d0195b455a88.
- [Release notes](https://github.com/dtolnay/rust-toolchain/releases )
- [Commits](https://github.com/dtolnay/rust-toolchain/compare/3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9...fa04a1451ff1842e2626ccb99004d0195b455a88 )
---
updated-dependencies:
- dependency-name: dtolnay/rust-toolchain
dependency-version: 67ef31d5b988238dd797d409d6f9574278e20537
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-01 13:48:43 +02:00
dependabot[bot]
d00d2b870b
chore(deps): Bump taiki-e/install-action from 2.81.10 to 2.82.2 ( #187 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.81.10 to 2.82.2.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/7a79fe8c3a13344501c80d99cae481c1c9085912...9e1e5806d4a4822de933115878265be9aaa786d9 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.82.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 19:01:23 +02:00
Jagoda Estera Ślązak
7f14693b31
feat(logs): Log incoming mailer-daemon message sources ( #191 )
...
Logs mailer-daemon messages separately from other unencrypted mails.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-30 19:00:13 +02:00
dependabot[bot]
0fce0a2191
chore(deps): Bump actions/checkout from 6.0.3 to 7.0.0 ( #186 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 6.0.3 to 7.0.0.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/df4cb1c069e1874edd31b4311f1884172cec0e10...9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 18:10:18 +02:00
Jagoda Estera Ślązak
4d7bcf51b7
chore: update filtermail.mtail ( #190 )
...
Logs for filtermail-transport changed in v0.7.2+.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-30 12:05:21 +02:00
Jagoda Estera Ślązak
222bf36712
chore(release): prepare for 0.7.3 ( #189 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-27 17:13:53 +02:00
Jagoda Estera Ślązak
d5ac67ecff
feat(transport): Worker eviction ( #185 )
...
Adds max worker capacity of 500 to the worker pool,
and an automatic shutdown of idle workers.
Messages that would cause the capacity to be exceeded,
are deferred.
Additionally, ensures that the same worker
is not spawned by two tasks at the same time.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-27 10:54:38 +02:00
Jagoda Estera Ślązak
ac9df36801
chore(release): prepare for 0.7.2 ( #184 )
2026-06-26 21:04:42 +09:00
Jagoda Ślązak
03ca4a010b
docs(readme): Update Transport mode doc
...
Add information about workers,
and synchronization of deliveries.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-26 11:38:25 +02:00
Jagoda Ślązak
db86cfc6ed
refactor: Implement Display for AddressDomain
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-26 11:11:30 +02:00
Jagoda Ślązak
c7452526fa
test: Test filtermail-transport
...
Adds filtermail-transport tests and
a test setup for recording SMTP transactions.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-26 11:11:20 +02:00
Jagoda Ślązak
7ea7904ea0
feat(transport): Destination worker pool
...
Implements a per-destination worker pool,
so that connections to the same destination
are not parallelized, but instead queued.
If a queue is full, new messages are immediately
deferred, before mail data is sent from postfix.
Closes : #141
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-26 11:07:34 +02:00
dependabot[bot]
7d0db2c46e
chore(deps): Bump taiki-e/install-action from 2.81.6 to 2.81.10 ( #183 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.81.6 to 2.81.10.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/59012be0884e296ca2da49b530610e72c49039ad...7a79fe8c3a13344501c80d99cae481c1c9085912 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.81.10
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 18:29:12 +02:00
dependabot[bot]
b36856a383
chore(deps): Bump taiki-e/install-action from 2.79.14 to 2.81.6 ( #182 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.79.14 to 2.81.6.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/873c7452cadb7c034694a1282227095d93fbdf92...59012be0884e296ca2da49b530610e72c49039ad )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.81.6
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-15 13:42:27 +02:00
dependabot[bot]
a66887b778
chore(deps): Bump actions/checkout from 6.0.2 to 6.0.3 ( #181 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 6.0.2 to 6.0.3.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-15 13:41:54 +02:00
Jagoda Estera Ślązak
488bbcb182
docs(readme): Disable colors in mermaid diagrams ( #180 )
...
Previously used colors caused
diagrams to be unreadable in
light mode.
Removing styling completely,
as this was redundant anyway.
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-10 22:31:53 +02:00
Jagoda Estera Ślązak
81aac3cb77
chore(release): prepare for 0.7.1 ( #179 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-09 13:45:03 +02:00
Jagoda Estera Ślązak
d3f5412420
feat: switch to aws-lc-rs cryptography provider ( #178 )
...
Switches crypto provider to keep
chatmail codebase consistent,
analogous to https://github.com/chatmail/core/pull/8313
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-06 15:28:53 +02:00
dependabot[bot]
73b684f90c
chore(deps): Bump log from 0.4.29 to 0.4.30 ( #173 )
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.29 to 0.4.30.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/compare/0.4.29...0.4.30 )
---
updated-dependencies:
- dependency-name: log
dependency-version: 0.4.30
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 10:20:04 +02:00
l
fb5a25939c
fix: ignore CNAME records when resolving TXT records ( #177 )
2026-06-06 16:55:18 +09:00
dependabot[bot]
939e5367c9
chore(deps): Bump taiki-e/install-action from 2.79.6 to 2.79.14
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.79.6 to 2.79.14.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/f48d2f8ba2b452934c948b7be1a768079c3632ff...873c7452cadb7c034694a1282227095d93fbdf92 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.79.14
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-05 22:51:57 +00:00
dependabot[bot]
b0214a71d7
chore(deps): Bump memchr from 2.8.0 to 2.8.1
...
Bumps [memchr](https://github.com/BurntSushi/memchr ) from 2.8.0 to 2.8.1.
- [Commits](https://github.com/BurntSushi/memchr/compare/2.8.0...2.8.1 )
---
updated-dependencies:
- dependency-name: memchr
dependency-version: 2.8.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-05 22:51:26 +00:00
dependabot[bot]
2538caa1b2
chore(deps): Bump lru from 0.17.0 to 0.18.0 ( #171 )
...
Bumps [lru](https://github.com/jeromefroe/lru-rs ) from 0.17.0 to 0.18.0.
- [Changelog](https://github.com/jeromefroe/lru-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/jeromefroe/lru-rs/compare/0.17.0...0.18.0 )
---
updated-dependencies:
- dependency-name: lru
dependency-version: 0.18.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-03 14:57:12 +02:00
dependabot[bot]
f82f34d054
chore(deps): Bump tokio from 1.52.1 to 1.52.3 ( #172 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.52.1 to 1.52.3.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.52.1...tokio-1.52.3 )
---
updated-dependencies:
- dependency-name: tokio
dependency-version: 1.52.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-03 14:56:45 +02:00
Andrey 0xdc09
8a60245183
fix(resolver): disable negative caching ( #170 )
2026-06-02 12:04:32 +02:00
j4n
6d6517f8f3
chore: add filtermail.mtail so filtermail failures can be monitored ( #169 )
...
Example Prometheus queries:
Outbound errors by reason:
sum by (reason) (rate(filtermail_transport_error_total[5m]))
filtermail-incoming drops by reason:
sum by (reason) (rate(filtermail_inbound_drop_total[5m]))
2026-06-01 21:51:34 +02:00
Jagoda Estera Ślązak
e9a63222e6
fix(smtp-server): Correct error when EOF while reading DATA ( #168 )
...
Log
`Unexpected EoF while receiving DATA!`
instead of
`Malformed DATA line without CRLF ending!`
Fixes : #165
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-06-01 16:27:30 +02:00
dependabot[bot]
893ceab107
chore(deps): Bump taiki-e/install-action from 2.75.28 to 2.79.6 ( #164 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.75.28 to 2.79.6.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/51cd0b8c0499559d9a4d75c0f5c67bec3a894ec8...f48d2f8ba2b452934c948b7be1a768079c3632ff )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.79.6
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-01 09:51:57 +02:00
l
a6361a2194
fix: switch ratelimiter to MonotonicClock ( #167 )
...
There is a known bug that `quanta` clock
used by default sometimes jumps back:
<https://github.com/metrics-rs/quanta/issues/111 >.
This results in `governor` rate limiter
incorrectly rejecting the messages
even when less than the configured burst size
has been sent.
Switched to standard monotonic clock
which does not have this problem.
I tested that this fixed the problem for me,
chatmail relay test `test_exceed_rate_limit`
stopped failing randomly.
Fixes <https://github.com/chatmail/filtermail/issues/166 >
2026-06-01 09:51:33 +02:00
Jagoda Estera Ślązak
febfb90510
chore(release): prepare for 0.7.0 ( #163 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-05-26 06:56:00 +02:00
Jagoda Estera Ślązak
c84a96ac78
docs(readme): Remove docs for options removed in 664ad57 ( #162 )
2026-05-26 02:25:51 +09:00
link2xt
847e19546b
fix: do not crash if accepting new connection fails
...
If we run out of file descriptors, we cannot do anything
to accept queued connections, so at least don't crash the process.
Fixes <https://github.com/chatmail/filtermail/issues/139 >.
2026-05-14 20:59:59 +00:00
holger krekel
664ad571b6
feat!: remove passthrough options that allowed unencrypted mail to pass
...
see https://github.com/chatmail/relay/pull/970/ for the related removal of chatmail.ini options
2026-05-14 20:59:13 +02:00
Jagoda Estera Ślązak
91d09ab370
chore(release): prepare for 0.6.6 ( #156 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-05-12 13:02:17 +02:00
holger krekel
e2be5dc92d
ci: run cmlxc tests in all classic/classic-ipv4/madmail combinations
2026-05-12 12:46:20 +02:00
Jagoda Estera Ślązak
d74e5b85b3
feat: Improved SMTP error responses ( #147 )
...
Fixes : #140
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-05-12 12:37:02 +02:00
Jagoda Estera Ślązak
b7a213ff1b
ci: Remove mac and windows from matrix tests ( #154 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-05-12 12:20:25 +02:00
holger krekel
3896044f36
fix: return HTTP 200 because madmail expects it, and make sure https is immediately retried when SMTP fails ( #153 )
2026-05-12 12:13:00 +02:00
Jagoda Estera Ślązak
e26cca0260
chore(release): prepare for 0.6.5 ( #152 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-05-12 09:52:13 +02:00
dependabot[bot]
272744115f
chore(deps): Bump taiki-e/install-action from 2.75.22 to 2.75.28 ( #148 )
...
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action ) from 2.75.22 to 2.75.28.
- [Release notes](https://github.com/taiki-e/install-action/releases )
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/install-action/compare/cf525cb33f51aca27cd6fa02034117ab963ff9f1...51cd0b8c0499559d9a4d75c0f5c67bec3a894ec8 )
---
updated-dependencies:
- dependency-name: taiki-e/install-action
dependency-version: 2.75.28
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 07:01:30 +02:00
l
a65e7a1490
fix: Validate mail data ( #150 )
...
Do not allow bare CR and LF etc.
2026-05-12 07:00:21 +02:00
holger krekel
36921dd29f
fix: advertise 8BITMIME to prevent conversion after DKIM signing ( #149 )
...
for bounces postfix sets Content-Transfer-Encoding: 8bit
which causes a quoted-printable conversion when filtermail SMTP does not offer 8BITMIME,
which in turn breaks DKIM verification.
2026-05-12 06:56:11 +02:00