- Drop support for Python 3.7 and 3.8.
- Switch to calendar-based versioning.
- Officially support Python 3.9 and 3.10.
- Drop support for Python 3.6.
No changes.
- Ensure that lines end with \r\n.
- Log exceptions raised during a connection, instead of aborting.
- Reject invalid
HELO
,EHLO
,MAIL
, andRCPT
commands. - Enforce limits per RFC 5321, section 4.5.3.1.
- Do not throw an exception when encountering 8 bit characters. Instead return an error (in commands) or drop the most significant bit (in mail texts).