Skip to content

aiomysql does not support TLS on Python 3.8 on Windows #589

Open
@huwcbjones

Description

@huwcbjones

Due to the Python 3.8 changing the default event loop to proactor, start_tls does not work, therefore you cannot connect to a server using TLS.

As per tornadoweb/tornado#2608 and aio-libs/aiohttp#4536, this limitation should probably be documented somewhere.

The solution, change the event loop policy before the event loop is created.

async def main():
    # Do stuff
    pass


if __name__ == "__main__":
    policy = asyncio.WindowsSelectorEventLoopPolicy()
    asyncio.set_event_loop_policy(policy)
    asyncio.run(main())

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions