Skip to content

Commit 0fc67fd

Browse files
authored
Merge branch 'meshtastic:develop' into tidyups
2 parents 78c9028 + fc67590 commit 0fc67fd

133 files changed

Lines changed: 3530 additions & 171 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/actions/setup-native/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ runs:
1111
- name: Install libs needed for native build
1212
shell: bash
1313
run: |
14-
sudo apt-get install -y libbluetooth-dev libgpiod-dev libyaml-cpp-dev libjsoncpp-dev openssl libssl-dev libulfius-dev liborcania-dev libusb-1.0-0-dev libi2c-dev libuv1-dev
14+
sudo apt-get install -y libbluetooth-dev libgpiod-dev libyaml-cpp-dev libjsoncpp-dev openssl libssl-dev libulfius-dev liborcania-dev libusb-1.0-0-dev libi2c-dev libuv1-dev libcurl4-gnutls-dev

.github/workflows/build_windows_bin.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ jobs:
4747
mingw-w64-ucrt-x86_64-libuv
4848
mingw-w64-ucrt-x86_64-jsoncpp
4949
mingw-w64-ucrt-x86_64-openssl
50+
mingw-w64-ucrt-x86_64-curl
5051
mingw-w64-ucrt-x86_64-libusb
5152
mingw-w64-ucrt-x86_64-cmake
5253
mingw-w64-ucrt-x86_64-ninja

.github/workflows/main_matrix.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ jobs:
140140
secrets: inherit
141141

142142
MacOS:
143-
if: ${{ github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
143+
if: ${{ !contains(github.ref_name, 'event/') && github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
144144
strategy:
145145
fail-fast: false
146146
matrix:
@@ -155,7 +155,7 @@ jobs:
155155
# secrets: inherit
156156

157157
Windows:
158-
if: ${{ github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
158+
if: ${{ !contains(github.ref_name, 'event/') && github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
159159
strategy:
160160
fail-fast: false
161161
matrix:
@@ -182,7 +182,7 @@ jobs:
182182
uses: ./.github/workflows/test_native.yml
183183

184184
build-wasm:
185-
if: ${{ github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
185+
if: ${{ !contains(github.ref_name, 'event/') && github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
186186
# Build the WebAssembly portduino node ([env:native-wasm]) as part of normal CI,
187187
# like the other platforms. It's a dedicated job (not a row in the `build`
188188
# matrix) because its artifact is meshnode.{mjs,wasm} - not a flashable
@@ -191,7 +191,7 @@ jobs:
191191
uses: ./.github/workflows/build_portduino_wasm.yml
192192

193193
docker:
194-
if: ${{ github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
194+
if: ${{ !contains(github.ref_name, 'event/') && github.event_name != 'schedule' && github.event.inputs.nightly != 'true' }}
195195
permissions: # Needed for pushing to GHCR.
196196
contents: read
197197
packages: write

.github/workflows/test_native.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,14 @@ jobs:
8181
lcov ${{ env.LCOV_CAPTURE_FLAGS }} --initial --output-file coverage_base.info
8282
sed -i -e "s#${PWD}#.#" coverage_base.info # Make paths relative.
8383
84+
- name: Config check tests
85+
# Drives the same binary against test/fixtures/portduino-config: asserts that
86+
# `--check` reports each planted fault, and that a normal run still refuses the
87+
# configs it should. Runs before the simulator test because it is seconds long
88+
# and a failure here explains a lot of downstream weirdness.
89+
timeout-minutes: 5
90+
run: ./bin/test-config-check.sh .pio/build/coverage/meshtasticd
91+
8492
- name: Integration test
8593
# Cap the whole step: if the simulator ever fails to exit (e.g. the
8694
# exit_simulator admin path regresses again) the job must fail fast,

.trunk/trunk.yaml

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ cli:
44
plugins:
55
sources:
66
- id: trunk
7-
ref: v1.10.0
7+
ref: v1.10.2
88
uri: https://github.com/trunk-io/plugins
99
lint:
1010
# Custom file set + formatter that rewrites Unicode em-dash (U+2014, UTF-8
@@ -69,19 +69,19 @@ lint:
6969
enabled:
7070
- ascii-dash@SYSTEM
7171
- too-many-defined@SYSTEM
72-
- checkov@3.2.529
73-
- renovate@43.150.0
74-
- prettier@3.8.3
75-
- trufflehog@3.95.3
72+
- checkov@3.3.8
73+
- renovate@44.2.3
74+
- prettier@3.9.6
75+
- trufflehog@3.96.0
7676
- yamllint@1.38.0
7777
- bandit@1.9.4
78-
- trivy@0.70.0
78+
- trivy@0.72.0
7979
- taplo@0.10.0
80-
- ruff@0.15.13
80+
- ruff@0.16.0
8181
- isort@8.0.1
82-
- markdownlint@0.48.0
82+
- markdownlint@0.49.1
8383
- oxipng@10.1.1
84-
- svgo@4.0.1
84+
- svgo@4.0.2
8585
- actionlint@1.7.12
8686
- flake8@7.3.0
8787
- hadolint@2.14.0
@@ -102,6 +102,14 @@ lint:
102102
- linters: [gitleaks]
103103
paths:
104104
- test/fixtures/nodedb/seed_v25_*.jsonl
105+
# Deliberately broken YAML: these are the inputs to bin/test-config-check.sh,
106+
# which asserts that `meshtasticd --check` reports each planted fault. Prettier
107+
# rejects the duplicate keys and bad indentation that are the whole point of
108+
# them, so the directory is exempt. The README there is normal prose and stays
109+
# linted.
110+
- linters: [ALL]
111+
paths:
112+
- test/fixtures/portduino-config/**/*.yaml
105113
# checkov/CKV_SECRET_6 flags the commented-out "large4cats" example,
106114
# which is the public default credential for the meshtastic.org MQTT
107115
# broker rather than a real secret. Ignore the whole file so the

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
1616
curl wget g++ zip git ca-certificates pkg-config \
1717
python3-pip python3-grpc-tools \
1818
libgpiod-dev libyaml-cpp-dev libjsoncpp-dev libbluetooth-dev libi2c-dev libuv1-dev \
19-
libusb-1.0-0-dev libulfius-dev liborcania-dev libssl-dev \
19+
libcurl4-gnutls-dev libusb-1.0-0-dev libulfius-dev liborcania-dev libssl-dev \
2020
libx11-dev libinput-dev libxkbcommon-x11-dev libsqlite3-dev libsdl2-dev \
2121
&& apt-get clean && rm -rf /var/lib/apt/lists/* \
2222
&& pip install --no-cache-dir -U platformio \
@@ -55,7 +55,7 @@ USER root
5555

5656
RUN apt-get update && apt-get --no-install-recommends -y install \
5757
libc-bin libc6 libgpiod3 libyaml-cpp0.8 libjsoncpp26 libi2c0 libuv1t64 libusb-1.0-0-dev \
58-
liborcania2.3 libulfius2.7t64 libssl3t64 \
58+
libcurl4t64 liborcania2.3 libulfius2.7t64 libssl3t64 \
5959
libx11-6 libinput10 libxkbcommon-x11-0 libsdl2-2.0-0 \
6060
&& apt-get clean && rm -rf /var/lib/apt/lists/* \
6161
&& mkdir -p /var/lib/meshtasticd \

alpine.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ENV PIP_BREAK_SYSTEM_PACKAGES=1
1717
RUN apk --no-cache add \
1818
bash g++ libstdc++-dev linux-headers zip git ca-certificates libbsd-dev \
1919
py3-pip py3-grpcio-tools \
20-
libgpiod-dev yaml-cpp-dev jsoncpp-dev bluez-dev \
20+
libgpiod-dev yaml-cpp-dev jsoncpp-dev bluez-dev curl-dev \
2121
libusb-dev i2c-tools-dev libuv-dev openssl-dev pkgconf argp-standalone \
2222
libx11-dev libinput-dev libxkbcommon-dev sqlite-dev sdl2-dev \
2323
&& rm -rf /var/cache/apk/* \
@@ -50,7 +50,7 @@ USER root
5050

5151
RUN apk --no-cache add \
5252
shadow libstdc++ libbsd libgpiod yaml-cpp jsoncpp libusb \
53-
i2c-tools libuv libx11 libinput libxkbcommon sdl2 \
53+
libcurl i2c-tools libuv libx11 libinput libxkbcommon sdl2 \
5454
&& rm -rf /var/cache/apk/* \
5555
&& mkdir -p /var/lib/meshtasticd \
5656
&& mkdir -p /etc/meshtasticd/config.d \

0 commit comments

Comments
 (0)