irc: add safe_text_length and use abc.ABC for AbstractBot #2136
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Tin. I was always a bit annoyed by the
say
method that does too much on its own, and I know that @half-duplex wanted a way to know the safe length for an IRC message without having to reinvent the wheel each time. I hope this will help, even if just a little.Working on this part, I saw that
hostmask
is used but not defined by the abstract class, so I took this opportunity to useabc.ABC
and theabc.abstractmethod
decorator.By doing so, I also replaced the
KeyError
when the hostmask is not defined to returnNone
instead. This is a very minor breaking change. I'm not sure anyone is usingbot.hostmask
, and they probably don't use it when the bot is not connected/hasn't join a channel yet.Checklist
make qa
(runsmake quality
andmake test
)