I updated to eddrit v0.18.0 today on my local docker eddrit instance, and now my multi-reddits no longer work. It generates an Error 500, it seems like any multi-reddit does, for example: https://eddrit.com/r/mildlyinfuriating+music this link on my instance fails. But it works on the eddrit.com instance... My Dedric instance is behind a Caddy reverse proxy, if that’s relevant.
[2026-02-24 04:06:03 +0000] [8] [ERROR] Exception in ASGI application
Traceback (most recent call last):
File "/home/eddrit/.local/lib/python3.14/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi
result = await app( # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self.scope, self.receive, self.send
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/applications.py", line 107, in __call__
await self.middleware_stack(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/middleware/errors.py", line 186, in __call__
raise exc
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/middleware/errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "/app/eddrit/utils/middlewares.py", line 78, in __call__
await self.app(scope, receive, send_with_extra_headers)
File "/app/eddrit/utils/middlewares.py", line 95, in __call__
await self.app(scope, receive, send)
File "/app/eddrit/utils/middlewares.py", line 58, in __call__
await self.app(scope, receive, send_with_refreshed_cookies)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 736, in app
await route.handle(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 462, in handle
await self.app(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 736, in app
await route.handle(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 290, in handle
await self.app(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 78, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/home/eddrit/.local/lib/python3.14/site-packages/starlette/routing.py", line 75, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "/app/eddrit/routes/pages/subreddit_user_and_wiki.py", line 178, in subreddit_or_user
information = await get_subreddit_information(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
request.state.http_client, request.path_params["name"]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/app/eddrit/reddit/fetch.py", line 80, in get_subreddit_information
return await _get_multi_information(http_client, subreddit_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/eddrit/reddit/fetch.py", line 324, in _get_multi_information
res = await http_client.head(f"{REDDIT_BASE_API_URL}/r/{name}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1826, in head
return await self.request(
^^^^^^^^^^^^^^^^^^^
...<9 lines>...
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1540, in request
return await self.send(request, auth=auth, follow_redirects=follow_redirects)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1629, in send
response = await self._send_handling_auth(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1657, in _send_handling_auth
response = await self._send_handling_redirects(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1694, in _send_handling_redirects
response = await self._send_single_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx/_client.py", line 1730, in _send_single_request
response = await transport.handle_async_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/eddrit/.local/lib/python3.14/site-packages/httpx_curl_cffi/transport.py", line 427, in handle_async_request
_resp = await self._session.request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
**self._create_request_params(request),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/curl_cffi/requests/session.py", line 1051, in request
req, buffer, header_buffer, q, header_recved, quit_now = set_curl_options(
~~~~~~~~~~~~~~~~^
curl=curl,
^^^^^^^^^^
...<40 lines>...
event_class=asyncio.Event,
^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/home/eddrit/.local/lib/python3.14/site-packages/curl_cffi/requests/utils.py", line 443, in set_curl_options
for k, v in h.multi_items():
~~~~~~~~~~~~~^^
File "/home/eddrit/.local/lib/python3.14/site-packages/curl_cffi/requests/headers.py", line 199, in multi_items
value.decode(self.encoding) if value is not None else value,
~~~~~~~~~~~~^^^^^^^^^^^^^^^
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 43: ordinal not in range(128)
I updated to eddrit v0.18.0 today on my local docker eddrit instance, and now my multi-reddits no longer work. It generates an Error 500, it seems like any multi-reddit does, for example: https://eddrit.com/r/mildlyinfuriating+music this link on my instance fails. But it works on the eddrit.com instance... My Dedric instance is behind a Caddy reverse proxy, if that’s relevant.
The error in the docker logs is: