mirror of
https://github.com/mikecarper/MeshCore.git
synced 2026-09-26 17:38:16 +00:00
First upstream merge since the 2026-06-06 base (191 upstream commits). 14 files conflicted; resolutions below. Fleet-critical check (Constraint 1): upstream reordered NodePrefs members (rx_boosted_gain / path_hash_mode moved to the struct tail) but did NOT change /com_prefs. Persistence is written field-by-field at explicit offsets, so member order is in-memory only. Verified the fork's writeCommonPrefsImage() is byte-identical to upstream's inline writer at every offset (79 pad, 121, 122, 290-294). No migration needed. Resolutions: - CommonCLI.h: kept the fork's NodePrefs (superset) and adopted upstream's setRxBoostedGain(bool)->bool signature change, which CommonCLI.cpp now uses to report unsupported. Corrected a stale comment claiming rx_boosted_gain lives at offset 79 (it is a pad; the field is at 290). - CommonCLI.cpp: kept the fork's legacy /com_prefs migration and the extracted writeCommonPrefsImage() call. - UITask.cpp: three-way merge - upstream's drawTextCentered + powering-off screen, plus the fork's WITH_WEBCONFIG portal/reboot screens. - ESP32Board.cpp, MeshCore.h, platformio.ini: kept both sides (fork OTA additions alongside upstream powerOff/enterDeepSleep and Packet.cpp). - MicroNMEALocationProvider.h: took upstream's claim/release and added the _claims member they depend on. - MyMesh.cpp/.h (repeater + room server): kept the fork's superset defaults. - Removed duplicate declarations auto-merge produced: RadioLibWrapper::_cad_enabled and MyMesh::getCADEnabled(). Verification: native suite 15/15 (incl. upstream's new test_mesh_tables), both MQTT smoke builds green, ArduinoJson pin check passes. Hardware validation next.
80 lines
2.0 KiB
YAML
80 lines
2.0 KiB
YAML
name: PR Build Check
|
|
|
|
on:
|
|
pull_request:
|
|
branches: [main, dev]
|
|
paths:
|
|
- 'src/**'
|
|
- 'include/**'
|
|
- 'lib/**'
|
|
- 'examples/**'
|
|
- 'variants/**'
|
|
- 'boards/**'
|
|
- 'arch/**'
|
|
- 'scripts/**'
|
|
- 'ssl_certs/**'
|
|
- 'webui/**'
|
|
- 'default_8MB.csv'
|
|
- 'platformio.ini'
|
|
- '.github/actions/setup-build-environment/**'
|
|
- '.github/workflows/pr-build-check.yml'
|
|
push:
|
|
branches: [main, dev]
|
|
paths:
|
|
- 'src/**'
|
|
- 'include/**'
|
|
- 'lib/**'
|
|
- 'examples/**'
|
|
- 'variants/**'
|
|
- 'boards/**'
|
|
- 'arch/**'
|
|
- 'scripts/**'
|
|
- 'ssl_certs/**'
|
|
- 'webui/**'
|
|
- 'default_8MB.csv'
|
|
- 'platformio.ini'
|
|
- '.github/actions/setup-build-environment/**'
|
|
- '.github/workflows/pr-build-check.yml'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
environment:
|
|
# ESP32-S3 (most common platform)
|
|
- Heltec_v3_companion_radio_ble
|
|
- Heltec_v3_repeater
|
|
- Heltec_v3_room_server
|
|
# MQTT observer smoke builds: internal RAM and PSRAM coverage.
|
|
- Heltec_v3_repeater_observer_mqtt
|
|
- T_Beam_S3_Supreme_SX1262_repeater_observer_mqtt
|
|
# nRF52
|
|
- RAK_4631_companion_radio_ble
|
|
- RAK_4631_companion_radio_ethernet
|
|
- RAK_4631_repeater
|
|
- RAK_4631_repeater_ethernet
|
|
- RAK_4631_room_server
|
|
- RAK_4631_room_server_ethernet
|
|
# RP2040
|
|
- PicoW_repeater
|
|
# STM32
|
|
- wio-e5-mini_repeater
|
|
# ESP32-C6
|
|
- LilyGo_Tlora_C6_repeater_
|
|
# LR1110 (nRF52)
|
|
- wio_wm1110_repeater
|
|
# SX1276 (ESP32)
|
|
- Tbeam_SX1276_repeater
|
|
|
|
steps:
|
|
- name: Clone Repo
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Setup Build Environment
|
|
uses: ./.github/actions/setup-build-environment
|
|
|
|
- name: Build ${{ matrix.environment }}
|
|
run: pio run -e ${{ matrix.environment }}
|