.. _`news_7_1_0`: News in 7.1.0 ============= User interface -------------- * Add keyboard shortcut (:kbd:`Shift+P`) for opening a viewer for the output port of the currently selected node. If the current node has more than one output port a viewer is opened for each one. * The Image viewer now has a :guilabel:`Color space` dropdown (visible when viewing a 3- or 4-channel image in full-color mode) that converts the image to RGB before display. Supported color spaces are HSV, XYZ, and LAB. For LAB images, :guilabel:`Illuminant` and :guilabel:`Observer` options are also available. Platform -------- * Fixed a rare bug where the :guilabel:`Reload flow` action would ignore nodes or subflows where all input ports were optional and had been removed. Node Changes ------------ * Improvements to :ref:`org.sysess.sympathy.data.fx`: * :ref:`org.sysess.sympathy.data.fx` and :ref:`org.sysess.sympathy.data.generic.fxlist` now support configuring a different output type via the *Output type* parameter, enabling type-transforming use cases where input port and output port are different types (e.g. table to figure). * The ``@fx.decorator`` used in :ref:`org.sysess.sympathy.data.fx` and :ref:`org.sysess.sympathy.data.generic.fxlist` scripts no longer requires an argument. It can now be used as ``@decorator``, ``@decorator()``, or ``@decorator([''])``. When no argument is given, the script can be used with any input type. * Updated the disk algorithm in :ref:`syip.imagegenerate` to allow generating both even and odd pixel dimensions. * Improvements to :ref:`syip.transform`: * Add padding to all the sides i.e (left, right, top, bottom). * Add a new transform which grows the image to the given size and places the old image into it according to an alignment parameter i.e (top left, center, top right, bottom left, bottom right etc). * :ref:`syip.overlay` and :ref:`syip.overlay_list` can now combine images with different channel counts. * Deprecate the 2d option in :ref:`com.sympathyfordata.timeseriesanalysis.frequency_transform` and deprecate *not* checking the :guilabel:`center` option. These options will be removed in 9.0.0 and frequencies will then always be centered using fftshift. For 2d transforms :ref:`com.sympathyfordata.imageanalysis.frequency_transform_image` can be useful. * Fixed the :guilabel:`No credentials` option in :ref:`org.sysess.sympathy.machinelearning.llm`. API Changes ----------- * :class:`sylib.imageprocessing.image.Image` now always normalizes images to three dimensions (height, width, channels) in both ``set_image()`` and ``get_image()``. Code that receives images from ``get_image()`` can rely on the array always having three dimensions. * All port functions in :class:`nodeconfig.Port` as well as :func:`sylib.imageprocessing.image.ImagePort` now accept the `n` argument to set the min, max and default count of a port. Installer and python environment -------------------------------- * Added support for Python 3.13. * Update a few packages to support Python 3.13 and to mitigate upstream security vulnerabilities. Updated packages: * skorch 1.1.0 -> 1.3.1 * bokeh 3.7.2 -> 3.8.2 * cryptography 44.0.2 -> 46.0.5 * filelock 3.18.0 -> 3.20.3 * fonttools 4.57.0 -> 4.60.2 * jaraco-context 6.0.1 -> 6.1.0 * pillow 11.3.0 -> 12.1.1 * pyjwt 2.10.1 -> 2.12.0 * tornado 6.5 -> 6.5.5 * urllib3 2.5.0 -> 2.6.3 Other Changes ------------- * New :ref:`cli command` for installing optional dependencies: ``sympathy install --deps DEP-GROUP``. Currently the only two optional dependency groups are `torch` and `opencv`. Note that these will also be installed automatically if required by an executing node.