From 6b6bb81b23425cf4f8e0c739946783b98ad056b8 Mon Sep 17 00:00:00 2001
From: Charles Wright <cvwright@kombucha.systems>
Date: Fri, 17 Sep 2021 12:04:37 -0500
Subject: [PATCH] =?UTF-8?q?Fix=20#10837=20by=20adding=20JSON=20encoding/de?=
 =?UTF-8?q?coding=20to=20the=20Module=20API=20example=E2=80=A6=20(#10845)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 changelog.d/10845.doc                  | 1 +
 docs/modules/spam_checker_callbacks.md | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)
 create mode 100644 changelog.d/10845.doc

diff --git a/changelog.d/10845.doc b/changelog.d/10845.doc
new file mode 100644
index 0000000000..a13c845ae6
--- /dev/null
+++ b/changelog.d/10845.doc
@@ -0,0 +1 @@
+Fix some crashes in the Module API example code, by adding JSON encoding/decoding.
diff --git a/docs/modules/spam_checker_callbacks.md b/docs/modules/spam_checker_callbacks.md
index c45eafcc4b..81574a015c 100644
--- a/docs/modules/spam_checker_callbacks.md
+++ b/docs/modules/spam_checker_callbacks.md
@@ -136,9 +136,9 @@ class IsUserEvilResource(Resource):
         self.evil_users = config.get("evil_users") or []
 
     def render_GET(self, request: Request):
-        user = request.args.get(b"user")[0]
+        user = request.args.get(b"user")[0].decode()
         request.setHeader(b"Content-Type", b"application/json")
-        return json.dumps({"evil": user in self.evil_users})
+        return json.dumps({"evil": user in self.evil_users}).encode()
 
 
 class ListSpamChecker:
-- 
GitLab