Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#22161 closed Cleanup/optimization (fixed)

Document that sending an email with no recipients fails silently

Reported by: ian@… Owned by: Orlando Romero
Component: Documentation Version: 1.6
Severity: Normal Keywords: afraid-to-commit
Cc: eromijn@… Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

If EmailMessage.recipients() is empty, EmailMessage.send() returns 0 instead of raising an exception, even if fail_silently is False.

Change History (12)

comment:2 by Claude Paroz, 10 years ago

Triage Stage: UnreviewedReady for checkin

comment:3 by Sasha Romijn, 10 years ago

Cc: eromijn@… added

But that's technically not an error condition. send() does exactly what you asked it to do: send a mail to all recipients you specified. Why should this throw an exception?

Also, people may have become dependent on the behaviour that send() can be called even though recipients is empty. Therefore, if we do change this, I think it warrants at least a mention in the release notes, as a backwards incompatible change, although it will probably not hit too many users. I checked briefly, but it seems the current behaviour is not explicitly documented.

comment:4 by Claude Paroz, 10 years ago

Needs documentation: set
Triage Stage: Ready for checkinAccepted

comment:5 by ian@…, 10 years ago

I'm happy to add some documentation for this, but I'm not sure where is appropriate.

comment:6 by Claude Paroz, 10 years ago

Erik has a point in his comment:3. We should first ponder arguments for or against raising an exception when sending email with no recipients.

comment:7 by Tim Graham, 10 years ago

Component: Core (Mail)Documentation
Has patch: unset
Needs documentation: unset
Summary: Sending an email with no recipients fails silentlyDocument that sending an email with no recipients fails silently
Type: BugCleanup/optimization

I think we should document the behavior. The EmailMessage class and receipients argument is documented in docs/topics/email.txt.

comment:8 by Daniele Procida, 10 years ago

Keywords: afraid-to-commit added

I've marked this ticket as especially suitable for people following the ​Don't be afraid to commit tutorial at the DjangoCon US 2014 sprints.

If you're tackling this ticket, please don't hesitate to ask me for guidance if you'd like any, either at the sprints themselves, or here or on the Django IRC channels, where I can be found as EvilDMP.

comment:9 by Orlando Romero, 10 years ago

Owner: changed from nobody to Orlando Romero
Status: newassigned

comment:10 by Tim Graham <timograham@…>, 10 years ago

Resolution: fixed
Status: assignedclosed

In 0f0a5c07f9f0f4d18d4c048ed6d9554965f79d5b:

Fixed #22161 -- Documented send() with no recipients won't raise an exception.

comment:11 by Tim Graham <timograham@…>, 10 years ago

In 414e3fc59dcb429d9d96a91348f7c0eb661d70fa:

[1.6.x] Fixed #22161 -- Documented send() with no recipients won't raise an exception.

Backport of 0f0a5c07f9 from master

comment:12 by Tim Graham <timograham@…>, 10 years ago

In af28f3c17515a1de9abb668942e896d777b67cba:

[1.7.x] Fixed #22161 -- Documented send() with no recipients won't raise an exception.

Backport of 0f0a5c07f9 from master

Note: See TracTickets for help on using tickets.
Back to Top