2 Commits

Author SHA1 Message Date
3ba52b2c62 Fix PyInstaller spec: bundle modules as Python code not raw data
All checks were successful
Build Windows EXE / build (push) Successful in 50s
Using datas to include modules/ caused stdlib imports (json etc.) to fail
at runtime. Adding modules/ to pathex lets PyInstaller properly analyse
and compile them into the bundle alongside the rest of the stdlib.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 18:33:59 -04:00
75873dd4e0 Port serial layer to pyserial; add Windows COM detection and PyInstaller spec
- serial_port.py: replace termios/fcntl/select with pyserial wrapper,
  same SerialPort interface preserved for all other modules
- workflow_serial.py: detect_serial_device() uses serial.tools.list_ports
  to enumerate COM ports; removes _fix_permissions() (not needed on Windows);
  multi-device table now shows port description
- es24n_conf.py: enable VT/ANSI colour mode on Windows 10+ via ctypes;
  update docstring for Windows edition
- requirements.txt: pyserial >= 3.5, pyinstaller >= 6.0
- es24n_conf.spec: PyInstaller single-file .exe spec

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 15:50:17 -04:00