home · contact · privacy
Re-start users counting on re-connect.
authorChristian Heller <c.heller@plomlompom.de>
Thu, 18 Sep 2025 09:56:39 +0000 (11:56 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Thu, 18 Sep 2025 09:56:39 +0000 (11:56 +0200)
ircplom/client.py
test.txt

index 9fa1a998da9e32e825eba95b66c42ee57ae94379..38db44eac88cacd32b7ca9fcbea510520491a28c 100644 (file)
@@ -498,17 +498,19 @@ class _UpdatingUser(_UpdatingAttrsMixin, _User):
 
 
 class _UpdatingUsersDict(_UpdatingDict[_UpdatingUser]):
+    _top_id: int
     userlen: int
 
-    def __init__(self, **kwargs) -> None:
-        super().__init__(**kwargs)
-        self._top_id = 0
-
     def __getitem__(self, key: str) -> _UpdatingUser:
         user = super().__getitem__(key)
         user.id_ = key
         return user
 
+    def clear(self) -> None:
+        super().clear()
+        self._top_id = 0
+        self._on_update()
+
     def id_for_nickuserhost(self,
                             nickuserhost: NickUserHost,
                             create_if_none=False,
index aef5b63a0bfbb8e321aedb45da6f6f7c4ed33b4c..15dcca486a109393b948ddfa0ccf4e3724b8ead1 100644 (file)
--- a/test.txt
+++ b/test.txt
 2 < :foo!~foobarbaz@baz.bar.foo JOIN #test
 1,2 $ users:me:user set to: [~foobarbaz]
 2 < :foo.bar.baz 353 foo @ #test :foo @bar
-1,2 $ users:4:nick set to: [?]
-1,2 $ users:4:nick set to: [bar]
+1,2 $ users:1:nick set to: [?]
+1,2 $ users:1:nick set to: [bar]
 2 < :foo.bar.baz 366 foo #test :End of /NAMES list.
 4 $ residents: bar, foo
 2 < :bar!~bar@bar.bar PRIVMSG #test :hi there
-1,2 $ users:4:user set to: [~bar]
-1,2 $ users:4:host set to: [bar.bar]
+1,2 $ users:1:user set to: [~bar]
+1,2 $ users:1:host set to: [bar.bar]
 4 < [bar] hi there
 
 > /quit