dgw
dgw
The `match` parameter on URL callbacks has been obsolete since Sopel 7.1 (#1904), and is due to be removed in Sopel 9.0. However, plugins whose authors (or users) don't read...
https://github.com/sopel-irc/sopel/blob/7693af3356f59be7c825cafd91251dc88f5caf2a/sopel/builtins/admin.py#L290-L302 The docstring is a bit incorrect, too, given `auto_accept_invite`. Not saving channel membership resulting from invitations appears to trace all the way back to #1492 for 7.0. _(Yes, I'm...
### Requested Feature `irc.utils.safe()` strips CR and LF from its input, but not NUL (`\x00`) even though all three octets [are disallowed in IRC lines](https://datatracker.ietf.org/doc/html/rfc2812#section-2.3.1). https://github.com/sopel-irc/sopel/blob/3ff58c160ecc7a9d51f1e06426d456c7db4d985a/sopel/irc/utils.py#L20-L48 ### Problems Solved Plugins...
It's "good practice" to use `python3 -m` in many cases, and Sopel works just fine if _started_ using `python3 -m sopel.cli.run`. Yet, trying to restart it fails using `python3 -m...
With #2525, a `SopelIdentifierMemory` can be initialized with the contents of another `SopelIdentifierMemory` or a plain `dict`, or a sequence of key-value tuples. With #2552, a `SopelIdentifierMemory` can be instantiated...
### Requested Feature I think being able to do e.g. `sopel-plugins disable thiswasremoved` via the CLI would be helpful. ### Problems Solved After deleting or uninstalling a plugin called `name`,...
Coretasks asks for `message-tags` now, and with that comes the world of _all_ tag types—client-only tags included. (Even if coretasks didn't, plugins can pretty easily request the capability themselves thanks...
We've taken a baby step toward this with #2555, which will flag unrecognized arguments at the type-checker level (for anyone who actually bothers running a type-check on their plugins… and...
Issue title reflects just how long-term this might be… As of 2023-11-11, a new `warnings.deprecated` decorator is "Accepted" (via [PEP 702](https://peps.python.org/pep-0702/)) but not yet fully implemented in Python 3.13 alpha...
### Requested Feature Nicknames have this neat feature where the database can look them up case-insensitively, using a "slug" value that has been casemapped using the `tools.Identifier` machinery. Channels should...