Skip to content

Commit 346f73b

Browse files
authored
Merge branch 'AcademySoftwareFoundation:main' into CUDA
2 parents 2a9c2ae + 1afbdb4 commit 346f73b

100 files changed

Lines changed: 1237 additions & 348 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/workflows/build-steps.yml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ on:
3535
type: string
3636
fmt_ver:
3737
type: string
38+
fmt_commit:
39+
type: string
3840
opencolorio_ver:
3941
type: string
4042
openexr_ver:
@@ -109,6 +111,7 @@ jobs:
109111
CTEST_TEST_TIMEOUT: ${{inputs.ctest_test_timeout}}
110112
USE_SIMD: ${{inputs.simd}}
111113
fmt_BUILD_VERSION: ${{inputs.fmt_ver}}
114+
fmt_GIT_COMMIT: ${{inputs.fmt_commit}}
112115
OPENCOLORIO_VERSION: ${{inputs.opencolorio_ver}}
113116
OPENEXR_VERSION: ${{inputs.openexr_ver}}
114117
PYBIND11_VERSION: ${{inputs.pybind11_ver}}
@@ -131,7 +134,10 @@ jobs:
131134
run: |
132135
curl --silent https://unofficial-builds.nodejs.org/download/release/v20.18.1/node-v20.18.1-linux-x64-glibc-217.tar.xz | tar -xJ --strip-components 1 -C /node20217 -f -
133136
- name: Checkout repo
134-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
137+
# The one we wish we could use is:
138+
# uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
139+
# But 4.3.0 is the newest that works for our ASWF VFX Platform 2022 containers.
140+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
135141
- name: Build setup
136142
shell: bash
137143
run: |
@@ -143,6 +149,9 @@ jobs:
143149
run: echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
144150
- name: ccache-restore
145151
id: ccache-restore
152+
# The one we wish we could use is:
153+
# uses: actions/cache/restore@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
154+
# But 4.3.0 is the newest that works for our ASWF VFX Platform 2022 containers.
146155
uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
147156
with:
148157
path: ${{ env.CCACHE_DIR }}
@@ -162,14 +171,14 @@ jobs:
162171
fi
163172
- name: Install sonar-scanner and build-wrapper
164173
if: inputs.sonar == '1'
165-
uses: sonarsource/sonarqube-scan-action@fd88b7d7ccbaefd23d8f36f73b59db7a3d246602 # v6.0.0
174+
uses: sonarsource/sonarqube-scan-action@a31c9398be7ace6bbfaf30c0bd5d415f843d45e9 # v7.0.0
166175
- name: Build
167176
if: inputs.skip_build != '1'
168177
shell: bash
169178
run: src/build-scripts/ci-build.bash
170179
- name: Check out ABI standard
171180
if: inputs.abi_check != ''
172-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
181+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
173182
with:
174183
ref: ${{inputs.abi_check}}
175184
path: abi_standard
@@ -183,6 +192,9 @@ jobs:
183192
popd
184193
- name: ccache-save
185194
id: ccache-save
195+
# The one we wish we could use is:
196+
# uses: actions/cache/save@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
197+
# But 4.3.0 is the newest that works for our ASWF VFX Platform 2022 containers.
186198
uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
187199
with:
188200
path: ${{ env.CCACHE_DIR }}
@@ -228,7 +240,7 @@ jobs:
228240
time make doxygen
229241
time make sphinx
230242
- name: Upload testsuite debugging artifacts
231-
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
243+
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
232244
if: ${{ failure() || inputs.build_docs == '1' || inputs.benchmark == '1' || inputs.abi_check != '' }}
233245
with:
234246
name: oiio-${{github.job}}-${{inputs.nametag}}

.github/workflows/ci.yml

