Commit e142700
committed
feat(core): built-in SMTP email transport for generic SMTP credentials
Adds an email:deliver provider that works with any standard SMTP server
(Brevo relay, Office365, Fastmail, Amazon SES, self-hosted Postfix) via
raw TCP — the one network primitive sandboxed plugins cannot use.
Configuration is env-only (EMAIL_SMTP_HOST/PORT/USER/PASS/FROM). Supports
STARTTLS (587) and implicit TLS (465); port 25 is refused because
Cloudflare blocks it. TLS is always required. Works on Cloudflare Workers
(cloudflare:sockets) and Node (node:net/node:tls).
Registered as a built-in plugin so it participates in exclusive hook
resolution like any other provider — explicitly selected plugin transports
still take precedence.
Closes #15411 parent e8b7ddc commit e142700
5 files changed
Lines changed: 840 additions & 0 deletions
File tree
- .changeset
- docs/src/content/docs/deployment
- packages/core
- src
- plugins
- tests/unit/plugins
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
274 | 274 | | |
275 | 275 | | |
276 | 276 | | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
277 | 315 | | |
278 | 316 | | |
279 | 317 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
172 | 172 | | |
173 | 173 | | |
174 | 174 | | |
| 175 | + | |
175 | 176 | | |
176 | 177 | | |
177 | 178 | | |
| |||
1298 | 1299 | | |
1299 | 1300 | | |
1300 | 1301 | | |
| 1302 | + | |
| 1303 | + | |
| 1304 | + | |
| 1305 | + | |
| 1306 | + | |
| 1307 | + | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
| 1315 | + | |
| 1316 | + | |
| 1317 | + | |
| 1318 | + | |
| 1319 | + | |
| 1320 | + | |
| 1321 | + | |
| 1322 | + | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
| 1328 | + | |
1301 | 1329 | | |
1302 | 1330 | | |
1303 | 1331 | | |
| |||
0 commit comments