feat: SMTP test sends a real email, Office 365 LOGIN auth, and multiple recipients#121
Open
jackyhowh wants to merge 5 commits into
Open
feat: SMTP test sends a real email, Office 365 LOGIN auth, and multiple recipients#121jackyhowh wants to merge 5 commits into
jackyhowh wants to merge 5 commits into
Conversation
…support - Test Connection now sends an actual test email and confirms delivery, not just authentication - Return HTTP 200 for test results so HTMX renders the success/error message instead of silently dropping non-2xx responses - Add a 15s connection timeout so a wrong host/port or firewall drop fails fast instead of hanging the request - Negotiate the SMTP AUTH mechanism (PLAIN or LOGIN) from the server's advertised list; fixes Office 365 "504 5.7.4 Unrecognized authentication type" - Accept multiple recipients in the To field, separated by "," or ";", for both the test email and renewal/cancellation/high-cost emails - Update To-field help text across locales; add ParseEmailRecipients tests
feat: SMTP test sends a real email, Office 365 LOGIN auth, and multiple recipients
feat(auth): add logout button to multiple templates based on AuthEnab…
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
instead of only checking authentication. Failures are now visible: the handler
previously returned HTTP 400, which HTMX 1.x silently drops, so errors showed
nothing in the UI — results now return 200 and render.
server advertises (PLAIN or LOGIN). Fixes
504 5.7.4 Unrecognized authentication type, since Office 365 only offers AUTH LOGIN, not PLAIN.,or;, for the test email and all renewal/cancellation/high-cost emails.Changes
internal/service/smtp_auth.go(new):ParseEmailRecipients, plusSMTPAuthwith PLAIN/LOGIN auto-negotiation and a
loginAuthimplementation.internal/service/email.go: multi-recipient send + negotiated auth.internal/handlers/settings.go: test handler sends a real email, returns 200so HTMX renders results, and adds a dial timeout.
web/locales/*.json: updated help text.internal/service/smtp_auth_test.go: unit tests.Test plan
go test ./...passes