News in 7.0.0¶
Major features¶
New node for Large Language Models API calls: Large Language Model API. Currently supports OpenAI and Anthropic APIs 🎉🤖
New companion tool that can automatically run flows on a set schedule or in response to file system events.
User interface¶
A brand new welcome tab to guide users now appears on start.
Improve feedback to user about license status, both in splash screen, preferences and messages. Especially in some error cases, like when there aren’t any seats available for the specified license.
Dropping .syx files into the flowview will now open the flow. Holding down Shift while dropping the flow will create a link instead. The option in preferences for what to do with dropped flows (open or link) is now removed.
The File Datasources node created by dropping a folder into the flow view now has the Recursive option checked by default.
Platform¶
When aborting a node, Sympathy will now attempt to kill any subprocesses launched by that node’s worker.
Node Changes¶
Filter List with Table now always requires you to specify a filter column. Previously, leaving the column name empty would use the first column in the input.
Always order parameters in Configure Json Parameters the same way as the parameter definition passed in on the input port.
Removed a confusing behavior in Interpolate ADAFs with Table where multiple conflicting specifications were in some cases permitted for the the same output raster. This now results in an error instead.
Interpolate ADAF(s) now gives a warning if it encounters multiple signals with the same name in different rasters.
Improvements to Copy file and Move File. You can now specify destination directory and filename in either configuration or supply it via their optional input ports.
Copy files with Datasources is deprecated.
Migrating: A migration to Copy file exists.
Reimplemented Continuous wavelet transform using pywavelets instead of scipy. This fixes the Morlet wavelet and removes the Haar wavelet which is not really a good fit for the continous wavelet transform.
Migrating: A migration exists which will change any use of the Haar wavelet to instead use the Ricker wavelet.
API Changes¶
Remove type module functions for checking file type. Use
is_type
from the correspondingTypeAlias
(orFileList
) subclass instead.Migrating: For example, replace
table.is_table
withtable.Table.is_type
(andtable.is_tables
withtable.FileList.is_type
). Affects the following type modules: adaf, bokeh, datasource, figure, report, table and text.Removed
.data
and.attributes
on parameters from interactive node instances. Instead just access the parameters normally, directly innode.parameters
. See documentation for interactive mode.
Installer and python environment¶
Updated bundled Python version to 3.12. This version of Sympathy for Data supports Python 3.11 and 3.12.
Update most bundled python packages.
The installer for Sympathy no longer includes some of the larger python dependencies for some nodes. These dependencies are instead automatically installed from the web when a node that needs it is executed for the first time. This makes for a slightly smaller installer which is faster to download and install.
Also when installing from wheel file, some of the largest python dependencies are left out. Also in this case they are installed automatically when you run a node that needs them. Alternatively, you can install all these optional dependencies directly during installation by running pip install sympathy.whl[all].
When installing Sympathy from wheel file everything you need is now in a single wheel file, both platform and the entire node library, including toolkits. Some customer-specific customizations are still provided as separate wheels.
The Sympathy wheel file now specifies exact versions of all dependencies. This ensures that when Sympathy is installed from wheel, you get the exact same python environment as someone who installs using the installer. Although not really recommended, if you need to upgrade to a specific version of some python package, you can do so after installing Sympathy.