@@ -93,55 +93,50 @@ jobs:
9393 fail-fast : false
9494 matrix :
9595 include :
96- - clang : " 3.9"
97- runner : ubuntu-20.04
98- archive : bionic
99- - clang : " 4.0"
100- runner : ubuntu-20.04
101- archive : bionic
102- - clang : " 5.0"
103- runner : ubuntu-20.04
104- archive : bionic
105- - clang : " 6.0"
106- runner : ubuntu-20.04
107- archive : bionic
10896 - clang : " 7"
109- runner : ubuntu-20.04
97+ runner : ubuntu-22.04
98+ archive : focal
11099 - clang : " 8"
111100 cxxflags : -fsanitize=leak -fno-sanitize-recover=all
112- runner : ubuntu-20.04
101+ runner : ubuntu-22.04
102+ archive : focal
113103 - clang : " 9"
114104 cxxflags : -fsanitize=undefined -fno-sanitize-recover=all
115- runner : ubuntu-20.04
105+ runner : ubuntu-22.04
106+ archive : focal
116107 - clang : " 10"
117108 cxxflags : -fsanitize=address -fno-sanitize-recover=all
118- runner : ubuntu-20.04
109+ runner : ubuntu-22.04
110+ archive : focal
119111 - clang : " 11"
120112 runner : ubuntu-22.04
121113 - clang : " 12"
122114 runner : ubuntu-22.04
123115 - clang : " 13"
124116 runner : ubuntu-22.04
125- - clang : " 14"
126- runner : ubuntu-22.04
127- - clang : " 15"
128- runner : ubuntu-22.04
129- runs-on : ${{ matrix.runner }}
117+ - clang : 14
118+ - clang : 15
119+ - clang : 16
120+ - clang : 17
121+ - clang : 18
122+ - clang : 19
123+ runs-on : ${{ matrix.runner || 'ubuntu-latest' }}
130124 steps :
131125 - name : Add archive repositories
132126 if : matrix.archive
133127 run : |
128+ sudo gpg --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
129+ sudo gpg --export 3B4FE6ACC0B21F32 | sudo tee /etc/apt/trusted.gpg.d/ubuntu-keyring.gpg > /dev/null
134130 sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} main'
135131 sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} universe'
136132 - name : Install Clang ${{ matrix.clang }}
137133 run : |
138134 sudo apt-get update
139135 sudo apt-get install -y clang-${{ matrix.clang }}
140136 - name : Install libc++ ${{ matrix.clang }}
141- if : matrix.clang >= 11
142137 run : sudo apt-get install -y libc++-${{ matrix.clang }}-dev libc++abi-${{ matrix.clang }}-dev
143138 - name : Install libunwind ${{ matrix.clang }}
144- if : matrix.clang == 12 # dependency is missing in Ubuntu 22.04
139+ if : matrix.clang == 12 # dependency is missing in Ubuntu 22.04
145140 run : sudo apt-get install -y libunwind-${{ matrix.clang }}-dev
146141 - name : Checkout
147142 uses : actions/checkout@v4
@@ -163,7 +158,7 @@ jobs:
163158 conf_test :
164159 name : Test configuration on Linux
165160 needs : [gcc, clang]
166- runs-on : ubuntu-20 .04
161+ runs-on : ubuntu-22 .04
167162 steps :
168163 - name : Install
169164 run : |
@@ -184,36 +179,34 @@ jobs:
184179
185180 conf_test_windows :
186181 name : Test configuration on Windows
187- runs-on : windows-2019
182+ runs-on : windows-2022
188183 needs : [gcc, clang]
189184 steps :
190185 - name : Checkout
191186 uses : actions/checkout@v4
192187 - name : 32-bit
193188 run : |
194- call "C:\Program Files (x86) \Microsoft Visual Studio\2019 \Enterprise\VC\Auxiliary\Build\vcvars32.bat"
189+ call "C:\Program Files\Microsoft Visual Studio\2022 \Enterprise\VC\Auxiliary\Build\vcvars32.bat"
195190 cl /Isrc extras/conf_test/x86.cpp
196191 shell : cmd
197192 - name : 64-bit
198193 run : |
199- call "C:\Program Files (x86) \Microsoft Visual Studio\2019 \Enterprise\VC\Auxiliary\Build\vcvars64.bat"
194+ call "C:\Program Files\Microsoft Visual Studio\2022 \Enterprise\VC\Auxiliary\Build\vcvars64.bat"
200195 cl /Isrc extras/conf_test/x64.cpp
201196 shell : cmd
202197
203198 xcode :
204199 name : XCode
205200 needs : clang
206- runs-on : macos-13
201+ runs-on : macos-26
207202 strategy :
208203 fail-fast : false
209204 matrix :
210205 include :
211- - xcode : " 14.1"
212- - xcode : " 14.2"
213- - xcode : " 14.3.1"
214- - xcode : " 15.0.1"
215- - xcode : " 15.1"
216- - xcode : " 15.2"
206+ - xcode : " 26.0"
207+ - xcode : " 26.1"
208+ - xcode : " 26.2"
209+ - xcode : " 26.3"
217210 steps :
218211 - name : Checkout
219212 uses : actions/checkout@v4
@@ -257,7 +250,7 @@ jobs:
257250 board : arduino:avr:uno
258251 - core : arduino:samd
259252 board : arduino:samd:mkr1000
260- runs-on : ubuntu-20 .04
253+ runs-on : ubuntu-22 .04
261254 steps :
262255 - name : Checkout
263256 uses : actions/checkout@v4
@@ -403,7 +396,9 @@ jobs:
403396 - name : Checkout
404397 uses : actions/checkout@v4
405398 - name : Install Particle CLI
406- run : sudo npm install -g particle-cli
399+ run : |
400+ bash <( curl -sL https://particle.io/install-cli )
401+ echo "$HOME/bin" >> $GITHUB_PATH
407402 - name : Login to Particle
408403 run : particle login -t "${{ secrets.PARTICLE_TOKEN }}"
409404 - name : Compile
@@ -412,7 +407,7 @@ jobs:
412407 arm :
413408 name : GCC for ARM processor
414409 needs : gcc
415- runs-on : ubuntu-20 .04
410+ runs-on : ubuntu-22 .04
416411 steps :
417412 - name : Install
418413 run : |
@@ -431,7 +426,7 @@ jobs:
431426 coverage :
432427 needs : gcc
433428 name : Coverage
434- runs-on : ubuntu-20 .04
429+ runs-on : ubuntu-22 .04
435430 steps :
436431 - name : Install
437432 run : sudo apt-get install -y lcov ninja-build
@@ -463,7 +458,7 @@ jobs:
463458 valgrind :
464459 needs : gcc
465460 name : Valgrind
466- runs-on : ubuntu-20 .04
461+ runs-on : ubuntu-22 .04
467462 steps :
468463 - name : Install
469464 run : |
@@ -485,24 +480,24 @@ jobs:
485480 clang-tidy :
486481 needs : clang
487482 name : Clang-Tidy
488- runs-on : ubuntu-20.04
483+ runs-on : ubuntu-latest
489484 steps :
490485 - name : Install
491- run : sudo apt-get install -y clang-tidy cmake ninja-build
486+ run : sudo apt-get install -y clang-tidy libc++-dev libc++abi-dev
492487 - name : Checkout
493488 uses : actions/checkout@v4
494489 - name : Configure
495- run : cmake -G Ninja -DCMAKE_CXX_CLANG_TIDY="clang-tidy-10 ;--warnings-as-errors=*" -DCMAKE_BUILD_TYPE=Debug .
490+ run : cmake -G Ninja -DCMAKE_CXX_CLANG_TIDY="clang-tidy;--warnings-as-errors=*" -DCMAKE_BUILD_TYPE=Debug .
496491 env :
497- CC : clang-10
498- CXX : clang++-10
492+ CC : clang
493+ CXX : clang++
499494 - name : Check
500495 run : cmake --build . -- -k 0
501496
502497 amalgamate :
503498 needs : gcc
504499 name : Amalgamate ArduinoJson.h
505- runs-on : ubuntu-20 .04
500+ runs-on : ubuntu-22 .04
506501 steps :
507502 - name : Checkout
508503 uses : actions/checkout@v4
@@ -578,7 +573,7 @@ jobs:
578573
579574 codeql :
580575 name : CodeQL
581- runs-on : ubuntu-20 .04
576+ runs-on : ubuntu-22 .04
582577 needs : gcc
583578
584579 permissions :
@@ -587,20 +582,20 @@ jobs:
587582 security-events : write
588583
589584 steps :
590- - name : Checkout repository
591- uses : actions/checkout@v4
585+ - name : Checkout repository
586+ uses : actions/checkout@v4
592587
593- - name : Initialize CodeQL
594- uses : github/codeql-action/init@v3
595- with :
596- languages : cpp
588+ - name : Initialize CodeQL
589+ uses : github/codeql-action/init@v3
590+ with :
591+ languages : cpp
597592
598- - name : Build
599- run : |
600- cmake -DCMAKE_BUILD_TYPE=Debug .
601- cmake --build .
593+ - name : Build
594+ run : |
595+ cmake -DCMAKE_BUILD_TYPE=Debug .
596+ cmake --build .
602597
603- - name : Perform CodeQL Analysis
604- uses : github/codeql-action/analyze@v3
605- with :
606- category : " /language:cpp"
598+ - name : Perform CodeQL Analysis
599+ uses : github/codeql-action/analyze@v3
600+ with :
601+ category : " /language:cpp"
0 commit comments