• SceneReader : Added basic loding of UsdGeomNurbsCurves, converting them to CurvesPrimitives (basis curves).

  • Console output : Every line is now prefixed with the message level.

  • RenderPasses : Added validation of render pass names entered in the names plug.

  • RenderPassEditor :

    • Added support for adding a new render pass to an EditScope by clicking the plus button at the bottom of the editor.

    • Added support for deleting selected render passes by clicking the minus button at the bottom of the editor, or by right-clicking one of the names and selecting ‘Delete Selected Render Passes’.


  • Viewer : Fixed context handling bug in the shader view (#5654).

  • PythonCommand : Fixed misleading results for repr( variables ) and str( variables ), which would suggest the dictionary was empty when it was not.

  • CompoundObject : Fixed crashes in Python bindings caused by passing None as a key.

  • Windows : Fixed “{path} was unexpected at this time.” startup error when environment variables such as PATH contain " characters.

  • PathListingWidget : Fixed bug which caused the pointer to be stuck displaying the “values” icon after dragging cells with no value.

  • SceneAlgo : Fixed computation of history through Expression nodes.

  • LightTool : Fixed crash when deleting the node being viewed.

  • USD : Fixed loading of Arnold lights previously exported from Gaffer to USD.

  • Catalogue : Fixed connection delays on Windows.

  • Context : Fixed potential crash when setting a variable with ownership.


  • Added Render Pass Editor shortcuts to the “Controls and Shortcuts” section.

  • Added Render Pass Editor (Arnold) example demonstrating use of the Render Pass Editor, as well as the RenderPasses and RenderPassWedge nodes.


  • EditScopeAlgo : Added support for creating render passes.

  • RenderPasses : Added registerRenderPassNameWidget() and createRenderPassNameWidget() methods for registration and creation of the widget used for editing render pass names.

  • RenderPassEditor : Added addRenderPassButtonMenuSignal() to allow customisation of the add render pass button behaviour.

  • ConfirmationDialogue : The cancel button may now be omitted by passing cancelLabel = None to the constructor.


  • Cortex : Updated to version