Jakob Wennberg
523fba0419
feat(email): SMTP mailer behind the EmailService seam (EMAIL_PROVIDER=smtp); Resend stays the hosted default ( #1746 )
...
SmtpEmailService (nodemailer 9.0.5, exact-pinned) behind the existing EmailService seam. Provider resolution: EMAIL_PROVIDER wins, else RESEND_API_KEY selects Resend (hosted byte-identical), else SMTP_HOST selects SMTP. From header is built exactly like the Resend service after #1956 (no 'via <app>', fromAddress honored, platform-sender retry). STARTTLS is required by default (requireTLS) with SMTP_REQUIRE_TLS=false as an explicit opt-out for a plaintext LAN relay. Docs, env examples and the generated extension registry updated.
2026-08-30 11:54:47 +02:00
..
2026-08-26 13:55:42 +02:00
2026-08-26 13:35:54 +02:00
2026-08-30 11:54:47 +02:00
2026-07-04 15:58:06 +02:00
2026-08-21 17:27:45 +02:00
2026-08-26 15:07:49 +02:00
2026-07-27 17:00:15 +02:00
2026-08-29 00:29:11 +02:00
2026-08-26 09:50:25 +02:00
2026-08-03 18:45:38 +02:00
2026-08-13 18:58:09 +02:00
2026-08-13 18:58:09 +02:00
2026-07-27 03:34:56 +02:00
2026-07-07 01:14:59 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-08-28 17:45:10 +02:00
2026-07-04 15:58:06 +02:00
2026-07-17 00:52:57 +02:00
2026-08-28 17:38:36 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-08-10 09:13:05 +02:00
2026-07-01 18:13:00 +02:00
2026-07-04 15:58:06 +02:00
2026-08-12 14:36:08 +02:00
2026-07-04 15:58:06 +02:00
2026-03-20 09:31:29 +01:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-06-14 23:40:26 +02:00
2026-07-04 15:58:06 +02:00
2026-07-27 19:57:07 +02:00
2026-08-28 17:38:36 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-08-26 15:07:49 +02:00
2026-07-27 03:34:56 +02:00
2026-07-04 15:58:06 +02:00
2026-08-10 14:04:08 +02:00
2026-07-04 15:58:06 +02:00
2026-08-13 16:39:00 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-08-10 12:23:42 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-08-21 18:32:17 +02:00
2026-07-04 15:58:06 +02:00
2026-07-10 14:07:43 +02:00
2026-08-03 18:41:54 +02:00
2026-07-04 15:58:06 +02:00
2026-08-13 23:57:53 +02:00
2026-08-06 23:00:05 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-07-04 15:58:06 +02:00
2026-05-28 11:27:01 +02:00
2026-08-20 19:48:21 +02:00
2026-08-13 15:45:24 +02:00
2026-07-27 12:01:03 +02:00
2026-07-04 15:58:06 +02:00
2026-07-20 16:17:43 +02:00
2026-07-04 15:58:06 +02:00
2026-08-03 18:46:55 +02:00
2026-08-08 10:54:09 +02:00