Lines changed: 32 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ jobs:
5656
depcmds: ${{ matrix.depcmds }}
5757
extra_artifacts: ${{ matrix.extra_artifacts }}
5858
fmt_ver: ${{ matrix.fmt_ver }}
59+
fmt_commit: ${{ matrix.fmt_commit }}
5960
opencolorio_ver: ${{ matrix.opencolorio_ver }}
6061
openexr_ver: ${{ matrix.openexr_ver }}
6162
pybind11_ver: ${{ matrix.pybind11_ver }}
@@ -92,11 +93,13 @@ jobs:
9293
python_ver: 3.9
9394
simd: "avx2,f16c"
9495
fmt_ver: 9.0.0
96+
fmt_commit: c4ee726532178e556d923372f29163bd206d7732
9597
opencolorio_ver: v2.3.0
9698
pybind11_ver: v2.9.0
9799
setenvs: export FREETYPE_VERSION=VER-2-12-0
98100
BUILD_PNG_VERSION=1.6.30
99101
WebP_BUILD_VERSION=1.5.0
102+
WebP_GIT_COMMIT=a4d7a715337ded4451fec90ff8ce79728e04126c
100103
optional_deps_append: 'FFmpeg;LibRaw;Ptex;Qt6'
101104
- desc: VP2022 clang13/C++17 py39 avx2 exr3.1 ocio2.3
102105
nametag: linux-vfx2022.clang13
@@ -112,6 +115,7 @@ jobs:
112115
python_ver: 3.9
113116
simd: "avx2,f16c"
114117
fmt_ver: 9.1.0
118+
fmt_commit: a33701196adfad74917046096bf5a2aa0ab0bb50
115119
setenvs: export FREETYPE_VERSION=VER-2-12-0
116120
BUILD_PNG_VERSION=1.6.30
117121
optional_deps_append: 'FFmpeg;LibRaw;Ptex;Qt6'
@@ -124,6 +128,7 @@ jobs:
124128
old_node: 1
125129
cxx_std: 17
126130
fmt_ver: 9.0.0
131+
fmt_commit: c4ee726532178e556d923372f29163bd206d7732
127132
opencolorio_ver: v2.3.0
128133
openexr_ver: v3.1.0
129134
pybind11_ver: v2.7.0
@@ -146,6 +151,7 @@ jobs:
146151
cxx_compiler: clang++
147152
cxx_std: 17
148153
fmt_ver: 9.0.0
154+
fmt_commit: c4ee726532178e556d923372f29163bd206d7732
149155
opencolorio_ver: v2.3.0
150156
openexr_ver: v3.1.0
151157
pybind11_ver: v2.7.0
@@ -168,6 +174,7 @@ jobs:
168174
old_node: 1
169175
cxx_std: 17
170176
fmt_ver: 9.0.0
177+
fmt_commit: c4ee726532178e556d923372f29163bd206d7732
171178
opencolorio_ver: v2.3.0
172179
openexr_ver: v3.1.0
173180
pybind11_ver: v2.7.0
@@ -205,6 +212,7 @@ jobs:
205212
depcmds: ${{ matrix.depcmds }}
206213
extra_artifacts: ${{ matrix.extra_artifacts }}
207214
fmt_ver: ${{ matrix.fmt_ver }}
215+
fmt_commit: ${{ matrix.fmt_commit }}
208216
opencolorio_ver: ${{ matrix.opencolorio_ver }}
209217
openexr_ver: ${{ matrix.openexr_ver }}
210218
pybind11_ver: ${{ matrix.pybind11_ver }}
@@ -238,6 +246,7 @@ jobs:
238246
python_ver: "3.10"
239247
simd: "avx2,f16c"
240248
fmt_ver: 10.1.1
249+
fmt_commit: f5e54359df4c26b6230fc61d38aa294581393084
241250
pybind11_ver: v2.10.0
242251
setenvs: export PUGIXML_VERSION=v1.13
243252
optional_deps_append: 'LibRaw;Ptex;Qt6'
@@ -249,6 +258,7 @@ jobs:
249258
python_ver: "3.11"
250259
simd: "avx2,f16c"
251260
fmt_ver: 10.1.1
261+
fmt_commit: f5e54359df4c26b6230fc61d38aa294581393084
252262
pybind11_ver: v2.12.0
253263
setenvs: export PUGIXML_VERSION=v1.14
254264
optional_deps_append: "LibRaw"
@@ -262,6 +272,7 @@ jobs:
262272
python_ver: "3.11"
263273
simd: "avx2,f16c"
264274
fmt_ver: 10.1.1
275+
fmt_commit: f5e54359df4c26b6230fc61d38aa294581393084
265276
pybind11_ver: v2.12.0
266277
setenvs: export PUGIXML_VERSION=v1.14
267278
optional_deps_append: "LibRaw"
@@ -273,6 +284,7 @@ jobs:
273284
python_ver: "3.11"
274285
simd: "avx2,f16c"
275286
fmt_ver: 11.2.0
287+
fmt_commit: 40626af88bd7df9a5fb80be7b25ac85b122d6c21
276288
pybind11_ver: v2.13.6
277289
benchmark: 1
278290
setenvs: export PUGIXML_VERSION=v1.15
@@ -287,6 +299,7 @@ jobs:
287299
python_ver: "3.11"
288300
simd: "avx2,f16c"
289301
fmt_ver: 11.2.0
302+
fmt_commit: 40626af88bd7df9a5fb80be7b25ac85b122d6c21
290303
pybind11_ver: v2.13.6
291304
setenvs: export PUGIXML_VERSION=v1.15
292305
optional_deps_append: "openjph;Qt6"
@@ -310,6 +323,7 @@ jobs:
310323
cc_compiler: icx
311324
cxx_compiler: icpx
312325
fmt_ver: 11.2.0
326+
fmt_commit: 40626af88bd7df9a5fb80be7b25ac85b122d6c21
313327
python_ver: "3.11"
314328
pybind11_ver: v2.13.6
315329
simd: "avx2,f16c"
@@ -356,6 +370,7 @@ jobs:
356370
container: aswf/ci-oiio:2025
357371
build_type: RelWithDebInfo
358372
fmt_ver: 11.1.4
373+
fmt_commit: 123913715afeb8a437e6388b4473fcc4753e1c9a
359374
python_ver: "3.11"
360375
pybind11_ver: v3.0.0
361376
simd: "avx2,f16c"
@@ -385,6 +400,7 @@ jobs:
385400
depcmds: ${{ matrix.depcmds }}
386401
extra_artifacts: ${{ matrix.extra_artifacts }}
387402
fmt_ver: ${{ matrix.fmt_ver }}
403+
fmt_commit: ${{ matrix.fmt_commit }}
388404
opencolorio_ver: ${{ matrix.opencolorio_ver }}
389405
openexr_ver: ${{ matrix.openexr_ver }}
390406
pybind11_ver: ${{ matrix.pybind11_ver }}
@@ -437,6 +453,7 @@ jobs:
437453
cxx_compiler: g++-13
438454
cxx_std: 20
439455
fmt_ver: 12.1.0
456+
fmt_commit: 407c905e45ad75fc29bf0f9bb7c5c2fd3475976f
440457
opencolorio_ver: v2.5.0
441458
openexr_ver: v3.4.3
442459
pybind11_ver: v3.0.2
@@ -479,9 +496,9 @@ jobs:
479496
WEBP_VERSION=main
480497
OIIO_HARDENING=2
481498
EXTRA_DEP_PACKAGES="python3.12-dev python3-numpy"
482-
USE_OPENVDB=0
483499
FREETYPE_VERSION=master
484-
QT_VERSION=0 INSTALL_OPENCV=0
500+
OpenImageIO_DEPENDENCY_BUILD_ALLOW_UNVERIFIED_TAGS=ON
501+
QT_VERSION=0 INSTALL_OPENCV=0 USE_OPENVDB=0
485502
# The installed OpenVDB has a TLS conflict with Python 3.8
486503
# Ensure we are testing all the deps we think we are. We would
487504
# like this test to have minimal missing dependencies.
@@ -509,6 +526,7 @@ jobs:
509526
cc_compiler: clang
510527
cxx_std: 17
511528
fmt_ver: 10.1.1
529+
fmt_commit: f5e54359df4c26b6230fc61d38aa294581393084
512530
opencolorio_ver: v2.3.0
513531
openexr_ver: v3.1.13
514532
pybind11_ver: v2.12.0
@@ -522,6 +540,7 @@ jobs:
522540
cxx_compiler: g++-14
523541
cxx_std: 20
524542
fmt_ver: 12.1.0
543+
fmt_commit: 407c905e45ad75fc29bf0f9bb7c5c2fd3475976f
525544
opencolorio_ver: v2.5.0
526545
openexr_ver: v3.4.3
527546
pybind11_ver: v3.0.2
@@ -543,6 +562,7 @@ jobs:
543562
cxx_compiler: clang++-18
544563
cxx_std: 20
545564
fmt_ver: 12.1.0
565+
fmt_commit: 407c905e45ad75fc29bf0f9bb7c5c2fd3475976f
546566
opencolorio_ver: v2.5.0
547567
openexr_ver: v3.4.3
548568
pybind11_ver: v3.0.2
@@ -577,6 +597,7 @@ jobs:
577597
depcmds: ${{ matrix.depcmds }}
578598
extra_artifacts: ${{ matrix.extra_artifacts }}
579599
fmt_ver: ${{ matrix.fmt_ver }}
600+
fmt_commit: ${{ matrix.fmt_commit }}
580601
opencolorio_ver: ${{ matrix.opencolorio_ver }}
581602
openexr_ver: ${{ matrix.openexr_ver }}
582603
pybind11_ver: ${{ matrix.pybind11_ver }}
@@ -605,8 +626,8 @@ jobs:
605626
- desc: MacOS-15-Intel aclang17/C++17/py3.13
606627
runner: macos-15-intel
607628
nametag: MacOS-15-Intel
608-
cc_compiler: clang
609-
cxx_compiler: clang++
629+
cc_compiler: /usr/bin/clang
630+
cxx_compiler: /usr/bin/clang++
610631
cxx_std: 17
611632
python_ver: "3.14"
612633
simd: sse4.2,avx2
@@ -618,23 +639,23 @@ jobs:
618639
- desc: MacOS-14-ARM aclang15/C++20/py3.13
619640
runner: macos-14
620641
nametag: macos14-arm-py313
621-
cc_compiler: clang
622-
cxx_compiler: clang++
642+
cc_compiler: /usr/bin/clang
643+
cxx_compiler: /usr/bin/clang++
623644
cxx_std: 20
624645
python_ver: "3.13"
625646
- desc: MacOS-15-ARM aclang16/C++20/py3.13
626647
runner: macos-15
627648
nametag: macos15-arm-py313
628-
cc_compiler: clang
629-
cxx_compiler: clang++
649+
cc_compiler: /usr/bin/clang
650+
cxx_compiler: /usr/bin/clang++
630651
cxx_std: 20
631652
python_ver: "3.13"
632653
benchmark: 1
633654
- desc: MacOS-26-ARM aclang16/C++20/py3.13
634655
runner: macos-26
635656
nametag: macos26-arm-py313
636-
cc_compiler: clang
637-
cxx_compiler: clang++
657+
cc_compiler: /usr/bin/clang
658+
cxx_compiler: /usr/bin/clang++
638659
cxx_std: 20
639660
python_ver: "3.14"
640661
benchmark: 1
@@ -658,6 +679,7 @@ jobs:
658679
depcmds: ${{ matrix.depcmds }}
659680
extra_artifacts: ${{ matrix.extra_artifacts }}
660681
fmt_ver: ${{ matrix.fmt_ver }}
682+
fmt_commit: ${{ matrix.fmt_commit }}
661683
opencolorio_ver: ${{ matrix.opencolorio_ver }}
662684
openexr_ver: ${{ matrix.openexr_ver }}
663685
pybind11_ver: ${{ matrix.pybind11_ver }}

