Support: Release Notes

From Waltz
Revision as of 22:14, 17 March 2020 by Patrick Angle (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Version 1.2 (Mephisto's)

March 17, 2020

  • New Features and Enhancements
    • Added numerous new nodes…
      • TCP Node
      • Proximity Node
      • Clip Node
      • TUIO Output Node
        • An enhanced TUIO Output node now supports all nine standard TUIO profiles.
    • Added new Automations feature…
      • Schedule events to take place on fixed or relative days, like 'Weekdays" or "Every July 4th".
      • Schedule events to take place at a fixed or relative time, like "4:08pm" or "At Astronomical Sunset".
    • New multi-threaded show execution reduces bottlenecks and improves performance.
    • Improved licensing management…
      • Support for Studio and Stage licenses in addition to existing Stage licenses.
      • Licenses can now be checked out from a central licensing server.
      • All license keys now provide an unlimited number of additional Studio license keys for opening multiple shows simultaneously.
    • Improved user interface and windowing management…
      • Auxiliary windows now stay above their parent Stage window, but below other applications in the foreground.
      • All auxiliary windows can now be closed with the `Escape` key.
      • Attempting to open an already open window will draw focus to the open window instead of opening a duplicate.
      • Console has been merged into the Stage window.
      • Spinner controls (like those for configuring literal points and dates) can now be adjusted using the scroll wheel.
        • Hold the Shift key (Option key on macOS) to make a larger than normal adjustment.
        • Hold the Control key (Command key on macOS) to make a smaller than normal adjustment.
      • New preferences window better organizes and explains options.
    • Added support for projectors using the Barco Pulse protocol in the Projector node.
    • Added support for automatically filtering sensors in the LED Processor node.
    • Expression literal editors now immediately modify their expressions without user confirmation.
    • Refined user interface elements across the application and across all platforms.
    • Inspector now indicates a lack of selection or multiple selections instead of remaining blank.
    • Added option to disable GPU acceleration of the user interface, which can improve performance on machines with underpowered (Intel) graphics processors.
    • Added option to disable checking for updates at launch.
    • Added numerous people to the growing list of those deserving credit to the About window.
    • Improved transmitting Materials over the network by allowing for custom scales as well as for processing lists of materials.
    • Added support for streaming touch data into webpages using the External Scene node.
    • Added ability to define installation-specific support contacts (Tech Note: Configuring Installation-Specific Support Contacts)
    • Added command lines flags for debug features. (Tech Note: Command Line Arguments)
  • Resolved Issues
    • Resolves numerous NDI-related issues on macOS.
    • Resolves an issue where the first launch on macOS would immediately quit the application, forcing the user to relaunch Waltz.
    • UDP Output node now sets a specific port for the remote device automatically.
    • Cluster Tracker node now more accurately reports the radius and centers of clustered touches.
    • List , Map , Script , Touch Mapper , and Translate Transform Operator nodes now only execute once per frame.
    • Resolves an issue where the Welcome window did not appear in the task bar on Windows.
    • Resolves an issue where the Quit menu item did not close the Welcome window.
    • Resolves an issue where script editing in a List or Map could create scroll bars inside the script editing cells.
    • Resolves an issue where nodes references by a Map node did not have a line drawn between them and the Map node.
    • Resolves an issue where some errors could result in another error when attempting to show the initial error dialog.
    • Resolves an issue with macOS Sandboxing preventing external scenes to be created.
    • Resolves an issue where the External Scene node enforced browser-side caching for pages.
    • Resolves an issue where ImageMaterials would be incorrectly scaled when drawn as part of a node's preview.
    • Resolves an issue where Cut/Copy/Paste could result in an error.
    • Resolves an issue where Waltz could stop responding after clicking `Save` in the close confirmation dialog.
    • Resolves occasional exceptions when using the expression editor.
    • Resolves an issue where waking from sleep with an eGPU connected or switching users on macOS would result in Waltz unexpectedly quitting.
    • Patched CVE-2019-17531, a polymorphic typing issue that could allow an attacker to execute a malicious payload when loading a show file.
    • Patched CVE-2019-16943, a polymorphic typing issue that could allow an attacker to execute a malicious payload when loading a show file.
    • Patched CVE-2019-16942, a polymorphic typing issue that could allow an attacker to execute a malicious payload when loading a show file.
    • Patched CVE-2019-14540, a polymorphic typing issue resulting from improper input validation as part of loading show files.
    • Patched CVE-2019-16335, a polymorphic typing issue resulting from improper input validation as part of loading show files.
  • Deprecations
  • Known Issues
    • Linux is currently unsupported unless you utilize the --x-no-ndi flag and avoid using NDI-related features.
    • Some preferences may return to their defaults when upgrading from Waltz v1.1 or earlier.
    • Installations configured to display venue-specific support contacts will need to reenter this data after updating Waltz. Before reentering the information, open Waltz, open the Preferences window, close the Preferences window, and then quit Waltz. This allows Waltz to regenerate a valid preference's file.

Version 1.1.0 (Nunley's)

September 16, 2019

  • New Features and Enhancements
    • Added numerous new nodes…
      • OSC Input node
      • NDI Input node
      • Wave Object node
      • Range Operator node
      • Blend Operator node
      • Filter Operator node
      • Change Operator node
      • Ease Operator node
      • Hold Operator node
      • JSON Mapper Operator node
      • JSON Stringify Operator node
      • Math Operator node
      • Graph Material node
      • Watchout Media Server node
      • Projector node (Supporting Christie 4k Boxer-like Projectors, Christie M-Series Projectors, and PJLink Class 1 Projectors)
      • External Scene node
      • Timer node
    • Redesigned Stage view…
      • Multiple nodes can be selected at once.
      • Added native zoom and panning gestures on macOS-based machines.
      • Added alignment and arrangement tools for lining up nodes.
      • Added ability to snap nodes to the grid.
    • Redesigned script editor…
      • Greatly improved auto-completion suggestions via the Control + Space keyboard shortcut.
      • Improved editing experience for larger scripts with a dedicated window for editing, including code folding and line numbers.
      • Familiar code editing shortcuts like making a line a comment with the Control + / keyboard shortcut.
    • Improved expression evaluation speeds.
    • Improved update notifications now include release notes.
    • Improved performance of transforming Materials using some Operator nodes.
    • Improved LED Processor node and Cluster Tracker node to improve results when clustering is not desired and only persistence is needed between frames.
    • Improved Map node with two column layout for settings keys and values for the created map.
    • Improved Export Show Diagnostics function to include more system information to assist in the narrowing down of issues.
    • Improved display of nested maps in node data views to better express how data can be accessed.
    • Improved OSC Output node to better handle nested maps to support the new nested maps created by the OSC Input node.
    • Improved UDP Input node to support ignoring duplicate messages as well as arbitrary message separators (or no separator at all).
    • Improved file management by allowing relative file references, as well as automatically updating references when saving show files to a new location.
    • Improved Scene URLs to be shorter.
    • Improved resizing behavior of Expression fields.
    • Improved drawing options for Touch Material node.
    • Improved node accessory view for Script Function node to show the script.
    • Improved Welcome dialog show recent files and links to online documentation.
    • Improved parts of the user interface to be more consistent.
    • Added performance times to node, which can be viewed by right-clicking on a node.
    • Added menu item for reinitializing a node.
    • Added new warn(…) function to complement the print(…) function by printing a warning message to the console.
    • Added .seconds, .minutes, .hours, and .days properties to Time object.
    • Added new inspector and data view windows that can persist past node selection.
    • Added Get Support dialog to provide contact information for support, including installation-specific contacts for fixed installations.
    • Waltz now honors the system accent color preference on macOS Mojave and later.
    • Show files are now associated with Waltz on Windows-based and macOS-based systems.
    • Multiple show files can now run simultaneously on Windows-based systems.
    • Reorganized some nodes into a new Devices type, including the LED Processor and SensorLink nodes, joining the new Projector and Watchout Media Server nodes.
    • General performance enhancements based on performance data gathered in the field, including…
      • Improved accuracy and timing of frames, particularly when the machine is under a heavy load.
      • Improved performance and responsiveness of user interface (up to 10x more performant on macOS-based systems).
      • Improved battery life for users working on laptops.
  • Resolved Issues
    • Resolved issue where certain node structures involving List nodes could incorrectly result in a recursive reference and a large performance penalty.
    • Resolved issue where output Touches from the LED Processor node would not update if they existed between frames.
    • Resolved issue where touches from the LED Processor node did not maintain their IDs between frames, resulting in sporadic behavior when sent over TUIO without using a Cluster Tracker node.
    • Resolved issue where the LED Processor node would emit a log message on any frame where the processor takes over 20ms to respond to a request. This threshold has been changed to 200ms, or 0.2 seconds.
    • Resolved issue where the LED Processor node would emit a log message on every frame it was unable to contact the processor, instead of once when the processor became unavailable.
    • Resolved issue where the OSC Output node did not support sending multiple arguments using its send() function.
    • Resolved issue where the OSC Output node did not correctly handle sending multiple arguments from the send() function when d3CompatiblityMode was enabled.
    • Resolved issue where checking for updates would generate an exception before continuing to launch Waltz when no internet connection was present.
    • Resolved issue where some types of materials would flicker when transmitted over the network to a Scene.
    • Resolved issue where saving a show file to a new location broke referenced files and directories in expressions.
    • Resolved issue where choosing a file or directory using the expression literal editor would throw an exception on Windows-based machines.
    • Resolved issue where video files could not be served from an External Scene node.
    • Resolved issue where using normalization in the Touch Mapper node could produce positions greater than 1.0 or less than 0.0.
    • Resolved issue where writing having a comment at the end of a Script Function or UDP Input node's script body would make the script invalid.
    • Resolved issue where excessive logging could cause Waltz to exhaust available memory resources, and eventually crash.
    • Resolved issue where clicking on the close button in the main application window did not properly close the window if the window had previously lost focus when running on macOS 10.15.6.
    • Resolved issue where Waltz would continue running without consequences when there were no available license keys remaining. This has been resolved by preventing editing of the Stage as well as ceasing to execute frames. The exact details of what continues to work and how may change in a future release. It was never the intention that a license key could be removed from a running machine without having an effect.
    • Resolved issue where changing the name of a node would sometimes incorrectly change the name of similarly named nodes.
    • Resolved issue where nodes whose names contained an underscore would not show connections lines on the stage.
    • Patched a sandbox escape issue that allowed shows being loaded or saved to begin executing sooner than intended, sometime interfering with the currently running show.
    • Patched CVE-2019-12086, a polymorphic typing issue that allowed an attacker to execute arbitrary code over the internet when loading a maliciously crafted show file.
    • Patched CVE-2019-12384, a polymorphic deserialization issue that allowed an attacker to execute arbitrary code when loading a maliciously crafted show file.
  • Deprecations
    • The Console node is now deprecated and therefor no longer supported. It will continue to work, but monitoring values should be done using a Value node or in a script using the print(…) function. Console nodes using the Trace or Debug levels of logging will not have their messages appear in the Console Window, as those types of log messages are no longer shown in Waltz, only logged to the internal log for diagnostic purposes.
    • The Frame-by-Frame Object Player and Frame-by-Frame Object Recorder nodes, which have been experimental and have not functioned since Waltz v0.7.x, have been removed to prevent any confusion as to their functionality. They may be reintroduced at a later time. If you have a show file rendered inoperable by the presence of one or both of these nodes, please contact support to have them removed from your show file.
  • Breaking Changes
    • The way in which External Scenes communicate with Waltz has been modified and behaves differently from v1.0.10, which will render existing external scenes inoperable. The External Scene node was experimental in versions before v1.1.x, and therefor we could not guarantee compatibility between versions as we finalized this node. The client browser must support WebSockets to be compatible with the External Scene node.

Version 1.0.10

September 16, 2019

  • New Features and Enhancements
  • Resolved Issues
    • Resolved issue where touches from the LED Processor node did not maintain their IDs between frames, resulting in sporadic behavior when sent over TUIO without using a Cluster Tracker node.
    • Resolved issue where the LED Processor node would emit a log message on any frame where the processor takes over 20ms to respond to a request. This threshold has been changed to 200ms, or 0.2 seconds.
    • Resolved issue where the LED Processor node would emit a log message on every frame it was unable to contact the processor, instead of once when the processor became unavailable.

Version 1.0.9

April 12, 2019

  • New Features and Enhancements
    • Added parameter-less send() function to the OSC Output node for sending messages without parameters.
    • Improved overall application look and feel.
    • Improved display of Materials in lists on the stage by drawing the materials on top of each other instead of in a list format when all items in the list are Materials.
    • Improved reporting of disconnected devices when possible by setting node statuses back to an error status when the connection is lost.
    • Improved auto-connection behavior for nodes to routinely reattempt to connect to network devices if they are not currently able to connect.
    • The macOS release is now properly signed and notarized, reducing the number of GateKeeper notifications you may receive when first running Waltz, and ensuring Waltz will continue to work without compromise on macOS 10.14.5 and later.
  • Resolved Issues
    • Resolved issue where installation on Windows-based systems would sometimes restart the computer without user interaction after updating the CodeMeter runtime.
    • Resolved issue where removing or rearranging items in a List node could throw an exception.
    • Resolved issue where copying a node could refactor references to the original node to instead reference the duplicate node.
    • Resolved issue where pre-release versions of Waltz did not correctly indicate an update was available until one version after the released version of the current pre-release version.
    • Resolved issue where the Random Number node did not correctly set its status to Ready.
    • Resolved issue where Rotate Transform node would warn when the input list was empty.
    • Resolved issue where Scale Transform node would warn when the input list was empty.
    • Resolved issue where Shear Transform node would warn when the input list was empty.
    • Resolved issue where Translate Transform node would warn when the input list was empty.
    • Resolved issue where UDP Output node would warn when the recurring message value was not set.
    • Resolved issue where a Map node would fail to draw itself on the stage when it was empty.
    • Resolved issue where the Logic node did not correctly indicate its operation when drawing itself on the stage.
    • Resolved issue where the OSC Output node would send recurring messages even when no values were provided.

Version 1.0.8

March 3, 2019

  • New Features and Enhancements
    • Improved tooltips for expression fields now show additional information about the expression, including the supported types and a description of the property.
    • Improved default values for the Cluster Tracker node.
    • Added undo support for connecting nodes on the stage.
    • Waltz now uses the Direct3D renderer on Windows-based systems. A Direct3D compatible graphics card is required.
    • Added support to the UDP Output node for non-string values to be sent. All values are converted to a string automatically, but numbers, booleans, and other values can now be provided.
    • Improved keyboard accelerator for deleting nodes on Windows-based systems using the Delete key.
    • Added support for invoking the Insert Nodes menu via a double-click on the stage.
  • Resolved Issues
    • Resolved issue where some nodes would calculate values after the values had already been referenced from another node.
    • Resolved issue where Waltz would not correctly exit on Windows-based systems, leaving a stray process behind the prevented launching Waltz again.
    • Resolved issue where Experimental and Legacy nodes were always searchable, even if creating those nodes was not enabled.
    • Resolved issue where selecting the Automatic Local Interface using the expression literal editor did not correctly set the expression field.
    • Resolved issue where summoning the Insert Nodes menu took around one second to display the first time it was summoned.
    • Resolved issue where File > New did not create a new show.
    • Resolved issue where opening a show file or creating a new show did not deselect the previously selected node.
    • Resolved issue where the Save dialog incorrectly defaulted to saving files in the application directory on Windows-based systems.
    • Resolved issue where searching the Insert Node menu would drop focus from the search field after each character on Windows-based systems.
    • Resolved issue where the Touch Mapper node did not correctly restore its status to Ready when no touches were present.
    • Resolved issue where entering a frame rate below 1 as the target frame rate caused Waltz to crash.
    • Resolved issue where increasing the target frame rate above 60 resulted in sub-optimal performance.
    • Resolved issue where the generic expression literal editor did not correctly enumerate all available options.
    • Resolved issue where the Cluster Tracker node could throw an exception while purging old touches.
    • Resolved issue where the Simulate Touch node did not correctly restore its status to Ready after being in an Error or Warning status.
    • Resolved issue where the boolean expression literal editor did not correctly track the expression's contents. (The box will still be left unchecked by Waltz if the expression is not a boolean literal and true.)
    • Resolved issue where some nodes did not correctly connect to other network devices when loading a show file.
    • Resolved issue where the SensorLink Input node did not correctly parse incoming digital switch data.

Version 1.0.7

February 18, 2019

  • New Features and Enhancements
    • Added situations in which automatic node connections are made.
    • Improved loading of show files to warn if a file was created with a newer version of Waltz.
    • Improved drawing of node connections.
  • Resolved Issues
    • Resolved issue where the Scene server failing to start did not provide any notification.
    • Resolved issue where some colors in Script Expression fields were illegible.
    • Resolved issue where some Script Expression fields were smaller than their contents necessitated.
    • Resolved issue where some node connection suggestions were not legible.
    • Resolved issue where DmxUniverses did not correctly calculate their raw bytes.

Version 1.0.6

February 15, 2019

  • Resolved Issues
    • Resolved critical issue where frame timing and execution was inaccurate on some systems. All productions should update to this version of Waltz.

Version 1.0.5

February 14, 2019

  • New Features and Enhancements
    • Added situations in which automatic node connections are made.
  • Resolved Issues
    • Resolved issue where materials did not produce a human-readable name is lists and maps.
    • Resolved issue where SensorLink Input Nodes did not have the correct default port for their remoteAddress.
    • Resolved issue where some nodes would not attempt to connect to a new remote host when changing the remoteAddress property.
    • Resolved issue where tool tips would disappear before they could be read.
    • Resolved issue where the Windows installer for Waltz would not update an existing CodeMeter installation, which could cause an older version of CodeMeter to remain installed that is incompatible with the Waltz license keys.
    • Resolved issue where read-only node parameters did not appear differently from mutable parameters.

Version 1.0.4

February 11, 2019

  • New Features and Enhancements
    • Pressing the Tab key while hovering over the stage now invokes the Insert Node menu.
  • Resolved Issues
    • Resolved issue where script validation result tool tips were illegible, and did not correctly display line breaks.
    • Resolved issue where scenes failed to communicate with Waltz if a port other than 80 was being used.

Version 1.0.3

February 7, 2019

  • New Features and Enhancements
    • Colors can now be created using the new FloatColor(…) and HSBColor(…) constructors. See the Color type documentation for usage information.
  • Resolved Issues
    • Resolved issues in Touch, RemoteAddress/IP, LocalInterface, Point, Dimension, and Material where documentation differed from the actual implementation.

Version 1.0.2

February 4, 2019

  • New Features and Enhancements
    • Waltz now checks for updates automatically on launch when connected to the internet. If an update is available, you have the choice to download it or continue launching Waltz.
    • Script Function Node and Script Node now show the prefix and suffix with which their respective script fields will be executed.
  • Resolved Issues
    • Resolved issue where Script Function Node did not correctly handle multiple parameters.

Version 1.0.1

February 1, 2019

  • New Features and Enhancements
    • Added Global.timeMillis to the global scripting scope to get the current time, in milliseconds.
    • Added node accessory views for the Rotate/Scale/Shear/Translate Transform Nodes.
  • Resolved Issues
    • Resolved issue where extra logging took place when making connections between nodes.
    • Resolved issue where selecting a node on the stage selected the bottom-most node instead of the top-most node.
    • Resolved issue where the Rotate/Scale/Shear/Translate Transform Nodes could effect other materials drawn after the transform.
    • Resolved issue where negative values were not correctly drawn for node accessory views.
    • Resolved issue where the Waltz Help menu item took the user to a non-existent webpage.

Version 1.0.0 (Montaigne)

January 28, 2019

Initial Release