ID 163807 - The recurseGroups parameter doesn't work if a filter is specified in the nuke.allNodes() function

Follow

Problem summary
The recurseGroups parameter doesn't work if a filter is specified in the nuke.allNodes() function.

 

Customer reported version
Nuke 15.2v4

 

Customer reported platform
Rocky 9

 

Steps to reproduce

 

1) Open Nuke.

 

2) Create a few Transform nodes.

 

3) Add them to a new Group (select them and press Ctrl+G).

 

4) Run the following code in the Script Editor:

nuke.allNodes("Transform", recurseGroups=True)

 

Expected behaviour
The code should return a list of Transform nodes within the Group.

 

Actual behaviour
The code returns an empty list in this case. When a filter is specified, nuke.allNodes() only searches the root level.

 

Workaround
You can do this in two steps by recursing through the groups, then querying node.Class(). For example:

[node for node in nuke.allNodes(recurseGroups=True) if node.Class() == "Transform"]

 

Reproduced by support
This bug has been reproduced in:
Nuke 16.0v8 - Windows 11

Nuke 12.0v1 - Windows 11

 

Earliest version tested
Nuke 12.0v1
- However, this bug seemed to be introduced with the recurseGroups parameter in 6.3v5.

    We're sorry to hear that

    Please tell us why