.github/workflows/release-notice.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ jobs:
2323
slack_bot_token: ${{ secrets.SLACK_BOT_TOKEN }}
2424
slack_channel: "#release-announcements"
2525
project_logo: "https://artwork.aswf.io/projects/openimageio/icon/color/openimageio-icon-color.png"
26-
uses: jmertic/slack-release-notifier@main
26+
uses: jmertic/slack-release-notifier@35fad060af5559c24decdec0f701e6ba93566704 # circa Mar 2026

.github/workflows/release-sign.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ jobs:
4949
shell: bash
5050

5151
- name: Checkout repo
52-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
52+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
5353

5454
- name: Create archive
5555
run: git archive --format=tar.gz -o ${OPENIMAGEIO_TARBALL} --prefix ${OPENIMAGEIO_PREFIX} ${TAG}
5656

5757
- name: Sign archive with Sigstore
58-
uses: sigstore/gh-action-sigstore-python@f514d46b907ebcd5bedc05145c03b69c1edd8b46 # v3.0.0
58+
uses: sigstore/gh-action-sigstore-python@a5caf349bc536fbef3668a10ed7f5cd309a4b53d # v3.2.0
5959
with:
6060
inputs: ${{ env.OPENIMAGEIO_TARBALL }}
6161
upload-signing-artifacts: false

.github/workflows/scorecard.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ jobs:
4040

4141
steps:
4242
- name: Checkout repo
43-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
43+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
4444
with:
4545
persist-credentials: false
4646

4747
- name: "Run analysis"
48-
uses: ossf/scorecard-action@0864cf19026789058feabb7e87baa5f140aac736 # v2.3.1
48+
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
4949
with:
5050
results_file: results.sarif
5151
results_format: sarif
@@ -64,14 +64,14 @@ jobs:
6464
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
6565
# format to the repository Actions tab.
6666
- name: "Upload artifact"
67-
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
67+
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
6868
with:
6969
name: SARIF file
7070
path: results.sarif
7171
retention-days: 5
7272

7373
# Upload the results to GitHub's code scanning dashboard.
7474
- name: "Upload to code-scanning"
75-
uses: github/codeql-action/upload-sarif@83f0fe6c4988d98a455712a27f0255212bba9bd4 # v2.3.6
75+
uses: github/codeql-action/upload-sarif@820e3160e279568db735cee8ed8f8e77a6da7818 # v3.32.6
7676
with:
7777
sarif_file: results.sarif

0 commit comments

Comments
 (0)