Let’s have a workflow containing a component with one input and two output ports, as follows:
Now let’s give the output ports their names. We open the component (Ctrl+DoubleClick), focus the Description view, click the pen icon to start editing the description. We step over the In Port #1 and put some name and description to the text fields belonging to Out Port #1 and #2. Have look at my screenshot here:
After we save the description using the diskette icon in top right corner, and get back to the main workflow we can see the name we gave to the port when our mouse pointer gets over the port. Let’s check it:
Now, we open the Setup dialog of the Component:
And we reorder output ports:
Please find that after we clicked Up button, the only change we could see is that we have “out_1 (Data)” port focused instead of “out_2 (Data)” port which was focused before we pressed the button.
Let’s suggest KNIME just reordered the ports and renamed them as well. (The question here could be why don’t we see the names we gave the ports instead those default out_1, out_2 ones, but it would be different issue I guess).
Well, now let’s click Finish button and check the results.
Connections between the Component and subsequent Node in the workflow got crossed each other. This seems okay.
But if we hover the first output port, we can see "first output: text in the pop-up as there nothing had changed!
Indeed, we still have the Component Description untouched. The names remain in the same order as we created them:
The only option here is to reorder names and descriptions manually. Pretty inconvenient if we had some number of ports here.
I consider this a bug that discourages from documenting components until the workflow is finished and stable or unless we don’t plan to reorder component’s ports.
Yes, we could accept we won’t reorder component’s ports. But what about removing one? Yes, it shifts names and descriptions of subsequent ports because it removes the last name-description pair.
I’d like to ask KNIME team to addrss this. Thank you.