On Windows, Python's default encoding is the system locale (e.g., cp1252,
gbk) rather than UTF-8. This causes UnicodeDecodeError when reading
sdkconfig files, CMakeLists.txt, or JSON configs that contain non-ASCII
characters (e.g., Chinese comments, UTF-8 BOM).
Fix: Add explicit encoding='utf-8' to all text file open() calls in:
- scripts/release.py (Path.open() for config.json, CMakeLists.txt, sdkconfig)
- scripts/build_default_assets.py (io.open() for sdkconfig, open() for headers/configs)
- scripts/versions.py (open() for info.json read/write)
Relates to #1792
Co-authored-by: Nicola Spieser <redbasecap@users.noreply.github.com>
* chore: Bump project version to 2.2.3 and refactor board configuration parsing in release script
- Updated PROJECT_VER in CMakeLists.txt from 2.2.2 to 2.2.3.
- Refactored the board configuration parsing logic in release.py to improve clarity and efficiency by eliminating the mapping function and directly searching for the board type in the CMakeLists.txt file.
* refactor: Remove unused system_info.h include and delete obsolete source root file
- Removed the inclusion of system_info.h in main.cc as it was no longer needed.
- Deleted the _codeql_detected_source_root file, which was obsolete.
* feat: Add lcd_init_cmds.h include for display initialization in esp32-p4-nano board
- Included the lcd_init_cmds.h header file in esp32-p4-nano.cc to support display initialization commands, enhancing the board's functionality.
* chore: Update build workflow and board configuration files
- Changed the build job name in the GitHub Actions workflow to use the full name of the matrix variant for better clarity.
- Refactored CMakeLists.txt to improve the formatting of the BOARD_SOURCES file globbing.
- Added manufacturer information to the config.json files for the eda-robot-pro, eda-super-bear, and eda-tv-pro boards to ensure consistency in configuration.
content: Update the README.md
ci: Adapt to the lower directory
ci: the lower directory support
ci: board type errors fixed.
ci: board_type errors fixed to board_leaf.
fix: A naming error problem
fix: jd9365 member error
fix: Update product naming
feat: Add manufacturer parameters to the firmware name for 'release'
fix: Verification logic
fix: Verification logic
* refactor: migrate camera module to esp-video library
* refactor: migrate boards to esp-video API (1/2)
* refactor: migrate boards to esp-video API (2/2)
* fix: use ESP-IDF 5.5
* refactor: migrate the JPEG encoder to `esp_new_jpeg`
* feat: add YUV422 support
* feat: improve pixelformat and device selection process
* feat: use ESP32-P4 Hardware JPEG Encoder