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>
This commit is contained in:
43
es24n_conf.spec
Normal file
43
es24n_conf.spec
Normal file
@@ -0,0 +1,43 @@
|
||||
# PyInstaller spec for es24n_conf Windows .exe
|
||||
# Build with: pyinstaller es24n_conf.spec
|
||||
|
||||
from PyInstaller.building.build_main import Analysis, PYZ, EXE
|
||||
|
||||
a = Analysis(
|
||||
["es24n_conf.py"],
|
||||
pathex=[],
|
||||
binaries=[],
|
||||
datas=[
|
||||
("modules", "modules"),
|
||||
],
|
||||
hiddenimports=[
|
||||
"serial",
|
||||
"serial.tools",
|
||||
"serial.tools.list_ports",
|
||||
],
|
||||
hookspath=[],
|
||||
hooksconfig={},
|
||||
runtime_hooks=[],
|
||||
excludes=[],
|
||||
noarchive=False,
|
||||
)
|
||||
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
[],
|
||||
name="es24n_conf",
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
strip=False,
|
||||
upx=True,
|
||||
console=True, # console app — must stay True for terminal UI
|
||||
disable_windowed_traceback=False,
|
||||
target_arch=None,
|
||||
codesign_identity=None,
|
||||
entitlements_file=None,
|
||||
)
|
||||
Reference in New Issue
Block a user