Skip to content

Commit 40fb2d1

Browse files
committed
Update Linux CI to VFX 2026
Signed-off-by: Doug Walker <doug.walker@autodesk.com>
1 parent 044f66b commit 40fb2d1

2 files changed

Lines changed: 39 additions & 167 deletions

File tree

.github/workflows/ci_workflow.yml

Lines changed: 38 additions & 166 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,12 @@ jobs:
6161
strategy:
6262
fail-fast: true
6363
matrix:
64-
build: [7, 8, 9, 10, 11, 12, 13, 14, 15]
64+
build: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
6565
include:
6666
# -------------------------------------------------------------------
67-
# VFX CY2025 (Python 3.11)
67+
# VFX CY2026 (Python 3.13)
6868
# -------------------------------------------------------------------
69-
- build: 15
69+
- build: 12
7070
build-type: Debug
7171
build-shared: 'ON'
7272
build-docs: 'OFF'
@@ -77,9 +77,9 @@ jobs:
7777
cxx-compiler: clang++
7878
cc-compiler: clang
7979
compiler-desc: Clang
80-
vfx-cy: 2025
80+
vfx-cy: 2026
8181
install-ext-packages: MISSING
82-
- build: 14
82+
- build: 11
8383
build-type: Release
8484
build-shared: 'ON'
8585
build-docs: 'ON'
@@ -90,9 +90,9 @@ jobs:
9090
cxx-compiler: g++
9191
cc-compiler: gcc
9292
compiler-desc: GCC
93-
vfx-cy: 2025
93+
vfx-cy: 2026
9494
install-ext-packages: ALL
95-
- build: 13
95+
- build: 10
9696
build-type: Release
9797
build-shared: 'OFF'
9898
build-docs: 'OFF'
@@ -103,12 +103,12 @@ jobs:
103103
cxx-compiler: g++
104104
cc-compiler: gcc
105105
compiler-desc: GCC
106-
vfx-cy: 2025
106+
vfx-cy: 2026
107107
install-ext-packages: ALL
108108
# -------------------------------------------------------------------
109-
# VFX CY2024 (Python 3.11)
109+
# VFX CY2025 (Python 3.11)
110110
# -------------------------------------------------------------------
111-
- build: 12
111+
- build: 9
112112
build-type: Debug
113113
build-shared: 'ON'
114114
build-docs: 'OFF'
@@ -119,9 +119,9 @@ jobs:
119119
cxx-compiler: clang++
120120
cc-compiler: clang
121121
compiler-desc: Clang
122-
vfx-cy: 2024
122+
vfx-cy: 2025
123123
install-ext-packages: MISSING
124-
- build: 11
124+
- build: 8
125125
build-type: Release
126126
build-shared: 'ON'
127127
build-docs: 'ON'
@@ -132,9 +132,9 @@ jobs:
132132
cxx-compiler: g++
133133
cc-compiler: gcc
134134
compiler-desc: GCC
135-
vfx-cy: 2024
135+
vfx-cy: 2025
136136
install-ext-packages: ALL
137-
- build: 10
137+
- build: 7
138138
build-type: Release
139139
build-shared: 'OFF'
140140
build-docs: 'OFF'
@@ -145,12 +145,12 @@ jobs:
145145
cxx-compiler: g++
146146
cc-compiler: gcc
147147
compiler-desc: GCC
148-
vfx-cy: 2024
148+
vfx-cy: 2025
149149
install-ext-packages: ALL
150150
# -------------------------------------------------------------------
151-
# VFX CY2023 (Python 3.10)
151+
# VFX CY2024 (Python 3.11)
152152
# -------------------------------------------------------------------
153-
- build: 9
153+
- build: 6
154154
build-type: Debug
155155
build-shared: 'ON'
156156
build-docs: 'OFF'
@@ -161,9 +161,9 @@ jobs:
161161
cxx-compiler: clang++
162162
cc-compiler: clang
163163
compiler-desc: Clang
164-
vfx-cy: 2023
164+
vfx-cy: 2024
165165
install-ext-packages: MISSING
166-
- build: 8
166+
- build: 5
167167
build-type: Release
168168
build-shared: 'ON'
169169
build-docs: 'ON'
@@ -174,9 +174,9 @@ jobs:
174174
cxx-compiler: g++
175175
cc-compiler: gcc
176176
compiler-desc: GCC
177-
vfx-cy: 2023
177+
vfx-cy: 2024
178178
install-ext-packages: ALL
179-
- build: 7
179+
- build: 4
180180
build-type: Release
181181
build-shared: 'OFF'
182182
build-docs: 'OFF'
@@ -187,136 +187,24 @@ jobs:
187187
cxx-compiler: g++
188188
cc-compiler: gcc
189189
compiler-desc: GCC
190-
vfx-cy: 2023
190+
vfx-cy: 2024
191191
install-ext-packages: ALL
192-
env:
193-
CXX: ${{ matrix.cxx-compiler }}
194-
CC: ${{ matrix.cc-compiler }}
195-
steps:
196-
- name: Checkout
197-
uses: actions/checkout@v4
198-
- name: Install docs env
199-
run: share/ci/scripts/linux/dnf/install_docs_env.sh
200-
if: matrix.build-docs == 'ON'
201-
- name: Install tests env
202-
run: share/ci/scripts/linux/dnf/install_tests_env.sh
203-
- name: Create build directories
204-
run: |
205-
mkdir _install
206-
mkdir _build
207-
- name: Configure
208-
run: |
209-
cmake ../. \
210-
-DCMAKE_INSTALL_PREFIX=../_install \
211-
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
212-
-DCMAKE_CXX_STANDARD=${{ matrix.cxx-standard }} \
213-
-DBUILD_SHARED_LIBS=${{ matrix.build-shared }} \
214-
-DOCIO_BUILD_DOCS=${{ matrix.build-docs }} \
215-
-DOCIO_BUILD_OPENFX=${{ matrix.build-openfx }} \
216-
-DOCIO_BUILD_GPU_TESTS=OFF \
217-
-DOCIO_USE_SIMD=${{ matrix.use-simd }} \
218-
-DOCIO_USE_OIIO_FOR_APPS=${{ matrix.use-oiio }} \
219-
-DOCIO_INSTALL_EXT_PACKAGES=${{ matrix.install-ext-packages }} \
220-
-DOCIO_WARNING_AS_ERROR=ON \
221-
-DPython_EXECUTABLE=$(which python)
222-
working-directory: _build
223-
- name: Build
224-
run: |
225-
cmake --build . \
226-
--target install \
227-
--config ${{ matrix.build-type }} \
228-
-- -j$(nproc)
229-
echo "ocio_build_path=$(pwd)" >> $GITHUB_ENV
230-
working-directory: _build
231-
- name: Test
232-
run: ctest -V -C ${{ matrix.build-type }}
233-
working-directory: _build
234-
- name: Test CMake Consumer with shared OCIO
235-
if: matrix.build-shared == 'ON'
236-
run: |
237-
cmake . \
238-
-DCMAKE_PREFIX_PATH=../../../_install \
239-
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}
240-
cmake --build . \
241-
--config ${{ matrix.build-type }}
242-
./consumer
243-
working-directory: _build/tests/cmake-consumer-dist
244-
- name: Test CMake Consumer with static OCIO
245-
if: matrix.build-shared == 'OFF'
246-
# The yaml-cpp_VERSION is set below because Findyaml-cpp.cmake needs it but is unable to
247-
# extract it from the headers, like the other modules.
248-
#
249-
# Prefer the static version of each dependencies by using <pkg>_STATIC_LIBRARY.
250-
# Alternatively, this can be done by setting <pkg>_LIBRARY and <pkg>_INCLUDE_DIR to
251-
# the static version of the package.
252-
run: |
253-
cmake . \
254-
-DCMAKE_PREFIX_PATH=../../../_install \
255-
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
256-
-Dexpat_ROOT=${{ env.ocio_build_path }}/ext/dist \
257-
-Dexpat_STATIC_LIBRARY=ON \
258-
-DImath_ROOT=${{ env.ocio_build_path }}/ext/dist \
259-
-DImath_STATIC_LIBRARY=ON \
260-
-Dpystring_ROOT=${{ env.ocio_build_path }}/ext/dist \
261-
-Dyaml-cpp_ROOT=${{ env.ocio_build_path }}/ext/dist \
262-
-Dyaml-cpp_STATIC_LIBRARY=ON \
263-
-Dyaml-cpp_VERSION=0.8.0 \
264-
-DZLIB_ROOT=${{ env.ocio_build_path }}/ext/dist \
265-
-DZLIB_STATIC_LIBRARY=ON \
266-
-Dminizip-ng_ROOT=${{ env.ocio_build_path }}/ext/dist \
267-
-Dminizip-ng_STATIC_LIBRARY=ON
268-
cmake --build . \
269-
--config ${{ matrix.build-type }}
270-
./consumer
271-
working-directory: _build/tests/cmake-consumer-dist
272-
273-
# ---------------------------------------------------------------------------
274-
# Linux (unsupported Node.js)
275-
# ---------------------------------------------------------------------------
276-
277-
linux-old:
278-
name: 'Linux VFX CY${{ matrix.vfx-cy }}
279-
<${{ matrix.compiler-desc }}
280-
config=${{ matrix.build-type }},
281-
shared=${{ matrix.build-shared }},
282-
simd=${{ matrix.use-simd }},
283-
cxx=${{ matrix.cxx-standard }},
284-
docs=${{ matrix.build-docs }},
285-
oiio=${{ matrix.use-oiio }}>'
286-
# Avoid duplicated checks when a pull_request is opened from a local branch.
287-
if: |
288-
github.event_name == 'push' ||
289-
github.event.pull_request.head.repo.full_name != github.repository
290-
# GH-hosted VM. The build runs in ASWF 'container' defined below.
291-
runs-on: ubuntu-latest
292-
container:
293-
# DockerHub: https://hub.docker.com/u/aswf
294-
# Source: https://github.com/AcademySoftwareFoundation/aswf-docker
295-
image: aswf/ci-ocio:${{ matrix.vfx-cy }}
296-
volumes:
297-
- /node20217:/node20217:rw,rshared
298-
- /node20217:/__e/node20:ro,rshared
299-
strategy:
300-
fail-fast: true
301-
matrix:
302-
build: [1, 2, 3]
303-
include:
304192
# -------------------------------------------------------------------
305-
# VFX CY2022 (Python 3.9)
193+
# VFX CY2023 (Python 3.10)
306194
# -------------------------------------------------------------------
307-
- build: 1
195+
- build: 3
308196
build-type: Debug
309197
build-shared: 'ON'
310198
build-docs: 'OFF'
311199
build-openfx: 'ON'
312200
use-simd: 'ON'
313201
use-oiio: 'ON'
314-
cxx-standard: 17
202+
cxx-standard: 20
315203
cxx-compiler: clang++
316204
cc-compiler: clang
317205
compiler-desc: Clang
318-
vfx-cy: 2022
319-
install-ext-packages: ALL
206+
vfx-cy: 2023
207+
install-ext-packages: MISSING
320208
- build: 2
321209
build-type: Release
322210
build-shared: 'ON'
@@ -328,9 +216,9 @@ jobs:
328216
cxx-compiler: g++
329217
cc-compiler: gcc
330218
compiler-desc: GCC
331-
vfx-cy: 2022
332-
install-ext-packages: MISSING
333-
- build: 3
219+
vfx-cy: 2023
220+
install-ext-packages: ALL
221+
- build: 1
334222
build-type: Release
335223
build-shared: 'OFF'
336224
build-docs: 'OFF'
@@ -341,30 +229,14 @@ jobs:
341229
cxx-compiler: g++
342230
cc-compiler: gcc
343231
compiler-desc: GCC
344-
vfx-cy: 2022
232+
vfx-cy: 2023
345233
install-ext-packages: ALL
346234
env:
347235
CXX: ${{ matrix.cxx-compiler }}
348236
CC: ${{ matrix.cc-compiler }}
349237
steps:
350-
# Install nodejs 20 with glibc 2.17, to work around the face that the
351-
# GHA runners are insisting on a node version that is too new for the
352-
# glibc in the ASWF containers prior to 2023.
353-
- name: Install nodejs20glibc2.17
354-
run: |
355-
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 -
356-
# We would like to use harden-runner, but it flags too many false
357-
# positives, every time we download a dependency. We should use it only
358-
# on CI runs where we are producing artifacts that users might rely on.
359-
# - name: Harden Runner
360-
# uses: step-security/harden-runner@248ae51c2e8cc9622ecf50685c8bf7150c6e8813 # v1.4.3
361-
# with:
362-
# egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs
363-
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
364-
# Note: can't upgrade to actions/checkout 4.0 because it needs newer
365-
# glibc than these containers have.
366238
- name: Checkout
367-
uses: actions/checkout@v3
239+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
368240
- name: Install docs env
369241
run: share/ci/scripts/linux/dnf/install_docs_env.sh
370242
if: matrix.build-docs == 'ON'
@@ -517,11 +389,11 @@ jobs:
517389
python-version: '3.9'
518390
steps:
519391
- name: Setup Python
520-
uses: actions/setup-python@v5
392+
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
521393
with:
522394
python-version: ${{ matrix.python-version }}
523395
- name: Checkout
524-
uses: actions/checkout@v4
396+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
525397
- name: Install docs env
526398
run: share/ci/scripts/macos/install_docs_env.sh
527399
if: matrix.build-docs == 'ON'
@@ -643,11 +515,11 @@ jobs:
643515
python-version: '3.12'
644516
steps:
645517
- name: Setup Python
646-
uses: actions/setup-python@v5
518+
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
647519
with:
648520
python-version: ${{ matrix.python-version }}
649521
- name: Checkout
650-
uses: actions/checkout@v4
522+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
651523
- name: Install docs env
652524
run: share/ci/scripts/macos/install_docs_env.sh
653525
if: matrix.build-docs == 'ON'
@@ -791,11 +663,11 @@ jobs:
791663
python-version: '3.9'
792664
steps:
793665
- name: Setup Python
794-
uses: actions/setup-python@v5
666+
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
795667
with:
796668
python-version: ${{ matrix.python-version }}
797669
- name: Checkout
798-
uses: actions/checkout@v4
670+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
799671
- name: Install docs env
800672
run: |
801673
DOXYGEN_PATH=$GITHUB_WORKSPACE/doxygen

src/OpenColorIO/ops/gradingtone/GradingTone.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ void GradingTone::validate() const
6060
static constexpr double MinSHTol = MinSH - Error;
6161
static constexpr double MaxSHTol = MaxSH + Error;
6262
static constexpr double MinWSCTol = MinWSC - Error;
63-
static constexpr double MaxSCTol = MaxSC - Error;
63+
static constexpr double MaxSCTol = MaxSC + Error;
6464

6565
{
6666
const auto & bd = m_blacks;

0 commit comments

Comments
 (0)