﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
37443	Add support for email delivery using Django's Tasks framework.	David Smith		"The PasswordResetView [https://docs.djangoproject.com/en/6.1/topics/auth/default/#django.contrib.auth.views.PasswordResetView docs] includes a warning that sending emails during a request can expose an email address enumeration timing attack. The recommendation is to send emails asynchronously with a link to [https://pypi.org/project/django-mailer/ django-mailer]. At the time of writing django-mailer last saw a release on PyPI in 2024 (~2.5 years ago). 

Given that Django now has an inbuilt [https://docs.djangoproject.com/en/6.1/topics/tasks/ tasks framework] I propose that we use this to provide built-in integration for sending emails in the background. 

Very broadly, Django would provide a way to opt-in to sending emails using django.tasks. It would be possible to create a task which sends an email using one of the configured [https://docs.djangoproject.com/en/dev/topics/email/#multiple-mailers mailers]. This would allow existing code which sends emails, including the password reset view, to use the tasks framework to send emails. Production setups with a django tasks backend with a worker process would then be able to send emails in the background. 

The django tasks framework would seem suited to this, with the first example in the docs being a task that sends an email. See [https://docs.djangoproject.com/en/6.1/topics/tasks/#defining-tasks docs]."	New feature	new	Core (Mail)	6.1	Normal				Accepted	0	0	0	0	0	0
