jaraco / irc

Full-featured Python IRC library for Python.
MIT License
392 stars 87 forks source link

Add a connection factory for the async client #158

Closed liZe closed 5 years ago

liZe commented 5 years ago

First of all, thanks a lot for this library!

This PR adds a factory for the async client, just as it's done for the sync client.

Using a factory lets users easily handle needed features. This doesn't fully solve #146 at all, but allows quick workarounds.

The default factory accepts random keywords during initialization, that will be given to loop.create_connection. The parameters are different from Factory, but they more or less cover the same features: IPv6 and SSL are now supported out-of-the-box for example.

This change shouldn't break any existing code using the library. It can be greatly improved (by improving consistency for example), but it's a start.

jaraco commented 5 years ago

Closing and re-opening to test against latest code.

jaraco commented 5 years ago

This looks great. Thanks!