0.23.1.0
Apps
Stats App
Added outputs for scene traversal time and memory usage.
Core
Improved performance of the computation cache, particularly when under heavy multithreaded load (#1638).
Fixed GIL lock issues.
CompoundDataPlug releases when adding child plugs.
GraphComponent releases when adding/removing children.
Reference releases in load().
Switch
Add SwitchTraits
to control context for index evaluation.
UI
SceneHierarchy
NodeEditor
Improved error handling for labels and multiline text fields (#1650).
NodeGraph
Fix “Find…” shortcut.
SceneInspector
Fixed labelling of CoordinateSystem sets (#1648).
ExecutableNode
Fixed UI for individually promoted pre/post tasks (#1647).
UIEditor
Add label field to plug section.
GLWidget
Supports use in Maya when using PySide.
Scene
ScenePlug
set() and setHash() are friendlier to the hash cache.
SceneSwitch
Removed scene:path from context for index.
FilterProcessor
Implement pass-through when disabled.
PathFilter
Fixed bugs which treated empty paths as “/” rather than ignoring them (#1642)
Avoid unnecessary hashing of __pathMatcher plug.
Set
Fixed bugs which treated empty paths as “/” rather than ignoring them (#1642)
SetFilter
Remove unnecessary context manipulation..
DeleteSets
Fixed bug which could pass-through a deleted set.
Isolate/Prune
Fixed bugs which caused incorrect results when used with a particular custom filter outside of Gaffer (#1652).
Shader
Fixed crashes caused by cyclic connections in shader networks (#1646).
Fixed GIL lock issues.
Outputs releases in addOutput().
Image
Warp
Added Warp base class.
Added UVWarp node.
BufferAlgo
Added index() function.
ImageSwitch
Removed tile variables from context for index.
RenderMan
Fixed GIL lock issues.
RenderManShader releases in loadShader().
API
PathMatcher
Fixed bugs which treated empty paths as “/” rather than as empty (#1642).
SceneAlgo
Added PathMatcher overloads for
filteredParallelTraverse()
andmatchingPaths()
(#1649).
MultiLineTextWidget
Added
setErrored()/getErrored()
methods to (#1650).
MultiLineStringPlugValueWidget/LabelPlugValueWidget
Added error handling (#1650).
ExecutableNode
Disabled nodule creation by default for all but TaskPlugs. Nodules can be explicitly reenabled using a ( “nodule:type”, “GafferUI.StandardNodule” ) metadata registration for a particular plug.
DownstreamIterator/RecursiveChildIterators
Fixed API for completion of iteration.
FilteredChildIterator
Added done() method.
TypedObjectPlug bindings : Add _copy argument to defaultValue() method.
Build
GafferUI now links to QtOpenGL