ID 349788 - OCIOCDLTransform node errors when using relative and expression-based pathing in file input, if file is .ccc

Follow

Problem summary
Within the OCIOCDLTransform node it is possible to import .cc or .ccc files by selecting the 'read from file' checkbox and reading in the directory through the 'file' location.


It has been discovered that unlike most file path inputs within other nodes, that the OCIOCDLTransform node does not accept either relative file-pathing or file-pathing expressions.

This includes any pathing using the project directory as well as any TCL-based expressions like [file dirname [knob root.name]].

Customer reported version
nuke.11.2v1

Customer reported platform
centos7

Steps to reproduce

Open attached script, repath and compare results

or

1) Open a text editor application

2) Paste the following into the text edit application, ensuring that the result is in the same formatting as below.
<?xml version="1.0" encoding="UTF-8"?><ColorCorrectionCollection xmlns="urn:ASC:CDL:v1.01">  <ColorCorrection id='null'>    <Description>no desc</Description>    <SOPNode>      <Slope>1 1 1</Slope>      <Offset>0.039 0.039 0.039</Offset>      <Power>1 1 1</Power>    </SOPNode>    <SatNode>      <Saturation>1</Saturation>    </SatNode>  </ColorCorrection></ColorCorrectionCollection>
3) Save this file to a directory as test.ccc

4) Open a new Nuke 11.2v3 session

5) Within the Project Settings, set the project directory to the same location as the test.ccc file.

6) Create a CheckerBoard node

7) Create an OCIOCDLTransform node, using the CheckerBoard as the input

8) Within the Properties Bin of the OCIOCDLTransform, select the 'read from file' checkbox

9) Within the 'file' input, select the location of the 'test.ccc' file
Result: The .ccc file will be read in correctly and there will be a slight colour shift when viewing the OCIOCDLTransform

10) Copy and paste the OCIOCDLTransform node

11) Connect the new OCIOCDLTransform node to use the Checkerboard node as the input

12) Within the new OCIOCDLTransform node's properties bin, alter the file input to path the project directory as the source (see below)

Result: The file-pathing will not work correctly and produced the following error:



To confirm this is only the OCIOCDLTransform

13) Create a 'OCIOFileTransform' node and repeat steps 11-12

14) Enter the word 'null' into the cccid input (as .ccc import needs to manually negated in this node)
Result: Works as expected

Workaround
Avoid using relative pathing with the OCIOCDLTransform node.

Alternatively, within the Nuke 11.2v3 releases and later, our suggestion would be to use the OCIOFileTransform nodes as opposed to the OCIOCDLTransform node, which correctly interprets the .ccc file.

Reproduced by support
This bug has been reproduced in:
Nuke 11.2v3 - Windows 7 - MacOS 10.13.4 - CentOS 6.9
Nuke 11.2v1 - Windows 7
Nuke 11.1v5 - Windows 7
Nuke 11.1v1 - Windows 7
Nuke 11.0v4 - Windows 7
Nuke 11.0v1 - Windows 7
Nuke 10.5v7 - Windows 7
Nuke 10.5v4 - Windows 7 - MacOS 10.13.4 - CentOS 6.9 - regression

Unable to reproduce bug in:
Nuke 10.5v3 - Windows 7 - MacOS 10.13.4 - CentOS 6.9

Earliest version tested
Nuke 10.5v3
- This issue no longer appears in this version and has regressed

Expected behaviour
OCIOCDLTransform node should allow file pathing through either TCL expressions or via relative pathing

Actual behaviour
OCIOCDLTransform node does not allow file pathing through either TCL expressions or via relative pathing and incurs an error

    We're sorry to hear that

    Please tell us why