home · contact · privacy
Handle GenericAlias special case breaking previous switch to "Clearable" subclassing.
authorChristian Heller <c.heller@plomlompom.de>
Thu, 11 Sep 2025 14:19:50 +0000 (16:19 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Thu, 11 Sep 2025 14:19:50 +0000 (16:19 +0200)
ircplom/client.py

index 2c818c19e41c821d00e659ea246c17366ca43747..500e98b3789f08d9b33e1887cffe8ecea5aedc73 100644 (file)
@@ -563,6 +563,8 @@ class _ClientDb(_Clearable, _UpdatingMixin, SharedClientDbFields):
     def clear(self) -> None:
         for key, value in [(k, v) for k, v in self._deep_annotations().items()
                            if k not in self._keep_on_clear]:
+            if hasattr(value, '__origin__'):
+                value = value.__origin__
             if issubclass(value, _Clearable):
                 getattr(self, key).clear()
             elif issubclass(value, str):