Dear KNIME community,
Many KNIME nodes are labelled as “deprecated” or “legacy”. I want to ask about the difference in their definitions.
I noticed that in the “Noding Guideline” of KNIME, deprecation is clearly defined:
Backwards Compatibility: Nodes whose settings have changed from one version to another (more or different configuration possibilities) should be backward compatible. If possible the new version should provide default values for the new settings fields. These default values should cause the previous behavior of the node, and avoid exceptions if the new value cannot be found in the settings. If it is not possible to make the new version backward compatible with the old version in the way described above, the old version of the node should be moved into an extra plugin (deprecated) or put into a separate source folder (e.g. “src-deprecated”) and removed from the node repository. The new version should be registered to the node repository. Using this mechanism, old workflows will load, because the old node can be found in the deprecated plugin, but all new workflows will use the new version, since there are no means to use the old version of the node in the GUI.
Nodes that should not be used in new workflows any more (e.g. because there is a better replacement or they computed wrong results) should be deprecated.
Unfortunately, I have not yet found an official definition of “legacy” nodes, and whether they are also designed to be backward compatible.
In addition, I would also like to know what it means when a node is labelled as both “deprecated” and “legacy”.
Thank you so much!