fix(compose): SMTP_TLS template value "implicit" -> "tls" (LC-211) #252

Merged
nrupard merged 1 commit from fix/lc-211-smtp-tls-template-value into main 2026-05-28 21:10:06 +02:00
Owner

Summary

compose.dev.yml.1:30 had LETS_CHAT_SMTP_TLS: "implicit". parse_tls_mode (server/src/mail.rs:240) only accepts tls / starttls / none (plus boolean aliases). The template-as-shipped triggered the LETS_CHAT_SMTP_TLS must be tls/starttls/none; mail disabled warn branch at mail.rs:43 and disabled outbound mail.

Changed to "tls", matching the port-465 implicit-TLS / SMTPS convention used elsewhere in the file and in LC-200's mail.a8n.run:465 precedent.

Pre-existing bug: value was already "implicit" before LC-201; that rename preserved it verbatim. Caught during LC-201 code review.

Test plan

  • grep --recursive --line-number --extended-regexp 'LETS_CHAT_SMTP_TLS.*"(implicit|ssl|smtps)"' --exclude-dir=.git --exclude-dir=target . returns nothing.
  • Operator copies compose.dev.yml.1 -> compose.dev.yml, redeploys, and the container log reads SMTP mailer configured instead of the warn branch.
## Summary `compose.dev.yml.1:30` had `LETS_CHAT_SMTP_TLS: "implicit"`. `parse_tls_mode` (`server/src/mail.rs:240`) only accepts `tls` / `starttls` / `none` (plus boolean aliases). The template-as-shipped triggered the `LETS_CHAT_SMTP_TLS must be tls/starttls/none; mail disabled` warn branch at `mail.rs:43` and disabled outbound mail. Changed to `"tls"`, matching the port-465 implicit-TLS / SMTPS convention used elsewhere in the file and in LC-200's `mail.a8n.run:465` precedent. Pre-existing bug: value was already `"implicit"` before LC-201; that rename preserved it verbatim. Caught during LC-201 code review. ## Test plan - [x] `grep --recursive --line-number --extended-regexp 'LETS_CHAT_SMTP_TLS.*"(implicit|ssl|smtps)"' --exclude-dir=.git --exclude-dir=target .` returns nothing. - [ ] Operator copies `compose.dev.yml.1` -> `compose.dev.yml`, redeploys, and the container log reads `SMTP mailer configured` instead of the warn branch.
fix(compose): SMTP_TLS template value "implicit" -> "tls" (LC-211)
Some checks failed
check-secrets / Nosey parker (push) Successful in 3s
check-secrets / TruffleHog (push) Successful in 4s
check-secrets / Kingfisher (push) Successful in 5s
check-secrets / TruffleHog (pull_request) Successful in 5s
check-secrets / Nosey parker (pull_request) Successful in 5s
check-secrets / Kingfisher (pull_request) Successful in 8s
Check / clippy + fmt + tests (pull_request) Failing after 37s
Create release / Create release from merged PR (pull_request) Has been skipped
877cd3aad4
`compose.dev.yml.1:30` set `LETS_CHAT_SMTP_TLS: "implicit"`, which `parse_tls_mode` (`server/src/mail.rs:240`) does not accept. Valid values are `tls` / `starttls` / `none` (plus boolean aliases). A real run with the template-as-shipped triggered the `LETS_CHAT_SMTP_TLS must be tls/starttls/none; mail disabled` warn branch at `mail.rs:43` and silently disabled outbound mail.

`tls` is the correct mode for port 465 (implicit TLS / SMTPS), matching the `mail.a8n.run:465` precedent in the same file and in LC-200.

Pre-existing bug: the value was already `"implicit"` before the LC-201 rename; that PR preserved it verbatim. Surfaced during LC-201 code review.

#LC-211
nrupard deleted branch fix/lc-211-smtp-tls-template-value 2026-05-28 21:10:06 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/lets-chat!252
No description provided.