Skip to content

Conversation

@cozdas
Copy link
Owner

@cozdas cozdas commented Sep 20, 2025

WIP

doug-walker and others added 4 commits September 16, 2025 19:56
* Turn off failing stuff

Signed-off-by: Doug Walker <[email protected]>

* Turn off ociolutimage

Signed-off-by: Doug Walker <[email protected]>

* Uninstall the runner EXR

Signed-off-by: Doug Walker <[email protected]>

* Bump EXR min version to 3.1.6

Signed-off-by: Doug Walker <[email protected]>

* Bump EXR recommended version to 3.1.6

Signed-off-by: Doug Walker <[email protected]>

* Minor clean up

Signed-off-by: Doug Walker <[email protected]>

---------

Signed-off-by: Doug Walker <[email protected]>
…& icc_profile_name (AcademySoftwareFoundation#2165)

* Adding 3 new attributes to the color space: interop_id, amf_transform_ids and icc_profile_name

- Addressing the issues AcademySoftwareFoundation#1975, AcademySoftwareFoundation#2152 and AcademySoftwareFoundation#2153
- Bumped the config version to 2.5
- newly added attributes require v2.5 config both for serialization and de-serialization and will throw if they appear in older configs.
- Hardened multiple existing functions against null parameters. Previously those functions were crashing if null is passed, as assigning null to std::string is undefined behavior.
- Expanded tests to some affected functions' unit tests to include null passing. Setters will take null as empty string. compare functions will throw.

Signed-off-by: cuneyt.ozdas <[email protected]>

* As discussed in the TSC meeting, adding a namespace field separator logic to the interop_id field.
- only zero or one ":" is allowed in the interop_id name
- ":" can not be the last character
- added cpp and python unit tests.

Signed-off-by: cuneyt.ozdas <[email protected]>

* Adding interop_id verification in ociocheck.

Non-namespaced IDs are checked against the known CIF values and warning is issued if not found.

Signed-off-by: cuneyt.ozdas <[email protected]>

* minor touches.

Signed-off-by: cuneyt.ozdas <[email protected]>

* fix the failing test.

Signed-off-by: cuneyt.ozdas <[email protected]>

* Disallow non-ASCII characters (outside of [0..127] range) in the interopID field.

Signed-off-by: cuneyt.ozdas <[email protected]>

* Fixing the tests which were failing due to exception wording change.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - replacing getAMFTransformIDs and getICCProfileName with more generic getInterchangeAttribute function. Same with the setters
- getInterchangeAttribute() and setInterchangeAttribute() functions currently knows and accepts "amf_transform_ids" and "icc_profile_name" keys. other keys will throw.
- ColorSpace serializer will list all of the key/value pairs.
- InteropID and interchangeAttributes are now allowed in earlier config versions down to 2.0 too. Config::checkVersionConsistency() will throw only for version smaller than 2.0.
- YAML loader and saver now supports the "interchange" section. Any unknown keys under that section will be ignored upon load and will generate a warning but won't throw.
- Generic str key/value loader/saver is extended for re usability (and fixed incorrect throw message).
- since the amf keywords are separated by newline characters, the newline sanitizer that was used for the description is also generalized and applied to all of the current and possible future interchange fields.
- ColorSpace_test.cpp file updated to test the current state and behavior of the API.
- ComputeValues function in the CPUProcessor_tests.cpp was taking the linenumber as as template parameter. This was a very bad idea as that means each invocation of the function would create a separate copy of the function which was causing all sorts of issues in the debugger and failing to compile when the line numbers are not constants (happens in JIT debug sessions). Fixed by making the line number a normal parameter.
- Python ColorSpace object no longer takes the amf of icc parameters in the constructor. User needs to set them explicitely later on.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - ocioconvert now writes the ColorIntropID attribute of of the output color space.
- ociocheck now does extended validity check on the interopID string.
- preliminary implementation of getColorSpaceFromInteropID().

Signed-off-by: cuneyt.ozdas <[email protected]>

* - Another cleanup pass. After some deliberation, we decided to remove getColorSpaceFromInteropID() which will be done in a later pass.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - Config::getColorSpaceFromInteropID() function is removed.
- another round of cleanup.

Signed-off-by: cuneyt.ozdas <[email protected]>

* minor comment fix

Signed-off-by: cuneyt.ozdas <[email protected]>

* minor fixes to unknown interchange key warning and its unit test.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - Adding the missing interop_id validation check along with couple of unit-tests.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - typo fix and minor cleanup

Signed-off-by: cuneyt.ozdas <[email protected]>

* - Looks like Doxygen doesn't like URLs in the doxygen comment section. Removing the url to see if this fixes the CI issue.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - minor typo fix

Signed-off-by: cuneyt.ozdas <[email protected]>

* - deduplicating the newline sanitize code in OCIOYaml.cpp
- exposing the interchange attributes as a standard python dictionary through the "interchangeAttributes" read-only property.
- adding python tests on the new interchangeAttributes property.

Signed-off-by: cuneyt.ozdas <[email protected]>

* - per code-review, converting the interchangeAttributes propery on python colorspace object to getInterchangeAttributes() function to stick with the existing conventions.

Signed-off-by: cuneyt.ozdas <[email protected]>

---------

Signed-off-by: cuneyt.ozdas <[email protected]>
Co-authored-by: Doug Walker <[email protected]>
…oundation#2186)

* Enhance active display/view list API

Signed-off-by: Doug Walker <[email protected]>

* Update ocioview to use new API

Signed-off-by: Doug Walker <[email protected]>

* Fix python arg name

Signed-off-by: Doug Walker <[email protected]>

---------

Signed-off-by: Doug Walker <[email protected]>
@cozdas cozdas force-pushed the ozdasc/bumpOpenEXR34 branch 2 times, most recently from 4e5bee7 to e4ac68f Compare September 20, 2025 06:34
- Bump up recommended OpenEXR to 3.4.0

Signed-off-by: cuneyt.ozdas <[email protected]>
@cozdas cozdas force-pushed the ozdasc/bumpOpenEXR34 branch from e4ac68f to 13f8f64 Compare September 20, 2025 07:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants