Skip to content

Commit a0c6ae3

Browse files
committed
Merge branch 'master' into feature/rtos-cbuf
2 parents aa8b968 + d14873a commit a0c6ae3

File tree

337 files changed

+15004
-3841
lines changed

Some content is hidden

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

337 files changed

+15004
-3841
lines changed

.github/PULL_REQUEST_TEMPLATE.md

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
2. [ ] Please provide related links (*eg. Issue which will be closed by this Pull Request*)
66
3. [ ] Please **update relevant Documentation** if applicable
77
4. [ ] Please check [Contributing guide](https://docs.espressif.com/projects/arduino-esp32/en/latest/contributing.html)
8+
5. [ ] Please **confirm option to "Allow edits and access to secrets by maintainers"** when opening a Pull Request
89

910
*This entire section above can be deleted if all items are checked.*
1011

.github/scripts/on-push.sh

+6-12
Original file line numberDiff line numberDiff line change
@@ -73,22 +73,16 @@ if [ "$BUILD_PIO" -eq 0 ]; then
7373

7474
SKETCHES_ESP32="\
7575
$ARDUINO_ESP32_PATH/libraries/WiFiClientSecure/examples/WiFiClientSecure/WiFiClientSecure.ino\
76-
$ARDUINO_ESP32_PATH/libraries/BLE/examples/BLE_server/BLE_server.ino\
76+
$ARDUINO_ESP32_PATH/libraries/BLE/examples/Server/Server.ino\
7777
$ARDUINO_ESP32_PATH/libraries/ESP32/examples/Camera/CameraWebServer/CameraWebServer.ino\
7878
$ARDUINO_ESP32_PATH/libraries/Insights/examples/MinimalDiagnostics/MinimalDiagnostics.ino\
7979
"
8080

81-
SKETCHES_ESP32XX="\
82-
$ARDUINO_ESP32_PATH/libraries/WiFiClientSecure/examples/WiFiClientSecure/WiFiClientSecure.ino\
83-
$ARDUINO_ESP32_PATH/libraries/WiFi/examples/WiFiClient/WiFiClient.ino\
84-
$ARDUINO_ESP32_PATH/libraries/Insights/examples/MinimalDiagnostics/MinimalDiagnostics.ino\
85-
"
86-
8781
build "esp32s3" $FQBN_ESP32S3 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
88-
build "esp32s2" $FQBN_ESP32S2 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32XX
89-
build "esp32c3" $FQBN_ESP32C3 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32XX
90-
build "esp32c6" $FQBN_ESP32C6 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32XX
91-
build "esp32h2" $FQBN_ESP32H2 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32XX
82+
build "esp32s2" $FQBN_ESP32S2 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
83+
build "esp32c3" $FQBN_ESP32C3 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
84+
build "esp32c6" $FQBN_ESP32C6 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
85+
build "esp32h2" $FQBN_ESP32H2 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
9286
build "esp32" $FQBN_ESP32 $CHUNK_INDEX $CHUNKS_CNT $SKETCHES_ESP32
9387
else
9488
source ${SCRIPTS_DIR}/install-platformio-esp32.sh
@@ -98,7 +92,7 @@ else
9892
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/WiFi/examples/WiFiClient/WiFiClient.ino" && \
9993
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/WiFiClientSecure/examples/WiFiClientSecure/WiFiClientSecure.ino" && \
10094
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/BluetoothSerial/examples/SerialToSerialBT/SerialToSerialBT.ino" && \
101-
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/BLE/examples/BLE_server/BLE_server.ino" && \
95+
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/BLE/examples/Server/Server.ino" && \
10296
build_pio_sketch "$BOARD" "$OPTIONS" "$PLATFORMIO_ESP32_PATH/libraries/ESP32/examples/Camera/CameraWebServer/CameraWebServer.ino"
10397

10498
# Basic sanity testing for other series

.github/scripts/sketch_utils.sh

+16
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,11 @@ function build_sketch(){ # build_sketch <ide_path> <user_path> <path-to-ino> [ex
126126
# of configuration built in case of a multiconfiguration test.
127127

128128
sketchname=$(basename $sketchdir)
129+
130+
if [[ -n $target ]] && [[ -f "$sketchdir/.skip.$target" ]]; then
131+
echo "Skipping $sketchname for target $target"
132+
exit 0
133+
fi
129134

130135
ARDUINO_CACHE_DIR="$HOME/.arduino/cache.tmp"
131136
if [ -n "$ARDUINO_BUILD_DIR" ]; then
@@ -159,6 +164,12 @@ function build_sketch(){ # build_sketch <ide_path> <user_path> <path-to-ino> [ex
159164
--build-cache-path "$ARDUINO_CACHE_DIR" \
160165
--build-path "$build_dir" \
161166
$xtra_opts "${sketchdir}"
167+
168+
exit_status=$?
169+
if [ $exit_status -ne 0 ]; then
170+
echo ""ERROR: Compilation failed with error code $exit_status""
171+
exit $exit_status
172+
fi
162173
elif [ -f "$ide_path/arduino-builder" ]; then
163174
echo "Building $sketchname with arduino-builder and FQBN=$currfqbn"
164175
echo "Build path = $build_dir"
@@ -173,6 +184,11 @@ function build_sketch(){ # build_sketch <ide_path> <user_path> <path-to-ino> [ex
173184
-build-path "$build_dir" \
174185
$xtra_opts "${sketchdir}/${sketchname}.ino"
175186

187+
exit_status=$?
188+
if [ $exit_status -ne 0 ]; then
189+
echo ""ERROR: Compilation failed with error code $exit_status""
190+
exit $exit_status
191+
fi
176192
# $ide_path/arduino-builder -compile -logger=human -core-api-version=10810 \
177193
# -fqbn=\"$currfqbn\" \
178194
# -warnings="all" \

.github/scripts/tests_build.sh

+2-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ while [ ! -z "$1" ]; do
4646
shift
4747
done
4848

49-
source ${SCRIPTS_DIR}/install-arduino-ide.sh
49+
#source ${SCRIPTS_DIR}/install-arduino-ide.sh
50+
source ${SCRIPTS_DIR}/install-arduino-cli.sh
5051
source ${SCRIPTS_DIR}/install-arduino-core-esp32.sh
5152

5253
args="-ai $ARDUINO_IDE_PATH -au $ARDUINO_USR_PATH"

.github/workflows/allboards.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515

1616
steps:
1717
- name: Checkout repository
18-
uses: actions/checkout@v3
18+
uses: actions/checkout@v4
1919
with:
2020
ref: ${{ github.event.client_payload.branch }}
2121

@@ -33,7 +33,7 @@ jobs:
3333

3434
steps:
3535
- name: Checkout repository
36-
uses: actions/checkout@v3
36+
uses: actions/checkout@v4
3737
with:
3838
ref: ${{ github.event.client_payload.branch }}
3939

@@ -66,7 +66,7 @@ jobs:
6666

6767
steps:
6868
- name: Checkout repository
69-
uses: actions/checkout@v3
69+
uses: actions/checkout@v4
7070
with:
7171
ref: ${{ github.event.client_payload.branch }}
7272

.github/workflows/boards.yml

+12-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
steps:
1919
# This step makes the contents of the repository available to the workflow
2020
- name: Checkout repository
21-
uses: actions/checkout@v3
21+
uses: actions/checkout@v4
2222

2323
- name: Setup jq
2424
uses: dcarbone/[email protected]
@@ -43,7 +43,17 @@ jobs:
4343
steps:
4444
# This step makes the contents of the repository available to the workflow
4545
- name: Checkout repository
46-
uses: actions/checkout@v3
46+
uses: actions/checkout@v4
47+
48+
- name: Check if build.board is uppercase
49+
run: |
50+
board_name=$(echo ${{ matrix.fqbn }} | awk -F':' '{print $NF}')
51+
if grep -q "^$board_name.build.board=[A-Z0-9_]*$" boards.txt; then
52+
echo "$board_name.build.board is valid.";
53+
else
54+
echo "Error: $board_name.build.board is not uppercase!";
55+
exit 1;
56+
fi
4757
4858
- name: Compile sketch
4959
uses: P-R-O-C-H-Y/compile-sketches@main

.github/workflows/build_py_tools.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ jobs:
1717
all_changed_files: ${{ steps.verify-changed-files.outputs.all_changed_files }}
1818
steps:
1919
- name: Checkout repository
20-
uses: actions/checkout@v3
20+
uses: actions/checkout@v4
2121
with:
2222
fetch-depth: 2
2323
ref: ${{ github.event.pull_request.head.ref }}
2424
- name: Verify Python Tools Changed
25-
uses: tj-actions/changed-files@v36
25+
uses: tj-actions/changed-files@v41
2626
id: verify-changed-files
2727
with:
2828
fetch_depth: '2'
@@ -87,7 +87,7 @@ jobs:
8787
echo "tool $tool was changed"
8888
done
8989
- name: Checkout repository
90-
uses: actions/checkout@v3
90+
uses: actions/checkout@v4
9191
with:
9292
ref: ${{ github.event.pull_request.head.ref }}
9393
- name: Set up Python 3.8

.github/workflows/dangerjs.yml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: DangerJS Pull Request linter
2+
on:
3+
pull_request_target:
4+
types: [opened, edited, reopened, synchronize]
5+
6+
permissions:
7+
pull-requests: write
8+
contents: write
9+
10+
jobs:
11+
pull-request-style-linter:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check out PR head
15+
uses: actions/checkout@v4
16+
with:
17+
ref: ${{ github.event.pull_request.head.sha }}
18+
19+
- name: DangerJS pull request linter
20+
uses: espressif/shared-github-dangerjs@v1
21+
env:
22+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: ReadTheDocs CI
1+
name: Documentation Build and Deploy CI
22

33
on:
44
push:
@@ -7,25 +7,25 @@ on:
77
- release/*
88
paths:
99
- 'docs/**'
10-
- '.github/workflows/docs.yml'
10+
- '.github/workflows/docs_build.yml'
1111
pull_request:
1212
paths:
1313
- 'docs/**'
14-
- '.github/workflows/docs.yml'
14+
- '.github/workflows/docs_build.yml'
1515

1616
jobs:
1717

1818
build-docs:
19-
name: Build ReadTheDocs
19+
name: Build ESP-Docs
2020
runs-on: ubuntu-22.04
2121
defaults:
2222
run:
2323
shell: bash
2424
steps:
25-
- uses: actions/checkout@v3
25+
- uses: actions/checkout@v4
2626
with:
2727
submodules: true
28-
- uses: actions/setup-python@v4
28+
- uses: actions/setup-python@v5
2929
with:
3030
python-version: '3.10'
3131
- name: Build
@@ -34,5 +34,11 @@ jobs:
3434
sudo apt install python3-pip python3-setuptools
3535
# GitHub CI installs pip3 and setuptools outside the path.
3636
# Update the path to include them and run.
37-
PATH=/home/runner/.local/bin:$PATH pip3 install --user -r ./docs/requirements.txt
38-
cd ./docs && PATH=/home/runner/.local/bin:$PATH SPHINXOPTS="-W" make html
37+
cd ./docs
38+
PATH=/home/runner/.local/bin:$PATH pip3 install -r requirements.txt --prefer-binary
39+
PATH=/home/runner/.local/bin:$PATH SPHINXOPTS="-W" build-docs -l en
40+
- name: Archive Docs
41+
uses: actions/upload-artifact@v2
42+
with:
43+
name: docs
44+
path: docs

.github/workflows/docs_deploy.yml

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Documentation Build and Production Deploy CI
2+
3+
on:
4+
release:
5+
types: [published]
6+
push:
7+
branches:
8+
- release/*
9+
- master
10+
paths:
11+
- 'docs/**'
12+
- '.github/workflows/docs_deploy.yml'
13+
14+
jobs:
15+
16+
deploy-prod-docs:
17+
name: Deploy Documentation on Production
18+
runs-on: ubuntu-22.04
19+
defaults:
20+
run:
21+
shell: bash
22+
steps:
23+
- uses: actions/checkout@v4
24+
with:
25+
submodules: true
26+
- uses: actions/setup-python@v5
27+
with:
28+
python-version: '3.10'
29+
- name: Deploy Documentation
30+
env:
31+
# Deploy to production server
32+
# DOCS_BUILD_DIR: "./docs/_build/"
33+
DOCS_DEPLOY_PRIVATEKEY: ${{ secrets.DOCS_KEY }}
34+
DOCS_DEPLOY_PATH: ${{ secrets.DOCS_PATH }}
35+
DOCS_DEPLOY_SERVER: ${{ secrets.DOCS_SERVER }}
36+
DOCS_DEPLOY_SERVER_USER: ${{ secrets.DOCS_USER }}
37+
DOCS_DEPLOY_URL_BASE: ${{ secrets.DOCS_URL }}
38+
run: |
39+
sudo apt update
40+
sudo apt install python3-pip python3-setuptools
41+
source ./docs/utils.sh
42+
add_doc_server_ssh_keys $DOCS_DEPLOY_PRIVATEKEY $DOCS_DEPLOY_SERVER $DOCS_DEPLOY_SERVER_USER
43+
export GIT_VER=$(git describe --always)
44+
echo "PIP install requirements..."
45+
pip3 install --user -r ./docs/requirements.txt
46+
echo "Building the Docs..."
47+
cd ./docs && build-docs -l en
48+
echo "Deploy the Docs..."
49+
export DOCS_BUILD_DIR=$GITHUB_WORKSPACE/docs/
50+
cd $GITHUB_WORKSPACE/docs
51+
deploy-docs

.github/workflows/gh-pages.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
name: Build GitHub Pages
1717
runs-on: ubuntu-latest
1818
steps:
19-
- uses: actions/checkout@v3
19+
- uses: actions/checkout@v4
2020
- name: Copy Files
2121
env:
2222
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/hil.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
chunks: ${{ steps.gen-chunks.outputs.chunks }}
2626
steps:
2727
- name: Checkout Repository
28-
uses: actions/checkout@v3
28+
uses: actions/checkout@v4
2929

3030
- name: Generate Chunks matrix
3131
id: gen-chunks
@@ -51,7 +51,7 @@ jobs:
5151
chunks: ${{fromJson(needs.gen_chunks.outputs.chunks)}}
5252
steps:
5353
- name: Checkout Repository
54-
uses: actions/checkout@v3
54+
uses: actions/checkout@v4
5555
- name: Build sketches
5656
run: |
5757
bash .github/scripts/tests_build.sh -c -t ${{matrix.chip}} -i ${{matrix.chunks}} -m ${{env.MAX_CHUNKS}}
@@ -78,7 +78,7 @@ jobs:
7878

7979
steps:
8080
- name: Checkout repository
81-
uses: actions/checkout@v3
81+
uses: actions/checkout@v4
8282

8383
- name: Download ${{matrix.chip}}-${{matrix.chunks}} artifacts
8484
uses: actions/download-artifact@v3

.github/workflows/lib.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ jobs:
5757
steps:
5858
# This step makes the contents of the repository available to the workflow
5959
- name: Checkout repository
60-
uses: actions/checkout@v3
60+
uses: actions/checkout@v4
6161

6262
- name: Compile sketch
6363
uses: P-R-O-C-H-Y/compile-sketches@main
@@ -87,7 +87,7 @@ jobs:
8787
steps:
8888
# Check out repository
8989
- name: Checkout repository
90-
uses: actions/checkout@v3
90+
uses: actions/checkout@v4
9191
with:
9292
token: ${{ env.GITHUB_TOKEN }}
9393
fetch-depth: '0'

0 commit comments

Comments
 (0)