[BUG] Plugin backends lost http.server in v3.2.9
Please confirm
- I have searched existing issues
- This issue is not a duplicate of an existing one
- I have checked the common issues section in the readme file
- I have attached logs to this bug report (failure to include logs will mean your issue may not be responded to).
Bug Report Description
Since v3.2.9, a plugin backend that does import http.server dies at import with ModuleNotFoundError: No module named 'http.server'.
It worked on v3.2.8. My plugin imports it at the top of one module, so the whole thing failed to load — every unrelated feature gone over a module only the file-transfer part needs.
fileserver.py, line 49, in <module> from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer ModuleNotFoundError: No module named 'http.server'
I compared the two released PluginLoader binaries: v3.2.8 bundles 642 Python modules, v3.2.9 bundles 398. The 258 that went are mostly distutils, _distutils_hack and setuptools' internals, along with http.server, socketserver, pydoc, cgi and configparser. That lines up with setuptools going 78.1.1 → 84.0.0 in this release, which dropped the bundled distutils shim — and that shim was what had been pulling those stdlib modules into the build.
I've worked around it by rebuilding the part I need on socket and threading. But any plugin serving HTTP locally will hit this, and the next dependency bump can quietly remove something else.
It would be nice if you: a) add http.server (and whatever else plugins commonly use) to hiddenimports in backend/pyinstaller.spec, or b) document which parts of the standard library a plugin backend can rely on, so plugin authors know what they can count on
I can send a PR for the first if you need to
Expected Behaviour
Decky plugins can use http.server correctly.
SteamOS version
3.8.16 Stable
Selected Update Channel
Stable
Decky Loader Version
3.2.9
Plugin Info
controller-tools 2.0.2 decky-undervolt 1.0.8 tabmaster 2.15.1 unifideck-decky 0.7.2 decky-game-settings 1.2.6 decky-lsfg-vk 0.12.2 decky-steamgriddb 1.7.1 deckyemu 0.14.0 hltb-for-deck 2.0.9
Have you modified the read-only filesystem at any point?
No response
Backend Logs
Frontend Logs
Source: SteamDeckHomebrew/decky-loader