| Age | Commit message (Collapse) | Author |
|
Regression in aba0e541caaa086f183197eaaca0ac20a730bbe4 and in
d5bebc1c26d4c0ec9eaa057aefc5b38649c0ba3b.
Thanks Florent Messa for the report, and Jake Howard and Claude
Paroz for the review.
Backport of 0596263c3136bc26cffa670e5322bd0aa56c4d34 from main.
|
|
8bit Content-Transfer-Encoding.
Backport of 89e28e13ecbf9fbcf235e16d453c08bbf2271244 from main.
|
|
structure, bcc header, encoding and sending.
|
|
- Used modern email API (policy.default) for tests that reparse
generated messages, and switched to modern accessors where helpful.
- Split get_raw_attachments() helper out of get_decoded_attachments(),
and used modern iter_attachments() to avoid finding nested attachments
in attached message/* emails.
- Stopped using legacy parseaddr.
|
|
- Converted HeadersCheckMixin to MailTestsMixin for all shared helpers:
- Hoisted assertStartsWith() from BaseEmailBackendTests.
- Added matching assertEndsWith().
- Hoisted get_decoded_attachments() from MailTests.
- Improved failure reporting in assertMessageHasHeaders().
- Used unittest subTest() to improve handling of compound test cases.
- Replaced `assertTrue(test on string)` with custom assertions,
so that failure reporting is more informative than `True != False`.
|
|
|
|
This also removed a duplicate CTE case (that used to be distinct in Python 2).
|
|
This also removed send() calls, as this doesn't check the serialized content, and
the backend tests cover sending.
|
|
|
|
attachments and alternatives.
|
|
Fixed a regression which would cause multiple To, Cc, and
Reply-To headers in the result of EmailMessage.message() if
values were supplied for both to/cc/reply_to and the
corresponding extra_headers fields.
Updated related tests to check the generated message() has
exactly one of each expected header using get_all().
Regression in b03d5002955256c4b3ed7cfae5150eb79c0eb97e.
|
|
|
|
EmailMultiAlternatives.alternatives to use namedtuples.
This makes it more descriptive to pull out the named fields.
|
|
There is no point in asserting Python error messages.
|
|
surrogate pairs.
Refs #33173, #34118 and #34900.
|
|
https://github.com/psf/black/releases/tag/24.1.0
|
|
|
|
|
|
backend.
|
|
empty strings.
|
|
- Updated references to RFC 1123 to RFC 5322
- Only partial as RFC 5322 sort of sub-references RFC 1123.
- Updated references to RFC 2388 to RFC 7578
- Except RFC 2388 Section 5.3 which has no equivalent.
- Updated references to RFC 2396 to RFC 3986
- Updated references to RFC 2616 to RFC 9110
- Updated references to RFC 3066 to RFC 5646
- Updated references to RFC 7230 to RFC 9112
- Updated references to RFC 7231 to RFC 9110
- Updated references to RFC 7232 to RFC 9110
- Updated references to RFC 7234 to RFC 9111
- Tidied up style of text when referring to RFC documents
|
|
|
|
|
|
|
|
asyncore and smtpd modules were deprecated in Python 3.10.
|
|
test_server_login() was a regression test for a crash when passing
Unicode strings to SMTP server using CRAM-MD5 method on Python 2.
Python 2 is no longer supported and test_server_login() passes even
without FakeSMTPChannel.smtp_AUTH() because
smtplib.SMTPAuthenticationError is raised when AUTH is not implemented.
|
|
Inspired by Adam Johnson talk on DjangoCon Europe 2021.
|
|
|
|
Using bool caused mypy typecheck failures.
|
|
and 3.8.4+.
Fixed sending emails crash on email addresses with display names longer
then 75 chars on Python 3.6.11+, 3.7.8+, and 3.8.4+.
Wrapped display names were passed to email.headerregistry.Address()
what caused raising an exception because address parts cannot contain
CR or LF.
See https://bugs.python.org/issue39073
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
|
|
email addresses.
|
|
|
|
Test failure introduced in fbbff7f80870bc3e98de4a2fc9cd853949842fd0.
Windows uses a different error message when a non-path is passed to
os.path functions.
|
|
|
|
localhost is non-ASCII.
Assisted by felixxm.
|
|
ADMINS/MANAGERS is set incorrectly.
|
|
email.headerregistry.parser.get_mailbox() returns a token with a `token_type` attribute.
If `token_type` is `’invalid-mailbox’` then RFC violations have been detected. Emails with only the local part, and no domain, are correctly parsed but are marked as `’invalid-mailbox’`.
As per #15042, local-only are supported, to enable sending to addresses on localhost.
sanitize_email() does not currently check `token_type`. This test is added to avoid a regression in case this is revisited in the future.
|
|
sanitize_address().
|
|
and two @ signs.
|
|
|
|
|
|
|
|
Used more specific errors (e.g. FileExistsError) as appropriate.
|
|
Thanks Mariusz Felisiak for auditing.
|
|
empty/error cases.
|
|
|
|
Unnecessary since their introduction in
fa75b2cb512409116b6f1b5229d6f99074d8e452.
|
|
|
|
|
|
|