aiosmtpd
aiosmtpd copied to clipboard
A reimplementation of the Python stdlib smtpd.py based on asyncio.
Hello. In Fedora, we are trying to test our packages early with pre-releases of Python 3.13 to be prepared to upgrade to it in the development version of Fedora Linux...
It's faster and natively supports `pyproject.toml` ... what's not to like?
This is on debian/trixie, using aiosmtpd 1.4.4.post2-1 or 1.4.3. It hangs even when there is an actual online network (it also hangs in a restricted container). This one for example:...
## What do these changes do? Practically all still-maintained projects are migrating to have a Single Source of Truth for their builds: `pyproject.toml` This is in accordance with the guidelines...
Dear aiosmtpd people! Thank you for your work! The "authenticated replayer" example has two bugs: * The username and password have to be decoded to utf-8 since they may be...
Hi, I'm going out on limb here and I don't expect much to come from this, but I'd figured I give it a shot anyway. I need a really dumb...
The underlying event loop supports `port=0` for letting the operating system pick a random free port. This is useful when using the smtp server in unit tests. However, aiosmtp does...
The aiosmtpd library has the py.typed marker (awesome!), but the `aiosmtpd.controller.Controller.start()` method has no type annotation for the return type. This leads to a mypy warning in calling code (when...
Currently aiosmtpd uses `email.message.Message` to represent a received email. Since version 3.6 (I believe) the preferred class according to python documentation is `email.message.EmailMessage`. Making this change would bring aiosmtpd in...
## What do these changes do? Listening to a port < 1024 without `--nosetuid` leads to a permission error. The UID change is done too early: we should first open...