ID 357416 - [Linux] Nuke's Python interpreter does not correctly call jpeg specific knobs through the Write node, within Nuke 11 releases

Follow

Problem summary
It is possible to run Nuke commands through a Python module using a Python interpreter that is shipped with Nuke itself.
https://learn.foundry.com/nuke/developers/111/pythondevguide/nuke_as_python_module.html

This Nuke Python interpreter allows you to work within Nuke's Python API, without accessing a script environment and is generally launched through terminal using a Nuke render license.

There has been an issue discovered when attempting to render a jpeg file from Write node via the Python interpreter. There appears to be an inability to call the format specific jpeg related knobs of _jpeg_quality and _jpeg_sub_sampling​ when rendering.

This issue is isolated to Nuke 11.0/11.1 releases only within Linux-based operating systems and does not occur through the standard GUI or terminal launched Nuke.

Note: This issue does not appear to occur in all format writers, such as the dpxWriter or the exrWriter and the issue appears to be isolated to the jpegWriter currently.

Customer reported version
nuke.11.1v4

Customer reported platform
centos7

Steps to reproduce

1) Open a new terminal window in a Linux OS

2) Launch the Python interpreter that is located in the same directory as the Nuke application.
For example:
/usr/local/Nuke11.1v4/Python

3) When you are in the Python environment (indicated by the '>>>' state), enter the following into the terminal window:

a) import nuke
To open the Nuke environment

followed by the following:

b) w = nuke.createNode('Write') 
To set a variable for a Write node

c) w['file'].fromUserText('foo.jpg') 
To rename the Write file knob to 'foo.jpg'

d) print '\n'.join(sorted(w.knobs()))
To print out all the Write knobs in a list format

Result: You will receive a terminal callback of all knobs, with the exception of the jpeg specific knobs of _jpeg_quality and _jpeg_sub_sampling​.

4) To confirm regression, re-run the above three steps in Nuke 10.5v7
Result: All expected knobs will be there.

Workaround
Unknown. Avoid using the Python interpreter to render jpeg files through a Write node within Linux environments. As an alternative create the Write node either through the Nuke GUI and/or terminal mode, or use an alternative format such as DPX or EXR.

Reproduced by support
This bug has been reproduced in:
Nuke 11.1v4 - CentOS 6.9
Nuke 11.1v1 - CentOS 6.9
Nuke 11.0v4 - CentOS 6.9
Nuke 11.0v1 - CentOS 6.9 - regression

Unable to reproduce bug in:
Nuke 11.1v4 - Windows 7 - MacOS 10.13.4
Nuke 10.5v7 - CentOS 6.9 - Windows 7 - MacOS 10.13.4

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

Expected behaviour
Ability to be able to access the jpeg specific knobs within the Python interpreter

Actual behaviour
Unable to access the jpeg specific knobs within the Python interpreter

    We're sorry to hear that

    Please tell us why