# Core testing and utilities pytest>=8,<9 # Test runner and framework (parametrize, fixtures, markers) pyyaml>=6,<7 # Parse YAML config files under ./config/ pyserial>=3,<4 # Serial communication for Owon PSU and hardware tests # BabyLIN SDK wrapper requires 'six' on some platforms six>=1.16,<2 # Test productivity pytest-xdist>=3.6,<4 # Parallel test execution (e.g., pytest -n auto) pytest-html>=4,<5 # Generate HTML test reports for CI and sharing pytest-cov>=5,<6 # Coverage reports for Python packages # LDF parsing (LIN description file → frame/signal database for tests) ldfparser>=0.26,<1 # Pure-Python LDF 1.x/2.x parser; pulls in lark + bitstruct # Logging and config extras configparser>=6,<7 # Optional INI-based config support if you add .ini configs later colorlog>=6,<7 # Colored logging output for readable test logs typing-extensions>=4.12,<5 # Typing backports for older Python versions # Transitive PyPI deps of the Melexis stack (pylin / pymumclient / …). # Installed unconditionally so mock and hw images share one venv layout; # the size delta in the mock image is a few MB. Version pins come from # the Requires-Dist metadata of the Melexis packages bundled into # melexis-bundle/melexis-pkgs.tar.gz — keep them in sync if you upgrade # the Melexis IDE. pyparsing>=3.0.9,<3.1 # LDF + MBDF grammar (pyldfparser, pymbdfparser) natsort>=7.1.0 # Natural-order signal sorting (pymbdfparser) intelhex>=2.1 # Intel HEX I/O (pymlxchip, pymlxhex) pygdbmi>=0.9,<0.10 # GDB Machine Interface (pymlxgdb) crcmod>=1.7 # CRC for MUM framing (pymumclient) packaging>=20.3 # Version parsing (pymumclient) zeroconf>=0.37.0 # mDNS discovery of MUM on the bench (pymumclient)