home · contact · privacy
Handle parts with messages.
authorChristian Heller <c.heller@plomlompom.de>
Wed, 3 Sep 2025 11:37:52 +0000 (13:37 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Wed, 3 Sep 2025 11:37:52 +0000 (13:37 +0200)
ircplom/client.py
ircplom/msg_parse_expectations.py

index b1fd4b8b20516de71adabf6241a4c60b2b0a9329..fbdbb83250e00c5b8b1bc8379675706e88d54be6 100644 (file)
@@ -830,6 +830,8 @@ class Client(ABC, ClientQueueMixin):
             self._log(ret['message'], out=False, **kw)
         elif ret['verb'] == 'PART':
             self._db.channels[ret['channel']].remove_nick(ret['parter'])
+            self._log(f'{ret["parter"]} parts: {ret["message"]}',
+                      LogScope.CHAT, target=ret['channel'])
             if ret['parter'] == self._db.users['me']:
                 del self._db.channels[ret['channel']]
         elif ret['verb'] == 'PING':
index 23991695c6bd93562afff6f1a6c1e5690c0d3c11..750c0aef81a01967b75f683c5898b22329291bf6 100644 (file)
@@ -287,6 +287,10 @@ MSG_EXPECTATIONS += [
     _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':parter'),
                          'PART',
                          ((MsgTok.CHANNEL, ':channel'),)),
+    _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':parter'),
+                         'PART',
+                         ((MsgTok.CHANNEL, ':channel'),
+                          (MsgTok.ANY, ':message'))),
     _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':author'),
                          'TOPIC',
                          ((MsgTok.CHANNEL, ':channel'),