Commit Graph
15 Commits
Author SHA1 Message Date
jensandClaude Sonnet 4.6 bd39f4766c Remove dead IWsServer interface
It was defined but never used as a type and not inherited by
WsServerMultiUser. Also removes the now-unused abc import.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tqxrk8uj4M3w3d3eXm3xK8
2026-06-25 20:30:33 +02:00
jensandClaude Sonnet 4.6 4585799c02 Remove silent exception swallowing in WsServerMultiUser
Both handler loops caught all exceptions, printed e, and broke — hiding
errors entirely. Let exceptions propagate naturally; the parent handler's
FIRST_COMPLETED logic already handles task cleanup on disconnect.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tqxrk8uj4M3w3d3eXm3xK8
2026-06-25 20:29:30 +02:00
jensandClaude Sonnet 4.6 1cd4cdc451 Remove debug prints from WsServer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tqxrk8uj4M3w3d3eXm3xK8
2026-06-25 20:28:27 +02:00
jensandClaude Sonnet 4.6 9ec966a3ac Fix websockets >=10 compatibility in WsServer
Remove deprecated loop= parameter from websockets.serve() and
asyncio.ensure_future() calls, both of which dropped that kwarg
in websockets >=10 / Python 3.10.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tqxrk8uj4M3w3d3eXm3xK8
2026-06-25 20:17:11 +02:00
jens d1a69f19ce Toggle Connect/Disconnect on the same button once connected
MessageDispatcherSync gains an optional on_connect_changed(bool)
callback, fired from the websocket client's background loop once the
connection is actually live/lost, so the button only flips state on a
real connection change rather than optimistically on click.
2026-06-20 23:04:43 +02:00
jensandClaude Sonnet 4.6 2566140c2b Fix Python 3.10+/websockets compatibility, add CLI args and .gitignore
- ws/message.py, ws/server/ws_server_multi_user.py: drop the loop= kwarg
  and replace asyncio.wait(coroutines) with asyncio.gather(), both of
  which were removed/forbidden in Python 3.10+.
- brewpi/requirements.txt: pin websockets==10.4, the latest version that
  still supports this code's serve()/handler API.
- config.json.sim: move Model to the top level and add the missing gain
  field so it matches the schema brewpi.py and config.json.templ expect.
- brewpi/brewpi.py: add -c/-m/-s/-d CLI args for selecting config/model
  files, simulation mode, and debug.
- .gitignore: exclude __pycache__, logs, the local config.json, and
  editor/venv directories.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 20:23:38 +02:00
jensandClaude Sonnet 4.6 df23840f6a Restructure into brewpi/client/ws packages and add README
Splits the server, GUI client, and websocket layer into their own
packages with dedicated requirements.txt files, and adds a README
documenting the project's architecture and usage.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 20:05:08 +02:00
jens b5cdb1a973 - fixed loosing connection to Pot task 2020-12-02 17:19:12 +01:00
jens 19ed110d0b - fixed not exitting executor thread
- fixed PID params
2020-12-01 19:35:06 +01:00
jens 5c97ac4d5c - removed MsgIo::send_from_thread
- created sync variant of MessageDispatcher and MsgIo
- fixed delay in sending client messages
2020-12-01 12:41:01 +01:00
jens 625535d1fb - refactored 2020-11-28 11:52:11 +01:00
jens 337ed1e5cd - set power from slider 2020-11-25 10:09:28 +01:00
jens 4cde362642 - add subscription via MessageDispatcher 2020-11-25 08:41:43 +01:00
jens ce363a15b0 - provide loop at ws::connect 2020-11-24 21:11:48 +01:00
jens 7d87bc8f34 - refactored 2020-11-24 20:42:27 +01:00