All checks were successful
CI / build (push) Successful in 2m23s
On ESP32-C3 with USB CDC, Serial.printf() blocks indefinitely when USB is not connected. This caused device freezes when booted without USB. Solution: Call Serial.setTxTimeoutMs(0) after Serial.begin() to make all Serial output non-blocking. Also added if (Serial) guards to high-traffic logging paths in EpubReaderActivity as belt-and-suspenders protection. Includes documentation of the debugging process and Serial call inventory. Also applies clang-format to fix pre-existing formatting issues.
42 lines
1.2 KiB
YAML
42 lines
1.2 KiB
YAML
name: CI
|
|
'on':
|
|
push:
|
|
branches: [master, crosspoint-ef]
|
|
pull_request:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Set up Python
|
|
run: |
|
|
# Use system Python on self-hosted runner
|
|
python3 --version
|
|
python3 -m pip install --upgrade pip
|
|
|
|
- name: Install PlatformIO Core
|
|
run: python3 -m pip install --upgrade platformio
|
|
|
|
- name: Run cppcheck
|
|
run: pio check --fail-on-defect low --fail-on-defect medium --fail-on-defect high
|
|
|
|
- name: Run clang-format
|
|
run: |
|
|
# Use system clang-format if available, skip if not
|
|
if command -v clang-format &> /dev/null; then
|
|
./bin/clang-format-fix && git diff --exit-code || (echo "Please run 'bin/clang-format-fix' to fix formatting issues" && exit 1)
|
|
else
|
|
echo "clang-format not found, skipping format check"
|
|
fi
|
|
|
|
- name: Generate Dictionary Index
|
|
run: |
|
|
python3 scripts/generate_dict_index.py --zip dict-en-en.zip --output lib/StarDict/DictPrefixIndex.generated.h
|
|
|
|
- name: Build CrossPoint
|
|
run: pio run
|