3232
3333permissions : read-all
3434
35+ # Allow subsequent pushes to the same PR or REF to cancel any previous jobs.
36+ concurrency :
37+ group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
38+ cancel-in-progress : true
39+
3540
3641jobs :
3742
@@ -176,51 +181,42 @@ jobs:
176181 # egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs
177182 - name : Checkout repo
178183 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
179- - name : Prepare ccache timestamp
180- id : ccache_cache_keys
181- run : echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
182- - name : ccache
183- id : ccache
184- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
185- with :
186- path : /tmp/ccache
187- key : ${{github.job}}-${{matrix.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
188- restore-keys : ${{github.job}}-
189184 - name : Build setup
190185 run : |
191186 ${{matrix.setenvs}}
192187 src/build-scripts/ci-startup.bash
188+ - name : Prepare ccache timestamp
189+ id : ccache_cache_keys
190+ shell : bash
191+ run : echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
192+ - name : ccache-restore
193+ id : ccache-restore
194+ uses : actions/cache/restore@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
195+ with :
196+ path : ${{ env.CCACHE_DIR }}
197+ # path: ./ccache
198+ key : ${{matrix.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
199+ restore-keys : ${{matrix.nametag}}
193200 - name : Dependencies
194201 run : |
195202 ${{matrix.depcmds}}
196203 src/build-scripts/gh-installdeps.bash
197204 - name : Build
198205 if : matrix.skip_build != '1'
199206 run : src/build-scripts/ci-build.bash
207+ - name : ccache-save
208+ id : ccache-save
209+ uses : actions/cache/save@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
210+ with :
211+ path : ${{ env.CCACHE_DIR }}
212+ key : ${{matrix.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
200213 - name : Testsuite
201214 if : matrix.skip_tests != '1'
202215 run : src/build-scripts/ci-test.bash
203216 - name : Benchmarks
204217 if : matrix.benchmark == '1'
205218 shell : bash
206219 run : src/build-scripts/ci-benchmark.bash
207- - name : Check out ABI standard
208- if : matrix.abi_check != ''
209- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
210- with :
211- ref : ${{matrix.abi_check}}
212- path : abi_standard
213- - name : Build ABI standard
214- if : matrix.abi_check != ''
215- run : |
216- mkdir -p abi_standard/build
217- pushd abi_standard
218- src/build-scripts/ci-build.bash
219- popd
220- - name : Check ABI
221- if : matrix.abi_check != ''
222- run : |
223- src/build-scripts/ci-abicheck.bash ./build abi_standard/build libOpenImageIO libOpenImageIO_Util
224220 - name : Build Docs
225221 if : matrix.build_docs == '1'
226222 run : |
@@ -416,12 +412,12 @@ jobs:
416412 cxx_std : 20
417413 fmt_ver : 11.2.0
418414 opencolorio_ver : v2.4.2
419- openexr_ver : v3.3.3
415+ openexr_ver : v3.3.4
420416 pybind11_ver : v2.13.6
421417 python_ver : " 3.12"
422418 simd : avx2,f16c
423- setenvs : export LIBJPEGTURBO_VERSION=3.1.0
424- LIBRAW_VERSION=0.21.3
419+ setenvs : export LIBJPEGTURBO_VERSION=3.1.1
420+ LIBRAW_VERSION=0.21.4
425421 LIBTIFF_VERSION=v4.7.0
426422 OPENJPEG_VERSION=v2.5.3
427423 PTEX_VERSION=v2.4.3
@@ -452,14 +448,9 @@ jobs:
452448 OIIO_CMAKE_FLAGS="-DOIIO_HARDENING=2"
453449 EXTRA_DEP_PACKAGES="python3.12-dev python3-numpy"
454450 USE_OPENVDB=0
455- SKIP_APT_GET_UPDATE=1
456451 FREETYPE_VERSION=master
457452 QT_VERSION=0 INSTALL_OPENCV=0
458453 # The installed OpenVDB has a TLS conflict with Python 3.8
459- # Disabling the `apt-get update` in gh-installdeps.bash
460- # addresses a job killing problem in the GHA Ubuntu
461- # 24.04 runners that cropped up circa May 29 2024. Maybe
462- # it will be fixed and we can do the update again later?
463454 - desc : all local builds gcc12 C++17 avx2 exr3.2 ocio2.3
464455 nametag : linux-local-builds
465456 runner : ubuntu-22.04
@@ -477,7 +468,7 @@ jobs:
477468 WEBP_VERSION=v1.4.0
478469
479470 - desc : clang15 C++17 avx2 exr3.1 ocio2.2
480- nametag : linux-clang14
471+ nametag : linux-clang15
481472 runner : ubuntu-22.04
482473 cxx_compiler : clang++-15
483474 cc_compiler : clang-15
@@ -513,7 +504,7 @@ jobs:
513504 sudo rm -rf /usr/local/include/OpenEXR
514505 sudo rm -rf /usr/local/lib64/cmake/{IlmBase,OpenEXR}
515506 - desc : Linux ARM latest releases gcc14 C++20 py3.12 exr3.3 ocio2.4
516- nametag : linux-latest-releases
507+ nametag : linux-arm- latest-releases
517508 runner : ubuntu-24.04-arm
518509 cc_compiler : gcc-14
519510 cxx_compiler : g++-14
@@ -533,7 +524,7 @@ jobs:
533524 FREETYPE_VERSION=VER-2-13-3
534525 USE_OPENVDB=0
535526 - desc : Linux ARM latest releases clang18 C++20 py3.12 exr3.3 ocio2.4
536- nametag : linux-latest-releases
527+ nametag : linux-arm- latest-releases-clang
537528 runner : ubuntu-24.04-arm
538529 cc_compiler : clang-18
539530 cxx_compiler : clang++-18
@@ -658,13 +649,6 @@ jobs:
658649 fail-fast : false
659650 matrix :
660651 include :
661- - desc : Windows-2019 VS2019
662- runner : windows-2019
663- nametag : windows-2019
664- vsver : 2019
665- generator : " Visual Studio 16 2019"
666- python_ver : " 3.9"
667- setenvs : export OPENIMAGEIO_PYTHON_LOAD_DLLS_FROM_PATH=1
668652 - desc : Windows-2022 VS2022
669653 runner : windows-2022
670654 nametag : windows-2022
0 commit comments