Skip to content

Commit 4276685

Browse files
committed
Merge branch 'main-github_ASF' into cozdas/RB-2.5.1_test
Signed-off-by: cuneyt.ozdas <[email protected]>
2 parents 592a122 + 181303e commit 4276685

40 files changed

+66479
-276
lines changed

.github/dependabot.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# SPDX-License-Identifier: BSD-3-Clause
2+
# Copyright Contributors to the OpenColorIO Project.
3+
4+
version: 2
5+
6+
updates:
7+
8+
- package-ecosystem: "github-actions"
9+
directory: "/"
10+
schedule:
11+
interval: "weekly"
12+
13+
- package-ecosystem: "pip"
14+
directory: "/"
15+
schedule:
16+
interval: "weekly"

.github/workflows/ci_workflow.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,7 @@ jobs:
459459
if: |
460460
github.event_name == 'push' ||
461461
github.event.pull_request.head.repo.full_name != github.repository
462-
runs-on: macos-13
462+
runs-on: macos-15-intel
463463
strategy:
464464
matrix:
465465
build: [1, 2, 3, 4, 5]

.github/workflows/release-sign.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# SPDX-License-Identifier: BSD-3-Clause
2+
# Copyright Contributors to the OpenColorIO Project.
3+
4+
#
5+
# Releases are signed via https://github.com/sigstore/sigstore-python.
6+
# See https://docs.sigstore.dev for information about sigstore.
7+
#
8+
# This action creates a .tar.gz of the complete OpenColorIO source tree at
9+
# the given release tag, signs it via sigstore, and uploads the
10+
# .tar.gz and the associated .tar.gz.sigstore credential bundle.
11+
#
12+
# To verify a downloaded release at a given tag:
13+
#
14+
# % pip install sigstore
15+
# % sigstore verify github --cert-identity https://github.com/AcademySoftwareFoundation/OpenColorIO/.github/workflows/release-sign.yml@refs/tags/<tag> OpenColorIO-<tag>.tar.gz
16+
#
17+
18+
name: Sign Release
19+
20+
on:
21+
release:
22+
types: [published]
23+
24+
permissions:
25+
contents: read
26+
27+
jobs:
28+
release:
29+
name: Sign & upload release artifacts
30+
runs-on: ubuntu-latest
31+
32+
env:
33+
TAG: ${{ github.ref_name }}
34+
permissions:
35+
contents: write
36+
id-token: write
37+
repository-projects: write
38+
39+
steps:
40+
41+
- name: Set Prefix
42+
# The tag name begins with a 'v', e.g. "v2.4.0", but the prefix
43+
# should omit the 'v', so the tarball "OpenColorIO-2.4.0.tar.gz"
44+
# extracts files into "OpenColorIO-2.4.0/...". This matches
45+
# the GitHub release page autogenerated artifact conventions.
46+
run: |
47+
echo OCIO_PREFIX=OpenColorIO-${TAG//v}/ >> $GITHUB_ENV
48+
echo OCIO_TARBALL=OpenColorIO-${TAG//v}.tar.gz >> $GITHUB_ENV
49+
shell: bash
50+
51+
- name: Checkout
52+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
53+
54+
- name: Create archive
55+
run: git archive --format=tar.gz -o ${OCIO_TARBALL} --prefix ${OCIO_PREFIX} ${TAG}
56+
57+
- name: Sign archive with Sigstore
58+
uses: sigstore/gh-action-sigstore-python@a5caf349bc536fbef3668a10ed7f5cd309a4b53d # v3.2.0
59+
with:
60+
inputs: ${{ env.OCIO_TARBALL }}
61+
upload-signing-artifacts: false
62+
release-signing-artifacts: false
63+
64+
- name: Upload release archive
65+
env:
66+
GH_TOKEN: ${{ github.token }}
67+
run: gh release upload ${TAG} ${OCIO_TARBALL} ${OCIO_TARBALL}.sigstore.json

.github/workflows/wheel_workflow.yml

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,10 @@ jobs:
101101
manylinux: manylinux_2_28
102102
python: cp313-manylinux_x86_64
103103
arch: x86_64
104-
# - build: CPython 3.14 64 bits manylinux_2_28
105-
# manylinux: manylinux_2_28
106-
# python: cp314-manylinux_x86_64
107-
# arch: x86_64
104+
- build: CPython 3.14 64 bits manylinux_2_28
105+
manylinux: manylinux_2_28
106+
python: cp314-manylinux_x86_64
107+
arch: x86_64
108108
# -------------------------------------------------------------------
109109
# CPython 64 bits manylinux2014
110110
# -------------------------------------------------------------------
@@ -128,10 +128,10 @@ jobs:
128128
manylinux: manylinux2014
129129
python: cp313-manylinux_x86_64
130130
arch: x86_64
131-
# - build: CPython 3.14 64 bits manylinux2014
132-
# manylinux: manylinux2014
133-
# python: cp314-manylinux_x86_64
134-
# arch: x86_64
131+
- build: CPython 3.14 64 bits manylinux2014
132+
manylinux: manylinux2014
133+
python: cp314-manylinux_x86_64
134+
arch: x86_64
135135

136136
steps:
137137
- uses: actions/checkout@v4
@@ -142,7 +142,7 @@ jobs:
142142
python-version: '3.11'
143143

144144
- name: Build wheels
145-
uses: pypa/cibuildwheel@v3.1.4
145+
uses: pypa/cibuildwheel@v3.3.0
146146
env:
147147
CIBW_BUILD: ${{ matrix.python }}
148148
CIBW_ARCHS: ${{ matrix.arch }}
@@ -190,10 +190,10 @@ jobs:
190190
manylinux: manylinux2014
191191
python: cp313-manylinux_aarch64
192192
arch: aarch64
193-
# - build: CPython 3.14 ARM 64 bits manylinux2014
194-
# manylinux: manylinux2014
195-
# python: cp314-manylinux_aarch64
196-
# arch: aarch64
193+
- build: CPython 3.14 ARM 64 bits manylinux2014
194+
manylinux: manylinux2014
195+
python: cp314-manylinux_aarch64
196+
arch: aarch64
197197

198198
steps:
199199
- uses: actions/checkout@v4
@@ -204,7 +204,7 @@ jobs:
204204
python-version: '3.11'
205205

206206
- name: Build wheels
207-
uses: pypa/cibuildwheel@v3.1.4
207+
uses: pypa/cibuildwheel@v3.3.0
208208
env:
209209
CIBW_BUILD: ${{ matrix.python }}
210210
CIBW_ARCHS: ${{ matrix.arch }}
@@ -221,7 +221,7 @@ jobs:
221221

222222
macos:
223223
name: Build wheels on macOS
224-
runs-on: macos-13
224+
runs-on: macos-15-intel
225225
# Don't run on OCIO forks
226226
if: |
227227
github.event_name != 'schedule' ||
@@ -247,9 +247,9 @@ jobs:
247247
- build: CPython 3.13 64 bits
248248
python: cp313-macosx_x86_64
249249
arch: x86_64
250-
# - build: CPython 3.14 64 bits
251-
# python: cp314-macosx_x86_64
252-
# arch: x86_64
250+
- build: CPython 3.14 64 bits
251+
python: cp314-macosx_x86_64
252+
arch: x86_64
253253

254254
steps:
255255
- uses: actions/checkout@v4
@@ -264,7 +264,7 @@ jobs:
264264
brew uninstall --ignore-dependencies openexr imath || true
265265
266266
- name: Build wheels
267-
uses: pypa/cibuildwheel@v3.1.4
267+
uses: pypa/cibuildwheel@v3.3.0
268268
env:
269269
CIBW_BUILD: ${{ matrix.python }}
270270
CIBW_ARCHS: ${{ matrix.arch }}
@@ -306,9 +306,9 @@ jobs:
306306
- build: CPython 3.13 ARM 64 bits
307307
python: cp313-macosx_arm64
308308
arch: arm64
309-
# - build: CPython 3.14 ARM 64 bits
310-
# python: cp314-macosx_arm64
311-
# arch: arm64
309+
- build: CPython 3.14 ARM 64 bits
310+
python: cp314-macosx_arm64
311+
arch: arm64
312312

313313
steps:
314314
- uses: actions/checkout@v4
@@ -319,7 +319,7 @@ jobs:
319319
python-version: '3.11'
320320

321321
- name: Build wheels
322-
uses: pypa/cibuildwheel@v3.1.4
322+
uses: pypa/cibuildwheel@v3.3.0
323323
env:
324324
CIBW_BUILD: ${{ matrix.python }}
325325
CIBW_ARCHS: ${{ matrix.arch }}
@@ -361,9 +361,9 @@ jobs:
361361
- build: CPython 3.13 64 bits
362362
python: cp313-win_amd64
363363
arch: AMD64
364-
# - build: CPython 3.14 64 bits
365-
# python: cp314-win_amd64
366-
# arch: AMD64
364+
- build: CPython 3.14 64 bits
365+
python: cp314-win_amd64
366+
arch: AMD64
367367

368368
steps:
369369
- uses: actions/checkout@v4
@@ -374,7 +374,7 @@ jobs:
374374
python-version: '3.11'
375375

376376
- name: Build wheels
377-
uses: pypa/cibuildwheel@v3.1.4
377+
uses: pypa/cibuildwheel@v3.3.0
378378
env:
379379
CIBW_BUILD: ${{ matrix.python }}
380380
CIBW_ARCHS: ${{ matrix.arch }}

docs/site/homepage/data/en/contact.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ contact:
99
contact_list:
1010
- icon : ti-comment # themify icon pack : https://themify.me/themify-icons
1111
name: "Slack:"
12-
info : "OpenColorIO"
13-
link: "http://slack.opencolorio.org"
12+
info : "#OpenColorIO"
13+
link: "https://academysoftwarefdn.slack.com"
1414

1515
- icon : ti-email # themify icon pack : https://themify.me/themify-icons
1616
name: "OCIO-User:"

docs/site/homepage/data/en/news.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,26 @@
22
news:
33
enable : true
44
image : images/disney_insideout.jpeg
5-
title : OCIO v2 is here!
5+
title : OCIO v2.5.0 is here!
66
content : "Check out our [guides](https://opencolorio.readthedocs.io/en/latest/releases/_index.html#releases) for upgrading. Here are just a few highlights of new features:"
77
caption: "Image courtesy of Disney (c)"
88
feature_item :
99
# feature item loop
10-
- title : New GPU Renderer
11-
icon : ti-world # themify icon pack : https://themify.me/themify-icons
12-
content : The GPU renderer now matches the CPU and may be used to render final frames!
10+
- title : Config Merging
11+
icon : ti-files # themify icon pack : https://themify.me/themify-icons
12+
content : This much-anticipated feature is now in Preview. Please provide feedback on use cases and workflows. Merging enables user and application control over things like name and alias conflicts, color space duplication, and much more.
1313

1414
# feature item loop
15-
- title : Better User Experience
16-
icon : ti-brush # themify icon pack : https://themify.me/themify-icons
17-
content : Config authors have new tools to organize color spaces by category, hide color spaces, and define hierarchical menus. New File and Viewing Rules allow more powerful default behaviors.
15+
- title : Vulkan GPU Support
16+
icon : ti-image # themify icon pack : https://themify.me/themify-icons
17+
content : Support has been added for the Khronos Vulkan graphics API standard. The OCIO GPU renderer may now be used within applications that use Vulkan to get the most out of the latest GPUs.
1818

1919
# feature item loop
20-
- title : Improved ACES Support
21-
icon : ti-stats-up # themify icon pack : https://themify.me/themify-icons
22-
content : ACES Output Transforms no longer use 3d-LUTs and are accurate even for extreme exposure values. There is also full read and write support for the Academy/ASC Common LUT Format (CLF).
20+
- title : Full ACES 2.0 Support
21+
icon : ti-brush # themify icon pack : https://themify.me/themify-icons
22+
content : With the inclusion of ACES 2.0 Built-In configs, our ACES 2.0 support is now feature complete. This allows use of the ACES 2.0 Output Transforms as OCIO views.
2323

2424
# feature item loop
25-
- title : Analysis Tools
25+
- title : New Color Space Attributes
2626
icon : ti-panel # themify icon pack : https://themify.me/themify-icons
27-
content : There are new command line tools for evaluating LUTs, converting to CLF, serializing OCIO Processors, and more!
27+
content : OCIO now supports the Color Interop ID developed by the Color Interop Forum, as well as attributes for ICC and AMF. Please see the latest config release for example usage.

include/OpenColorIO/OpenColorIO.h

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3503,8 +3503,9 @@ class OCIOEXPORT GpuShaderCreator
35033503
* The 'values' parameter contains the LUT data which must be used as-is as the dimensions and
35043504
* origin are hard-coded in the fragment shader program. So, it means one GPU texture per entry.
35053505
*
3506-
* \return Index of the texture. For shading languages using explicit texture bindings, the return
3507-
* value is the same as the texture binding index in the generated shader program.
3506+
* \return Shader binding index of the texture. For shading languages using explicit texture bindings,
3507+
* the return value is the same as the texture binding index in the generated shader program.
3508+
* The setDescriptorSetIndex function may be used to offset the starting index value.
35083509
**/
35093510
virtual unsigned addTexture(const char * textureName,
35103511
const char * samplerName,
@@ -3522,8 +3523,9 @@ class OCIOEXPORT GpuShaderCreator
35223523
* and origin are hard-coded in the fragment shader program. So, it means one GPU 3D texture
35233524
* per entry.
35243525
*
3525-
* \return Index of the texture. For shading languages using explicit texture bindings, the return
3526-
* value is the same as the texture binding index in the generated shader program.
3526+
* \return Shader binding index of the texture. For shading languages using explicit texture bindings,
3527+
* the return value is the same as the texture binding index in the generated shader program.
3528+
* The setDescriptorSetIndex function may be used to offset the starting index value.
35273529
**/
35283530
virtual unsigned add3DTexture(const char * textureName,
35293531
const char * samplerName,
@@ -3775,7 +3777,12 @@ class OCIOEXPORT GpuShaderDesc : public GpuShaderCreator
37753777
**/
37763778
virtual std::size_t getUniformBufferSize() const noexcept = 0;
37773779

3778-
// 1D lut related methods
3780+
/**
3781+
* The getTexture methods are used to access Lut1D arrays to upload to the GPU as textures.
3782+
* Please note that the index used here is based on the total number of Lut1Ds used by
3783+
* the Processor and is different from the texture shader binding index, which may be
3784+
* obtained using the corresponding function.
3785+
*/
37793786
virtual unsigned getNumTextures() const noexcept = 0;
37803787
virtual void getTexture(unsigned index,
37813788
const char *& textureName,
@@ -3786,15 +3793,24 @@ class OCIOEXPORT GpuShaderDesc : public GpuShaderCreator
37863793
TextureDimensions & dimensions,
37873794
Interpolation & interpolation) const = 0;
37883795
virtual void getTextureValues(unsigned index, const float *& values) const = 0;
3796+
/// Get the index used to declare the texture in the shader for languages such as Vulkan.
3797+
virtual unsigned getTextureShaderBindingIndex(unsigned index) const = 0;
37893798

3790-
// 3D lut related methods
3799+
/**
3800+
* The get3DTexture methods are used to access Lut3D arrays to upload to the GPU as textures.
3801+
* Please note that the index used here is based on the total number of Lut3Ds used by
3802+
* the Processor and is different from the texture shader binding index, which may be
3803+
* obtained using the corresponding function.
3804+
*/
37913805
virtual unsigned getNum3DTextures() const noexcept = 0;
37923806
virtual void get3DTexture(unsigned index,
37933807
const char *& textureName,
37943808
const char *& samplerName,
37953809
unsigned & edgelen,
37963810
Interpolation & interpolation) const = 0;
37973811
virtual void get3DTextureValues(unsigned index, const float *& values) const = 0;
3812+
/// Get the index used to declare the texture in the shader for languages such as Vulkan.
3813+
virtual unsigned get3DTextureShaderBindingIndex(unsigned index) const = 0;
37983814

37993815
/// Get the complete OCIO shader program.
38003816
const char * getShaderText() const noexcept;

share/ci/scripts/windows/install_doxygen.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ DOXYGEN_LOCATION="$1"
1010
choco install jq
1111

1212
# Get the URL of the latest zip package for Doxygen.
13-
url=$(curl -s 'https://api.github.com/repos/doxygen/doxygen/releases/latest' | jq -r '.assets[] | select(.name | test("doxygen-.*windows.x64.bin.zip")) | .browser_download_url')
13+
url=$(curl -s 'https://api.github.com/repos/doxygen/doxygen/releases/latest' | jq -r '.assets[] | select(.name | test("doxygen-.*\\.x64\\.bin\\.zip")) | .browser_download_url')
1414

1515
# Download the zip.
1616
mkdir $DOXYGEN_LOCATION

share/cmake/modules/FindImath.cmake

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,8 @@ if(NOT OCIO_INSTALL_EXT_PACKAGES STREQUAL ALL)
4040
set(_Imath_REQUIRED_VARS Imath_LIBRARY)
4141
set(_Imath_LIB_VER "${Imath_FIND_VERSION_MAJOR}_${Imath_FIND_VERSION_MINOR}")
4242

43-
if(NOT DEFINED Imath_ROOT)
44-
# Search for ImathConfig.cmake
45-
find_package(Imath ${Imath_FIND_VERSION} CONFIG QUIET)
46-
endif()
43+
# Search for ImathConfig.cmake
44+
find_package(Imath ${Imath_FIND_VERSION} CONFIG QUIET)
4745

4846
if(Imath_FOUND)
4947
get_target_property(Imath_LIBRARY Imath::Imath LOCATION)

0 commit comments

Comments
 (0)