github.com/aio-libs/aiosmtpd

A reimplementation of the Python stdlib smtpd.py based on asyncio.

Open this visualization on its own page →

Contributors

34

Lines of Code

1,137

From

2014-06-09

To

2021-01-28

About aio-libs/aiosmtpd

aiosmtpd is a modern reimplementation of Python's standard library SMTP server, built on top of asyncio rather than the older and deprecated asyncore and asynchat modules. The original stdlib smtpd module relied on asynchronous libraries that are difficult to work with and have been deprecated since Python 3.6, so this project provides a contemporary alternative using asyncio, which was introduced in Python 3.4.

The package implements both the SMTP and LMTP protocols, allowing developers to build email servers and test SMTP clients using asyncio-based asynchronous I/O. It includes a command-line interface for running an SMTP server and can also be used as a library for testing purposes. The project is well-documented and supported across CPython 3.9 and later as well as PyPy 3.9 and later, with testing on Windows, macOS, Ubuntu, and Cygwin.

aiosmtpd is part of the aio-libs umbrella project and is actively maintained with comprehensive test coverage, CI/CD pipelines, and multiple development workflows including code quality checks, security scanning with Bandit, static type checking with pytype, and documentation building with Sphinx.

Share this video