Scripting System Improvements, Performance and Stability · Release Candidate 34
Scripting API Reference and Extension Rename
The existing API documentation for the scripting system was very brief and often did not contain sufficient information for implementing complex functionality. The new scripting API reference now has detailed documentation for all functions and classes, including a more detailed description and documentation of the parameters, return values and error conditions.
On top of that, many functions now also feature usage examples and the source code of example code is now displayed with syntax highlighting, making it more readable. Finally, functions and classes are also cross-linked within the documentation.
To make the terminology more familiar, we also decided to rename "add-ons" to "extensions". This is in line with "browser extensions", which is a familiar concept to many people.
Refined Library Node Scripting APIs
Objects corresponding to library nodes, such as event nodes, collection nodes or file nodes, exposed setter functions for all of their fields in previous versions. Since some of those fields must adhere to certain constraints, or need to be changed in lock-step with fields of other nodes, this approach was error-prone and could lead to unusable library catalog if used incorrectly.
To mitigate this, this release removes all these critical setter functions. For collection nodes (as well as taxonomy collections and export collections), there are new addItem
/addItems
methods that replace the items().add()
method that has been removed. More of these higher-level APIs will be added in the future.
Stability and Performance
The search functionality is now considerably faster in libraries that contain a large number (thousands) of different keywords. Also, refreshing the keyword tree does not temporarily block the user interface anymore in this case.
As usual, there are also a few bug fixes, including one where some metadata fields would not be displayed in the metadata pane when an XMP sidecar file was present.
As always, see the change log for the full list of changes.
Comments for the post are currently disabled.
0 comments