From 9c210b3a50a290af65e22c942e2aa39143a425d3 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sun, 31 Oct 2021 20:18:20 +0100 Subject: [PATCH 1/4] Add GMCP Client.GUI inputfunc to avoid issues with Mudlet --- evennia/server/inputfuncs.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/evennia/server/inputfuncs.py b/evennia/server/inputfuncs.py index 47c36f981..7a57d97ec 100644 --- a/evennia/server/inputfuncs.py +++ b/evennia/server/inputfuncs.py @@ -610,9 +610,18 @@ def msdp_send(session, *args, **kwargs): # client specific -def external_discord_hello(session, *args, **kwargs): +def _not_implemented(session, *args, **kwargs): """ - Sent by Mudlet as a greeting; added here to avoid - logging a missing inputfunc for it. + Dummy used to swallow missing-inputfunc errors for + common clients. """ pass + + +# GMCP External.Discord.Hello is sent by Mudlet as a greeting +# (see https://wiki.mudlet.org/w/Manual:Technical_Manual) +external_discord_hello = _not_implemented + + +# GMCP Client.Gui is sent by Mudlet for gui setup. +client_gui = _not_implemented From ca6e651dfa1b9412de3bad88f3ca14dadbdb00a6 Mon Sep 17 00:00:00 2001 From: luciensadi Date: Wed, 3 Nov 2021 22:04:44 -0700 Subject: [PATCH 2/4] Added missing remove() method to _SaverDeque --- evennia/utils/dbserialize.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/evennia/utils/dbserialize.py b/evennia/utils/dbserialize.py index 9a3c77aea..1e12f865f 100644 --- a/evennia/utils/dbserialize.py +++ b/evennia/utils/dbserialize.py @@ -391,6 +391,10 @@ class _SaverDeque(_SaverMutable): @_save def rotate(self, *args): self._data.rotate(*args) + + @_save + def remove(self, *args): + self._data.remove(*args) _DESERIALIZE_MAPPING = { From c993fb93f1ffc343fe311352e72e9c1ed7ebd688 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sat, 13 Nov 2021 15:34:47 +0100 Subject: [PATCH 3/4] Make sure the update/reset combination reruns all hooks --- evennia/commands/default/building.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/evennia/commands/default/building.py b/evennia/commands/default/building.py index b48507397..41ef42024 100644 --- a/evennia/commands/default/building.py +++ b/evennia/commands/default/building.py @@ -1934,7 +1934,8 @@ class CmdTypeclass(COMMAND_DEFAULT_CLASS): update - *only* re-run at_object_creation on this object meaning locks or other properties set later may remain. reset - clean out *all* the attributes and properties on the - object - basically making this a new clean object. + object - basically making this a new clean object. This will + also reset cmdsets. force - change to the typeclass also if the object already has a typeclass of the same name. list - show available typeclasses. Only typeclasses in modules actually @@ -2101,7 +2102,7 @@ class CmdTypeclass(COMMAND_DEFAULT_CLASS): else: update = "update" in self.switches reset = "reset" in self.switches - hooks = "at_object_creation" if update else "all" + hooks = "at_object_creation" if update and not reset else "all" old_typeclass_path = obj.typeclass_path # special prompt for the user in cases where we want From d2e3536d73ea3eb0fdea09d66ee2411cafaadc03 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sun, 14 Nov 2021 15:16:20 +0100 Subject: [PATCH 4/4] Pin django-sekizai version --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 4d80639ee..fd7b20880 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ django >= 3.2, < 3.3 twisted >= 21.7.0, < 22.0.0 pytz -django-sekizai +django-sekizai==2.0.0 inflect autobahn >= 20.7.1, < 21.0.0