Can bpo-34975: Add start_tls() method to streams API from 2019 be reopened and reconsidered? The added method allows to turn encryption on on demand (and off, as the author expressed his readiness a week ago).
Initially it was closed in favor of a new asyncio streams API but later the API was cleanly reverted because it was overloaded and deeply text-oriented.
This feature is required to port test
package (namely, dummy FTP and mail servers) to asyncio.start_server()
instead of low-level recv
-esque work with an event loop.